diff options
author | Tim Almdal <tnalmdal@shaw.ca> | 2011-08-04 20:29:06 -0700 |
---|---|---|
committer | Tim Almdal <tnalmdal@shaw.ca> | 2011-08-11 22:04:00 -0700 |
commit | 66a6986d37f79d82ef56b0d666d504e0895feaaa (patch) | |
tree | 5a5129a398f1172e92bb27cdf23bb8d2852c2bf6 /modules | |
parent | 3b8bd84629548ab7b2677324be4df52e57249a1b (diff) |
Patch for ticket #1769. Remove the rows in groups_users when the user or the group is deleted.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/user/models/group.php | 6 | ||||
-rw-r--r-- | modules/user/models/user.php | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/modules/user/models/group.php b/modules/user/models/group.php index 4409dcb8..46642203 100644 --- a/modules/user/models/group.php +++ b/modules/user/models/group.php @@ -28,6 +28,12 @@ class Group_Model_Core extends ORM implements Group_Definition { $old = clone $this; module::event("group_before_delete", $this); parent::delete($id); + + db::build() + ->delete("groups_users") + ->where("group_id", "=", empty($id) ? $old->id : $id) + ->execute(); + module::event("group_deleted", $old); $this->users_cache = null; } diff --git a/modules/user/models/user.php b/modules/user/models/user.php index a8a3a0e7..8fe0a87b 100644 --- a/modules/user/models/user.php +++ b/modules/user/models/user.php @@ -43,6 +43,12 @@ class User_Model_Core extends ORM implements User_Definition { $old = clone $this; module::event("user_before_delete", $this); parent::delete($id); + + db::build() + ->delete("groups_users") + ->where("user_id", "=", empty($id) ? $old->id : $id) + ->execute(); + module::event("user_deleted", $old); $this->groups_cache = null; } |