--- loncom/lonnet/perl/lonnet.pm 2001/08/12 01:18:37 1.148 +++ loncom/lonnet/perl/lonnet.pm 2001/08/16 11:25:03 1.149 @@ -122,7 +122,7 @@ # 5/30 H. K. Ng # 6/1 Gerd Kortemeyer # July Guy Albertelli -# 8/4,8/7,8/8,8/9,8/11 Gerd Kortemeyer +# 8/4,8/7,8/8,8/9,8/11,8/16 Gerd Kortemeyer package Apache::lonnet; @@ -659,6 +659,45 @@ sub log { return critical("log:$dom:$nam:$what",$hom); } +# ----------------------------------------------------------- Check out an item + + +sub checkout { + my ($symb,$tuname,$tudom,$tcrsid)=@_; + my $now=time; + my $lonhost=$perlvar{'lonHostID'}; + my $infostr=&escape( + $tuname.'&'. + $tudom.'&'. + $tcrsid.'&'. + $symb.'&'. + $now.'&'.$ENV{'REMOTE_ADDR'}); + my $token=&reply('tmpput:'.$infostr,$lonhost); + if ($token=~/^error\:/) { return ''; } + $token=~s/^(\d+)\_.*\_(\d+)$/$1\*$2\*$lonhost/; + $token=~tr/a-z/A-Z/; + + my %infohash=('token' => $token, + 'checktime' => $now, + 'remote' => $ENV{'REMOTE_ADDR'}); + + unless (&cstore(\%infohash,$symb,$tcrsid,$tudom,$tuname) eq 'ok') { + return ''; + } + + if (&log($tudom,$tuname,&homeserver($tuname,$tudom), + &escape('Checkout '.$infostr.' - '. + $token)) ne 'ok') { + return ''; + } +} + +# ------------------------------------------------------------ Check in an item + +sub checkin { + my $token=shift; +} + # --------------------------------------------- Set Expire Date for Spreadsheet sub expirespread {