Add identity_change handlers to resolve the ownership issues of comments, subscription, items and tasks.

This commit is contained in:
Tim Almdal
2009-10-31 14:23:05 -07:00
parent 80b892915f
commit 903b5f6f67
3 changed files with 24 additions and 3 deletions
+13 -3
View File
@@ -27,12 +27,22 @@ class comment_event_Core {
Database::instance()
->query("UPDATE {comments}
SET author_id = {$guest->id},
guest_email = '{$user->email}',
guest_name = '{$user->name}',
guest_url = '{$user->url}'
guest_email = NULL,
guest_name = 'guest',
guest_url = NULL
WHERE author_id = {$user->id}");
}
static function identity_provider_changed($old_provider, $new_provider) {
$guest = identity::guest();
Database::instance()
->query("UPDATE {comments}
SET author_id = {$guest->id},
guest_email = NULL,
guest_name = 'guest',
guest_url = null");
}
static function admin_menu($menu, $theme) {
$menu->get("content_menu")
->append(Menu::factory("link")
@@ -35,6 +35,13 @@ class gallery_event_Core {
$db->query("UPDATE {items} SET owner_id = {$admin->id} where owner_id = {$user->id}");
}
static function identity_provider_changed($old_provider, $new_provider) {
$admin = identity::admin_user();
$db = Database::instance();
$db->query("UPDATE {tasks} SET owner_id = {$admin->id}");
$db->query("UPDATE {items} SET owner_id = {$admin->id}");
}
static function group_created($group) {
access::add_group($group);
}
@@ -56,6 +56,10 @@ class notification_event_Core {
Database::instance()->query("DELETE FROM {subscriptions} where user_id = {$user->id}");
}
static function identity_provider_changed($old_provider, $new_provider) {
Database::instance()->query("DELETE FROM {subscriptions}");
}
static function comment_created($comment) {
try {
if ($comment->state == "published") {