Diff for /rat/lonuserstate.pm between versions 1.21 and 1.25

version 1.21, 2000/12/28 21:42:28 version 1.25, 2001/11/29 19:23:49
Line 1 Line 1
 # The LearningOnline Network with CAPA  # The LearningOnline Network with CAPA
 # Construct and maintain state and binary representation of course for user  # Construct and maintain state and binary representation of course for user
 #  #
   # $Id$
   #
   # Copyright Michigan State University Board of Trustees
   #
   # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
   #
   # LON-CAPA is free software; you can redistribute it and/or modify
   # it under the terms of the GNU General Public License as published by
   # the Free Software Foundation; either version 2 of the License, or
   # (at your option) any later version.
   #
   # LON-CAPA is distributed in the hope that it will be useful,
   # but WITHOUT ANY WARRANTY; without even the implied warranty of
   # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   # GNU General Public License for more details.
   #
   # You should have received a copy of the GNU General Public License
   # along with LON-CAPA; if not, write to the Free Software
   # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   #
   # /home/httpd/html/adm/gpl.txt
   #
   # http://www.lon-capa.org/
   #
 # (Server for RAT Maps  # (Server for RAT Maps
 #  #
 # (Edit Handler for RAT Maps  # (Edit Handler for RAT Maps
Line 12 Line 36
 #  #
 # 7/15,7/17,7/18,8/1,8/2,8/4,8/5,8/21,8/22,8/23,8/30,  # 7/15,7/17,7/18,8/1,8/2,8/4,8/5,8/21,8/22,8/23,8/30,
 # 9/2,9/4,9/29,9/30,10/2,10/11,10/30,10/31,  # 9/2,9/4,9/29,9/30,10/2,10/11,10/30,10/31,
 # 11/1,11/2,11/14,11/16,11/22,12/28 Gerd Kortemeyer  # 11/1,11/2,11/14,11/16,11/22,12/28,
   # 07/05/01,08/30,08/31 Gerd Kortemeyer
   
 package Apache::lonuserstate;  package Apache::lonuserstate;
   
Line 55  sub loadmap { Line 80  sub loadmap {
        return OK;          return OK; 
     }      }
   
       my $ispage=($fn=~/\.page$/);
   
     unless (-e $fn) {      unless (-e $fn) {
  my $returned=Apache::lonnet::repcopy($fn);   my $returned=Apache::lonnet::repcopy($fn);
         unless ($returned eq OK) {          unless ($returned eq OK) {
Line 98  sub loadmap { Line 125  sub loadmap {
                     $hash{'kind_'.$rid}='res';                      $hash{'kind_'.$rid}='res';
                     $hash{'title_'.$rid}=$token->[2]->{'title'};                      $hash{'title_'.$rid}=$token->[2]->{'title'};
                     my $turi=$token->[2]->{'src'};                      my $turi=$token->[2]->{'src'};
                       unless ($ispage) {
                           $turi=~/\.(\w+)$/;
                           my $embstyle=&Apache::lonnet::fileembstyle($1);
                           if ($token->[2]->{'external'} eq 'true') {
                               $turi=~s/^http\:\/\//\/adm\/wrapper\/ext\//;
                           } else {
                              my $embstyle=&Apache::lonnet::fileembstyle($1);
                              if (($embstyle eq 'img') || ($embstyle eq 'emb')) {
          $turi='/adm/wrapper'.$turi;
                              }
                           }
       }
                     $hash{'src_'.$rid}=$turi;                      $hash{'src_'.$rid}=$turi;
   
                     if (defined($hash{'ids_'.$turi})) {                      if (defined($hash{'ids_'.$turi})) {
Line 106  sub loadmap { Line 145  sub loadmap {
                         $hash{'ids_'.$turi}=''.$rid;                          $hash{'ids_'.$turi}=''.$rid;
                     }                      }
   
                     if ($token->[2]->{'src'}=~/\/\//) {                      if ($token->[2]->{'external'} eq 'true') {
                         $hash{'ext_'.$rid}='true:';                          $hash{'ext_'.$rid}='true:';
                     } else {                      } else {
                         $hash{'ext_'.$rid}='false:';                          $hash{'ext_'.$rid}='false:';
Line 309  sub accinit { Line 348  sub accinit {
   map {    map {
     my $resid=$_;      my $resid=$_;
             my $uri=$hash{'src_'.$resid};              my $uri=$hash{'src_'.$resid};
               $uri=~s/^\/adm\/wrapper//;
             my @uriparts=split(/\//,$uri);              my @uriparts=split(/\//,$uri);
             my $urifile=$uriparts[$#uriparts];              my $urifile=$uriparts[$#uriparts];
             $#uriparts--;              $#uriparts--;
             my $uripath=join('/',@uriparts);              my $uripath=join('/',@uriparts);
             $uripath=~s/^\/res\///;              $uripath=~s/^\/res\///;
              if ($uripath) {
             my $uricond='0';              my $uricond='0';
             if (defined($hash{'conditions_'.$resid})) {              if (defined($hash{'conditions_'.$resid})) {
   $uricond=$captured{$hash{'conditions_'.$resid}};    $uricond=$captured{$hash{'conditions_'.$resid}};
Line 331  sub accinit { Line 372  sub accinit {
             } else {              } else {
                 $acchash{'acc.res.'.$short.'.'.$uripath}=                  $acchash{'acc.res.'.$short.'.'.$uripath}=
                  '&'.$urifile.':'.$uricond.'&';                   '&'.$urifile.':'.$uricond.'&';
             }               }
              } 
          } split(/\,/,$hash{$_});           } split(/\,/,$hash{$_});
       }        }
     } keys %hash;      } keys %hash;
       $acchash{'acc.res.'.$short.'.'}='&:0&';
     my $courseuri=$uri;      my $courseuri=$uri;
     $courseuri=~s/^\/res\///;      $courseuri=~s/^\/res\///;
     &Apache::lonnet::delenv('(acc\.|httpref\.)');      &Apache::lonnet::delenv('(acc\.|httpref\.)');

Removed from v.1.21  
changed lines
  Added in v.1.25


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