[LON-CAPA-cvs] cvs: loncom(version_2_11_X) /interface lonconfigsettings.pm
raeburn
raeburn at source.lon-capa.org
Tue Jul 30 07:41:26 EDT 2019
raeburn Tue Jul 30 11:41:26 2019 EDT
Modified files: (Branch: version_2_11_X)
/loncom/interface lonconfigsettings.pm
Log:
- For 2.11
Backport 1.34, 1.35, 1.36
Index: loncom/interface/lonconfigsettings.pm
diff -u loncom/interface/lonconfigsettings.pm:1.21.4.9 loncom/interface/lonconfigsettings.pm:1.21.4.10
--- loncom/interface/lonconfigsettings.pm:1.21.4.9 Sun Oct 23 21:13:51 2016
+++ loncom/interface/lonconfigsettings.pm Tue Jul 30 11:41:26 2019
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set domain-wide configuration settings
#
-# $Id: lonconfigsettings.pm,v 1.21.4.9 2016/10/23 21:13:51 raeburn Exp $
+# $Id: lonconfigsettings.pm,v 1.21.4.10 2019/07/30 11:41:26 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -39,7 +39,7 @@
use LONCAPA qw(:DEFAULT :match);
sub print_header {
- my ($r,$phase,$context,$jscript,$container) = @_;
+ my ($r,$phase,$context,$jscript,$container,$instcode,$dom) = @_;
my ($pagetitle,$brcrumtitle,$action,$call_category_check,$instcode_check,
$crstype, at actions, at code_order);
if ($phase eq 'display') {
@@ -176,11 +176,42 @@
$additem = {'add_entries' => \%loaditems,};
} elsif ($phase eq 'display') {
if ($context eq 'domain') {
+ my $onload;
if (grep(/^coursedefaults$/, at actions)) {
+ $onload = "toggleDisplay(document.display,'cloneinstcode');".
+ "toggleDisplay(document.display,'credits');".
+ "toggleDisplay(document.display,'studentsubmission');";
+ }
+ if (grep(/^selfcreation$/, at actions)) {
+ my $prefix = 'cancreate_emailverified';
+ my $customclass = 'LC_selfcreate_email';
+ my $classprefix = 'LC_canmodify_emailusername_';
+ my $optionsprefix = 'LC_options_emailusername_';
+ $onload .= "toggleRows(document.display,'cancreate_email','selfassign','$customclass','$classprefix','$optionsprefix');";
+ my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom);
+ my $hascustom;
+ my ($emailrules,$emailruleorder) = &Apache::lonnet::inst_userrules($dom,'email');
+ if (ref($emailrules) eq 'HASH') {
+ if (keys(%{$emailrules}) > 0) {
+ $hascustom = 'cancreate_emailrule';
+ }
+ }
+ my @posstypes;
+ if (ref($types) eq 'ARRAY') {
+ @posstypes = @{$types};
+ push(@posstypes,'default');
+ foreach my $type (@posstypes) {
+ $onload .= "toggleEmailOptions(document.display,'cancreate_emailoptions','$hascustom',".
+ "'cancreate_emaildomain','$type');";
+ }
+ } else {
+ $onload .= "toggleEmailOptions(document.display,'cancreate_emailoptions','$hascustom',".
+ "'cancreate_emaildomain','default');";
+ }
+ }
+ if ($onload) {
my %loaditems = (
- ' onload' => "toggleDisplay(document.display,'cloneinstcode');".
- "toggleDisplay(document.display,'credits');".
- "toggleDisplay(document.display,'studentsubmission');",
+ 'onload' => $onload,
);
$additem = {'add_entries' => \%loaditems,};
}
@@ -335,7 +366,7 @@
if (ref($values) eq 'HASH') {
$instcode = $values->{'internal.coursecode'};
}
- &print_header($r,$phase,$context,$jscript,$container,$instcode);
+ &print_header($r,$phase,$context,$jscript,$container,$instcode,$dom);
my $divwidth = 900;
if ((ref($prefs_order) eq 'ARRAY') && (ref($prefs) eq 'HASH') && (ref($values) eq 'HASH')) {
if (@actions > 0) {
More information about the LON-CAPA-cvs
mailing list