[LON-CAPA-cvs] cvs: doc /loncapafiles updatequery.piml
www
lon-capa-cvs@mail.lon-capa.org
Sat, 21 May 2005 15:35:10 -0000
www Sat May 21 11:35:10 2005 EDT
Modified files:
/doc/loncapafiles updatequery.piml
Log:
Friends don't let friends set up bad machines
Index: doc/loncapafiles/updatequery.piml
diff -u doc/loncapafiles/updatequery.piml:1.37 doc/loncapafiles/updatequery.piml:1.38
--- doc/loncapafiles/updatequery.piml:1.37 Fri May 20 20:40:01 2005
+++ doc/loncapafiles/updatequery.piml Sat May 21 11:35:07 2005
@@ -1,6 +1,6 @@
<!-- updatequery.piml -->
-<!-- $Id: updatequery.piml,v 1.37 2005/05/21 00:40:01 www Exp $ -->
+<!-- $Id: updatequery.piml,v 1.38 2005/05/21 15:35:07 www Exp $ -->
<!--
@@ -237,7 +237,7 @@
my $choice=<>;
chomp($choice);
my $bad_domain_flag=0;
- my @bad_domain_names=('raw','userfiles','priv','adm','uploaded');
+ my @bad_domain_names=('res','raw','userfiles','priv','adm','uploaded');
foreach my $bad (@bad_domain_names) {
$bad_domain_flag=1 if $choice eq $bad;
}
@@ -255,6 +255,9 @@
print "Name too long\n";
} elsif (length($choice)<2) {
print "Name too short\n";
+ } elsif ($bad_domain_flag) {
+ print "Invalid input ('$choice' conflicts with LON-CAPA namespace).\n";
+ print "Please try something different than '$choice'\n";
} elsif ($choice!~/\_/ and $choice=~/^\w+$/) {
open(OUT,'>>/tmp/loncapa_updatequery.out');
print(OUT 'lonDefDomain'."\t".$choice."\n");
@@ -262,9 +265,6 @@
$lonDefDomain=$choice;
$r='l';
$flag=1;
- } elsif ($bad_domain_flag) {
- print "Invalid input ('$choice' conflicts with LON-CAPA namespace).\n";
- print "Please try something different than '$choice'\n";
} else {
print "Invalid input (only alphanumeric characters supported).\n";
}
@@ -586,30 +586,27 @@
10) Allow only secure connections: $securestatus
11) Everything is correct up above
END
-my $hbug=-1;
-my $dbug=-1;
-{
- my $v=$perlvar{'lonHostID'};
- $hbug=0;
- $hbug=1 if $v=~/\W/;
- $hbug=1 if $v=~/\_/;
-}
-{
- my $v=$1;
- $dbug=0;
- $dbug=1 if $v=~/\W/;
- $dbug=1 if $v=~/\_/;
-}
-
-if ($hbug) {
- print "**** ERROR **** ".
- "Invalid lonHostID (should only be letters and/or digits)\n";
-}
-if ($dbug) {
- print "**** ERROR **** ".
- "Invalid lonDefDomain (should only be letters and/or digits)\n";
-}
+my $error='';
+foreach my $v ($perlvar{'lonDefDomain'},$perlvar{'lonHostID'}) {
+ if (length($v)>16) { $error.="\nName $v too long"; }
+ if (length($v)<2) { $error.="\nName $v too short"; }
+ if ($v=~/capa/i) { $error.="\nName $v contains 'capa'"; }
+ foreach my $bad ('res','raw','userfiles','priv','adm','uploaded') {
+ $error.="\nName $v reserved." if $v eq $bad;
+ }
+ if ($v=~/\W/) { $error.="\nName $v contains special characters"; }
+}
+if ($domainDescription!~/^[\w\s]+$/) {
+ $error.="\nDomain Description contains special characters";
+}
+foreach my $v ($perlvar{'lonExpire'},$perlvar{'lonLoadLim'}) {
+ unless ($v=~/^[\d+\.]+$/) { $error.="\nNumber expected instead of $v"; }
+}
+unless (($perlvar{'lonRole'} eq 'library') || ($perlvar{'lonRole'} eq 'access')) {
+ $error.="\nInvalid Role";
+}
+if ($error) { print "\n*** ERRORS: $error\n"; }
print(<<END);
ENTER A CHOICE OF 1-10 TO CHANGE, otherwise ENTER 11:
END
@@ -734,11 +731,11 @@
}
($securestatus,$securenum)=&securesetting(%perlvar);
}
- elsif ($choice==11) {
+ elsif (($choice==11) && (!$error)) {
$flag=1;
}
else {
-
+ print "Invalid input.\n";
}
}
open(OUT,">$confdir$filename") or