Diff for /loncom/lond between versions 1.264 and 1.265

version 1.264, 2004/10/26 14:55:49 version 1.265, 2004/11/02 23:13:18
Line 46  use Authen::Krb5; Line 46  use Authen::Krb5;
 use lib '/home/httpd/lib/perl/';  use lib '/home/httpd/lib/perl/';
 use localauth;  use localauth;
 use localenroll;  use localenroll;
   use localstudentphoto;
 use File::Copy;  use File::Copy;
 use LONCAPA::ConfigFileEdit;  use LONCAPA::ConfigFileEdit;
 use LONCAPA::lonlocal;  use LONCAPA::lonlocal;
Line 3792  sub get_institutional_code_format_handle Line 3793  sub get_institutional_code_format_handle
           
     return 1;      return 1;
 }  }
   &register_handler("autoinstcodeformat",
     \&get_institutional_code_format_handler,0,1,0);
   
 &register_handler("autoinstcodeformat", \&get_institutional_code_format_handler,  #
   0,1,0);  # Gets a student's photo to exist (in the correct image type) in the user's 
   # directory.
   # Formal Parameters:
   #    $cmd     - The command request that got us dispatched.
   #    $tail    - A colon separated set of words that will be split into:
   #               $domain - student's domain
   #               $uname  - student username
   #               $type   - image type desired
   #    $client  - The socket open on the client.
   # Returns:
   #    1 - continue processing.
   sub student_photo_handler {
       my ($cmd, $tail, $client) = @_;
       my ($domain,$uname,$type) = split(/:/, $tail);
   
       my $path=&propath($domain,$uname).
    '/userfiles/internal/studentphoto.'.$type;
       if (-e $path) {
    &Reply($client,"ok\n","$cmd:$tail");
    return 1;
       }
       &mkpath($path);
       my $file=&localstudentphoto::fetch($domain,$uname);
       if (!$file) {
    &Failure($client,"unavailable\n","$cmd:$tail");
    return 1;
       }
       if (!-e $path) { &convert_photo($file,$path); }
       if (-e $path) {
    &Reply($client,"ok\n","$cmd:$tail");
    return 1;
       }
       &Failure($client,"unable_to_convert\n","$cmd:$tail");
       return 1;
   }
   &register_handler("studentphoto", \&student_photo_handler, 0, 1, 0);
   
 # mkpath makes all directories for a file, expects an absolute path with a  # mkpath makes all directories for a file, expects an absolute path with a
 # file or a trailing / if just a dir is passed  # file or a trailing / if just a dir is passed
Line 3804  sub mkpath { Line 3842  sub mkpath {
     my @parts=split(/\//,$file,-1);      my @parts=split(/\//,$file,-1);
     my $now=$parts[0].'/'.$parts[1].'/'.$parts[2];      my $now=$parts[0].'/'.$parts[1].'/'.$parts[2];
     for (my $i=3;$i<= ($#parts-1);$i++) {      for (my $i=3;$i<= ($#parts-1);$i++) {
  $now.='/'.$parts[$i];   $now.='/'.$parts[$i]; 
  if (!-e $now) {   if (!-e $now) {
     if  (!mkdir($now,0770)) { return 0; }      if  (!mkdir($now,0770)) { return 0; }
  }   }
Line 3812  sub mkpath { Line 3850  sub mkpath {
     return 1;      return 1;
 }  }
   
   
 #---------------------------------------------------------------  #---------------------------------------------------------------
 #  #
 #   Getting, decoding and dispatching requests:  #   Getting, decoding and dispatching requests:
Line 5378  sub make_passwd_file { Line 5415  sub make_passwd_file {
     return $result;      return $result;
 }  }
   
   sub convert_photo {
       my ($start,$dest)=@_;
       system("convert $start $dest");
   }
   
 sub sethost {  sub sethost {
     my ($remotereq) = @_;      my ($remotereq) = @_;
     my (undef,$hostid)=split(/:/,$remotereq);      my (undef,$hostid)=split(/:/,$remotereq);

Removed from v.1.264  
changed lines
  Added in v.1.265


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