deactivate)) { site_status::warning( t("The TagFaces module requires the Tags module. " . "Activate the Tags module now", array("url" => url::site("admin/modules"))), "tagfaces_needs_tag"); } else { site_status::clear("tagfaces_needs_tag"); } } static function site_menu($menu, $theme) { // Create a menu option for adding face data. if (!$theme->item()) { return; } $item = $theme->item(); if ($item->is_photo()) { if ((access::can("view", $item)) && (access::can("edit", $item))) { $menu->get("options_menu") ->append(Menu::factory("link") ->id("tagfaces") ->label(t("Tag faces")) ->css_id("g-tag-faces-link") ->url(url::site("tagfaces/drawfaces/" . $item->id))); } } } static function item_deleted($item) { // Check for and delete existing Faces and Notes. $existingFaces = ORM::factory("items_face") ->where("item_id", "=", $item->id) ->find_all(); if (count($existingFaces) > 0) { db::build()->delete("items_faces")->where("item_id", "=", $item->id)->execute(); } $existingNotes = ORM::factory("items_note") ->where("item_id", "=", $item->id) ->find_all(); if (count($existingNotes) > 0) { db::build()->delete("items_notes")->where("item_id", "=", $item->id)->execute(); } } }