--- loncom/interface/courseprefs.pm 2010/02/12 00:39:51 1.8.2.6 +++ loncom/interface/courseprefs.pm 2009/11/21 18:07:03 1.11 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set configuration settings for a course # -# $Id: courseprefs.pm,v 1.8.2.6 2010/02/12 00:39:51 raeburn Exp $ +# $Id: courseprefs.pm,v 1.11 2009/11/21 18:07:03 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -101,7 +101,7 @@ sub handler { date => 'Locale used for community calendar', coco => 'Community Content', copo => 'Community Policy', - priv => 'Domain Coordinators in community', + priv => 'Domain Coodinators in community', defd => 'Default dates for member access', stuv => 'Member-viewable membership list options', stul => 'Member agreement needed to be listed', @@ -126,7 +126,7 @@ sub handler { date => 'Locale used for course calendar', coco => 'Course Content', copo => 'Course Policy', - priv => 'Domain Coordinators in course', + priv => 'Domain Coodinators in course', defd => 'Default dates for student access', stuv => 'Student-viewable classlist options', stul => 'Student agreement needed to be listed', @@ -332,7 +332,7 @@ sub handler { \@prefs_order,\%prefs,\%values, $cnum,undef,\@allitems); } elsif ($phase eq 'display') { - my $jscript = &get_jscript($cdom,$phase,$crstype); + my $jscript = &get_jscript($cdom,$phase); my @allitems = &get_allitems(%prefs); &Apache::lonconfigsettings::display_settings($r,$cdom,$phase,$context, \@prefs_order,\%prefs,\%values,undef,$jscript,\@allitems,$crstype); @@ -983,9 +983,9 @@ sub store_changes { $displayname = &mt($text); } if (defined($yesno{$key})) { - $displayval = &mt('No'); + $displayval = 'no'; if ($changes->{$item}{$key} eq 'yes') { - $displayval = &mt('Yes'); + $displayval = 'yes'; } } elsif (($key =~ /^default_enrollment_(start|end)_date$/) && ($displayval)) { $displayval = &Apache::lonlocal::locallocaltime($displayval); @@ -1038,10 +1038,6 @@ sub store_changes { } $output .= ''; } - } else { - foreach my $key (@delkeys) { - &Apache::lonnet::delenv('course.'.$cdom.'_'.$cnum.'.'.$key); - } } if (@need_env_update) { $chome = &Apache::lonnet::homeserver($cnum,$cdom); @@ -1178,8 +1174,8 @@ sub get_course { } sub get_jscript { - my ($cdom,$phase,$crstype) = @_; - my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom,$crstype); + my ($cdom,$phase) = @_; + my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom); my ($jscript,$categorize_js); my $stubrowse_js = &Apache::loncommon::studentbrowser_javascript(); my $browse_js = &Apache::loncommon::browser_and_searcher_javascript('parmset'); @@ -1298,14 +1294,14 @@ sub print_courseinfo { if (ref($cathash) eq 'HASH') { $categoriesform = &Apache::loncommon::assign_categories_table($cathash, - $settings->{'categories'},$crstype)."\n"; + $settings->{'categories'})."\n"; } } if (!defined($categoriesform)) { - $categoriesform = &mt('No categories defined in this domain.'); + $categoriesform = &mt('No categories defined for this domain'); } - my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom,$crstype); + my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom); my $replace; if ($crstype eq 'Community') { @@ -1511,24 +1507,15 @@ sub new_cloners_dom_row { } sub can_modify_catsettings { - my ($dom,$crstype) = @_; + my ($dom) = @_; my %domconf = &Apache::lonnet::get_dom('configuration',['coursecategories'],$dom); my ($can_toggle_cat,$can_categorize); if (ref($domconf{'coursecategories'}) eq 'HASH') { - if ($crstype eq 'Community') { - if ($domconf{'coursecategories'}{'togglecatscomm'} eq 'comm') { - $can_toggle_cat = 1; - } - if ($domconf{'coursecategories'}{'categorizecomm'} eq 'comm') { - $can_categorize = 1; - } - } else { - if ($domconf{'coursecategories'}{'togglecats'} eq 'crs') { - $can_toggle_cat = 1; - } - if ($domconf{'coursecategories'}{'categorize'} eq 'crs') { - $can_categorize = 1; - } + if ($domconf{'coursecategories'}{'togglecats'} eq 'crs') { + $can_toggle_cat = 1; + } + if ($domconf{'coursecategories'}{'categorize'} eq 'crs') { + $can_categorize = 1; } } return ($can_toggle_cat,$can_categorize); @@ -1544,13 +1531,7 @@ sub assign_course_categories { if (ref($domconf{'coursecategories'}) eq 'HASH') { $cathash = $domconf{'coursecategories'}{'cats'}; if (ref($cathash) eq 'HASH') { - foreach my $cat (keys(%{$cathash})) { - next if ($cat eq 'instcode::0'); - unless ($crstype eq 'Community') { - next if ($cat eq 'communities::0'); - } - $hascats ++; - } + $hascats = 1; } } my $catwin_js; @@ -1616,20 +1597,15 @@ ENDSCRIPT if ($hascats) { my %currsettings = &Apache::lonnet::get('environment',['hidefromcat','categories'],$cdom,$cnum); - my $cattable = &Apache::loncommon::assign_categories_table($cathash, - $currsettings{'categories'},$crstype); - if ($cattable eq '') { - $categoriesform .= &mt('No suitable categories defined for this course type in this domain.'); - } else { - $categoriesform .= $assign.'

'. - '
'."\n". - $cattable."\n". - '

'; - } + $categoriesform .= $assign.'

'. + '
'."\n". + &Apache::loncommon::assign_categories_table($cathash, + $currsettings{'categories'})."\n". + '

'; } else { - $categoriesform .= &mt('No categories defined in this domain.'); + $categoriesform .= &mt('No categories defined for this domain'); } $r->print($start_page.$categoriesform.$end_page); return; @@ -1760,11 +1736,11 @@ sub print_feedback { my %sections = &Apache::loncommon::get_sections($cdom,$cnum); my @sections = sort( { $a <=> $b } keys(%sections)); my %lt = &Apache::lonlocal::texthash ( - currone => 'Current recipient:', - currmult => 'Current recipients:', - add => 'Additional recipient:', - del => 'Delete?', - sec => 'Sections:', + currone => 'Current recipient:', + curmult => 'Current recipients:', + add => 'Additional recipient:', + del => 'Delete?', + sec => 'Sections:', ); foreach my $item (@{$ordered}) { @@ -1825,7 +1801,7 @@ sub user_table { if ($num) { $output .= ''. ''; - if ($num == 1) { + if ($num > 1) { $output .= $lt->{'currone'}; } else { $output .= $lt->{'currmult'}; @@ -1945,11 +1921,11 @@ sub print_discussion { my %sections = &Apache::loncommon::get_sections($cdom,$cnum); my @sections = sort( { $a <=> $b } keys(%sections)); my %lt = &Apache::lonlocal::texthash ( - currone => 'Disallowed:', - currmult => 'Disallowed:', - add => 'Disallow more:', - del => 'Delete?', - sec => 'Sections:', + currone => 'Disallowed:', + curmult => 'Disallowed:', + add => 'Disallow more:', + del => 'Delete?', + sec => 'Sections:', ); foreach my $item (@{$ordered}) {