[LON-CAPA-cvs] cvs: loncom(version_2_11_X) /interface lonmodifycourse.pm
raeburn
raeburn at source.lon-capa.org
Sat Oct 22 22:24:52 EDT 2016
raeburn Sun Oct 23 02:24:52 2016 EDT
Modified files: (Branch: version_2_11_X)
/loncom/interface lonmodifycourse.pm
Log:
- For 2.11
- Backport 1.86
-------------- next part --------------
Index: loncom/interface/lonmodifycourse.pm
diff -u loncom/interface/lonmodifycourse.pm:1.79.2.2 loncom/interface/lonmodifycourse.pm:1.79.2.3
--- loncom/interface/lonmodifycourse.pm:1.79.2.2 Sat Sep 17 16:03:36 2016
+++ loncom/interface/lonmodifycourse.pm Sun Oct 23 02:24:51 2016
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# handler for DC-only modifiable course settings
#
-# $Id: lonmodifycourse.pm,v 1.79.2.2 2016/09/17 16:03:36 raeburn Exp $
+# $Id: lonmodifycourse.pm,v 1.79.2.3 2016/10/23 02:24:51 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -119,7 +119,7 @@
} elsif ($type eq "authtype"
|| $type eq "autharg" || $type eq "coursecode"
|| $type eq "crosslistings" || $type eq "selfenrollmgr"
-+ || $type eq "autodropfailsafe") {
+ || $type eq "autodropfailsafe") {
$enrollvar{$type} = $settings{$item};
} elsif ($type eq 'defaultcredits') {
if (&showcredits($cdom)) {
@@ -173,17 +173,53 @@
$r->print(&Apache::loncommon::build_filters($filterlist,$type,undef,undef,$filter,$action,
\$numtitles,'modifycourse',undef,undef,undef,
\@codetitles,$dom));
+
+ my ($actiontext,$roleoption,$settingsoption);
if ($type eq 'Community') {
- $r->print(&mt('Actions available after searching for a community:').'<ul>'.
- '<li>'.&mt('Enter the community with the role of [_1]',$cctitle).'</li>'."\n".
- '<li>'.&mt('View or modify community settings which only a [_1] may modify.',$dctitle).
- '</li>'."\n".'</ul>');
- } else {
- $r->print(&mt('Actions available after searching for a course:').'<ul>'.
- '<li>'.&mt('Enter the course with the role of [_1]',$cctitle).'</li>'."\n".
- '<li>'.&mt('View or modify course settings which only a [_1] may modify.',$dctitle).
- '</li>'."\n".'</ul>');
+ $actiontext = &mt('Actions available after searching for a community:');
+ } else {
+ $actiontext = &mt('Actions available after searching for a course:');
}
+ if (&Apache::lonnet::allowed('ccc',$dom)) {
+ if ($type eq 'Community') {
+ $roleoption = &mt('Enter the community with the role of [_1]',$cctitle);
+ $settingsoption = &mt('View or modify community settings which only a [_1] may modify.',$dctitle);
+ } else {
+ $roleoption = &mt('Enter the course with the role of [_1]',$cctitle);
+ $settingsoption = &mt('View or modify course settings which only a [_1] may modify.',$dctitle);
+ }
+ } elsif (&Apache::lonnet::allowed('rar',$dom)) {
+ my %adhocroles = &Apache::lonnet::userenvironment($env{'user.domain'},$env{'user.name'},
+ 'adhocroles.'.$dom);
+ if (keys(%adhocroles)) {
+ my @adhoc = split(',',$adhocroles{'adhocroles.'.$dom});
+ if (@adhoc > 1) {
+ if ($type eq 'Community') {
+ $roleoption = &mt('Enter the community with one of the available ad hoc roles: [_1].',
+ join(', ', at adhoc));
+ } else {
+ $roleoption = &mt('Enter the course with one of the available ad hoc roles: [_1].',
+ join(', ', at adhoc));
+ }
+ } else {
+ if ($type eq 'Community') {
+ $roleoption = &mt('Enter the community with the ad hoc role of: [_1]',$adhoc[0]);
+ } else {
+ $roleoption = &mt('Enter the course with the ad hoc role of: [_1]',$adhoc[0]);
+ }
+ }
+ }
+ if ($type eq 'Community') {
+ $settingsoption = &mt('View community settings which only a [_1] may modify.',$dctitle);
+ } else {
+ $settingsoption = &mt('View course settings which only a [_1] may modify.',$dctitle);
+ }
+ }
+ $r->print($actiontext.'<ul>');
+ if ($roleoption) {
+ $r->print('<li>'.$roleoption.'</li>'."\n");
+ }
+ $r->print('<li>'.$settingsoption.'</li>'."\n".'</ul>');
return;
}
@@ -208,7 +244,7 @@
my %courses = &Apache::loncommon::search_courses($dom,$type,$filter,$numtitles,
undef,undef,undef,\@codetitles);
&Apache::lonpickcourse::display_matched_courses($r,$type,0,$action,undef,undef,undef,
- undef,undef,%courses);
+ $dom,undef,%courses);
return;
}
@@ -229,7 +265,7 @@
}
sub print_modification_menu {
- my ($r,$cdesc,$domdesc,$dom,$type,$cid,$coursehash) = @_;
+ my ($r,$cdesc,$domdesc,$dom,$type,$cid,$coursehash,$permission) = @_;
&print_header($r,$type);
my ($ccrole,$categorytitle,$setquota_text,$setuploadquota_text,$setparams_text,$cat_text,
$cdom,$cnum);
@@ -263,17 +299,20 @@
}
my $anon_text = &mt('Responder threshold required to display anonymous survey submissions.');
my $postsubmit_text = &mt('Override defaults for submit button behavior post-submission for this specific course.');
+ my $mysqltables_text = &mt('Override default for lifetime of "temporary" MySQL tables containing student performance data.');
my %domconf = &Apache::lonnet::get_dom('configuration',['coursecategories'],$dom);
my @additional_params = &catalog_settable($domconf{'coursecategories'},$type);
sub manage_selfenrollment {
- my ($cdom,$cnum,$type,$coursehash) = @_;
- my ($managed_by_cc,$managed_by_dc) = &Apache::lonuserutils::selfenrollment_administration($cdom,$cnum,$type,$coursehash);
- if (ref($managed_by_dc) eq 'ARRAY') {
- if (@{$managed_by_dc}) {
- return 1;
- }
+ my ($cdom,$cnum,$type,$coursehash,$permission) = @_;
+ if ($permission->{'selfenroll'}) {
+ my ($managed_by_cc,$managed_by_dc) = &Apache::lonuserutils::selfenrollment_administration($cdom,$cnum,$type,$coursehash);
+ if (ref($managed_by_dc) eq 'ARRAY') {
+ if (@{$managed_by_dc}) {
+ return 1;
+ }
+ }
}
return 0;
}
@@ -288,7 +327,7 @@
{
linktext => $setparams_text,
url => &phaseurl('setparms'),
- permission => 1,
+ permission => $permission->{'setparms'},
#help => '',
icon => 'crsconf.png',
linktitle => ''
@@ -296,7 +335,7 @@
{
linktext => 'View/Modify quotas for group portfolio files, and for uploaded content.',
url => &phaseurl('setquota'),
- permission => 1,
+ permission => $permission->{'setquota'},
#help => '',
icon => 'groupportfolioquota.png',
linktitle => ''
@@ -304,7 +343,7 @@
{
linktext => 'View/Modify responders threshold for anonymous survey submissions display',
url => &phaseurl('setanon'),
- permission => 1,
+ permission => $permission->{'setanon'},
#help => '',
icon => 'anonsurveythreshold.png',
linktitle => ''
@@ -312,7 +351,7 @@
{
linktext => $cat_text,
url => &phaseurl('catsettings'),
- permission => (@additional_params > 0),
+ permission => (($permission->{'catsettings'}) && (@additional_params > 0)),
#help => '',
icon => 'ccatconf.png',
linktitle => ''
@@ -320,7 +359,7 @@
{
linktext => 'Display current settings for automated enrollment',
url => &phaseurl('viewparms'),
- permission => ($type ne 'Community'),
+ permission => ($permission->{'viewparms'} && ($type ne 'Community')),
#help => '',
icon => 'roles.png',
linktitle => ''
@@ -330,7 +369,7 @@
icon => 'self_enroll.png',
#help => 'Course_Self_Enrollment',
url => &phaseurl('selfenroll'),
- permission => &manage_selfenrollment($cdom,$cnum,$type,$coursehash),
+ permission => &manage_selfenrollment($cdom,$cnum,$type,$coursehash,$permission),
linktitle => 'Configure user self-enrollment.',
},
{
@@ -338,7 +377,7 @@
icon => 'emblem-readonly.png',
#help => '',
url => &phaseurl('setpostsubmit'),
- permission => 1,
+ permission => $permission->{'setpostsubmit'},
linktitle => '',
},
]
@@ -372,18 +411,23 @@
'<li>'.$setuploadquota_text.'</li>'."\n".
'<li>'.$anon_text.'</li>'."\n".
'<li>'.$postsubmit_text.'</li>'."\n";
+ my ($categories_link_start,$categories_link_end);
+ if ($permission->{'catsettings'}) {
+ $categories_link_start = '<a href="/adm/domainprefs?actions=coursecategories&phase=display">';
+ $categories_link_end = '</a>';
+ }
foreach my $item (@additional_params) {
if ($type eq 'Community') {
if ($item eq 'togglecats') {
- $menu_html .= ' <li>'.&mt('Hiding/unhiding a community from the catalog (although can be [_1]configured[_2] to be modifiable by a Coordinator in community context).','<a href="/adm/domainprefs?actions=coursecategories&phase=display">','</a>').'</li>'."\n";
+ $menu_html .= ' <li>'.&mt('Hiding/unhiding a community from the catalog (although can be [_1]configured[_2] to be modifiable by a Coordinator in community context).',$categories_link_start,$categories_link_end).'</li>'."\n";
} elsif ($item eq 'categorize') {
- $menu_html .= ' <li>'.&mt('Manual cataloging of a community (although can be [_1]configured[_2] to be modifiable by a Coordinator in community context).','<a href="/adm/domainprefs?actions=coursecategories&phase=display">','</a>').'</li>'."\n";
+ $menu_html .= ' <li>'.&mt('Manual cataloging of a community (although can be [_1]configured[_2] to be modifiable by a Coordinator in community context).',$categories_link_start,$categories_link_end).'</li>'."\n";
}
} else {
if ($item eq 'togglecats') {
- $menu_html .= ' <li>'.&mt('Hiding/unhiding a course from the course catalog (although can be [_1]configured[_2] to be modifiable by a Course Coordinator in course context).','<a href="/adm/domainprefs?actions=coursecategories&phase=display">','</a>').'</li>'."\n";
+ $menu_html .= ' <li>'.&mt('Hiding/unhiding a course from the course catalog (although can be [_1]configured[_2] to be modifiable by a Course Coordinator in course context).',$categories_link_start,$categories_link_end).'</li>'."\n";
} elsif ($item eq 'categorize') {
- $menu_html .= ' <li>'.&mt('Manual cataloging of a course (although can be [_1]configured[_2] to be modifiable by a Course Coordinator in course context).','<a href="/adm/domainprefs?actions=coursecategories&phase=display">','</a>').'</li>'."\n";
+ $menu_html .= ' <li>'.&mt('Manual cataloging of a course (although can be [_1]configured[_2] to be modifiable by a Course Coordinator in course context).',$categories_link_start,$categories_link_end).'</li>'."\n";
}
}
}
@@ -399,18 +443,47 @@
return;
}
-sub print_ccrole_selected {
+sub print_adhocrole_selected {
my ($r,$type) = @_;
&print_header($r,$type);
my ($cdom,$cnum) = split(/_/,$env{'form.pickedcourse'});
- $r->print('<form name="ccrole" method="post" action="/adm/roles">
-<input type="hidden" name="selectrole" value="1" />
-<input type="hidden" name="newrole" value="cc./'.$cdom.'/'.$cnum.'" />
+ my ($newrole,$selectrole);
+ if (&Apache::lonnet::allowed('ccc',$cdom)) {
+ if ($type eq 'Community') {
+ $newrole = "co./$cdom/$cnum";
+ } else {
+ $newrole = "cc./$cdom/$cnum";
+ }
+ $selectrole = 1;
+ } elsif (&Apache::lonnet::allowed('rar',$cdom)) {
+ my %adhocroles = &Apache::lonnet::userenvironment($env{'user.domain'},$env{'user.name'},
+ 'adhocroles.'.$cdom);
+ if (keys(%adhocroles)) {
+ my $possrole = $env{'form.adhocrole'};
+ if ($possrole ne '') {
+ my @adhoc = split(',',$adhocroles{'adhocroles.'.$cdom});
+ if (grep(/^\Q$possrole\E$/, at adhoc)) {
+ my $confname = &Apache::lonnet::get_domainconfiguser($cdom);
+ $newrole = "cr/$cdom/$confname/$possrole./$cdom/$cnum";
+ $selectrole = 1;
+ }
+ }
+ }
+ }
+ if ($selectrole) {
+ $r->print('<form name="adhocrole" method="post" action="/adm/roles">
+<input type="hidden" name="selectrole" value="'.$selectrole.'" />
+<input type="hidden" name="newrole" value="'.$newrole.'" />
</form>');
+ } else {
+ $r->print('<form name="ccrole" method="post" action="/adm/modifycourse">'.
+ '</form>');
+ }
+ return;
}
sub print_settings_display {
- my ($r,$cdom,$cnum,$cdesc,$type) = @_;
+ my ($r,$cdom,$cnum,$cdesc,$type,$permission) = @_;
my %enrollvar = &get_enrollment_settings($cdom,$cnum);
my %longtype = &course_settings_descrip($type);
my %lt = &Apache::lonlocal::texthash(
@@ -451,25 +524,35 @@
}
$disp_table .= &Apache::loncommon::end_data_table()."\n";
&print_header($r,$type);
- my $newrole = $ccrole.'./'.$cdom.'/'.$cnum;
- my $escuri = &HTML::Entities::encode('/adm/roles?selectrole=1&'.$newrole.
- '=1&destinationurl=/adm/populate','&<>"');
+ my ($enroll_link_start,$enroll_link_end,$setparms_link_start,$setparms_link_end);
+ if (&Apache::lonnet::allowed('ccc',$cdom)) {
+ my $newrole = $ccrole.'./'.$cdom.'/'.$cnum;
+ my $escuri = &HTML::Entities::encode('/adm/roles?selectrole=1&'.$newrole.
+ '=1&destinationurl=/adm/populate','&<>"');
+ $enroll_link_start = '<a href="'.$escuri.'">';
+ $enroll_link_end = '</a>';
+ }
+ if ($permission->{'setparms'}) {
+ $setparms_link_start = '<a href="javascript:changePage(document.viewparms,'."'setparms'".');">';
+ $setparms_link_end = '</a>';
+ }
$r->print('<h3>'.&mt('Current automated enrollment settings for:').
' <span class="LC_nobreak">'.$cdesc.'</span></h3>'.
'<form action="/adm/modifycourse" method="post" name="viewparms">'."\n".
'<p>'.$lt{'cose'}.'<ul>'.
- '<li>'.&mt('Settings modifiable by a [_1] via the [_2]Automated Enrollment Manager[_3] in a course.',$cctitle,'<a href="'.$escuri.'">','</a>').'</li>');
+ '<li>'.&mt('Settings modifiable by a [_1] via the [_2]Automated Enrollment Manager[_3] in a course.',
+ $cctitle,$enroll_link_start,$enroll_link_end).'</li>');
if (&showcredits($cdom)) {
- $r->print('<li>'.&mt('Settings modifiable by a [_1] via [_2]View/Modify course owner, institutional code, default authentication, credits, and self-enrollment[_3].',$dctitle,'<a href="javascript:changePage(document.viewparms,'."'setparms'".');">','</a>')."\n");
+ $r->print('<li>'.&mt('Settings modifiable by a [_1] via [_2]View/Modify course owner, institutional code, default authentication, credits, and self-enrollment[_3].',$dctitle,$setparms_link_start,$setparms_link_end)."\n");
} else {
- $r->print('<li>'.&mt('Settings modifiable by a [_1] via [_2]View/Modify course owner, institutional code, default authentication, and self-enrollment[_3].',$dctitle,'<a href="javascript:changePage(document.viewparms,'."'setparms'".');">','</a>')."\n");
+ $r->print('<li>'.&mt('Settings modifiable by a [_1] via [_2]View/Modify course owner, institutional code, default authentication, and self-enrollment[_3].',$dctitle,$setparms_link_start,$setparms_link_end)."\n");
}
$r->print('</li></ul></p>'.
'<p>'.$lt{'cour'}.'</p><p>'.$disp_table.'</p><p>'.
'<a href="javascript:changePage(document.viewparms,'."'menu'".')">'.$lt{'back'}.'</a>'."\n".
&hidden_form_elements().
'</p></form>'
- );
+ );
}
sub print_setquota {
@@ -844,15 +927,15 @@
' '.&mt('Credits (students)'))."\n".
'<input type="text" size="3" name="defaultcredits" value="'.$enrollvar{'defaultcredits'}.'" />'.
&Apache::lonhtmlcommon::row_closure());
- }
- $r->print(&Apache::lonhtmlcommon::row_title(
- &Apache::loncommon::help_open_topic('Modify_Course_Defaultauth').
- ' '.&mt('Default Authentication method'))."\n".
- $authenitems."\n".
- &Apache::lonhtmlcommon::row_closure().
- &Apache::lonhtmlcommon::row_title(
- &Apache::loncommon::help_open_topic('Modify_Course_Owner').
- ' '.&mt('Course Owner'))."\n");
+ }
+ $r->print(&Apache::lonhtmlcommon::row_title(
+ &Apache::loncommon::help_open_topic('Modify_Course_Defaultauth').
+ ' '.&mt('Default Authentication method'))."\n".
+ $authenitems."\n".
+ &Apache::lonhtmlcommon::row_closure().
+ &Apache::lonhtmlcommon::row_title(
+ &Apache::loncommon::help_open_topic('Modify_Course_Owner').
+ ' '.&mt('Course Owner'))."\n");
}
my ($cctitle,$rolename,$currmanages,$ccchecked,$dcchecked,$defaultchecked);
my ($selfenrollrows,$selfenrolltitles) = &Apache::lonuserutils::get_selfenroll_titles();
@@ -1284,7 +1367,7 @@
$shown = &selfenroll_config_status(\@currmgrcc,$selfenrolltitles);
} elsif (($attr eq 'defaultcredits') && ($shown eq '')) {
$shown = &mt('None');
- } elsif (($attr eq 'mysqltables') && ($shown eq '')) {
+ } elsif (($attr eq 'mysqltables') && ($shown eq '')) {
$shown = &mt('domain default');
}
$nochgresponse .= '<li>'.&mt('[_1] still set to: [_2]',$longtype{$attr},$shown).'</li>';
@@ -2041,9 +2124,9 @@
}
my $starthash;
- if ($env{'form.phase'} eq 'ccrole') {
+ if ($env{'form.phase'} eq 'adhocrole') {
$starthash = {
- add_entries => {'onload' => "javascript:document.ccrole.submit();"},
+ add_entries => {'onload' => "javascript:document.adhocrole.submit();"},
};
} elsif ($phase eq 'courselist') {
$starthash = {
@@ -2110,6 +2193,7 @@
'co-owners' => "Username:domain of each co-owner",
'selfenrollmgrdc' => "Community-specific self-enrollment configuration by Domain Coordinator",
'selfenrollmgrcc' => "Community-specific self-enrollment configuration by Community personnel",
+ 'mysqltables' => '"Temporary" student performance tables lifetime (seconds)',
);
} else {
%longtype = &Apache::lonlocal::texthash(
@@ -2132,7 +2216,6 @@
'selfenrollmgrdc' => "Course-specific self-enrollment configuration by Domain Coordinator",
'selfenrollmgrcc' => "Course-specific self-enrollment configuration by Course personnel",
'mysqltables' => '"Temporary" student performance tables lifetime (seconds)',
-
);
}
return %longtype;
@@ -2158,6 +2241,34 @@
}
}
+sub get_permission {
+ my ($dom) = @_;
+ my ($allowed,%permission);
+ if (&Apache::lonnet::allowed('ccc',$dom)) {
+ $allowed = 1;
+ %permission = (
+ setquota => 1,
+ processquota => 1,
+ setanon => 1,
+ processthreshold => 1,
+ setpostsubmit => 1,
+ processpostsubmit => 1,
+ viewparms => 1,
+ setparms => 1,
+ processparms => 1,
+ catsettings => 1,
+ processcat => 1,
+ selfenroll => 1,
+ );
+ } elsif (&Apache::lonnet::allowed('rar',$dom)) {
+ $allowed = 1;
+ %permission = (
+ viewparms => 1,
+ );
+ }
+ return ($allowed,\%permission);
+}
+
sub handler {
my $r = shift;
if ($r->header_only) {
@@ -2168,8 +2279,8 @@
my $dom = $env{'request.role.domain'};
my $domdesc = &Apache::lonnet::domain($dom,'description');
-
- if (&Apache::lonnet::allowed('ccc',$dom)) {
+ my ($allowed,$permission) = &get_permission($dom);
+ if ($allowed) {
&Apache::loncommon::content_type($r,'text/html');
$r->send_http_header;
@@ -2220,23 +2331,24 @@
({href=>"javascript:changePage(document.$phase,'menu')",
text=>"Pick action"});
&print_modification_menu($r,$cdesc,$domdesc,$dom,$type,
- $env{'form.pickedcourse'},$coursehash);
- } elsif ($phase eq 'ccrole') {
+ $env{'form.pickedcourse'},$coursehash,
+ $permission);
+ } elsif ($phase eq 'adhocrole') {
&Apache::lonhtmlcommon::add_breadcrumb
- ({href=>"javascript:changePage(document.$phase,'ccrole')",
+ ({href=>"javascript:changePage(document.$phase,'adhocrole')",
text=>$enter_text});
- &print_ccrole_selected($r,$type);
+ &print_adhocrole_selected($r,$type);
} else {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'menu')",
text=>"Pick action"});
my ($cdom,$cnum) = split(/_/,$env{'form.pickedcourse'});
- if ($phase eq 'setquota') {
+ if (($phase eq 'setquota') && ($permission->{'setquota'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Set quota"});
&print_setquota($r,$cdom,$cnum,$cdesc,$type);
- } elsif ($phase eq 'processquota') {
+ } elsif (($phase eq 'processquota') && ($permission->{'processquota'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'setquota')",
text=>"Set quota"});
@@ -2244,12 +2356,12 @@
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Result"});
&modify_quota($r,$cdom,$cnum,$cdesc,$domdesc,$type);
- } elsif ($phase eq 'setanon') {
+ } elsif (($phase eq 'setanon') && ($permission->{'setanon'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Threshold for anonymous submissions display"});
&print_set_anonsurvey_threshold($r,$cdom,$cnum,$cdesc,$type);
- } elsif ($phase eq 'processthreshold') {
+ } elsif (($phase eq 'processthreshold') && ($permission->{'processthreshold'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'setanon')",
text=>"Threshold for anonymous submissions display"});
@@ -2257,27 +2369,27 @@
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Result"});
&modify_anonsurvey_threshold($r,$cdom,$cnum,$cdesc,$domdesc,$type);
- } elsif ($phase eq 'setpostsubmit') {
+ } elsif (($phase eq 'setpostsubmit') && ($permission->{'setpostsubmit'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Configure submit button behavior post-submission"});
&print_postsubmit_config($r,$cdom,$cnum,$cdesc,$type);
- } elsif ($phase eq 'processpostsubmit') {
+ } elsif (($phase eq 'processpostsubmit') && ($permission->{'processpostsubmit'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Result"});
&modify_postsubmit_config($r,$cdom,$cnum,$cdesc,$domdesc,$type);
- } elsif ($phase eq 'viewparms') {
+ } elsif (($phase eq 'viewparms') && ($permission->{'viewparms'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'viewparms')",
text=>"Display settings"});
- &print_settings_display($r,$cdom,$cnum,$cdesc,$type);
- } elsif ($phase eq 'setparms') {
+ &print_settings_display($r,$cdom,$cnum,$cdesc,$type,$permission);
+ } elsif (($phase eq 'setparms') && ($permission->{'setparms'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Change settings"});
&print_course_modification_page($r,$cdom,$cnum,$cdesc,$type);
- } elsif ($phase eq 'processparms') {
+ } elsif (($phase eq 'processparms') && ($permission->{'processparms'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'setparms')",
text=>"Change settings"});
@@ -2285,12 +2397,12 @@
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Result"});
&modify_course($r,$cdom,$cnum,$cdesc,$domdesc,$type);
- } elsif ($phase eq 'catsettings') {
+ } elsif (($phase eq 'catsettings') && ($permission->{'catsettings'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Catalog settings"});
&print_catsettings($r,$cdom,$cnum,$cdesc,$type);
- } elsif ($phase eq 'processcat') {
+ } elsif (($phase eq 'processcat') && ($permission->{'processcat'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>"javascript:changePage(document.$phase,'catsettings')",
text=>"Catalog settings"});
@@ -2298,7 +2410,7 @@
({href=>"javascript:changePage(document.$phase,'$phase')",
text=>"Result"});
&modify_catsettings($r,$cdom,$cnum,$cdesc,$domdesc,$type);
- } elsif ($phase eq 'selfenroll') {
+ } elsif (($phase eq 'selfenroll') && ($permission->{'selfenroll'})) {
&Apache::lonhtmlcommon::add_breadcrumb
({href => "javascript:changePage(document.$phase,'$phase')",
text => "Self-enrollment settings"});
More information about the LON-CAPA-cvs
mailing list