Diff for /loncom/auth/lonroles.pm between versions 1.240.2.2 and 1.240.2.3

version 1.240.2.2, 2009/12/07 04:38:22 version 1.240.2.3, 2009/12/15 05:04:17
Line 138  use Apache::lonannounce; Line 138  use Apache::lonannounce;
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::lonpageflip();  use Apache::lonpageflip();
 use Apache::lonnavdisplay();  use Apache::lonnavdisplay();
   use Apache::lonmainmenu();
 use GDBM_File;  use GDBM_File;
 use LONCAPA qw(:DEFAULT :match);  use LONCAPA qw(:DEFAULT :match);
 use HTML::Entities;  use HTML::Entities;
Line 224  sub handler { Line 225  sub handler {
     my %dcroles = ();      my %dcroles = ();
     my $numdc = &check_fordc(\%dcroles,$then);      my $numdc = &check_fordc(\%dcroles,$then);
     &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'});      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'});
       my $custommenu = &Apache::loncommon::needs_gci_custom();
   
 # ================================================================== Roles Init  # ================================================================== Roles Init
     if ($env{'form.selectrole'}) {      if ($env{'form.selectrole'}) {
Line 318  sub handler { Line 320  sub handler {
                 }                  }
             }              }
         }          }
         if (($env{'form.cm'}) && ($env{'form.orgurl'})) {          if (($env{'form.cm'}) && ($env{'form.orgurl'})) { 
             $r->internal_redirect($env{'form.orgurl'});              $r->internal_redirect($env{'form.orgurl'});
         }          }
   
         foreach $envkey (keys %env) {          foreach $envkey (keys %env) {
             next if ($envkey!~/^user\.role\./);              next if ($envkey!~/^user\.role\./);
             my ($where,$trolecode,$role,$tstatus,$tend,$tstart);              my ($where,$trolecode,$role,$tstatus,$tend,$tstart);
Line 494  ENDENTERKEY Line 495  ENDENTERKEY
     $courseid = substr($courseid, 1);      $courseid = substr($courseid, 1);
  }   }
  $courseid =~ s/\//_/;   $courseid =~ s/\//_/;
  if ((($role eq 'cc') || ($role eq 'co'))    if (($cdom ne 'gcitest') && (($role eq 'cc') || ($role eq 'co')) 
                                     && ($env{'course.' . $courseid .'.course.helper.not.run'})) {                                       && ($env{'course.' . $courseid .'.course.helper.not.run'})) { 
     $furl = "/adm/helper/course.initialization.helper";      $furl = "/adm/helper/course.initialization.helper";
     # Send the user to the course they selected      # Send the user to the course they selected
Line 518  ENDENTERKEY Line 519  ENDENTERKEY
     .$env{'request.course.sec'})      .$env{'request.course.sec'})
  ) {   ) {
  my $startpage = &courseloadpage($courseid);   my $startpage = &courseloadpage($courseid);
  unless ($startpage eq 'firstres') {            unless (($startpage eq 'firstres') || ($cdom eq 'gcitest')) {
     $msg = &mt('Entering [_1] ...',      $msg = &mt('Entering [_1] ...',
        $env{'course.'.$courseid.'.description'});         $env{'course.'.$courseid.'.description'});
     &redirect_user($r,&mt('New in course'),      &redirect_user($r,&mt('New in course'),
Line 533  ENDENTERKEY Line 534  ENDENTERKEY
 # Guess not ...  # Guess not ...
     $furl=&Apache::lonpageflip::first_accessible_resource();      $furl=&Apache::lonpageflip::first_accessible_resource();
  }   }
                                   if (($cdom eq 'gcitest') && ($custommenu)) {
                                       $furl = '/adm/navmaps';
                                   }
                                 $msg = &mt('Entering [_1] ...',                                  $msg = &mt('Entering [_1] ...',
    $env{'course.'.$courseid.'.description'});     $env{'course.'.$courseid.'.description'});
  &redirect_user($r,&mt('Entering [_1]',   &redirect_user($r,&mt('Entering [_1]',
Line 575  ENDENTERKEY Line 579  ENDENTERKEY
         }          }
     }      }
   
   
 # =============================================================== No Roles Init  # =============================================================== No Roles Init
   
     &Apache::loncommon::content_type($r,'text/html');      &Apache::loncommon::content_type($r,'text/html');
Line 583  ENDENTERKEY Line 586  ENDENTERKEY
     $r->send_http_header;      $r->send_http_header;
     return OK if $r->header_only;      return OK if $r->header_only;
   
     my $crumbtext = 'User Roles';      my ($crumbtext,$pagetitle,$recent,$show_course);
     my $pagetitle = 'My Roles';  
     my $recent = &mt('Recent Roles');  
     my $show_course=&Apache::loncommon::show_course();  
     if ($show_course) {  
         $crumbtext = 'Courses';  
         $pagetitle = 'My Courses';  
         $recent = &mt('Recent Courses');  
     }  
     my $brcrum =[{href=>"/adm/roles",text=>$crumbtext}];  
     my $swinfo=&Apache::lonmenu::rawconfig();  
     my $start_page=&Apache::loncommon::start_page($pagetitle,undef,{bread_crumbs=>$brcrum});  
     my $standby=&mt('Role selected. Please stand by.');  
     $standby=~s/\n/\\n/g;  
     my $noscript='<span class="LC_error">'.&mt('Use of LON-CAPA requires Javascript to be enabled in your web browser.').'<br />'.&mt('As this is not the case, most functionality in the system will be unavailable.').'</span><br />';      my $noscript='<span class="LC_error">'.&mt('Use of LON-CAPA requires Javascript to be enabled in your web browser.').'<br />'.&mt('As this is not the case, most functionality in the system will be unavailable.').'</span><br />';
       if ($custommenu) {
     $r->print(<<ENDHEADER);          my $start_page = &Apache::loncommon::start_page('Main Menu',undef,
                                                           {'bread_crumbs' => 1});
           $r->print(<<"ENDCUSTOM");
   $start_page
   <br />
   <noscript>
   $noscript
   </noscript>
   ENDCUSTOM
       } else {
           $crumbtext = 'User Roles';
           $pagetitle = 'My Roles';
           $recent = &mt('Recent Roles');
           $show_course=&Apache::loncommon::show_course();
           if ($show_course) {
               $crumbtext = 'Courses';
               $pagetitle = 'My Courses';
               $recent = &mt('Recent Courses');
           }
           my $brcrum =[{href=>"/adm/roles",text=>$crumbtext}];
           my $swinfo=&Apache::lonmenu::rawconfig();
           my $start_page=&Apache::loncommon::start_page($pagetitle,undef,{bread_crumbs=>$brcrum});
           my $standby=&mt('Role selected. Please stand by.');
           $standby=~s/\n/\\n/g;
           $r->print(<<ENDHEADER);
 $start_page  $start_page
 <br />  <br />
 <noscript>  <noscript>
Line 626  function enterrole (thisform,rolecode,bu Line 640  function enterrole (thisform,rolecode,bu
 // ]]>  // ]]>
 </script>  </script>
 ENDHEADER  ENDHEADER
       }
   
 # ------------------------------------------ Get Error Message from Environment  # ------------------------------------------ Get Error Message from Environment
   
Line 693  ENDHEADER Line 708  ENDHEADER
         if (($ENV{'REDIRECT_QUERY_STRING'}) && ($fn)) {          if (($ENV{'REDIRECT_QUERY_STRING'}) && ($fn)) {
        $fn.='?'.$ENV{'REDIRECT_QUERY_STRING'};         $fn.='?'.$ENV{'REDIRECT_QUERY_STRING'};
         }          }
         $r->print('<form method="post" name="rolechoice" action="'.(($fn)?$fn:$r->uri).'">');          unless ($custommenu) {
         $r->print('<input type="hidden" name="orgurl" value="'.$fn.'" />');              $r->print('<form method="post" name="rolechoice" action="'.(($fn)?$fn:$r->uri).'">');
         $r->print('<input type="hidden" name="selectrole" value="1" />');              $r->print('<input type="hidden" name="orgurl" value="'.$fn.'" />');
         $r->print('<input type="hidden" name="newrole" value="" />');              $r->print('<input type="hidden" name="selectrole" value="1" />');
               $r->print('<input type="hidden" name="newrole" value="" />');
           }
     }      }
   
     my (%roletext,%sortrole,%roleclass,%futureroles,%timezones);      my (%roletext,%sortrole,%roleclass,%futureroles,%timezones);
Line 706  ENDHEADER Line 723  ENDHEADER
   
     $refresh = $now;      $refresh = $now;
     &Apache::lonnet::appenv({'user.refresh.time'  => $refresh});      &Apache::lonnet::appenv({'user.refresh.time'  => $refresh});
       if ($custommenu) {
           my %courses = &Apache::loncommon::existing_gcitest_courses();
           $env{'browser.interface'}='faketextual';
           $env{'environment.remote'}='off';
           my $numcourses = keys(%courses);
           my $switcher;
           if ($numcourses > 0) {
               $switcher = &Apache::lonmainmenu::gcitest_switcher(%courses);
               my $current;
               if ($env{'request.course.id'}) {
                   $current = 'cc./'.$env{'course.'.$env{'request.course.id'}.'.domain'}.
                              '/'.$env{'course.'.$env{'request.course.id'}.'.num'};
               }
               my $switcher_js = &Apache::lonmainmenu::gcitest_switcher_js($current,$numcourses);
               $r->print(<<"ENDSCRIPT");
   <script type="text/javascript">
   // <![CDATA[
   $switcher_js
   // ]]>
   </script>
   ENDSCRIPT
           }
           $r->print(&Apache::lonmenu::inlinemenu('gcicustom',$switcher).
                     &Apache::loncommon::end_page());
           return OK;
       }
     if ($env{'user.adv'}) {      if ($env{'user.adv'}) {
         $r->print('<p><label><input type="checkbox" name="showall"');          $r->print('<p><label><input type="checkbox" name="showall"');
         if ($env{'form.showall'}) { $r->print(' checked="checked" '); }          if ($env{'form.showall'}) { $r->print(' checked="checked" '); }

Removed from v.1.240.2.2  
changed lines
  Added in v.1.240.2.3


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