--- loncom/interface/loncoursegroups.pm 2006/12/04 21:44:02 1.68 +++ loncom/interface/loncoursegroups.pm 2007/12/13 01:08:47 1.71 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: loncoursegroups.pm,v 1.68 2006/12/04 21:44:02 albertel Exp $ +# $Id: loncoursegroups.pm,v 1.71 2007/12/13 01:08:47 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -140,10 +140,10 @@ function openGroupRoster(group,status) { rosterbrowser.focus(); }\n|; $r->print(&header('Groups',$jscript,$action,$state)); - if ($env{'form.refpage'} eq 'enrl') { + if ($env{'form.refpage'} eq 'cusr') { &Apache::lonhtmlcommon::add_breadcrumb - ({href=>"/adm/dropadd", - text=>"Enrollment Manager"}); + ({href=>"/adm/createuser", + text=>"User Management"}); } &Apache::lonhtmlcommon::add_breadcrumb ({href=>"/adm/coursegroups", @@ -189,6 +189,7 @@ sub display_groups { dius => 'Disk Use (%)', nogr => 'No groups exist.', crng => 'Create a new group', + redg => 'Re-enable a deleted group', alth => 'Although your current role has privileges'. ' to view any existing groups in this '. lc($crstype).', you do not have privileges '. @@ -198,16 +199,28 @@ sub display_groups { if (!defined($action)) { $action = 'view'; } - my $status; + my ($status,$reenable_link); if ($action eq 'reenable') { $status = 'deleted_groups'; + } else { + if ($manage_permission) { + my %deleted_groups = + &Apache::longroup::coursegroups($cdom,$cnum,undef,'deleted_groups'); + if (keys(%deleted_groups) > 0) { + $reenable_link = '    '.$lt{'redg'}.''; + } + } } my %curr_groups = &Apache::longroup::coursegroups($cdom,$cnum,undef, $status); + if (%curr_groups) { if ($manage_permission) { - if (!exists($env{'form.refpage'})) { - $r->print('
'.$lt{'crng'}.''); + if ($action ne 'reenable') { + $r->print('
'.$lt{'crng'}.''); + } + if ($reenable_link) { + $r->print($reenable_link); } } $r->print('

'); @@ -312,8 +325,7 @@ END } $link .= '">'.$lt{$action}.''; if ($action eq 'view') { - if (($manage_permission) && - ($env{'form.refpage'} ne 'enrl')) { + if ($manage_permission) { $link .= '  '.$actionlinks{'modify'}. $group.'">'.$lt{'modify'}.''. '  '.$actionlinks{'delete'}. @@ -349,12 +361,14 @@ END } else { $r->print($lt{'nogr'}); if ($manage_permission) { - if (!exists($env{'form.refpage'})) { - $r->print('

'.$lt{'crng'}.''); + $r->print('

'.$lt{'crng'}.''); + if ($action ne 'reenable') { + if ($reenable_link) { + $r->print($reenable_link); + } } } else { $r->print('

'.$lt{'alth'}); - } } } else { @@ -848,14 +862,14 @@ function changeSort(caller) { $r->print(&header("Groups Manager", $jscript,$action,$state,$page,$loaditems)); - if ($env{'form.refpage'} eq 'enrl') { + if ($env{'form.refpage'} eq 'cusr') { &Apache::lonhtmlcommon::add_breadcrumb - ({href=>"/adm/dropadd", - text=>"Enrollment Manager", + ({href=>"/adm/createuser", + text=>"User Management", faq=>9,bug=>'Instructor Interface',}); if ($action eq 'modify' || $action eq 'delete') { &Apache::lonhtmlcommon::add_breadcrumb - ({href=>"/adm/coursegroups?refpage=enrl&action=$action", + ({href=>"/adm/coursegroups?refpage=cusr&action=$action", text=>"Groups", faq=>9,bug=>'Instructor Interface',}); } @@ -1132,7 +1146,7 @@ sub verify_delete { my $prevtext = &mt('Go back'); my $nexttext = &mt('Delete group'); my $prev; - if ($env{'form.refpage'} eq 'enrl') { + if ($env{'form.refpage'} eq 'cusr') { $prev = 'view'; } &display_navbuttons($r,$formname,$prev,$prevtext, @@ -1216,7 +1230,7 @@ sub reenable_folder { $LONCAPA::map::order[1+$#LONCAPA::map::order]=$idx; my ($outtext,$errtext) = &LONCAPA::map::storemap($allgrpsmap,1); if ($errtext) { - $outcome = &mt('Error storing updated parent folder to group'). + $outcome = &mt('Error saving updated parent folder to group'). "- $allgrpsmap - $errtext".'
'; } else { my ($furl,$ferr) = @@ -1266,7 +1280,7 @@ sub modify_folders { $#LONCAPA::map::order--; my ($outtext,$errtext) = &LONCAPA::map::storemap($map,1); if ($errtext) { - $outcome = &mt('Error storing updated parent folder to group'). "- $map - $errtext".'
'; + $outcome = &mt('Error saving updated parent folder to group'). "- $map - $errtext".'
'; } else { my ($furl,$ferr) = &Apache::lonuserstate::readmap($cdom.'/'.$cnum); @@ -1288,7 +1302,7 @@ sub verify_reenable { my $prevtext = &mt('Go back'); my $nexttext = &mt('Reenable group'); my $prev; - if ($env{'form.refpage'} eq 'enrl') { + if ($env{'form.refpage'} eq 'cusr') { $prev = 'view'; } &display_navbuttons($r,$formname,$prev,$prevtext, @@ -3679,8 +3693,8 @@ sub add_group_folder { if ($action eq 'create') { if (&get_folder_lock($cdom,$cnum,'group_allfolders',$now) eq 'ok') { # check if group_allfolders.sequence exists. - my ($errtext,$fatal)=&LONCAPA::map::mapread($allgrpsmap); - if ($fatal == 2) { #file does not exist; + my $mapcontents = &Apache::lonnet::getfile($allgrpsmap); + if ($mapcontents eq '-1') { #file does not exist; my $grpstitle = &mt('[_1] [_2]s',$crstype,$ucgpterm); my $topmap_url = '/'.$env{'course.'.$env{'request.course.id'}.'.url'}; $topmap_url =~ s|/+|/|g; @@ -3808,7 +3822,7 @@ sub map_updater { $LONCAPA::map::order[1+$#LONCAPA::map::order]=$newidx; my ($outtext,$errtext) = &LONCAPA::map::storemap($parentmap,1); if ($errtext) { - $outcome = &mt('Error storing updated parent folder')." ($parentmap): $errtext".'
'; + $outcome = &mt('Error saving updated parent folder')." ($parentmap): $errtext".'
'; return $outcome; } }