Diff for /loncom/cgi/loncgi.pm between versions 1.1 and 1.6

version 1.1, 2003/10/09 22:04:37 version 1.6, 2006/04/10 17:46:04
Line 52  package LONCAPA::loncgi; Line 52  package LONCAPA::loncgi;
 use strict;  use strict;
 use warnings FATAL=>'all';  use warnings FATAL=>'all';
 no warnings 'uninitialized';  no warnings 'uninitialized';
   
 use CGI();  use CGI();
 use CGI::Cookie();  use CGI::Cookie();
 use Fcntl qw(:flock);  use Fcntl qw(:flock);
Line 75  BEGIN { Line 76  BEGIN {
 Inputs: none  Inputs: none
   
 Returns: 1 if the user has a LON-CAPA cookie 0 if not.  Returns: 1 if the user has a LON-CAPA cookie 0 if not.
 Loads the users environment into the %ENV hash if the cookie is correct.  Loads the users environment into the %env hash if the cookie is correct.
   
 =cut  =cut
   
Line 128  sub check_cookie { Line 129  sub check_cookie {
   
 =item transfer_profile_to_env  =item transfer_profile_to_env
   
 Load the users environment into the %ENV hash.  Load the users environment into the %env hash.
   
 Inputs: $handle, the name of the users LON-CAPA cookie.  Inputs: $handle, the name of the users LON-CAPA cookie.
   
Line 149  sub transfer_profile_to_env { Line 150  sub transfer_profile_to_env {
     }      }
     foreach my $envrow (@profile) {      foreach my $envrow (@profile) {
         chomp($envrow);          chomp($envrow);
         my ($envname,$envvalue)=split(/=/,$envrow);          my ($envname,$envvalue)=split(/=/,$envrow,2);
         $ENV{$envname} = $envvalue;   $envname  = &unescape($envname);
    $envvalue = &unescape($envvalue);
           $Apache::lonnet::env{$envname} = $envvalue;
     }      }
     $ENV{'user.environment'} = "$lonidsdir/$handle.id";      $Apache::lonnet::env{'user.environment'} = "$lonidsdir/$handle.id";
     return undef;      return undef;
 }  }
   
 #############################################  #############################################
 #############################################  #############################################
   
   sub escape {
       my $str=shift;
       $str =~ s/(\W)/"%".unpack('H2',$1)/eg;
       return $str;
   }
   
   # ----------------------------------------------------- Un-Escape Special Chars
   
   sub unescape {
       my $str=shift;
       $str =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
       return $str;
   }
   
   
 =pod  =pod
   
 =back  =back

Removed from v.1.1  
changed lines
  Added in v.1.6


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