--- loncom/interface/courseprefs.pm 2010/12/24 17:16:04 1.37 +++ loncom/interface/courseprefs.pm 2011/01/15 01:33:04 1.43 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set configuration settings for a course # -# $Id: courseprefs.pm,v 1.37 2010/12/24 17:16:04 raeburn Exp $ +# $Id: courseprefs.pm,v 1.43 2011/01/15 01:33:04 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -268,8 +268,8 @@ sub handler { my %lt; if ($crstype eq 'Community') { %lt = ( - conf => 'Community Configuration', - edit => 'Edit Community Configuration', + conf => 'Community Settings', + edit => 'Edit Community Settings', gens => 'General community settings', idnu => 'Community ID or number', desc => 'Community Description', @@ -287,7 +287,7 @@ sub handler { defd => 'Default dates for member access', stuv => 'Member-viewable membership list options', stul => 'Member agreement needed to be listed', - clas => 'Membership and Facilitator Listing', + clas => 'Membership and facilitator listing', priv => 'Privileged users (Domain Coordinators) in facilitator listing', defc => 'Default Community Spreadsheet', defs => 'Default User Spreadsheet', @@ -295,8 +295,8 @@ sub handler { ); } else { %lt = ( - conf => 'Course Configuration', - edit => 'Edit Course Configuration', + conf => 'Course Settings', + edit => 'Edit Course Settings', gens => 'General course settings', idnu => 'Course ID or number', desc => 'Course Description', @@ -314,7 +314,7 @@ sub handler { defd => 'Default dates for student access', stuv => 'Student-viewable classlist options', stul => 'Student agreement needed to be listed', - clas => 'Classlists and Staff Listing', + clas => 'Classlists and staff listing', priv => 'Privileged users (Domain Coordinators) in staff listing', defc => 'Default Course Spreadsheet', defs => 'Default Student Spreadsheet', @@ -372,7 +372,7 @@ sub handler { }, }, 'localization' => - { text => 'Language and Time Localization', + { text => 'Language and time localization', help => 'Course_Environment', ordered => ['languages','timezone','datelocale'], itemtext => { @@ -577,12 +577,12 @@ sub print_config_box { ' '; - if (exists $item->{'header'}->[0]->{'col1'} || - exists $item->{'header'}->[0]->{'col2'}) { + if (exists $item->{'header'}->[2]->{'col1'} || + exists $item->{'header'}->[2]->{'col2'}) { $output .= ' - - + + '; } } @@ -1708,8 +1708,7 @@ sub print_courseinfo { text => ''.&mt($itemtext->{'cloners'}).'
'. &mt('Owner and Coordinators included automatically'), input => 'textbox', - size => '40', - advanced => 1 + size => '40' }, 'rolenames' => { text => ''.&mt($itemtext->{'rolenames'}).'
'. @@ -2069,23 +2068,21 @@ sub display_loncaparev_constraints { my $cdom = $env{'course.'.$cid.'.domain'}; my $cnum = $env{'course.'.$cid.'.num'}; my $output; + my %lt = &Apache::lonlocal::texthash ( + 'all' => 'all', + 'section/group' => 'section/group', + 'user' => 'user', + ); my (%checkparms,%checkresponsetypes,%checkcrstypes,%anonsurvey,%randomizetry); &Apache::loncommon::build_release_hashes(\%checkparms,\%checkresponsetypes, \%checkcrstypes,\%anonsurvey,\%randomizetry); - -# my %paramstrings = -# ('string_questiontype' => -# [[ 'anonsurveycred', 'Anonymous Survey'], -# [ 'anonsurvey', 'Anonymous Survey'], -# [ 'randomizetry', 'New Randomization Each N Tries']] -# ); if (defined($checkcrstypes{$crstype})) { $output .= '

'.&mt('Course type: [_1] requires [_2] or newer',$crstype, $checkcrstypes{$crstype}).'

'; } my (%fromparam,%rowspan,%bymap,%byresource,@scopeorder,%toshow,%allmaps, %byresponsetype,%bysubmission); - @scopeorder = ('course','section/group','user'); + @scopeorder = ('all','section/group','user'); my $resourcedata = &Apache::lonparmset::readdata($cnum,$cdom); if (ref($resourcedata) eq 'HASH') { foreach my $key (keys(%{$resourcedata})) { @@ -2109,12 +2106,12 @@ sub display_loncaparev_constraints { $which = $2; $scope = 'section/group'; } else { - $scope = 'course'; + $scope = 'all'; } my $what="$stdname=$valname"; if ($key =~ /^\Q$start$middle\E\w+\.\Q$item\E$/) { $level = 'general'; - if ($scope eq 'course') { + if ($scope eq 'all') { if (ref($fromparam{$rev}{$scope}) eq 'ARRAY') { unless(grep(/^\Q$what\E$/,@{$fromparam{$rev}{$scope}})) { push(@{$fromparam{$rev}{$scope}},$what); @@ -2135,7 +2132,7 @@ sub display_loncaparev_constraints { } elsif ($key =~ /^\Q$start$middle\E(.+)___\(all\).\w+\.\Q$item\E$/) { $level = 'folder'; $map = $1; - if ($scope eq 'course') { + if ($scope eq 'all') { if (ref($bymap{$map}{$rev}{$scope}) eq 'ARRAY') { unless(grep(/^\Q$what\E$/,@{$bymap{$map}{$rev}{$scope}})) { push(@{$bymap{$map}{$rev}{$scope}},$what); @@ -2155,7 +2152,7 @@ sub display_loncaparev_constraints { } elsif ($key =~ /^\Q$start$middle\E(.+)\.\w+\.\Q$item\E$/) { $level = 'resource'; $resource = $1; - if ($scope eq 'course') { + if ($scope eq 'all') { if (ref($byresource{$resource}{$rev}{$scope}) eq 'ARRAY') { unless(grep(/^\Q$what\E$/,@{$byresource{$resource}{$rev}{$scope}})) { push(@{$byresource{$resource}{$rev}{$scope}},$what); @@ -2194,7 +2191,7 @@ sub display_loncaparev_constraints { if ($newrow) { $output .= &Apache::loncommon::continue_data_table_row(); } - $output .= ''; + $output .= ''; foreach my $which (sort(keys(%{$fromparam{$rev}{$scope}}))) { $output .= ''; @@ -2205,7 +2202,7 @@ sub display_loncaparev_constraints { if ($newrow) { $output .= &Apache::loncommon::continue_data_table_row(); } - $output .= ''. &Apache::loncommon::end_data_table_row(); $newrow = 1; @@ -2311,7 +2308,7 @@ sub display_loncaparev_constraints { $r->print($output); if (defined($navmap)) { &show_contents_view($r,$navmap,$cid,\%toshow,\%bymap,\%byresource,\%bysubmission, - \%byresponsetype,\@scopeorder); + \%byresponsetype,\@scopeorder,\%lt); } $r->print('

'); } else { @@ -2324,7 +2321,8 @@ sub display_loncaparev_constraints { } sub show_contents_view { - my ($r,$navmap,$cid,$toshow,$bymap,$byresource,$bysubmission,$byresponsetype,$scopeorder) = @_; + my ($r,$navmap,$cid,$toshow,$bymap,$byresource,$bysubmission,$byresponsetype, + $scopeorder,$lt) = @_; if ((keys(%{$toshow}) > 0) || (keys(%{$byresource}) > 0) || (keys(%{$bysubmission}) > 0) || (keys(%{$byresponsetype}) > 0)) { my $location=&Apache::loncommon::lonhttpdurl("/adm/lonIcons"); @@ -2338,7 +2336,7 @@ sub show_contents_view { &Apache::loncommon::end_data_table_header_row(). &Apache::loncommon::start_data_table_row(). ''); - &releases_by_map($r,$bymap,$topmap,$scopeorder); + &releases_by_map($r,$bymap,$topmap,$scopeorder,$lt); $r->print(&Apache::loncommon::end_data_table_row()); my $it=$navmap->getIterator(undef,undef,undef,1,1,undef); my $curRes; @@ -2406,7 +2404,7 @@ sub show_contents_view { $r->print('
'.&mt($item->{'header'}->[0]->{'col1'}).''.&mt($item->{'header'}->[0]->{'col2'}).''.&mt($item->{'header'}->[2]->{'col1'}).''.&mt($item->{'header'}->[2]->{'col2'}).'
'.$scope.''.$lt{$scope}.''.$which.''. join('
',@{$fromparam{$rev}{$scope}{$which}}).'
'.$scope.' '. + $output .= ''.$lt{$scope}.' '. join('
',@{$fromparam{$rev}{$scope}}).'
 '.$icon.' '.&mt('Main Course Documents').'
'); foreach my $scope (@{$scopeorder}) { if (ref($byresource->{$symb}{$rev}{$scope}) eq 'HASH') { - $r->print(''); + $r->print(''); foreach my $which (sort(keys(%{$byresource->{$symb}{$rev}{$scope}}))) { $r->print(''); } elsif (ref($byresource->{$symb}{$rev}{$scope}) eq 'ARRAY') { - $r->print(''. + $r->print(''. ''); } @@ -2463,7 +2461,7 @@ sub show_contents_view { } sub releases_by_map { - my ($r,$bymap,$url,$scopeorder) = @_; + my ($r,$bymap,$url,$scopeorder,$lt) = @_; return unless ((ref($bymap) eq 'HASH') && (ref($scopeorder) eq 'ARRAY')); if (ref($bymap->{$url}) eq 'HASH') { foreach my $rev (sort(keys(%{$bymap->{$url}}))) { @@ -2472,7 +2470,7 @@ sub releases_by_map { $r->print('
'.&mt('Setting - scope: [_1]',$scope).'
'.&mt('Setting - scope: [_1]',$lt->{$scope}).''.$which.''. join('
',@{$byresource->{$symb}{$rev}{$scope}{$which}}). @@ -2414,7 +2412,7 @@ sub show_contents_view { } $r->print('
'.&mt('Setting - scope: [_1]',$scope).'
'.&mt('Setting - scope: [_1]',$lt->{$scope}).' '. join('
',@{$byresource->{$symb}{$rev}{$scope}}).'
'); foreach my $scope (@{$scopeorder}) { if (ref($bymap->{$url}{$rev}{$scope}) eq 'HASH') { - $r->print(''); + $r->print(''); foreach my $which (sort(keys(%{$bymap->{$url}{$rev}{$scope}}))) { $r->print(''); } elsif (ref($bymap->{$url}{$rev}{$scope}) eq 'ARRAY') { - $r->print(''); } @@ -3252,6 +3250,7 @@ sub print_grading { '64bit5' => '64bit5', }, order => ['32bit','64bit','64bit2','64bit3','64bit4','64bit5'], + advanced => 1 }, 'receiptalg' => { text => ''.&mt($itemtext->{'receiptalg'}).'
'. @@ -3263,6 +3262,7 @@ sub print_grading { receipt3 => 'receipt3', }, order => ['receipt','receipt2','receipt3'], + advanced => 1 }, 'disablesigfigs' => { text => ''.&mt($itemtext->{'disablesigfigs'}).'', @@ -3534,7 +3534,11 @@ sub make_item_rows { my $count = 0; foreach my $item (@{$ordered}) { $count ++; - $datatable .= &item_table_row_start($items->{$item}{text},$count); + if (exists $items->{$item}{advanced} && $items->{$item}{advanced} == 1) { + $datatable .= &item_table_row_start($items->{$item}{text},$count,"advanced"); + } else { + $datatable .= &item_table_row_start($items->{$item}{text},$count); + } if ($item eq 'nothideprivileged') { $datatable .= ¬hidepriv_row($cdom,$item,$settings,$crstype); } elsif ($item eq 'print_header_format') {
'.&mt('Setting - scope: [_1]',$scope).'
'.&mt('Setting - scope: [_1]',$lt->{$scope}).''.$which.''. join('
',@{$bymap->{$url}{$rev}{$scope}{$which}}). @@ -2480,7 +2478,7 @@ sub releases_by_map { } $r->print('
'.&mt('Setting - scope: [_1]',$scope). + $r->print('
'.&mt('Setting - scope: [_1]',$lt->{$scope}). ' '. join('
',@{$bymap->{$url}{$rev}{$scope}}).'