--- loncom/interface/lonparmset.pm 2020/02/12 19:54:47 1.522.2.27 +++ loncom/interface/lonparmset.pm 2013/12/05 16:08:40 1.542 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set parameters for assessments # -# $Id: lonparmset.pm,v 1.522.2.27 2020/02/12 19:54:47 raeburn Exp $ +# $Id: lonparmset.pm,v 1.542 2013/12/05 16:08:40 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -36,8 +36,7 @@ lonparmset - Handler to set parameters f =head1 SYNOPSIS -lonparmset provides an interface to setting content parameters in a -course. +lonparmset provides an interface to setting course parameters. =head1 DESCRIPTION @@ -130,7 +129,7 @@ javascript function 'pjump'. =item print_td() -=item check_other_groups() +=item print_usergroups() =item parm_control_group() @@ -150,7 +149,7 @@ Input: See list below =back -Outputs: See list below +Outputs: See list below: =over 4 @@ -324,6 +323,31 @@ use HTML::Entities; use LONCAPA qw(:DEFAULT :match); +sub startSettingsScreen { + my ($r,$mode,$crstype)=@_; + + my $tabtext = &mt('Course Settings'); + if ($crstype eq 'Community') { + $tabtext = &mt('Community Settings'); + } + $r->print("\n".''."\n"); + $r->print('
'); +} + +sub endSettingsScreen { + my ($r)=@_; + $r->print('
'); +} + + + sub parmval { my ($what,$id,$def,$uname,$udom,$csec,$cgroup,$courseopt)=@_; return &parmval_by_symb($what,&symbcache($id),$def,$uname,$udom,$csec, @@ -879,7 +903,9 @@ sub page_js { var newWin = window.open(url, wdwName, options); newWin.focus(); } + // ]]> + $selscript ENDJS @@ -907,7 +933,7 @@ COURSECONTENTSCRIPT } sub startpage { - my ($r,$psymb) = @_; + my ($r,$psymb,$crstype) = @_; my %loaditems = ( 'onload' => "group_or_section('cgroup')", @@ -934,13 +960,14 @@ sub startpage { '; my $start_page = - &Apache::loncommon::start_page('Set/Modify Course Parameters',$js, - {'add_entries' => \%loaditems,}); + &Apache::loncommon::start_page('Set/Modify Course Parameters',$js, + {'add_entries' => \%loaditems,}); my $breadcrumbs = &Apache::lonhtmlcommon::breadcrumbs('Table Mode Parameter Setting','Table_Mode'); my $escfilter=&Apache::lonhtmlcommon::entity_encode($env{'form.filter'}); my $escpart=&Apache::lonhtmlcommon::entity_encode($env{'form.part'}); $r->print($start_page.$breadcrumbs); + &startSettingsScreen($r,'parmset',$crstype); $r->print(< @@ -955,8 +982,7 @@ ENDHEAD sub print_row { my ($r,$which,$part,$name,$symbp,$rid,$default,$defaulttype,$display,$defbgone, - $defbgtwo,$defbgthree,$parmlev,$uname,$udom,$csec,$cgroup,$usersgroups,$noeditgrp, - $readonly)=@_; + $defbgtwo,$defbgthree,$parmlev,$uname,$udom,$csec,$cgroup,$usersgroups)=@_; my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; my $courseopt=&Apache::lonnet::get_courseresdata($cnum,$cdom); @@ -1001,31 +1027,31 @@ sub print_row { if ($parmlev eq 'general') { if ($uname) { - &print_td($r,3,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,3,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } elsif ($cgroup) { - &print_td($r,6,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,$noeditgrp,$readonly); + &print_td($r,6,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } elsif ($csec) { - &print_td($r,9,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,9,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } else { - &print_td($r,14,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,14,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } } elsif ($parmlev eq 'map') { if ($uname) { - &print_td($r,2,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,2,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } elsif ($cgroup) { - &print_td($r,5,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,$noeditgrp,$readonly); + &print_td($r,5,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } elsif ($csec) { - &print_td($r,8,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,8,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } else { - &print_td($r,13,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,13,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } } else { if ($uname) { if (@{$usersgroups} > 1) { my ($coursereply,$grp_parm,$controlgrp); ($coursereply,$othergrp,$grp_parm,$controlgrp) = - &check_other_groups($$part{$which}.'.'.$$name{$which}, + &print_usergroups($r,$$part{$which}.'.'.$$name{$which}, $rid,$cgroup,$defbgone,$usersgroups,$result,$courseopt); if ($coursereply && $result > 3) { if (defined($controlgrp)) { @@ -1038,32 +1064,32 @@ sub print_row { } } - &print_td($r,14,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,14,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); - &print_td($r,13,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,12,'#FFDDDD',$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,11,'#FFDDDD',$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,10,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,13,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,12,'#FFDDDD',$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,11,'#FFDDDD',$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,10,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); if ($csec) { - &print_td($r,9,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,8,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,7,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,9,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,8,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,7,$defbgtwo,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } if ($cgroup) { - &print_td($r,6,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,$noeditgrp,$readonly); - &print_td($r,5,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,$noeditgrp,$readonly); - &print_td($r,4,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,$noeditgrp,$readonly); + &print_td($r,6,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,5,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,4,$defbgthree,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } if ($uname) { if ($othergrp) { $r->print($othergrp); } - &print_td($r,3,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,2,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); - &print_td($r,1,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display,'',$readonly); + &print_td($r,3,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,2,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); + &print_td($r,1,$defbgone,$result,\@outpar,$mprefix,$_,\@typeoutpar,$display); } } # end of $parmlev if/else @@ -1083,29 +1109,19 @@ sub print_row { } sub print_td { - my ($r,$which,$defbg,$result,$outpar,$mprefix,$value,$typeoutpar,$display,$noeditgrp,$readonly)=@_; + my ($r,$which,$defbg,$result,$outpar,$mprefix,$value,$typeoutpar,$display)=@_; $r->print(''); my $nolink = 0; - if ($readonly) { + if ($which == 11 || $which == 12) { $nolink = 1; - } else { - if ($which == 11 || $which == 12) { + } elsif ($mprefix =~ /availablestudent\&$/) { + if ($which > 3) { $nolink = 1; - } elsif (($env{'request.course.sec'} ne '') && ($which > 9)) { + } + } elsif ($mprefix =~ /examcode\&$/) { + unless ($which == 2) { $nolink = 1; - } elsif ($which == 4 || $which == 5 || $which == 6) { - if ($noeditgrp) { - $nolink = 1; - } - } elsif ($mprefix =~ /availablestudent\&$/) { - if ($which > 3) { - $nolink = 1; - } - } elsif ($mprefix =~ /examcode\&$/) { - unless ($which == 2) { - $nolink = 1; - } } } if ($nolink) { @@ -1118,8 +1134,8 @@ sub print_td { $r->print(''."\n"); } -sub check_other_groups { - my ($what,$rid,$cgroup,$defbg,$usersgroups,$result,$courseopt) = @_; +sub print_usergroups { + my ($r,$what,$rid,$cgroup,$defbg,$usersgroups,$result,$courseopt) = @_; my $courseid = $env{'request.course.id'}; my $output; my $symb = &symbcache($rid); @@ -1134,6 +1150,7 @@ sub check_other_groups { if (($coursereply) && ($cgroup ne $resultgroup)) { if ($result > 3) { $bgcolor = '#AAFFAA'; + $grp_parm = &valout($coursereply,$resulttype); } $grp_parm = &valout($coursereply,$resulttype); $output = ''; @@ -1285,7 +1302,8 @@ sub isdateparm { # from which you can select all desired parameters. # sub parmmenu { - my ($r)=@_; + my ($r,$allparms,$pscat,$keyorder)=@_; + my $tempkey; $r->print(< // print('
'); - &shortCuts($r); + &shortCuts($r,$allparms,$pscat,$keyorder); $r->print('
'); } # return a hash @@ -1392,8 +1410,8 @@ sub lookUpTableParameter { 'contentopen' => 'time_settings', 'contentclose' => 'time_settings', 'discussend' => 'time_settings', - 'printstartdate' => 'time_settings', - 'printenddate' => 'time_settings', + 'printopendate' => 'time_settings', + 'printclosedate' => 'time_settings', 'weight' => 'grading', 'handgrade' => 'grading', 'maxtries' => 'tries', @@ -1428,8 +1446,8 @@ sub lookUpTableParameter { 'lenient' => 'grading', 'retrypartial' => 'tries', 'discussvote' => 'misc', - 'examcode' => 'high_level_randomization', - ); + 'examcode' => 'high_level_randomization', + ); } sub whatIsMyCategory { @@ -1501,37 +1519,31 @@ sub parmboxes { &whatIsMyCategory($tempparameter, \%categoryList); } #part to print the parm-list - $r->print('
'."\n"); - - #Print parameters - for my $key (sort { $category_order{$a} <=> $category_order{$b} } keys %categoryList) { - next if(@{$categoryList{$key}} == 0); + foreach my $key (sort { $category_order{$a} <=> $category_order{$b} } keys(%categoryList)) { + next if (@{$categoryList{$key}} == 0); + next if ($key eq ''); $r->print('
' - .'

' - .&mt($categories{$key}) - .'

'."\n"); - foreach $tempkey (&keysindisplayorderCategory($categoryList{$key},$keyorder)) { - next if ($tempkey eq ''); + .'

'.&mt($categories{$key}).'

'."\n"); + foreach my $tempkey (&keysindisplayorderCategory($categoryList{$key},$keyorder)) { $r->print('' .'
'."\n"); } - $r->print("
\n"); + $r->print('
'); } - - $r->print("\n"); + $r->print("\n"); } # # This function offers some links on the parameter section to get with one click a group a parameters # sub shortCuts { - my ($r)=@_; + my ($r,$allparms,$pscat,$keyorder)=@_; # Parameter Selection $r->print( @@ -1590,60 +1602,21 @@ sub partmenu { } sub usermenu { - my ($r,$uname,$id,$udom,$csec,$cgroup,$parmlev,$usersgroups,$pssymb)=@_; + my ($r,$uname,$id,$udom,$csec,$cgroup,$parmlev,$usersgroups)=@_; my $chooseopt=&Apache::loncommon::select_dom_form($udom,'udom').' '. - &Apache::loncommon::selectstudent_link('parmform','uname','udom','condition'). - &Apache::lonhtmlcommon::scripttag(<'. - $stuonly.'  '. - ''; my $sections=''; my %sectionhash = &Apache::loncommon::get_sections(); my $groups; - my %grouphash; - if (($pssymb) || &Apache::lonnet::allowed('mdg',$env{'request.course.id'})) { - %grouphash = &Apache::longroup::coursegroups(); - } elsif ($env{'request.course.groups'} ne '') { - map { $grouphash{$_} = 1; } split(/:/,$env{'request.course.groups'}); - } + my %grouphash = &Apache::longroup::coursegroups(); my $g_s_header=''; my $g_s_footer=''; - my $currsec = $env{'request.course.sec'}; - if ($currsec) { - $sections=&mt('Section:').' '.$currsec; - if (%grouphash) { - $sections .= ';'.(' ' x2); - } - } elsif (%sectionhash && $currsec eq '') { + if (%sectionhash) { $sections=&mt('Section:').' '. '
'); - my $readonly = 1; - if ($parm_permission->{'edit'}) { - undef($readonly); - } - my $courseopt=&Apache::lonnet::get_courseresdata($env{'course.'.$env{'request.course.id'}.'.num'}, - $env{'course.'.$env{'request.course.id'}.'.domain'}); + + my $courseopt=&Apache::lonnet::get_courseresdata($cnum,$cdom); $r->print(&Apache::loncommon::start_data_table().&Apache::loncommon::start_data_table_header_row(). ''.&mt('Time').''.&mt('User').''.&mt('Extent').''.&mt('Users').''. - &mt('Parameter').''.&mt('Part').''.&mt('New Value').''); - unless ($readonly) { - $r->print(''.&mt('Announce').''); - } - $r->print(&Apache::loncommon::end_data_table_header_row()); + &mt('Parameter').''.&mt('Part').''.&mt('New Value').''.&mt('Announce').''. + &Apache::loncommon::end_data_table_header_row()); my $shown=0; my $folder=''; if ($env{'form.displayfilter'} eq 'currentfolder') { @@ -4839,12 +4454,6 @@ sub parm_change_log { } if ($last) { ($folder) = &Apache::lonnet::decode_symb($last); } } - my $numgroups = 0; - my @groups; - if ($env{'request.course.groups'} ne '') { - @groups = split(/:/,$env{'request.course.groups'}); - $numgroups = scalar(@groups); - } foreach my $id (sort { if ($parmlog{$b}{'exe_time'} ne $parmlog{$a}{'exe_time'}) { @@ -4866,8 +4475,7 @@ sub parm_change_log { $parmlog{$id}{'exe_uname'}, $parmlog{$id}{'exe_udom'}); my $send_msg_link=''; - if ((!$readonly) && - (($parmlog{$id}{'exe_uname'} ne $env{'user.name'}) + if ((($parmlog{$id}{'exe_uname'} ne $env{'user.name'}) || ($parmlog{$id}{'exe_udom'} ne $env{'user.domain'}))) { $send_msg_link ='
'. &Apache::loncommon::messagewrapper(&mt('Send message'), @@ -4884,14 +4492,6 @@ sub parm_change_log { !exists($parmlog{$id}{'logentry'}{$changed.'.type'})); my ($realm,$section,$parmname,$part,$what,$middle,$uname,$udom,$issection,$realmdescription)= &components($changed,$parmlog{$id}{'uname'},$parmlog{$id}{'udom'},undef,undef,$typeflag); - if ($env{'request.course.sec'} ne '') { - next if (($issection ne '') && (!(($issection eq $env{'request.course.sec'}) || - ($numgroups && (grep(/^\Q$issection\E$/,@groups)))))); - if ($uname ne '') { - my $stusection = &Apache::lonnet::getsection($uname,$udom,$env{'request.course.id'}); - next if (($stusection ne '-1') && ($stusection ne $env{'request.course.sec'})); - } - } if ($env{'form.displayfilter'} eq 'currentfolder') { if ($folder) { if ($middle!~/^\Q$folder\E/) { next; } @@ -4945,31 +4545,27 @@ sub parm_change_log { } } } - $output .= ''; - - unless ($readonly) { - $output .= ''; - if ($stillactive) { - my $parmitem = &standard_parameter_names($parmname); - $parmitem = &mt($parmitem); - my $title=&mt('Changed [_1]',$parmitem); - my $description=&mt('Changed [_1] for [_2] to [_3]', - $parmitem,$realmdescription, - (&isdateparm($istype{$parmname})?&Apache::lonlocal::locallocaltime($value):$value)); - if (($uname) && ($udom)) { - $output .= - &Apache::loncommon::messagewrapper('Notify User', - $uname,$udom,$title, - $description); - } else { - $output .= - &Apache::lonrss::course_blog_link($id,$title, - $description); - } - } - $output .= ''; - } - $output .= &Apache::loncommon::end_data_table_row(); + $output .= ''; + + if ($stillactive) { + my $parmitem = &standard_parameter_names($parmname); + $parmitem = &mt($parmitem); + my $title=&mt('Changed [_1]',$parmitem); + my $description=&mt('Changed [_1] for [_2] to [_3]', + $parmitem,$realmdescription, + (&isdateparm($istype{$parmname})?&Apache::lonlocal::locallocaltime($value):$value)); + if (($uname) && ($udom)) { + $output .= + &Apache::loncommon::messagewrapper('Notify User', + $uname,$udom,$title, + $description); + } else { + $output .= + &Apache::lonrss::course_blog_link($id,$title, + $description); + } + } + $output .= ''.&Apache::loncommon::end_data_table_row(); } if ($env{'form.displayfilter'} eq 'containing') { my $wholeentry=$about_me_link.':'. @@ -4989,6 +4585,7 @@ sub parm_change_log { || $shown<=$env{'form.show'})) { last; } } $r->print(&Apache::loncommon::end_data_table()); + &endSettingsScreen($r); $r->print(&Apache::loncommon::end_page()); } @@ -5037,10 +4634,10 @@ sub update_slots { context => 'parameter', ); &Apache::lonnet::write_log('course','slotreservationslog',\%storehash, - '',$uname,$udom,$cnum,$cdom); + '',$uname,$udom,$cnum,$cdom); &Apache::lonnet::write_log('course',$cdom.'_'.$cnum.'_slotlog',\%storehash, - '',$uname,$udom,$uname,$udom); + '',$uname,$udom,$uname,$udom); } return $success; } @@ -5071,9 +4668,9 @@ sub delete_slots { context => 'parameter', ); &Apache::lonnet::write_log('course','slotreservationslog',\%storehash, - 1,$uname,$udom,$cnum,$cdom); + 1,$uname,$udom,$cnum,$cdom); &Apache::lonnet::write_log('course',$cdom.'_'.$cnum.'_slotlog',\%storehash, - 1,$uname,$udom,$uname,$udom); + 1,$uname,$udom,$uname,$udom); } } } @@ -5096,7 +4693,7 @@ sub parameter_release_vars { } sub parameter_releasecheck { - my ($name,$value,$needsrelease,$cmajor,$cminor) = @_; + my ($name,$value,$needsrelease,$chostname,$cmajor,$cminor) = @_; my $needsnewer; my ($needsmajor,$needsminor) = split(/\./,$needsrelease); if (($cmajor < $needsmajor) || @@ -5131,19 +4728,6 @@ sub oldversion_warning { } } } - } elsif (($name eq 'printstartdate') || ($name eq 'printenddate')) { - my $now = time; - if ($value =~ /^\d+$/) { - if ($name eq 'printstartdate') { - if ($value > $now) { - $desc = &Apache::lonlocal::locallocaltime($value); - } - } elsif ($name eq 'printenddate') { - if ($value < $now) { - $desc = &Apache::lonlocal::locallocaltime($value); - } - } - } } my $standard_name = &standard_parameter_names($name); return '

'. @@ -5155,46 +4739,6 @@ sub oldversion_warning { '

'; } -sub get_permission { - my %permission; - my $allowed = 0; - return (\%permission,$allowed) unless ($env{'request.course.id'}); - if ((&Apache::lonnet::allowed('opa',$env{'request.course.id'})) || - (&Apache::lonnet::allowed('opa',$env{'request.course.id'}.'/'. - $env{'request.course.sec'}))) { - %permission= ( - 'edit' => 1, - 'set' => 1, - 'setoverview' => 1, - 'addmetadata' => 1, - 'ordermetadata' => 1, - 'setrestrictmeta' => 1, - 'newoverview' => 1, - 'setdefaults' => 1, - 'settable' => 1, - 'parameterchangelog' => 1, - 'cleanparameters' => 1, - 'dateshift1' => 1, - 'dateshift2' => 1, - 'helper' => 1, - ); - } elsif ((&Apache::lonnet::allowed('vpa',$env{'request.course.id'})) || - (&Apache::lonnet::allowed('vpa',$env{'request.course.id'}.'/'. - $env{'request.course.sec'}))) { - %permission = ( - 'set' => 1, - 'settable' => 1, - 'newoverview' => 1, - 'setoverview' => 1, - 'parameterchangelog' => 1, - ); - } - foreach my $perm (values(%permission)) { - if ($perm) { $allowed=1; last; } - } - return (\%permission,$allowed); -} - sub handler { my $r=shift; @@ -5222,41 +4766,41 @@ sub handler { 'Parameter_Manager,Course_Environment,Parameter_Helper,Parameter_Overview,Table_Mode'}); # ----------------------------------------------------- Needs to be in a course - my ($parm_permission,$allowed) = &get_permission(); + my $parm_permission = + (&Apache::lonnet::allowed('opa',$env{'request.course.id'}) || + &Apache::lonnet::allowed('opa',$env{'request.course.id'}.'/'. + $env{'request.course.sec'})); my $exists = &check_for_course_info(); - if ($env{'request.course.id'} && $allowed && $exists) { + if ($env{'request.course.id'} && $parm_permission && $exists) { # # Main switch on form.action and form.state, as appropriate # # Check first if coming from someone else headed directly for # the table mode - if (($parm_permission->{'set'}) && - ((($env{'form.command'} eq 'set') && ($env{'form.url'}) - && (!$env{'form.dis'})) || ($env{'form.symb'}))) { - &assessparms($r,$parm_permission); + if ((($env{'form.command'} eq 'set') && ($env{'form.url'}) + && (!$env{'form.dis'})) || ($env{'form.symb'})) { + &assessparms($r); } elsif (! exists($env{'form.action'})) { &print_main_menu($r,$parm_permission); - } elsif (!$parm_permission->{$env{'form.action'}}) { - &print_main_menu($r,$parm_permission); } elsif ($env{'form.action'} eq 'setoverview') { - &overview($r,$parm_permission); - } elsif ($env{'form.action'} eq 'addmetadata') { - &addmetafield($r); - } elsif ($env{'form.action'} eq 'ordermetadata') { - &order_meta_fields($r); + &overview($r); + } elsif ($env{'form.action'} eq 'addmetadata') { + &addmetafield($r); + } elsif ($env{'form.action'} eq 'ordermetadata') { + &order_meta_fields($r); } elsif ($env{'form.action'} eq 'setrestrictmeta') { - &setrestrictmeta($r); + &setrestrictmeta($r); } elsif ($env{'form.action'} eq 'newoverview') { - &newoverview($r,$parm_permission); + &newoverview($r); } elsif ($env{'form.action'} eq 'setdefaults') { - &defaultsetter($r); - } elsif ($env{'form.action'} eq 'settable') { - &assessparms($r,$parm_permission); + &defaultsetter($r); + } elsif ($env{'form.action'} eq 'settable') { + &assessparms($r); } elsif ($env{'form.action'} eq 'parameterchangelog') { - &parm_change_log($r,$parm_permission); + &parm_change_log($r); } elsif ($env{'form.action'} eq 'cleanparameters') { - &clean_parameters($r); + &clean_parameters($r); } elsif ($env{'form.action'} eq 'dateshift1') { &date_shift_one($r); } elsif ($env{'form.action'} eq 'dateshift2') {