--- loncom/auth/localstudentphoto.pm 2004/11/02 23:11:56 1.2 +++ loncom/auth/localstudentphoto.pm 2006/02/07 05:08:24 1.3 @@ -1,6 +1,6 @@ # The LON-CAPA dummy student photo fetch mechnism # -# $Id: localstudentphoto.pm,v 1.2 2004/11/02 23:11:56 albertel Exp $ +# $Id: localstudentphoto.pm,v 1.3 2006/02/07 05:08:24 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -32,10 +32,55 @@ use lib '/home/httpd/lib/perl/'; use LONCAPA::Configuration; sub fetch { - my ($domain,$user)=@_; + my ($domain,$user,$pid,$response)=@_; + my $temptxt = ''; + unless (ref($response)) { + $response = \$temptxt; + } + if ($udom eq '' || $uname eq '') { + $$response = 'nouser'; + return ''; + } return &main::propath($domain,$user). '/userfiles/internal/studentphoto.jpg'; } +sub fetch_thumbnail { + my ($udom,$uname) = @_; + if ($udom eq '' || $uname eq '') { + return ''; + } + my $userdir=&main::propath($udom,$uname); + my $filepath = '/userfiles/internal/studentphoto.jpg'; + my $thumbnail = '/userfiles/internal/studentphoto_tn.gif'; + my $source = "$userdir/$filepath"; + my $dest = "$userdir/$thumbnail"; + if (-e $dest) { + return $dest; + } else { + if (!-e $source) { + my $file = &fetch($udom,$uname); + } + if (-e $source) { + my ($fullsize,$thumbsize)=&localstudentphoto::thumbsettings($udom); + if ($fullsize && $thumbsize) { + system("convert -size $fullsize $source -thumbnail $thumbsize $dest"); + } + if (-e $dest) { + return $dest; + } + } + } + return ''; +} + +sub thumbsettings { + my ($dom) = @_; + my $fullsize = '240x240'; + my $thumbsize = '40x40'; + return ($fullsize,$thumbsize); +} + + 1; __END__