more session related bug fixes

This commit is contained in:
JT Smith 2006-01-13 20:51:14 +00:00
parent 3feda4d3f3
commit 30c3d8815d

View file

@ -58,7 +58,8 @@ sub _create {
my $userId = shift || $session->id->generate(); my $userId = shift || $session->id->generate();
$session->db->write("insert into users (userId,dateCreated) values (".$session->db->quote($userId).",".$session->datetime->time().")"); $session->db->write("insert into users (userId,dateCreated) values (".$session->db->quote($userId).",".$session->datetime->time().")");
require WebGUI::Grouping; require WebGUI::Grouping;
$group->addUsers([$userId],[2,7]); WebGUI::Group->new([2])->addUsers([$userId]);
WebGUI::Group->new([7])->addUsers([$userId]);
return $userId; return $userId;
} }
@ -136,21 +137,16 @@ Deletes this user.
sub delete { sub delete {
my $self = shift; my $self = shift;
$self->uncache; $self->uncache;
require WebGUI::Operation::Auth; require WebGUI::Operation::Auth;
$self->session->db->write("delete from users 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->session->db->quote($self->{_userId})); $self->session->db->write("delete from userProfileData where userId=".$self->session->db->quote($self->{_userId}));
require WebGUI::Grouping; foreach my $groupId (@{$self->session->user->getGroups($self->userId)}) {
$group->deleteUsers([$self->{_userId}],$self->session->user->getGroups($self->{_userId})); WebGUI::Group->new($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->session->db->quote($self->{_userId}));
my $authMethod = WebGUI::Operation::Auth::getInstance($self->authMethod,$self->{_userId}); my $authMethod = WebGUI::Operation::Auth::getInstance($self->authMethod,$self->{_userId});
$authMethod->deleteParams($self->{_userId}); $authMethod->deleteParams($self->{_userId});
my $sth = $self->session->db->read("select sessionId from userSession where userId=".$self->session->db->quote($self->{_userId}));
while (my ($sid) = $sth->array) {
WebGUI::Session::end($sid);
}
$sth->finish;
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
@ -169,8 +165,9 @@ sub deleteFromGroups {
my $self = shift; my $self = shift;
my $groups = shift; my $groups = shift;
$self->uncache; $self->uncache;
require WebGUI::Grouping; foreach my $groupId (@{$groups}) {
$group->deleteUsers([$self->userId],$groups); WebGUI::Group->new($groupId)->deleteUsers([$self->userId]);
}
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------