本文整理汇总了PHP中false::hasWatchOnNode方法的典型用法代码示例。如果您正苦于以下问题:PHP false::hasWatchOnNode方法的具体用法?PHP false::hasWatchOnNode怎么用?PHP false::hasWatchOnNode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类false
的用法示例。
在下文中一共展示了false::hasWatchOnNode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: toJson
/**
* @param MetaWatchRegister|false $watcher
* @param ShareRightsManager $rightsManager
* @param PublicAccessManager $publicAccessManager
* @param array $messages
* @return array|false
*/
public function toJson($watcher, $rightsManager, $publicAccessManager, $messages)
{
$repoRootNode = new AJXP_Node("pydio://" . $this->getRepositoryId() . "/");
$elementWatch = false;
if ($watcher != false) {
$elementWatch = $watcher->hasWatchOnNode($repoRootNode, AuthService::getLoggedUser()->getId(), MetaWatchRegister::$META_WATCH_NAMESPACE);
}
$sharedEntries = $rightsManager->computeSharedRepositoryAccessRights($this->getRepositoryId(), true, $repoRootNode);
if (empty($sharedEntries)) {
return false;
}
$cFilter = $this->getRepository()->getContentFilter();
if (!empty($cFilter)) {
$cFilter = $cFilter->toArray();
}
$jsonData = array("repositoryId" => $this->getRepositoryId(), "users_number" => AuthService::countUsersForRepository($this->getRepositoryId()), "label" => $this->getRepository()->getDisplay(), "description" => $this->getRepository()->getDescription(), "entries" => $sharedEntries, "element_watch" => $elementWatch, "repository_url" => AJXP_Utils::getWorkspaceShortcutURL($this->getRepository()) . "/", "content_filter" => $cFilter, "share_owner" => $this->getOwner(), "share_scope" => $this->getVisibilityScope());
$jsonData["links"] = array();
foreach ($this->shareLinks as $shareLink) {
$uniqueUser = $shareLink->getUniqueUser();
$found = false;
foreach ($sharedEntries as $entry) {
if ($entry["ID"] == $uniqueUser) {
$found = true;
}
}
if (!$found) {
// STRANGE, THE ASSOCIATED USER IS MISSING
error_log("Found shareLink orphan with uniqueUser " . $uniqueUser);
continue;
}
$jsonData["links"][$shareLink->getHash()] = $shareLink->getJsonData($publicAccessManager, $messages);
}
return $jsonData;
}