--- loncom/interface/lonparmset.pm 2010/01/25 21:58:31 1.413.4.3
+++ loncom/interface/lonparmset.pm 2010/06/02 18:09:33 1.413.4.9
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.413.4.3 2010/01/25 21:58:31 raeburn Exp $
+# $Id: lonparmset.pm,v 1.413.4.9 2010/06/02 18:09:33 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -247,37 +247,6 @@ Variables used (guessed by Jeremy):
=item parse_key()
-=item check_cloners() :
-
-Checks if new users included in list of allowed cloners
-are valid users. Replaces supplied list with
-cleaned list containing only users with valid usernames
-and domains.
-
-Inputs: $clonelist, $oldcloner
-where $clonelist is ref to array of requested cloners,
-and $oldcloner is ref to array of currently allowed
-cloners.
-
-Returns: string - comma separated list of requested
-cloners (username:domain) who do not exist in system.
-
-=item change_clone() :
-
-Modifies the list of courses a user can clone (stored
-in the user's environment.db file), called when a
-change is made to the list of users allowed to clone
-a course.
-
-Inputs: $action,$cloner
-where $action is add or drop, and $cloner is identity of
-user for whom cloning ability is to be changed in course.
-
-
-=item check_cloners()
-
-=item change_clone()
-
=item header()
Output html header for page
@@ -2151,7 +2120,7 @@ ENDTABLEHEADFOUR
."
\n"
);
#---------------------------------------------------------------- print table
- $r->print('
'..&Apache::loncommon::start_data_table().
+ $r->print('
'.&Apache::loncommon::start_data_table().
&Apache::loncommon::start_data_table_header_row().
'
'.&mt('Parameter Name').' | '.
''.&mt('Default Value').' | '.
@@ -3051,121 +3020,6 @@ sub parse_key {
return %data;
}
-sub extract_cloners {
- my ($clonelist,$allowclone) = @_;
- if ($clonelist =~ /,/) {
- @{$allowclone} = split(/,/,$clonelist);
- } else {
- $$allowclone[0] = $clonelist;
- }
-}
-
-sub check_cloners {
- my ($clonelist,$oldcloner) = @_;
- my ($clean_clonelist,%disallowed);
- my @allowclone = ();
- &extract_cloners($$clonelist,\@allowclone);
- foreach my $currclone (@allowclone) {
- if (!grep(/^\Q$currclone\E$/,@$oldcloner)) {
- if ($currclone eq '*') {
- $clean_clonelist .= $currclone.',';
- } else {
- my ($uname,$udom) = split(/:/,$currclone);
- if ($uname eq '*') {
- if ($udom =~ /^$match_domain$/) {
- if (!&Apache::lonnet::domain($udom)) {
- $disallowed{'domain'} .= $currclone.',';
- } else {
- $clean_clonelist .= $currclone.',';
- }
- } else {
- $disallowed{'format'} .= $currclone.',';
- }
- } elsif ($currclone !~/^($match_username)\:($match_domain)$/) {
- $disallowed{'format'} .= $currclone.',';
- } else {
- if (&Apache::lonnet::homeserver($uname,$udom) eq 'no_host') {
- $disallowed{'newuser'} .= $currclone.',';
- } else {
- $clean_clonelist .= $currclone.',';
- }
- }
- }
- } else {
- $clean_clonelist .= $currclone.',';
- }
- }
- foreach my $key (keys(%disallowed)) {
- $disallowed{$key} =~ s/,$//;
- }
- if ($clean_clonelist) {
- $clean_clonelist =~ s/,$//;
- }
- $$clonelist = $clean_clonelist;
- return %disallowed;
-}
-
-sub change_clone {
- my ($clonelist,$oldcloner) = @_;
- my ($uname,$udom);
- my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
- my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};
- my $clone_crs = $cnum.':'.$cdom;
-
- if ($cnum && $cdom) {
- my @allowclone;
- &extract_cloners($clonelist,\@allowclone);
- foreach my $currclone (@allowclone) {
- if (!grep(/^$currclone$/,@$oldcloner)) {
- if ($currclone ne '*') {
- ($uname,$udom) = split(/:/,$currclone);
- if ($uname && $udom && $uname ne '*') {
- if (&Apache::lonnet::homeserver($uname,$udom) ne 'no_host') {
- my %currclonecrs = &Apache::lonnet::dump('environment',$udom,$uname,'cloneable');
- if ($currclonecrs{'cloneable'} !~ /\Q$clone_crs\E/) {
- if ($currclonecrs{'cloneable'} eq '') {
- $currclonecrs{'cloneable'} = $clone_crs;
- } else {
- $currclonecrs{'cloneable'} .= ','.$clone_crs;
- }
- &Apache::lonnet::put('environment',\%currclonecrs,$udom,$uname);
- }
- }
- }
- }
- }
- }
- foreach my $oldclone (@$oldcloner) {
- if (!grep(/^\Q$oldclone\E$/,@allowclone)) {
- if ($oldclone ne '*') {
- ($uname,$udom) = split(/:/,$oldclone);
- if ($uname && $udom && $uname ne '*' ) {
- if (&Apache::lonnet::homeserver($uname,$udom) ne 'no_host') {
- my %currclonecrs = &Apache::lonnet::dump('environment',$udom,$uname,'cloneable');
- my %newclonecrs = ();
- if ($currclonecrs{'cloneable'} =~ /\Q$clone_crs\E/) {
- if ($currclonecrs{'cloneable'} =~ /,/) {
- my @currclonecrs = split/,/,$currclonecrs{'cloneable'};
- foreach my $crs (@currclonecrs) {
- if ($crs ne $clone_crs) {
- $newclonecrs{'cloneable'} .= $crs.',';
- }
- }
- $newclonecrs{'cloneable'} =~ s/,$//;
- } else {
- $newclonecrs{'cloneable'} = '';
- }
- &Apache::lonnet::put('environment',\%newclonecrs,$udom,$uname);
- }
- }
- }
- }
- }
- }
- }
-}
-
-
sub header {
return &Apache::loncommon::start_page('Parameter Manager');
}
@@ -3183,22 +3037,16 @@ ENDMAINFORMHEAD
my $vgr = &Apache::lonnet::allowed('vgr',$env{'request.course.id'});
my $mgr = &Apache::lonnet::allowed('mgr',$env{'request.course.id'});
+ my $crstype = &Apache::loncommon::course_type();
+ my $lc_crstype = lc($crstype);
+
my @menu =
- ( { divider=>'Settings for Your Course',
+ ( { divider=>"Settings for Your $crstype",
},
- { text => 'Edit course configuration',
- url => '/adm/courseprefs?origin=params',
- permission => $parm_permission,
- help => 'Course_Environment',
- },
{ text => 'Set Portfolio Metadata',
action => 'setrestrictmeta',
permission => $parm_permission,
},
- { text => 'Manage Course Slots',
- url => '/adm/slotrequest?command=showslots',
- permission => $vgr,
- },
{ text => 'Reset Student Access Times',
url => '/adm/helper/resettimes.helper',
permission => $mgr,
@@ -3232,7 +3080,7 @@ ENDMAINFORMHEAD
permission => $parm_permission,
help => 'Parameter_Overview',
},
- { text => 'Parameter Change Log and Course Blog Posting/User Notification',
+ { text => "Parameter Change Log and $crstype Blog Posting/User Notification",
action => 'parameterchangelog',
permission => $parm_permission,
},
@@ -4150,8 +3998,6 @@ sub handler {
&Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/parmset?action=dateshift1&timebase='.$env{'form.timebase'},
text=>"Shifting Dates"});
&date_shift_two($r);
- } elsif ($env{'form.action'} eq 'categorizecourse' && $parm_permission) {
- &assign_course_categories($r);
}
} else {
# ----------------------------- Not in a course, or not allowed to modify parms
---|