Diff for /loncom/interface/loncommon.pm between versions 1.1075.2.20 and 1.1075.2.28

version 1.1075.2.20, 2012/12/22 15:43:03 version 1.1075.2.28, 2013/01/15 18:48:17
Line 67  use Apache::lonhtmlcommon(); Line 67  use Apache::lonhtmlcommon();
 use Apache::loncoursedata();  use Apache::loncoursedata();
 use Apache::lontexconvert();  use Apache::lontexconvert();
 use Apache::lonclonecourse();  use Apache::lonclonecourse();
   use Apache::lonuserutils();
   use Apache::lonuserstate();
 use LONCAPA qw(:DEFAULT :match);  use LONCAPA qw(:DEFAULT :match);
 use DateTime::TimeZone;  use DateTime::TimeZone;
 use DateTime::Locale::Catalog;  use DateTime::Locale::Catalog;
Line 5026  sub bodytag { Line 5028  sub bodytag {
     }      }
   
     if (!$realm) { $realm=' '; }      if (!$realm) { $realm=' '; }
 # Set messages  
     my $messages=&domainlogo($domain);  
   
     my $extra_body_attr = &make_attr_string($forcereg,\%design);      my $extra_body_attr = &make_attr_string($forcereg,\%design);
   
Line 5068  sub bodytag { Line 5068  sub bodytag {
   
     if ($env{'request.state'} eq 'construct') { $forcereg=1; }      if ($env{'request.state'} eq 'construct') { $forcereg=1; }
   
     unless ($env{'environment.remote'} eq 'on') {      my $funclist;
       if (($env{'environment.remote'} eq 'on') && ($env{'request.state'} ne 'construct')) {
           $bodytag .= Apache::lonhtmlcommon::scripttag(Apache::lonmenu::utilityfunctions(), 'start')."\n".
                       Apache::lonmenu::serverform();
           my $forbodytag;
           &Apache::lonmenu::prepare_functions($env{'request.noversionuri'},
                                               $forcereg,$args->{'group'},
                                               $args->{'bread_crumbs'},
                                               $advtoolsref,'',\$forbodytag);
           unless (ref($args->{'bread_crumbs'}) eq 'ARRAY') {
               $funclist = $forbodytag;
           }
       } else {
   
         #    if ($env{'request.state'} eq 'construct') {          #    if ($env{'request.state'} eq 'construct') {
         #        $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls          #        $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls
Line 5077  sub bodytag { Line 5089  sub bodytag {
   
   
         if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) {          if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) {
             unless ($env{'request.noversionuri'} =~ m{/res/adm/pages/bookmarkmenu/}) {              if ($dc_info) {
                 if ($dc_info) {                   $dc_info = qq|<span class="LC_cusr_subheading">$dc_info</span>|;
                      $dc_info = qq|<span class="LC_cusr_subheading">$dc_info</span>|;  
                 }  
                 $bodytag .= qq|<div id="LC_nav_bar">$name $role<br />  
                                <em>$realm</em> $dc_info</div>|;  
             }              }
               $bodytag .= qq|<div id="LC_nav_bar">$name $role<br />
                              <em>$realm</em> $dc_info</div>|;
             return $bodytag;              return $bodytag;
         }          }
   
Line 5110  sub bodytag { Line 5120  sub bodytag {
                 $bodytag .= &Apache::lonmenu::innerregister($forcereg,                  $bodytag .= &Apache::lonmenu::innerregister($forcereg,
                                 $args->{'bread_crumbs'});                                  $args->{'bread_crumbs'});
             } elsif ($forcereg) {               } elsif ($forcereg) { 
                 $bodytag .= &Apache::lonmenu::innerregister($forcereg);                  $bodytag .= &Apache::lonmenu::innerregister($forcereg,undef,
                                                               $args->{'group'});
             } else {              } else {
                 $bodytag .=                  my $forbodytag;
                     &Apache::lonmenu::prepare_functions($env{'request.noversionuri'},                  &Apache::lonmenu::prepare_functions($env{'request.noversionuri'},
                                                         $forcereg,$args->{'group'},                                                      $forcereg,$args->{'group'},
                                                         $args->{'bread_crumbs'},                                                      $args->{'bread_crumbs'},
                                                         $advtoolsref);                                                      $advtoolsref,'',\$forbodytag);
                   unless (ref($args->{'bread_crumbs'}) eq 'ARRAY') {
                       $bodytag .= $forbodytag;
                   }
             }              }
         }else{          }else{
             # this is to seperate menu from content when there's no secondary              # this is to seperate menu from content when there's no secondary
Line 5152  sub bodytag { Line 5166  sub bodytag {
                        <li>$menu</li>                         <li>$menu</li>
                        </ol><div id="LC_realm"> $realm $dc_info</div>|;                         </ol><div id="LC_realm"> $realm $dc_info</div>|;
     }      }
     my $funclist;  
     if ($env{'request.state'} eq 'construct') {      if ($env{'request.state'} eq 'construct') {
         if (!$public){          if (!$public){
             if ($env{'request.state'} eq 'construct') {              if ($env{'request.state'} eq 'construct') {
Line 5164  sub bodytag { Line 5177  sub bodytag {
             }              }
         }          }
     }      }
     return(<<ENDBODY);      return $bodytag."\n".$funclist;
 $bodytag  
 <table id="LC_title_bar" class="LC_with_remote">  
 <tr><td>$upperleft</td>  
     <td>$messages&nbsp;</td>  
 </tr>  
 <tr><td>$titleinfo $dc_info $menu</td>  
 </tr>  
 </table>  
 $funclist  
 ENDBODY  
 }  }
   
 sub dc_courseid_toggle {  sub dc_courseid_toggle {
Line 6626  ol.LC_docs_parameters li.LC_docs_paramet Line 6629  ol.LC_docs_parameters li.LC_docs_paramet
 }  }
   
 ul#LC_secondary_menu {  ul#LC_secondary_menu {
   clear: both;    clear: right;
   color: $fontmenu;    color: $fontmenu;
   background: $tabbg;    background: $tabbg;
   list-style: none;    list-style: none;
Line 7491  sub start_page { Line 7494  sub start_page {
  }else{   }else{
  $result .= &Apache::lonhtmlcommon::breadcrumbs();   $result .= &Apache::lonhtmlcommon::breadcrumbs();
  }   }
       } elsif (($env{'environment.remote'} eq 'on') &&
                ($env{'form.inhibitmenu'} ne 'yes') &&
                ($env{'request.noversionuri'} =~ m{^/res/}) &&
                ($env{'request.noversionuri'} !~ m{^/res/adm/pages/})) {
           $result .= '<div style="padding:0;margin:0;clear:both"><hr /></div>';
     }      }
     return $result;      return $result;
 }  }
Line 11597  sub cleanup_empty_dirs { Line 11605  sub cleanup_empty_dirs {
             my $numitems = 0;              my $numitems = 0;
             foreach my $item (@dircontents) {              foreach my $item (@dircontents) {
                 if (-d "$path/$item") {                  if (-d "$path/$item") {
                     &recurse_dirs("$path/$item");                      &cleanup_empty_dirs("$path/$item");
                     if (-e "$path/$item") {                      if (-e "$path/$item") {
                         $numitems ++;                          $numitems ++;
                     }                      }
Line 13290  sub commit_studentrole { Line 13298  sub commit_studentrole {
     return $result;      return $result;
 }  }
   
   sub show_role_extent {
       my ($scope,$context,$role) = @_;
       $scope =~ s{^/}{};
       my @courseroles = &Apache::lonuserutils::roles_by_context('course',1);
       push(@courseroles,'co');
       my @authorroles = &Apache::lonuserutils::roles_by_context('author');
       if (($context eq 'course') || (grep(/^\Q$role\E/,@courseroles))) {
           $scope =~ s{/}{_};
           return '<span class="LC_cusr_emph">'.$env{'course.'.$scope.'.description'}.'</span>';
       } elsif (($context eq 'author') || (grep(/^\Q$role\E/,@authorroles))) {
           my ($audom,$auname) = split(/\//,$scope);
           return &mt('[_1] Author Space','<span class="LC_cusr_emph">'.
                      &Apache::loncommon::plainname($auname,$audom).'</span>');
       } else {
           $scope =~ s{/$}{};
           return &mt('Domain: [_1]','<span class="LC_cusr_emph">'.
                      &Apache::lonnet::domain($scope,'description').'</span>');
       }
   }
   
 ############################################################  ############################################################
 ############################################################  ############################################################
   
Line 14096  sub update_content_constraints { Line 14124  sub update_content_constraints {
     return;      return;
 }  }
   
   sub allmaps_incourse {
       my ($cdom,$cnum,$chome,$cid) = @_;
       if ($cdom eq '' || $cnum eq '' || $chome eq '' || $cid eq '') {
           $cid = $env{'request.course.id'};
           $cdom = $env{'course.'.$cid.'.domain'};
           $cnum = $env{'course.'.$cid.'.num'};
           $chome = $env{'course.'.$cid.'.home'};
       }
       my %allmaps = ();
       my $lastchange =
           &Apache::lonnet::get_coursechange($cdom,$cnum);
       if ($lastchange > $env{'request.course.tied'}) {
           my ($furl,$ferr) = &Apache::lonuserstate::readmap("$cdom/$cnum");
           unless ($ferr) {
               &update_content_constraints($cdom,$cnum,$chome,$cid);
           }
       }
       my $navmap = Apache::lonnavmaps::navmap->new();
       if (defined($navmap)) {
           foreach my $res ($navmap->retrieveResources(undef,sub { $_[0]->is_map() },1,0,1)) {
               $allmaps{$res->src()} = 1;
           }
       }
       return \%allmaps;
   }
   
 sub parse_supplemental_title {  sub parse_supplemental_title {
     my ($title) = @_;      my ($title) = @_;
   
Line 14305  sub check_captcha { Line 14359  sub check_captcha {
                       output_folder => $captcha_params{'output_dir'},                        output_folder => $captcha_params{'output_dir'},
                       data_folder   => $captcha_params{'db_dir'},                        data_folder   => $captcha_params{'db_dir'},
                   );                    );
     my $captcha_chk = $captcha->check_code($code,$md5sum);      $captcha_chk = $captcha->check_code($code,$md5sum);
     my %captcha_hash = (      my %captcha_hash = (
                         0       => 'Code not checked (file error)',                          0       => 'Code not checked (file error)',
                        -1      => 'Failed: code expired',                         -1      => 'Failed: code expired',

Removed from v.1.1075.2.20  
changed lines
  Added in v.1.1075.2.28


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