summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author3dB <3db@3decibels.net>2009-07-29 15:27:58 -0400
committer3dB <3db@3decibels.net>2009-07-29 15:27:58 -0400
commitf713f21acfba72a9a5567592389fad8bcddbebc8 (patch)
treeae024c45d4f463d810074e530a924e1baf2820e1
parentc83d62295fdff9da805b0687b0418ea69dde5fcf (diff)
Altered the way sessions are handled in some cases
-- Deleting a user now deletes all sessions too. -- Changing a user password now deletes all stored sessions for that user.
-rw-r--r--lib/VNDB/DB/Users.pm1
-rw-r--r--lib/VNDB/Handler/Users.pm1
2 files changed, 2 insertions, 0 deletions
diff --git a/lib/VNDB/DB/Users.pm b/lib/VNDB/DB/Users.pm
index a28a88cc..07ccaf1e 100644
--- a/lib/VNDB/DB/Users.pm
+++ b/lib/VNDB/DB/Users.pm
@@ -104,6 +104,7 @@ sub dbUserDel {
q|DELETE FROM rlists WHERE uid = ?|,
q|DELETE FROM wlists WHERE uid = ?|,
q|DELETE FROM votes WHERE uid = ?|,
+ q|DELETE FROM sessions WHERE uid = ?|,
q|UPDATE changes SET requester = 0 WHERE requester = ?|,
q|UPDATE threads_posts SET uid = 0 WHERE uid = ?|,
q|DELETE FROM users WHERE id = ?|
diff --git a/lib/VNDB/Handler/Users.pm b/lib/VNDB/Handler/Users.pm
index c8390b56..982d6089 100644
--- a/lib/VNDB/Handler/Users.pm
+++ b/lib/VNDB/Handler/Users.pm
@@ -336,6 +336,7 @@ sub edit {
$o{show_list} = $frm->{flags_list} ? 1 : 0;
$o{show_nsfw} = $frm->{flags_nsfw} ? 1 : 0;
$self->dbUserEdit($uid, %o);
+ $self->dbSessionDel($uid) if $frm->{usrpass};
return $self->resRedirect("/u$uid/edit?d=1", 'post') if $uid != $self->authInfo->{id} || !$frm->{usrpass};
return $self->authLogin($frm->{usrname}||$u->{username}, $frm->{usrpass}, "/u$uid/edit?d=1");
}