--- loncom/interface/loncoursegroups.pm 2006/05/09 14:38:09 1.15
+++ loncom/interface/loncoursegroups.pm 2006/05/18 01:08:50 1.17
@@ -30,6 +30,7 @@ use Apache::loncommon;
use Apache::lonhtmlcommon;
use Apache::lonlocal;
use Apache::lonnavmaps;
+use Apache::longroup;
use Apache::Constants qw(:common :http);
sub handler {
@@ -154,7 +155,7 @@ sub display_groups {
if (!defined($action)) {
$action = 'view';
}
- my %curr_groups = &Apache::loncommon::coursegroups($cdom,$cnum);
+ my %curr_groups = &Apache::longroup::coursegroups($cdom,$cnum);
if (%curr_groups) {
$r->print('
');
$r->print(&Apache::lonhtmlcommon::start_pick_box());
@@ -182,7 +183,7 @@ END
my %Sortby = ();
foreach my $group (sort(keys(%curr_groups))) {
%{$grp_info{$group}} =
- &Apache::loncommon::get_group_settings(
+ &Apache::longroup::get_group_settings(
$curr_groups{$group});
my $members_result = &group_members($cdom,$cnum,$group,
\%grp_info);
@@ -267,10 +268,10 @@ END
my @coursegroups = split(/:/,$env{'request.course.groups'});
if (@coursegroups > 0) {
$r->print('
');
- my %curr_groups = &Apache::loncommon::coursegroups($cdom,$cnum);
+ my %curr_groups = &Apache::longroup::coursegroups($cdom,$cnum);
if (%curr_groups) {
foreach my $group (@coursegroups) {
- my %group_info = &Apache::loncommon::get_group_settings(
+ my %group_info = &Apache::longroup::get_group_settings(
$curr_groups{$group});
my $description = &Apache::lonnet::unescape(
$group_info{description});
@@ -433,7 +434,10 @@ sub group_administration {
);
if (ref($stored{'autorole'}) eq 'ARRAY') {
foreach my $role (@{$stored{'autorole'}}) {
- $elements{'modify'}{'change_settings'}{'sec_'.$role} = 'selectbox';
+ unless ($role eq 'cc') {
+ $elements{'modify'}{'change_settings'}{'sec_'.$role} =
+ 'selectbox';
+ }
}
}
%{$elements{'create'}{'pick_members'}} = (
@@ -454,9 +458,8 @@ sub group_administration {
(($state eq 'pick_name') || ($state eq 'pick_privs'))) ||
(($action eq 'modify') && (($state eq 'change_settings') ||
($state eq 'add_members')))) {
- my $numsections = &Apache::loncommon::get_sections($cdom,$cnum,
- \%sectioncount);
- if ($numsections > 0) {
+ %sectioncount = &Apache::loncommon::get_sections($cdom,$cnum);
+ if (%sectioncount) {
$elements{'create'}{'pick_name'}{'sectionpick'} = 'selectbox';
$elements{'modify'}{'change_mapping'}{'sectionpick'} = 'selectbox';
$elements{'modify'}{'add_members'}{'sectionpick'} = 'selectbox';
@@ -808,12 +811,12 @@ function changeSort(caller) {
sub retrieve_settings {
my ($cdom,$cnum,$groupname) = @_;
- my %curr_groups = &Apache::loncommon::coursegroups($cdom,$cnum,$groupname);
+ my %curr_groups = &Apache::longroup::coursegroups($cdom,$cnum,$groupname);
return if (!%curr_groups);
my %groupinfo =
- &Apache::loncommon::get_group_settings($curr_groups{$groupname});
+ &Apache::longroup::get_group_settings($curr_groups{$groupname});
my %stored;
@@ -850,12 +853,14 @@ sub retrieve_settings {
$stored{'autodrop'} = $groupinfo{'autodrop'};
if (exists($groupinfo{'autosec'})) {
foreach my $role (sort(keys(%{$groupinfo{'autosec'}}))) {
- foreach my $section (@{$groupinfo{'autosec'}{$role}}) {
- push (@{$stored{'sec_'.$role}},$section);
- }
- if (@{$groupinfo{'autosec'}{$role}} > 0) {
- push(@{$stored{'autorole'}},$role);
- }
+ if (ref($groupinfo{'autosec'}{$role}) eq 'ARRAY') {
+ foreach my $section (@{$groupinfo{'autosec'}{$role}}) {
+ push (@{$stored{'sec_'.$role}},$section);
+ }
+ if (@{$groupinfo{'autosec'}{$role}} > 0) {
+ push(@{$stored{'autorole'}},$role);
+ }
+ }
}
}
return %stored;
@@ -1248,8 +1253,8 @@ sub membership_options {
$r->print(&Apache::lonhtmlcommon::role_select_row(\@roles));
if (@sections > 0) {
@sections = sort {$a cmp $b} @sections;
- unshift(@sections,'_all'); # Put 'all' at the front of the list
- unshift(@sections,'_nosec'); # Put 'no sections' next
+ unshift(@sections,'all'); # Put 'all' at the front of the list
+ unshift(@sections,'none'); # Put 'no sections' next
$r->print('