--- loncom/xml/lonxml.pm 2001/08/15 14:22:07 1.113 +++ loncom/xml/lonxml.pm 2001/08/17 19:50:28 1.117 @@ -13,7 +13,7 @@ # 6/12,6/13 H. K. Ng # 6/16 Gerd Kortemeyer # 7/27 H. K. Ng -# 8/7,8/9,8/10,8/11,8/15 Gerd Kortemeyer +# 8/7,8/9,8/10,8/11,8/15,8/16,8/17 Gerd Kortemeyer package Apache::lonxml; use vars @@ -152,7 +152,7 @@ sub xmlend { return $discussion.''; } -sub checkout { +sub maketoken { my ($target,$symb,$tuname,$tudom,$tcrsid)=@_; unless ($symb) { $symb=&Apache::lonnet::symbread(); @@ -162,25 +162,27 @@ sub checkout { $tudom=$ENV{'user.domain'}; $tcrsid=$ENV{'request.course.id'}; } - my $lonhost = $Apache::lonnet::perlvar{'lonHostID'}; - my $infostr=&Apache::lonnet::escape( - $tuname.'&'. - $tudom.'&'. - $tcrsid.'&'. - $symb.'&'. - time.'&'.$ENV{'REMOTE_ADDR'}); - my $token=Apache::lonnet::reply('tmpput:'.$infostr,$lonhost); - if ($token=~/^error\:/) { return ''; } - $token=~s/^(\d+)\_.*\_(\d+)$/$1\*$2\*$lonhost/; - $token=~tr/a-z/A-Z/; - if (&Apache::lonnet::log($tudom,$tuname, - &Apache::lonnet::homeserver($tuname,$tudom), - &Apache::lonnet::escape('Checkout '.$infostr.' - '. - $token)) ne 'ok') { - return ''; - } + + my $token=&Apache::lonnet::checkout($symb,$tuname,$tudom,$tcrsid); + + unless ($token) { 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') { - return ''; + return + ''. + 'Checked out for '.$plainname. + '
User: '.$tuname.' at '.$tudom. + '
CourseID: '.$tcrsid. + '
DocID: '.$token. + '
Time: '.localtime().'
'; } else { return $token; }