version 1.8, 2009/02/16 15:47:21
|
version 1.11, 2016/05/31 22:04:14
|
Line 70
|
Line 70
|
my $courseid=$env{'request.course.id'}; |
my $courseid=$env{'request.course.id'}; |
my ($uname,$udom,$sec,$fullname)=split(':',$helper->{'VARS'}{'stu1'}); |
my ($uname,$udom,$sec,$fullname)=split(':',$helper->{'VARS'}{'stu1'}); |
&Apache::lonnet::logthis($helper->{'VARS'}{'delete'}); |
&Apache::lonnet::logthis($helper->{'VARS'}{'delete'}); |
|
my $needsdeval; |
foreach my $escsymb (split(/\|\|\|/,$helper->{'VARS'}{'delete'})) { |
foreach my $escsymb (split(/\|\|\|/,$helper->{'VARS'}{'delete'})) { |
my $symb=&Apache::lonnet::unescape($escsymb); |
my $symb=&Apache::lonnet::unescape($escsymb); |
|
my $key = "$courseid\0$symb"; |
|
my $title = |
|
($symb ne 'course') ? &Apache::lonnet::gettitle($symb) |
|
: $env{'course.'.$courseid.'.description'}; |
my $res=&Apache::lonnet::del('firstaccesstimes', |
my $res=&Apache::lonnet::del('firstaccesstimes', |
["$courseid\0$symb"],$udom,$uname); |
[$key],$udom,$uname); |
my $title = |
$result.="Removing access time from ". |
($symb ne 'course') ? &Apache::lonnet::gettitle($symb) |
$title.": ".$res.'</li><li>'; |
: $env{'course.'.$env{'request.course.id'}.'.description'}; |
if ($res eq 'ok') { |
$result.="Removing access time from ". |
if ($symb ne 'course') { |
$title.": ".$res.'</li><li>'; |
my $what = []; |
|
my ($storeunder,@recurseup,$recursed); |
|
my $mapp = &Apache::lonnet::deversion(( |
|
&Apache::lonnet::decode_symb($symb))[2]); |
|
if ($symb =~ /\.(page|sequence)$/) { |
|
$storeunder = $env{'request.course.id'}.'.'.$mapp.'___(all).0.interval'; |
|
$what = [$storeunder,'map']; |
|
} else { |
|
$storeunder = $env{'request.course.id'}.'.'.$symb.'.0.interval'; |
|
$what = [$storeunder,'resource']; |
|
} |
|
&Apache::lonnet::del('timerinterval',[$key],$udom,$uname); |
|
my $userreply=&Apache::lonnet::resdata($uname,$udom,'user',$mapp, |
|
\$recursed,\@recurseup, |
|
$env{'request.course.id'}, |
|
'.','0.interval',($what)); |
|
if (ref($userreply) eq 'ARRAY') { |
|
if ($userreply->[0] =~ /^\d+$/) { |
|
if (($userreply->[1] eq 'map') || ($userreply->[1] eq 'resource')) { |
|
my %storecontent=($storeunder => $userreply->[0], |
|
$storeunder.'.type' => 'date_interval'); |
|
if (&Apache::lonnet::del |
|
('resourcedata',[keys(%storecontent)],$udom,$uname) eq 'ok') { |
|
&Apache::lonparmset::log_parmset(\%storecontent,1,$uname,$udom); |
|
$needsdeval = 1; |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
} |
} |
|
if ($needsdeval) { |
|
&Apache::lonnet::devalidateuserresdata($uname,$udom); |
|
} |
$result=~s/<li>$//; |
$result=~s/<li>$//; |
return $result; |
return $result; |
</finalcode> |
</finalcode> |
Line 129
|
Line 167
|
my $symb=$helper->{'VARS'}{'res2'}; |
my $symb=$helper->{'VARS'}{'res2'}; |
my $key=$env{'request.course.id'}."\0".$symb; |
my $key=$env{'request.course.id'}."\0".$symb; |
my @names=split(/\|\|\|/,$helper->{'VARS'}{'stu1'}); |
my @names=split(/\|\|\|/,$helper->{'VARS'}{'stu1'}); |
|
my $what = []; |
|
my ($storeunder,@recurseup,$recursed); |
|
my $mapp = &Apache::lonnet::deversion(( |
|
&Apache::lonnet::decode_symb($symb))[2]); |
|
if ($symb =~ /\.(page|sequence)$/) { |
|
$storeunder = $env{'request.course.id'}.'.'.$mapp.'___(all).0.interval'; |
|
$what = [$storeunder,'map']; |
|
} else { |
|
$storeunder = $env{'request.course.id'}.'.'.$symb.'.0.interval'; |
|
$what = [$storeunder,'resource']; |
|
} |
|
my %donedeval; |
foreach my $name (@names) { |
foreach my $name (@names) { |
my ($uname,$udom,$sec,$fullname)=split(':',$name); |
my ($uname,$udom,$sec,$fullname)=split(':',$name); |
if (!$fullname) { $fullname="$uname\@$udom"; } |
if (!$fullname) { $fullname="$uname\@$udom"; } |
Line 140
|
Line 190
|
$result.="Removing access times ". |
$result.="Removing access times ". |
&Apache::lonlocal::locallocaltime($times{$key}). |
&Apache::lonlocal::locallocaltime($times{$key}). |
" found for student ".$fullname.": "; |
" found for student ".$fullname.": "; |
$result.=&Apache::lonnet::del('firstaccesstimes', |
my $delres=&Apache::lonnet::del('firstaccesstimes', |
[$key],$udom,$uname); |
[$key],$udom,$uname); |
|
$result.=$delres; |
|
if ($delres eq 'ok') { |
|
&Apache::lonnet::del('timerinterval', |
|
[$key],$udom,$uname); |
|
my $userreply=&Apache::lonnet::resdata($uname,$udom,'user',$mapp, |
|
\$recursed,\@recurseup, |
|
$env{'request.course.id'}, |
|
'.','0.interval',($what)); |
|
if (ref($userreply) eq 'ARRAY') { |
|
if ($userreply->[0] =~ /^\d+$/) { |
|
if (($userreply->[1] eq 'map') || ($userreply->[1] eq 'resource')) { |
|
my %storecontent=($storeunder => $userreply->[0], |
|
$storeunder.'.type' => 'date_interval'); |
|
if (&Apache::lonnet::del |
|
('resourcedata',[keys(%storecontent)],$udom,$uname) eq 'ok') { |
|
&Apache::lonparmset::log_parmset(\%storecontent,1,$uname,$udom); |
|
unless ($donedeval{$uname.':'.$udom}) { |
|
&Apache::lonnet::devalidateuserresdata($uname,$udom); |
|
$donedeval{$uname.':'.$udom} = 1; |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
} |
} |
$result.="</li>\n<li>"; |
$result.="</li>\n<li>"; |
} |
} |