[LON-CAPA-cvs] cvs: loncom / lond
www
lon-capa-cvs@mail.lon-capa.org
Mon, 24 Mar 2003 19:46:52 -0000
www Mon Mar 24 14:46:52 2003 EDT
Modified files:
/loncom lond
Log:
Toward bug #1329: new "rolesdel" command
Index: loncom/lond
diff -u loncom/lond:1.116 loncom/lond:1.117
--- loncom/lond:1.116 Sat Mar 22 12:13:40 2003
+++ loncom/lond Mon Mar 24 14:46:52 2003
@@ -2,7 +2,7 @@
# The LearningOnline Network
# lond "LON Daemon" Server (port "LOND" 5663)
#
-# $Id: lond,v 1.116 2003/03/22 17:13:40 albertel Exp $
+# $Id: lond,v 1.117 2003/03/24 19:46:52 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1153,6 +1153,48 @@
print $client "error: ".($!+0)
." tie(GDBM) Failed ".
"while attempting rolesput\n";
+ }
+ } else {
+ print $client "refused\n";
+ }
+# -------------------------------------------------------------------- rolesdel
+ } elsif ($userinput =~ /^rolesdel/) {
+ &Debug("rolesdel");
+ if ($wasenc==1) {
+ my ($cmd,$exedom,$exeuser,$udom,$uname,$what)
+ =split(/:/,$userinput);
+ &Debug("cmd = ".$cmd." exedom= ".$exedom.
+ "user = ".$exeuser." udom=".$udom.
+ "what = ".$what);
+ my $namespace='roles';
+ chomp($what);
+ my $proname=propath($udom,$uname);
+ my $now=time;
+ {
+ my $hfh;
+ if (
+ $hfh=IO::File->new(">>$proname/$namespace.hist")
+ ) {
+ print $hfh "D:$now:$exedom:$exeuser:$what\n";
+ }
+ }
+ my @rolekeys=split(/\&/,$what);
+ if (tie(%hash,'GDBM_File',"$proname/$namespace.db",&GDBM_WRCREAT,0640)) {
+ foreach $key (@rolekeys) {
+ delete $hash{$key};
+
+ }
+ if (untie(%hash)) {
+ print $client "ok\n";
+ } else {
+ print $client "error: ".($!+0)
+ ." untie(GDBM) Failed ".
+ "while attempting rolesdel\n";
+ }
+ } else {
+ print $client "error: ".($!+0)
+ ." tie(GDBM) Failed ".
+ "while attempting rolesdel\n";
}
} else {
print $client "refused\n";