--- loncom/interface/domainprefs.pm 2021/01/01 14:45:38 1.375 +++ loncom/interface/domainprefs.pm 2021/02/01 15:58:41 1.378 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set domain-wide configuration settings # -# $Id: domainprefs.pm,v 1.375 2021/01/01 14:45:38 raeburn Exp $ +# $Id: domainprefs.pm,v 1.378 2021/02/01 15:58:41 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -3781,18 +3781,17 @@ sub print_contacts { \%choices,$rownum); $datatable .= $reports; } elsif ($position eq 'lower') { - $css_class = $rownum%2?' class="LC_odd_row"':''; - my ($threshold,$sysmail,%excluded,%weights); + my (%current,%excluded,%weights); my ($defaults,$names) = &Apache::loncommon::lon_status_items(); if ($lonstatus{'threshold'} =~ /^\d+$/) { - $threshold = $lonstatus{'threshold'}; + $current{'errorthreshold'} = $lonstatus{'threshold'}; } else { - $threshold = $defaults->{'threshold'}; + $current{'errorthreshold'} = $defaults->{'threshold'}; } if ($lonstatus{'sysmail'} =~ /^\d+$/) { - $sysmail = $lonstatus{'sysmail'}; + $current{'errorsysmail'} = $lonstatus{'sysmail'}; } else { - $sysmail = $defaults->{'sysmail'}; + $current{'errorsysmail'} = $defaults->{'sysmail'}; } if (ref($lonstatus{'weights'}) eq 'HASH') { foreach my $type ('E','W','N','U') { @@ -3812,13 +3811,16 @@ sub print_contacts { map {$excluded{$_} = 1; } @{$lonstatus{'excluded'}}; } } - $datatable .= ''. - ''. - $titles->{'errorthreshold'}. - ''. - ''; - $rownum ++; + foreach my $item ('errorthreshold','errorsysmail') { + $css_class = $rownum%2?' class="LC_odd_row"':''; + $datatable .= ''. + ''. + $titles->{$item}. + ''. + ''; + $rownum ++; + } $css_class = $rownum%2?' class="LC_odd_row"':''; $datatable .= ''. ''. @@ -3864,14 +3866,6 @@ sub print_contacts { } $datatable .= ''; $rownum ++; - $css_class = $rownum%2?' class="LC_odd_row"':''; - $datatable .= ''. - ''. - $titles->{'errorsysmail'}. - ''. - ''; - $rownum ++; } elsif ($position eq 'bottom') { my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom); my (@posstypes,%usertypeshash); @@ -7203,7 +7197,7 @@ sub print_wafproxy { if (ref($settings->{'alias'}) eq 'HASH') { $aliases{$dom} = $settings->{'alias'}; } - foreach my $item ('ipheader','trusted','exempt') { + foreach my $item ('ipheader','trusted','vpnint','vpnext') { $values{$dom}{$item} = $settings->{$item}; } } @@ -7218,7 +7212,7 @@ sub print_wafproxy { if (ref($config{$domain}) eq 'HASH') { if (ref($config{$domain}{'wafproxy'}) eq 'HASH') { $aliases{$domain} = $config{$domain}{'wafproxy'}{'alias'}; - foreach my $item ('ipheader','trusted','exempt') { + foreach my $item ('ipheader','trusted','vpnint','vpnext') { $values{$domain}{$item} = $config{$domain}{'wafproxy'}{$item}; } } @@ -7268,7 +7262,7 @@ sub print_wafproxy { &mt('Format for comma separated IP blocks').':
'. &mt('A.B.C.D/N or A.B.C.D - E.F.G.H').''. ''; - foreach my $item ('ipheader','trusted','exempt') { + foreach my $item ('ipheader','trusted','vpnint','vpnext') { $datatable .= ''. ''. '
'.$lt{$item}.': '; if ($item eq 'ipheader') { @@ -7290,7 +7284,7 @@ sub print_wafproxy { $datatable .= ''. ''.&mt('Domain: [_1]',$domain).''; - foreach my $item ('ipheader','trusted','exempt') { + foreach my $item ('ipheader','trusted','vpnint','vpnext') { my $showval = &mt('None'); if ($values{$domain}{$item}) { $showval = $values{$domain}{$item}; @@ -7308,7 +7302,8 @@ sub print_wafproxy { sub wafproxy_titles { return &Apache::lonlocal::texthash( - exempt => 'Exempt IP range(s)', + vpnint => 'Internal IP Range(s) for VPN sessions', + vpnext => 'IP Range for backend WAF connections', trusted => 'Trusted IP range(s)', ipheader => 'Custom request header', ); @@ -8349,8 +8344,8 @@ sub contact_titles { 'updatesmail' => 'E-mail from nightly check of LON-CAPA module integrity/updates', 'idconflictsmail' => 'E-mail from bi-nightly check for multiple users sharing same student/employee ID', 'hostipmail' => 'E-mail from nightly check of hostname/IP network changes', - 'errorthreshold' => 'Error/warning threshold for status e-mail', - 'errorsysmail' => 'Error threshold for e-mail to core group', + 'errorthreshold' => 'Error count threshold for status e-mail to admin(s)', + 'errorsysmail' => 'Error count threshold for e-mail to developer group', 'errorweights' => 'Weights used to compute error count', 'errorexcluded' => 'Servers with unsent updates excluded from count', ); @@ -15204,7 +15199,7 @@ sub modify_contacts { $contacts_hash{'contacts'}{'lonstatus'}{$item} = \@excluded; } } elsif ($item eq 'weights') { - foreach my $type ('E','W','N') { + foreach my $type ('E','W','N','U') { $env{'form.error'.$item.'_'.$type} =~ s/^\s+|\s+$//g; if ($env{'form.error'.$item.'_'.$type} =~ /^\d+$/) { unless ($env{'form.error'.$item.'_'.$type} == $lonstatus_defs->{$type}) {