/** * @param AJXP_Node $fromNode * @param AJXP_Node $toNode * @param bool $copy */ public function nodeChangeBookmarkMetadata($fromNode = null, $toNode = null, $copy = false) { if ($copy || $fromNode == null) { return; } $user = AuthService::getLoggedUser(); if ($user == null) { return; } if (!isset(self::$loadedBookmarks)) { self::$loadedBookmarks = $user->getBookmarks(); } if ($toNode == null) { $fromNode->removeMetadata("ajxp_bookmarked", true, AJXP_METADATA_SCOPE_REPOSITORY, true); } else { $toNode->copyOrMoveMetadataFromNode($fromNode, "ajxp_bookmarked", "move", true, AJXP_METADATA_SCOPE_REPOSITORY, true); } AJXP_Controller::applyHook("msg.instant", array("<reload_bookmarks/>", $fromNode->getRepositoryId(), AuthService::getLoggedUser()->getId())); }
/** * @param AJXP_Node $ajxpNode * @return */ function nodeBookmarkMetadata(&$ajxpNode) { $user = AuthService::getLoggedUser(); if ($user == null) { return; } if (!isset(self::$loadedBookmarks)) { self::$loadedBookmarks = $user->getBookmarks(); } foreach (self::$loadedBookmarks as $bm) { if ($bm["PATH"] == $ajxpNode->getPath()) { $ajxpNode->mergeMetadata(array("ajxp_bookmarked" => "true", "overlay_icon" => "bookmark.png"), true); /* * TESTING MULTIPLE OVERLAYS $ajxpNode->mergeMetadata(array( "overlay_icon" => "shared.png" ), true); */ } } }
/** * @param AJXP_Node $ajxpNode * @return void */ public function nodeBookmarkMetadata(&$ajxpNode) { $user = AuthService::getLoggedUser(); if ($user == null) { return; } $metadata = $ajxpNode->retrieveMetadata("ajxp_bookmarked", true, AJXP_METADATA_SCOPE_REPOSITORY, true); if (is_array($metadata) && count($metadata)) { $ajxpNode->mergeMetadata(array("ajxp_bookmarked" => "true", "overlay_icon" => "bookmark.png", "overlay_class" => "icon-bookmark"), true); return; } if (!isset(self::$loadedBookmarks)) { self::$loadedBookmarks = $user->getBookmarks(); } foreach (self::$loadedBookmarks as $bm) { if ($bm["PATH"] == $ajxpNode->getPath()) { $ajxpNode->mergeMetadata(array("ajxp_bookmarked" => "true", "overlay_icon" => "bookmark.png", "overlay_class" => "icon-bookmark"), true); $ajxpNode->setMetadata("ajxp_bookmarked", array("ajxp_bookmarked" => "true"), true, AJXP_METADATA_SCOPE_REPOSITORY, true); } } }