--- loncom/html/adm/helper/resettimes.helper 2007/09/01 00:41:34 1.6 +++ loncom/html/adm/helper/resettimes.helper 2012/04/01 16:12:42 1.9 @@ -4,8 +4,8 @@ Select - Reset times on one or more folders/maps for a single student. - Reset times on a single folder/map for a section or whole class. + Reset times on one or more folders/maps, resources or the course for a single student. + Reset times on a single folder/map, resource or the course for a section or the whole class. @@ -17,7 +17,7 @@ - This is a list of folders/maps and times they were accessed, plese select those you want deleted. + This is a list of first access times and what was accessed, please select those you want deleted. @@ -27,7 +27,9 @@ foreach my $res (sort(keys(%times))) { my (undef,$symb)=split("\0",$res); my $escsymb=&Apache::lonnet::escape($symb); - my $title=&Apache::lonnet::gettitle($symb); + my $title = + ($symb ne 'course') ? &Apache::lonnet::gettitle($symb) + : $env{'course.'.$env{'request.course.id'}.'.description'}; my $time=&Apache::lonlocal::locallocaltime($times{$res}); my $description="$title on $time"; push(@{$state->{CHOICES}},[$description,$escsymb]); @@ -45,13 +47,16 @@ if (!$fullname) { $fullname="$uname\@$udom"; } return '
  • '.$fullname.'
  • '; - for folders/maps
      +
    for
      my $list; my @symbs=split(/\|\|\|/,$helper->{'VARS'}{'delete'}); foreach my $escsymb (@symbs) { my $symb=&Apache::lonnet::unescape($escsymb); - $list.='
    • '.&Apache::lonnet::gettitle($symb).'
    • '; + my $title = + ($symb ne 'course') ? &Apache::lonnet::gettitle($symb) + : $env{'course.'.$env{'request.course.id'}.'.description'}; + $list.='
    • '.$title.'
    • '; } return $list;
      @@ -60,7 +65,6 @@ - &Apache::lonnet::logthis($helper->{'VARS'}{'delete'}); if ($helper->{'STATE'} ne 'FinishStu') { return; } my $result; my $courseid=$env{'request.course.id'}; @@ -68,10 +72,17 @@ &Apache::lonnet::logthis($helper->{'VARS'}{'delete'}); foreach my $escsymb (split(/\|\|\|/,$helper->{'VARS'}{'delete'})) { 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', - ["$courseid\0$symb"],$udom,$uname); - $result.="Removing access time from ". - &Apache::lonnet::gettitle($symb).": ".$res.'
    • '; + [$key],$udom,$uname); + $result.="Removing access time from ". + $title.": ".$res.'
    • '; + if ($res eq 'ok') { + &Apache::lonnet::del('timerinterval',[$key],$udom,$uname); + } } $result=~s/
    • $//; return $result; @@ -88,7 +99,8 @@ - return ($res->is_map() && $res->map_contains_problem()); + return (($res->is_map() && $res->map_contains_problem()) + ||$res->is_problem() ); return $res->symb() ShowPlan @@ -132,8 +144,13 @@ $result.="Removing access times ". &Apache::lonlocal::locallocaltime($times{$key}). " found for student ".$fullname.": "; - $result.=&Apache::lonnet::del('firstaccesstimes', + my $delres=&Apache::lonnet::del('firstaccesstimes', [$key],$udom,$uname); + $result.=$delres; + if ($delres eq 'ok') { + &Apache::lonnet::del('timerinterval', + [$key],$udom,$uname); + } } $result.="
    • \n
    • "; }