Diff for /loncom/auth/lonroles.pm between versions 1.231.4.5 and 1.232

version 1.231.4.5, 2010/01/02 18:41:56 version 1.232, 2009/10/23 00:20:36
Line 158  sub redirect_user { Line 158  sub redirect_user {
  $navwindow.=&Apache::lonnavmaps::close();   $navwindow.=&Apache::lonnavmaps::close();
     }      }
   
       # Breadcrumbs
       my $brcrum = [{'href' => $url,
                      'text' => 'Switching Role'},];
     my $start_page = &Apache::loncommon::start_page('Switching Role',undef,      my $start_page = &Apache::loncommon::start_page('Switching Role',undef,
                                                     {'redirect' => [1,$url]});                                                      {'redirect' => [1,$url],
                                                        'bread_crumbs' => $brcrum,});
     my $end_page   = &Apache::loncommon::end_page();      my $end_page   = &Apache::loncommon::end_page();
   
 # Note to style police:   # Note to style police: 
Line 185  sub error_page { Line 189  sub error_page {
     &Apache::loncommon::no_cache($r);      &Apache::loncommon::no_cache($r);
     $r->send_http_header;      $r->send_http_header;
     return OK if $r->header_only;      return OK if $r->header_only;
     $r->print(&Apache::loncommon::start_page('Problems during Course Initialization').      # Breadcrumbs
       my $brcrum = [{'href' => $dest,
                      'text' => 'Problems during Course Initialization'},];
       $r->print(&Apache::loncommon::start_page('Problems during Course Initialization',
                                                undef,
                                                {'bread_crumbs' => $brcrum,})
       );
       $r->print(
         '<script type="text/javascript">'.          '<script type="text/javascript">'.
         '// <![CDATA['.          '// <![CDATA['.
         &Apache::lonmenu::rawconfig().          &Apache::lonmenu::rawconfig().
         '// ]]>'.          '// ]]>'.
         '</script>'.          '</script>'.
       '<p class="LC_error">'.&mt('The following problems occurred:').        '<p class="LC_error">'.&mt('The following problems occurred:').
               '<br />'.            '<br />'.
       $error.        $error.
       '</p><br /><a href="'.$dest.'">'.&mt('Continue').'</a>'.        '</p><br /><a href="'.$dest.'">'.&mt('Continue').'</a>'
               &Apache::loncommon::end_page());      );
       $r->print(&Apache::loncommon::end_page());
 }  }
   
 sub handler {  sub handler {
Line 659  ENDHEADER Line 671  ENDHEADER
             if ($reinit) {              if ($reinit) {
                 $r->print(                  $r->print(
  '<h3><span class="LC_error">'.   '<h3><span class="LC_error">'.
  &mt('As your session file for the course or community has expired, you will need to re-select the course.').'</span></h3>');   &mt('As your session file for the course has expired, you will need to re-select the course.').'</span></h3>');
             } else {              } else {
         $r->print(          $r->print(
  '<h3><span class="LC_error">'.   '<h3><span class="LC_error">'.
  &mt('You need to choose another user role or enter a specific course or community for this function').'</span></h3>');   &mt('You need to choose another user role or enter a specific course for this function').'</span></h3>');
     }      }
         }          }
     }      }
Line 700  ENDHEADER Line 712  ENDHEADER
             &queued_selfenrollment($r);              &queued_selfenrollment($r);
             my $domdesc = &Apache::lonnet::domain($env{'user.domain'},'description');              my $domdesc = &Apache::lonnet::domain($env{'user.domain'},'description');
             my $esc_dom = &HTML::Entities::encode($env{'user.domain'},'"<>&');               my $esc_dom = &HTML::Entities::encode($env{'user.domain'},'"<>&'); 
               $r->print('<p>'.&mt('[_1]Visit the [_2]Course Catalog[_3] to view all [_4] LON-CAPA courses.','<b>','<a href="/adm/coursecatalog?showdom='.$esc_dom.'">','</a></b>',$domdesc).'<br />'.&mt('If a course is [_1]not[_2] in your list of current courses below, you may be able to enroll if self-enrollment is permitted.','<b>','</b>').'</p>');
             $r->print(  
                 '<p>'  
                .&mt('[_1]Visit the [_2]Course/Community Catalog[_3]'  
                    .' to view all [_4] LON-CAPA courses and communities.'  
                    ,'<b>'  
                    ,'<a href="/adm/coursecatalog?showdom='.$esc_dom.'">'  
                    ,'</a></b>',$domdesc)  
                .'<br />'  
                .&mt('If a course or community is [_1]not[_2] in your list of current courses and communities below,'  
                    .' you may be able to enroll if self-enrollment is permitted.'  
                    ,'<b>','</b>')  
                .'</p>'  
             );  
         }          }
     }      }
   
 # No active roles  # No active roles
     if ($countactive==0) {      if ($countactive==0) {
  if ($inrole) {   if ($inrole) {
     $r->print('<h2>'.&mt('Currently no additional roles, courses or communities').'</h2>');      $r->print('<h2>'.&mt('Currently no additional roles or courses').'</h2>');
  } else {   } else {
     $r->print('<h2>'.&mt('Currently no active roles, courses or communities').'</h2>');      $r->print('<h2>'.&mt('Currently no active roles or courses').'</h2>');
  }   }
         &findcourse_advice($r);          &findcourse_advice($r);
         &requestcourse_advice($r);  
  $r->print('</form>');   $r->print('</form>');
         if ($countfuture) {          if ($countfuture) {
             $r->print(&mt('The following [quant,_1,role,roles] will become active in the future:',$countfuture));              $r->print(&mt('The following [quant,_1,role,roles] will become active in the future:',$countfuture));
Line 850  ENDHEADER Line 848  ENDHEADER
                  .'</i><br />'                   .'</i><br />'
                  .'<a href="/adm/logout">'.&mt('Logout').'</a>&nbsp;&nbsp;'                   .'<a href="/adm/logout">'.&mt('Logout').'</a>&nbsp;&nbsp;'
                  .'<a href="/adm/coursecatalog?showdom='.$esc_dom.'">'                   .'<a href="/adm/coursecatalog?showdom='.$esc_dom.'">'
                  .&mt('Course/Community Catalog')                   .&mt('Course Catalog')
                  .'</a></small></p>');                   .'</a></small></p>');
     }      }
     $r->print(&Apache::loncommon::end_page());      $r->print(&Apache::loncommon::end_page());
Line 1159  sub findcourse_advice { Line 1157  sub findcourse_advice {
     } else {      } else {
         $r->print(&mt('If you were expecting to see an active role listed for a particular course, that course may not have been created yet.').'<br />');          $r->print(&mt('If you were expecting to see an active role listed for a particular course, that course may not have been created yet.').'<br />');
     }      }
     $r->print('<h3>'.&mt('Self-Enrollment').'</h3>'.      $r->print('<p>'.&mt('The [_1]Course Catalog[_2] provides information about all [_3] classes for which LON-CAPA courses have been created.','<a href="/adm/coursecatalog?showdom='.$esc_dom.'">','</a>',$domdesc).'<br />');
               '<p>'.&mt('The [_1]Course/Community Catalog[_2] provides information about all [_3] classes for which LON-CAPA courses have been created, as well as any communities in the domain.','<a href="/adm/coursecatalog?showdom='.$esc_dom.'">','</a>',$domdesc).'<br />');      $r->print(&mt('You can search the course catalog for courses which permit self-enrollment, if you would like to enroll in a course.').'</p>');
     $r->print(&mt('You can search for courses and communities which permit self-enrollment, if you would like to enroll in one.').'</p>');  
     &queued_selfenrollment($r);      &queued_selfenrollment($r);
     return;      return;
 }  }
   
 sub requestcourse_advice {  
     my ($r) = @_;  
     my $domdesc = &Apache::lonnet::domain($env{'user.domain'},'description');  
     my $esc_dom = &HTML::Entities::encode($env{'user.domain'},'"<>&');  
     my (%can_request,%request_doms);  
     &Apache::lonnet::check_can_request($env{'user.domain'},\%can_request,\%request_doms);  
     if (keys(%request_doms) > 0) {  
         my ($types,$typename) = &Apache::loncommon::course_types();  
         if ((ref($types) eq 'ARRAY') && (ref($typename) eq 'HASH')) {  
             $r->print('<h3>'.&mt('Request creation of a course or community').'</h3>'.  
                       '<p>'.&mt('You have rights to request the creation of courses and/or communities in the following domain(s):').'<ul>');  
             my (@reqdoms,@reqtypes);  
             foreach my $type (sort(keys(%request_doms))) {  
                 push(@reqtypes,$type);  
                 if (ref($request_doms{$type}) eq 'ARRAY') {  
                     my $domstr = join(', ',map { &Apache::lonnet::domain($_) } sort(@{$request_doms{$type}}));  
                     $r->print(  
                         '<li>'  
                        .&mt('[_1]'.$typename->{$type}.'[_2] in domain: [_3]',  
                             '<i>',  
                             '</i>',  
                             '<b>'.$domstr.'</b>')  
                        .'</li>'  
                     );  
                     foreach my $dom (@{$request_doms{$type}}) {  
                         unless (grep(/^\Q$dom\E/,@reqdoms)) {  
                             push(@reqdoms,$dom);  
                         }  
                     }  
                 }  
             }  
             my @showtypes;  
             foreach my $type (@{$types}) {  
                 if (grep(/^\Q$type\E$/,@reqtypes)) {  
                     push(@showtypes,$type);  
                 }  
             }  
             my $requrl = '/adm/requestcourse';  
             if (@reqdoms == 1) {  
                 $requrl .= '?showdom='.$reqdoms[0];  
             }  
             if (@showtypes > 0) {  
                 $requrl.=(($requrl=~/\?/)?'&':'?').'crstype='.$showtypes[0];  
             }  
             if (@reqdoms == 1 || @showtypes > 0) {  
                 $requrl .= '&state=crstype&action=new';  
             }  
             $r->print('</ul>'.&mt('Use the [_1]request form[_2] to submit a request for creation of a new course or community.','<a href="'.$requrl.'">','</a>').'</p>');  
         }  
     }  
     return;  
 }  
   
 sub queued_selfenrollment {  sub queued_selfenrollment {
     my ($r) = @_;      my ($r) = @_;
     my %selfenrollrequests = &Apache::lonnet::dump('selfenrollrequests');      my %selfenrollrequests = &Apache::lonnet::dump('selfenrollrequests');
Line 1525  sub courselink { Line 1469  sub courselink {
   
 sub coursepick_jscript {  sub coursepick_jscript {
     my %lt = &Apache::lonlocal::texthash(      my %lt = &Apache::lonlocal::texthash(
                   plsu => "Please use the 'Select Course/Community' link to open a separate pick course window where you may select the course or community you wish to enter.",                    plsu => "Please use the 'Select Course' link to open a separate pick course window where you may select the course you wish to enter.",
                   youc => 'You can only use this screen to select courses and communities in the current domain.',                    youc => 'You can only use this screen to select courses in the current domain.',
              );               );
     my $verify_script = <<"END";      my $verify_script = <<"END";
 <script type="text/javascript">  <script type="text/javascript">

Removed from v.1.231.4.5  
changed lines
  Added in v.1.232


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>