New user and group tests for caching and membership and default group settings.

Cache busting in User.pm.
Allow Visitor to be formally added to groups 2 and 7.
More placeholder work.
Update Help for Secondary Admins.
This commit is contained in:
Colin Kuskie 2006-03-18 05:36:04 +00:00
parent 3c1a42eeff
commit e8a364f526
6 changed files with 65 additions and 17 deletions

View file

@ -151,7 +151,7 @@ sub addUsers {
$self->session->stow->delete("isInGroup");
my $expireOffset = shift || $self->get("expireOffset");
foreach my $uid (@{$users}) {
next if ($uid eq '1');
next if ($uid eq '1' and !isIn($self->getId, 1, 7));
my ($isIn) = $self->session->db->quickArray("select count(*) from groupings where groupId=".$self->session->db->quote($self->getId)." and userId=".$self->session->db->quote($uid));
unless ($isIn) {
$self->session->db->write("insert into groupings (groupId,userId,expireDate) values (".$self->session->db->quote($self->getId).", ".$self->session->db->quote($uid).", ".($self->session->datetime->time()+$expireOffset).")");

View file

@ -58,9 +58,9 @@ These methods are available from this class:
sub _create {
my $session = shift;
my $userId = shift || $session->id->generate();
$session->db->write("insert into users (userId,dateCreated) values (".$session->db->quote($userId).",".time().")");
WebGUI::Group->new($session,[2])->addUsers([$userId]);
WebGUI::Group->new($session,[7])->addUsers([$userId]);
$session->db->write("insert into users (userId,dateCreated) values (?,?)",[$userId, time()]);
WebGUI::Group->new($session,2)->addUsers([$userId]);
WebGUI::Group->new($session,7)->addUsers([$userId]);
return $userId;
}
@ -88,6 +88,7 @@ sub addToGroups {
foreach my $groupId (@{$groups}) {
WebGUI::Group->new($self->session,$groupId)->addUsers([$self->userId],$expireOffset);
}
$self->session->stow->delete("gotGroupsForUser");
}
#-------------------------------------------------------------------
@ -142,12 +143,12 @@ sub delete {
foreach my $groupId (@{$self->getGroups($self->userId)}) {
WebGUI::Group->new($self->session,$groupId)->deleteUsers([$self->userId]);
}
$self->session->db->write("delete from messageLog where userId=".$self->session->db->quote($self->{_userId}));
$self->session->db->write("delete from messageLog where userId=?",[$self->{_userId}]);
require WebGUI::Operation::Auth;
my $authMethod = WebGUI::Operation::Auth::getInstance($self->session,$self->authMethod,$self->{_userId});
$authMethod->deleteParams($self->{_userId});
$self->session->db->write("delete from userProfileData where userId=".$self->session->db->quote($self->{_userId}));
$self->session->db->write("delete from users where userId=".$self->session->db->quote($self->{_userId}));
$self->session->db->write("delete from userProfileData where userId=?",[$self->{_userId}]);
$self->session->db->write("delete from users where userId=?",[$self->{_userId}]);
}
#-------------------------------------------------------------------
@ -169,6 +170,7 @@ sub deleteFromGroups {
foreach my $groupId (@{$groups}) {
WebGUI::Group->new($self->session,$groupId)->deleteUsers([$self->userId]);
}
$self->session->stow->delete("gotGroupsForUser");
}
#-------------------------------------------------------------------

View file

@ -1279,9 +1279,10 @@ Users that have privileges to add, edit, and delete packages of wobjects and pag
When users are added to the system they are put into the registered users group. A user should only be removed from this group if their account is deleted or if you wish to punish a troublemaker.
<p>
<b>Secondary Admins</b><br>
Users in the Secondary Admins group may add new users, but cannot edit users. Also, if
you are a Secondary Admin for a group, you may modify the membership of that group.
<b>Secondary Admins</b><br> Users in the Secondary Admins group may
add new users, but cannot edit users. Also, if you are a Secondary
Admin, you can be set as the Secondary Admin for a group and you may
modify the membership of that group.
<p>
<b>Style Managers</b><br>