[LON-CAPA-cvs] cvs: loncom /build add_domain_coordinator_privilege.pl
raeburn
lon-capa-cvs-allow@mail.lon-capa.org
Mon, 31 Dec 2007 16:49:24 -0000
raeburn Mon Dec 31 11:49:24 2007 EDT
Modified files:
/loncom/build add_domain_coordinator_privilege.pl
Log:
- add information about role to nohist_domainroles.db
- include start time in role
- correct spelling of "privilege"
Index: loncom/build/add_domain_coordinator_privilege.pl
diff -u loncom/build/add_domain_coordinator_privilege.pl:1.2 loncom/build/add_domain_coordinator_privilege.pl:1.3
--- loncom/build/add_domain_coordinator_privilege.pl:1.2 Tue Jun 26 15:48:52 2007
+++ loncom/build/add_domain_coordinator_privilege.pl Mon Dec 31 11:49:23 2007
@@ -14,7 +14,7 @@
# add_domain_coordinator_privilege.pl - Add domain coordinator to an
# exisiting user on a LON-CAPA system.
#
-# $Id: add_domain_coordinator_privilege.pl,v 1.2 2007/06/26 19:48:52 albertel Exp $
+# $Id: add_domain_coordinator_privilege.pl,v 1.3 2007/12/31 16:49:23 raeburn Exp $
#
# This file is part of the LearningOnline Network with CAPA (LON-CAPA).
#
@@ -87,7 +87,7 @@
There are no flags to this script.
-usage: add_domain_coordinator_privledge.pl [USERNAME:DOMAIN] [NEWDOMAIN]
+usage: add_domain_coordinator_privilege.pl [USERNAME:DOMAIN] [NEWDOMAIN]
The first argument specifies the user name domain of an existing user.
@@ -154,7 +154,7 @@
}
if (exists($rolesref->{'/'.$add_domain.'/_dc'})) {
my ($role,$end,$start) = split('_',$rolesref->{'/'.$add_domain.'/_dc'});
- print(&mt("[_1] already has a dc priviledge for [_2].",
+ print(&mt("[_1] already has a dc privilege for [_2].",
$user,$add_domain)."\n");
if ($start) {
print(&mt("Start date: [_1]",&Apache::lonlocal::locallocaltime($start)).
@@ -181,7 +181,8 @@
print(&mt("It is currently not active. Proceeding to re-enable")."\n");
}
-$rolesref->{'/'.$add_domain.'/_dc'}='dc'; # Set the domain coordinator role.
+my $now = time;
+$rolesref->{'/'.$add_domain.'/_dc'}='dc_0_'.$now; # Set the domain coordinator role.
open(OUT, ">$udpath/roles.hist"); # roles.hist is the synchronous plain text.
foreach my $key (keys(%{$rolesref})) {
print(OUT $key.' : '.$rolesref->{$key}."\n");
@@ -193,6 +194,19 @@
`chown www:www $udpath/roles.hist`; # Must be writeable by httpd process.
`chown www:www $udpath/roles.db`; # Must be writeable by httpd process.
+my %perlvar = %{&LONCAPA::Configuration::read_conf('loncapa.conf')};
+my $dompath = $perlvar{'lonUsersDir'}.'/'.$domain;
+my $domrolesref = &LONCAPA::locking_hash_tie("$dompath/nohist_domainroles.db",&GDBM_WRCREAT());
+
+if (!$domrolesref) {
+ die('unable to tie nohist_domainroles db: '."$dompath/nohist_domainroles.db");
+}
+
+# Store in nohist_domainroles.db
+my $domkey=&LONCAPA::escape('dc:'.$username.':'.$domain.'::'.$domain.':');
+$domrolesref->{$domkey}= &LONCAPA::escape('0:'.$now);
+&LONCAPA::locking_hash_untie($domrolesref);
+
=pod
=item 2.