File:  [LON-CAPA] / loncom / auth / localstudentphoto.pm
Revision 1.7: download - view: text, annotated - select for diffs
Thu Nov 20 14:37:52 2008 UTC (15 years, 5 months ago) by jms
Branches: MAIN
CVS tags: version_2_9_X, version_2_9_99_0, version_2_9_1, version_2_9_0, version_2_8_99_1, version_2_8_99_0, version_2_12_X, version_2_11_X, version_2_11_4_uiuc, version_2_11_4_msu, version_2_11_4, version_2_11_3_uiuc, version_2_11_3_msu, version_2_11_3, version_2_11_2_uiuc, version_2_11_2_msu, version_2_11_2_educog, version_2_11_2, version_2_11_1, version_2_11_0_RC3, version_2_11_0_RC2, version_2_11_0_RC1, version_2_11_0, version_2_10_X, version_2_10_1, version_2_10_0_RC2, version_2_10_0_RC1, version_2_10_0, loncapaMITrelate_1, language_hyphenation_merge, language_hyphenation, bz6209-base, bz6209, bz5969, bz2851, PRINT_INCOMPLETE_base, PRINT_INCOMPLETE, HEAD, GCI_3, GCI_2, BZ5971-printing-apage, BZ5434-fox, BZ4492-merge, BZ4492-feature_horizontal_radioresponse, BZ4492-feature_Support_horizontal_radioresponse, BZ4492-Support_horizontal_radioresponse
Reformatted POD, moved to bottom of file

    1: # The LON-CAPA dummy student photo fetch mechnism
    2: #
    3: # $Id: localstudentphoto.pm,v 1.7 2008/11/20 14:37:52 jms Exp $
    4: #
    5: # Copyright Michigan State University Board of Trustees
    6: #
    7: # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
    8: #
    9: # LON-CAPA is free software; you can redistribute it and/or modify
   10: # it under the terms of the GNU General Public License as published by
   11: # the Free Software Foundation; either version 2 of the License, or
   12: # (at your option) any later version.
   13: #
   14: # LON-CAPA is distributed in the hope that it will be useful,
   15: # but WITHOUT ANY WARRANTY; without even the implied warranty of
   16: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   17: # GNU General Public License for more details.
   18: #
   19: # You should have received a copy of the GNU General Public License
   20: # along with LON-CAPA; if not, write to the Free Software
   21: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   22: #
   23: # /home/httpd/html/adm/gpl.txt
   24: #
   25: # http://www.lon-capa.org/
   26: #
   27: # 8/24 Guy Albertelli
   28: 
   29: 
   30: package localstudentphoto;
   31: use lib '/home/httpd/lib/perl/';
   32: use LONCAPA::Configuration;
   33: 
   34: sub fetch {
   35:     my ($domain,$user,$pid,$response)=@_;
   36:     my $temptxt = '';
   37:     unless (ref($response)) {
   38:         $response = \$temptxt;
   39:     }
   40:     if ($udom eq '' || $uname eq '') {
   41:         $$response = 'nouser';
   42:         return '';
   43:     }
   44:     return &main::propath($domain,$user).
   45: 	'/userfiles/internal/studentphoto.jpg';
   46: }
   47: 
   48: sub fetch_thumbnail {
   49:     my ($udom,$uname) = @_;
   50:     if ($udom eq '' || $uname eq '') {
   51:         return '';
   52:     }
   53:     my $userdir=&main::propath($udom,$uname);
   54:     my $filepath = '/userfiles/internal/studentphoto.jpg';
   55:     my $thumbnail = '/userfiles/internal/studentphoto_tn.gif';
   56:     my $source =  "$userdir/$filepath";
   57:     my $dest = "$userdir/$thumbnail";
   58:     if (-e $dest) {
   59:         return $dest;
   60:     } else {
   61:         if (!-e $source) {
   62:             my $file = &fetch($udom,$uname);
   63:         }
   64:         if (-e $source) {
   65:             my ($fullsize,$thumbsize)=&localstudentphoto::thumbsettings($udom);
   66:             if ($fullsize && $thumbsize) {
   67:                 system("convert -size $fullsize $source -thumbnail $thumbsize $dest");
   68:             }
   69:             if (-e $dest) {
   70:                 return $dest;
   71:             }
   72:         }
   73:     }
   74:     return '';
   75: }   
   76: 
   77: sub thumbsettings {
   78:     my ($dom) = @_;
   79:     my $fullsize = '240x240';
   80:     my $thumbsize = '40x40';
   81:     return ($fullsize,$thumbsize);
   82: }
   83:                                                                                 
   84: sub AUTOLOAD {
   85:     our $AUTOLOAD;
   86:     return '';
   87: }
   88: 
   89: 1;
   90: __END__
   91: 
   92: =pod
   93: 
   94: =head1 NAME
   95: 
   96: Apache::localstudentphoto
   97: 
   98: =head1 SYNOPSIS
   99: 
  100: Incoming data: none
  101: Returns ''
  102: 
  103: =head1 OVERVIEW
  104: 
  105: Prevents errors when undefined subroutines are called in this package. 
  106: Will allow new routines added in the future to be called from lond etc.
  107: without the need for customized versions of local*.pm packages to be
  108: modified to include the new subroutines immediately.
  109: 
  110: See I<"Programming Perl"> 3rd ed. pp 296-298.
  111: 
  112: This is part of the LearningOnline Network with CAPA project
  113: described at http://www.lon-capa.org.
  114: 
  115: =cut
  116: 

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