version 1.113, 2001/08/15 14:22:07
|
version 1.114, 2001/08/15 15:49:14
|
Line 162 sub checkout {
|
Line 162 sub checkout {
|
$tudom=$ENV{'user.domain'}; |
$tudom=$ENV{'user.domain'}; |
$tcrsid=$ENV{'request.course.id'}; |
$tcrsid=$ENV{'request.course.id'}; |
} |
} |
|
my $now=time; |
my $lonhost = $Apache::lonnet::perlvar{'lonHostID'}; |
my $lonhost = $Apache::lonnet::perlvar{'lonHostID'}; |
my $infostr=&Apache::lonnet::escape( |
my $infostr=&Apache::lonnet::escape( |
$tuname.'&'. |
$tuname.'&'. |
$tudom.'&'. |
$tudom.'&'. |
$tcrsid.'&'. |
$tcrsid.'&'. |
$symb.'&'. |
$symb.'&'. |
time.'&'.$ENV{'REMOTE_ADDR'}); |
$now.'&'.$ENV{'REMOTE_ADDR'}); |
my $token=Apache::lonnet::reply('tmpput:'.$infostr,$lonhost); |
my $token=Apache::lonnet::reply('tmpput:'.$infostr,$lonhost); |
if ($token=~/^error\:/) { return ''; } |
if ($token=~/^error\:/) { return ''; } |
$token=~s/^(\d+)\_.*\_(\d+)$/$1\*$2\*$lonhost/; |
$token=~s/^(\d+)\_.*\_(\d+)$/$1\*$2\*$lonhost/; |
$token=~tr/a-z/A-Z/; |
$token=~tr/a-z/A-Z/; |
|
|
|
my %infohash=('token' => $token, |
|
'checktime' => $now, |
|
'remote' => $ENV{'REMOTE_ADDR'}); |
|
|
|
unless ( |
|
&Apache::lonnet::cstore(\%infohash,$symb,$tcrsid,$tudom,$tuname) eq 'ok') { |
|
return ''; |
|
} |
|
|
if (&Apache::lonnet::log($tudom,$tuname, |
if (&Apache::lonnet::log($tudom,$tuname, |
&Apache::lonnet::homeserver($tuname,$tudom), |
&Apache::lonnet::homeserver($tuname,$tudom), |
&Apache::lonnet::escape('Checkout '.$infostr.' - '. |
&Apache::lonnet::escape('Checkout '.$infostr.' - '. |
$token)) ne 'ok') { |
$token)) ne 'ok') { |
return ''; |
return ''; |
} |
} |
|
|
|
my %reply=&Apache::lonnet::get('environment', |
|
['firstname','middlename','lastname','generation'], |
|
$tudom,$tuname); |
|
my $plainname=$reply{'firstname'}.' '. |
|
$reply{'middlename'}.' '. |
|
$reply{'lastname'}.' '. |
|
$reply{'generation'}; |
|
|
if ($target eq 'web') { |
if ($target eq 'web') { |
return '<img src="/cgi-bin/barcode.gif?encode='.$token.'" />'; |
return 'Checked out for '.$plainname. |
|
'<br />User: '.$tuname.' at '.$tudom. |
|
'<br />CourseID: '.$tcrsid.')'. |
|
'<br />DocID: '.$token. |
|
'<br />Time: '.localtime($now). |
|
'<img align="right" src="/cgi-bin/barcode.gif?encode='.$token.'" /><hr />'; |
} else { |
} else { |
return $token; |
return $token; |
} |
} |