delete("comments") ->where("item_id", "=", $item->id) ->execute(); } static function user_deleted($user) { $guest = identity::guest(); if (!empty($guest)) { // could be empty if there is not identity provider db::build() ->update("comments") ->set("author_id", $guest->id) ->set("guest_email", null) ->set("guest_name", "guest") ->set("guest_url", null) ->where("author_id", "=", $user->id) ->execute(); } } static function identity_provider_changed($old_provider, $new_provider) { $guest = identity::guest(); db::build() ->update("comments") ->set("author_id", $guest->id) ->set("guest_email", null) ->set("guest_name", "guest") ->set("guest_url", null) ->execute(); } static function admin_menu($menu, $theme) { $menu->get("settings_menu") ->append(Menu::factory("link") ->id("comment") ->label(t("Comments")) ->url(url::site("admin/comments"))); $menu->get("content_menu") ->append(Menu::factory("link") ->id("comments") ->label(t("Comments")) ->url(url::site("admin/manage_comments"))); } static function photo_menu($menu, $theme) { $menu ->append(Menu::factory("link") ->id("comments") ->label(t("View comments on this item")) ->url("#comments") ->css_id("g-comments-link")); } static function item_index_data($item, $data) { foreach (db::build() ->select("text") ->from("comments") ->where("item_id", "=", $item->id) ->execute() as $row) { $data[] = $row->text; } } static function show_user_profile($data) { $view = new View("user_profile_comments.html"); $view->comments = ORM::factory("comment") ->order_by("created", "DESC") ->where("state", "=", "published") ->where("author_id", "=", $data->user->id) ->find_all(); if ($view->comments->count()) { $data->content[] = (object)array("title" => t("Comments"), "view" => $view); } } }