/** * Class constructor * * @param string $listType * @param int $count * @param string $tag */ public function __construct(array $params) { parent::__construct(); $photoId = $params['photoId']; $config = OW::getConfig(); $lang = OW::getLanguage(); $this->photoService = PHOTO_BOL_PhotoService::getInstance(); $this->photoAlbumService = PHOTO_BOL_PhotoAlbumService::getInstance(); $photo = $this->photoService->findPhotoById($photoId); $album = $this->photoAlbumService->findAlbumById($photo->albumId); $this->assign('album', $album); // is owner $contentOwner = $this->photoService->findPhotoOwner($photo->id); $userId = OW::getUser()->getId(); $ownerMode = $contentOwner == $userId; $this->assign('ownerMode', $ownerMode); // is moderator $modPermissions = OW::getUser()->isAuthorized('photo'); $this->assign('moderatorMode', $modPermissions); $canView = true; if (!$ownerMode && !$modPermissions && !OW::getUser()->isAuthorized('photo', 'view')) { $canView = false; } $this->assign('canView', $canView); $cmtParams = new BASE_CommentsParams('photo', 'photo_comments'); $cmtParams->setEntityId($photo->id); $cmtParams->setOwnerId($contentOwner); $cmtParams->setDisplayType(BASE_CommentsParams::DISPLAY_TYPE_BOTTOM_FORM_WITH_FULL_LIST); $photoCmts = new BASE_CMP_Comments($cmtParams); $this->addComponent('comments', $photoCmts); $photoRates = new BASE_CMP_Rate('photo', 'photo_rates', $photo->id, $contentOwner); $this->addComponent('rate', $photoRates); $photoTags = new BASE_CMP_EntityTagCloud('photo'); $photoTags->setEntityId($photo->id); $photoTags->setRouteName('view_tagged_photo_list'); $this->addComponent('tags', $photoTags); $description = $photo->description; $photo->description = UTIL_HtmlTag::autoLink($photo->description); $this->assign('photo', $photo); $this->assign('url', $this->photoService->getPhotoUrl($photo->id, false, $photo->hash)); $this->assign('ownerName', BOL_UserService::getInstance()->getUserName($album->userId)); $is_featured = PHOTO_BOL_PhotoFeaturedService::getInstance()->isFeatured($photo->id); if ((int) $config->getValue('photo', 'store_fullsize') && $photo->hasFullsize) { $this->assign('fullsizeUrl', $this->photoService->getPhotoFullsizeUrl($photo->id, $photo->hash)); } else { $this->assign('fullsizeUrl', null); } $action = new BASE_ContextAction(); $action->setKey('photo-moderate'); $context = new BASE_CMP_ContextAction(); $context->addAction($action); $contextEvent = new BASE_CLASS_EventCollector('photo.collect_photo_context_actions', array('photoId' => $photoId, 'photoDto' => $photo)); OW::getEventManager()->trigger($contextEvent); foreach ($contextEvent->getData() as $contextAction) { $action = new BASE_ContextAction(); $action->setKey(empty($contextAction['key']) ? uniqid() : $contextAction['key']); $action->setParentKey('photo-moderate'); $action->setLabel($contextAction['label']); if (!empty($contextAction['id'])) { $action->setId($contextAction['id']); } if (!empty($contextAction['order'])) { $action->setOrder($contextAction['order']); } if (!empty($contextAction['class'])) { $action->setClass($contextAction['class']); } if (!empty($contextAction['url'])) { $action->setUrl($contextAction['url']); } $attributes = empty($contextAction['attributes']) ? array() : $contextAction['attributes']; foreach ($attributes as $key => $value) { $action->addAttribute($key, $value); } $context->addAction($action); } if ($userId && !$ownerMode) { $action = new BASE_ContextAction(); $action->setKey('flag'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'flag')); $action->setId('btn-photo-flag'); $action->addAttribute('rel', $photoId); $action->addAttribute('url', OW::getRouter()->urlForRoute('view_photo', array('id' => $photo->id))); $context->addAction($action); } if ($ownerMode || $modPermissions) { $action = new BASE_ContextAction(); $action->setKey('edit'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'edit')); $action->setId('btn-photo-edit'); $action->addAttribute('rel', $photoId); $context->addAction($action); $action = new BASE_ContextAction(); $action->setKey('delete'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'delete')); $action->setId('photo-delete'); $action->addAttribute('rel', $photoId); $context->addAction($action); } if ($modPermissions) { if ($is_featured) { $action = new BASE_ContextAction(); $action->setKey('unmark-featured'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('photo', 'remove_from_featured')); $action->setId('photo-mark-featured'); $action->addAttribute('rel', 'remove_from_featured'); $action->addAttribute('photo-id', $photoId); $context->addAction($action); } else { $action = new BASE_ContextAction(); $action->setKey('mark-featured'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('photo', 'mark_featured')); $action->setId('photo-mark-featured'); $action->addAttribute('rel', 'mark_featured'); $action->addAttribute('photo-id', $photoId); $context->addAction($action); } } $this->addComponent('contextAction', $context); $nextPhoto = $this->photoService->getNextPhoto($photo->albumId, $photo->id); $this->assign('nextPhoto', $nextPhoto); $previousPhoto = $this->photoService->getPreviousPhoto($photo->albumId, $photo->id); $this->assign('previousPhoto', $previousPhoto); $photoCount = $this->photoAlbumService->countAlbumPhotos($photo->albumId); $this->assign('photoCount', $photoCount); $photoIndex = $this->photoService->getPhotoIndex($photo->albumId, $photo->id); $this->assign('photoIndex', $photoIndex); $avatar = BOL_AvatarService::getInstance()->getDataForUserAvatars(array($contentOwner), true, true, true, false); $this->assign('avatar', $avatar[$contentOwner]); }
public function getGroupMenu($group) { if (empty($group["toolbar"])) { return ""; } $contextActionMenu = new BASE_CMP_ContextAction(); $contextActionMenu->setClass("ow_profile_toolbar_group ow_context_action_value_block"); $contextParentAction = new BASE_ContextAction(); $contextParentAction->setKey($group["key"]); $contextParentAction->setLabel($group["label"]); $contextActionMenu->addAction($contextParentAction); usort($group["toolbar"], array($this, "sortCallback")); foreach ($group["toolbar"] as $action) { $attrs = empty($action["attrsArr"]) ? array() : $action["attrsArr"]; $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($action["label"]); if (!empty($attrs["href"])) { $contextAction->setUrl($attrs["href"]); unset($attrs["href"]); } if (!empty($attrs["id"])) { $contextAction->setId($attrs["id"]); unset($attrs["id"]); } if (!empty($attrs["class"])) { $contextAction->setClass($attrs["class"]); unset($attrs["class"]); } foreach ($attrs as $name => $value) { $contextAction->addAttribute($name, $value); } $contextAction->setKey($action["key"]); $contextAction->setOrder($action["order"]); $contextActionMenu->addAction($contextAction); } return $contextActionMenu->render(); }
private function prepareMarkup($photo, $layout = null) { $markup = array(); $photo->title = UTIL_HtmlTag::autoLink($photo->title); $photo->url = OW::getStorage()->getFileUrl($this->themeService->getUserfileImagesDir() . $photo->getFilename()); $photo->addDatetime = UTIL_DateTime::formatSimpleDate($photo->addDatetime, true); $markup['photo'] = $photo; $action = new BASE_ContextAction(); $action->setKey('photo-moderate'); $context = new BASE_CMP_ContextAction(); $context->addAction($action); $lang = OW::getLanguage(); $action = new BASE_ContextAction(); $action->setKey('delete'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'delete')); $action->setId('photo-delete'); $action->addAttribute('rel', $photo->id); $context->addAction($action); $markup['contextAction'] = $context->render(); $document = OW::getDocument(); $onloadScript = $document->getOnloadScript(); if (!empty($onloadScript)) { $markup['onloadScript'] = $onloadScript; } $scriptFiles = $document->getScripts(); if (!empty($scriptFiles)) { $markup['scriptFiles'] = $scriptFiles; } $css = $document->getStyleDeclarations(); if (!empty($css)) { $markup['css'] = $css; } $cssFiles = $document->getStyleSheets(); if (!empty($cssFiles)) { $markup['cssFiles'] = $cssFiles; } $meta = $document->getMeta(); if (!empty($meta)) { $markup['meta'] = $meta; } return $markup; }
public function itemHandler(BASE_CLASS_EventProcessCommentItem $e) { $language = OW::getLanguage(); $deleteButton = false; $cAction = null; $value = $e->getItem(); if ($this->isOwnerAuthorized || $this->isModerator || (int) OW::getUser()->getId() === (int) $value->getUserId()) { $deleteButton = true; } $flagButton = $value->getUserId() != OW::getUser()->getId(); if ($this->isBaseModerator || $deleteButton || $flagButton) { $cAction = new BASE_CMP_ContextAction(); $parentAction = new BASE_ContextAction(); $parentAction->setKey('parent'); $parentAction->setClass('ow_comments_context'); $cAction->addAction($parentAction); if ($deleteButton) { $flagAction = new BASE_ContextAction(); $flagAction->setLabel($language->text('base', 'contex_action_comment_delete_label')); $flagAction->setKey('udel'); $flagAction->setParentKey($parentAction->getKey()); $delId = 'del-' . $value->getId(); $flagAction->setId($delId); $this->actionArr['comments'][$delId] = $value->getId(); $cAction->addAction($flagAction); } if ($this->isBaseModerator && $value->getUserId() != OW::getUser()->getId()) { $modAction = new BASE_ContextAction(); $modAction->setLabel($language->text('base', 'contex_action_user_delete_label')); $modAction->setKey('cdel'); $modAction->setParentKey($parentAction->getKey()); $delId = 'udel-' . $value->getId(); $modAction->setId($delId); $this->actionArr['users'][$delId] = $value->getUserId(); $cAction->addAction($modAction); } if ($flagButton) { $flagAction = new BASE_ContextAction(); $flagAction->setLabel($language->text('base', 'flag')); $flagAction->setKey('cflag'); $flagAction->setParentKey($parentAction->getKey()); $flagAction->addAttribute("onclick", "var d = \$(this).data(); OW.flagContent(d.etype, d.eid);"); $flagAction->addAttribute("data-etype", "comment"); $flagAction->addAttribute("data-eid", $value->id); $cAction->addAction($flagAction); } } if ($this->params->getCommentPreviewMaxCharCount() > 0 && mb_strlen($value->getMessage()) > $this->params->getCommentPreviewMaxCharCount()) { $e->setDataProp('previewMaxChar', $this->params->getCommentPreviewMaxCharCount()); } $e->setDataProp('cnxAction', empty($cAction) ? '' : $cAction->render()); }
private function prepareMarkup($photoId, $layout = NULL) { $markup = array(); $photo = $this->photoService->findPhotoById($photoId); $album = $this->photoAlbumService->findAlbumById($photo->albumId); $layoutList = array('page' => BASE_CommentsParams::DISPLAY_TYPE_WITH_LOAD_LIST, 'floatbox' => BASE_CommentsParams::DISPLAY_TYPE_WITH_LOAD_LIST_MINI); $userId = OW::getUser()->getId(); $ownerMode = $album->userId == $userId; $modPermissions = OW::getUser()->isAuthorized('photo'); $photo->addDatetime = UTIL_DateTime::formatDate($photo->addDatetime); $photo->description = UTIL_HtmlTag::autoLink($photo->description); $dim = !empty($photo->dimension) ? $photo->dimension : FALSE; $photo->url = $this->photoService->getPhotoUrlByType($photo->id, PHOTO_BOL_PhotoService::TYPE_MAIN, $photo->hash, $dim); if ($photo->hasFullsize) { $photo->urlFullscreen = $this->photoService->getPhotoUrlByType($photo->id, PHOTO_BOL_PhotoService::TYPE_FULLSCREEN, $photo->hash, $dim); } if (!empty($photo->description)) { $photo->description = $this->photoService->hashtagToDesc($photo->description); } $markup['photo'] = $photo; $markup['album'] = $album; $markup['albumUrl'] = OW::getRouter()->urlForRoute('photo_user_album', array('user' => BOL_UserService::getInstance()->getUserName($album->userId), 'album' => $album->id)); $markup['photoCount'] = $this->photoAlbumService->countAlbumPhotos($photo->albumId); $markup['photoIndex'] = $this->photoService->getPhotoIndex($photo->albumId, $photo->id); $avatar = BOL_AvatarService::getInstance()->getDataForUserAvatars(array($album->userId), TRUE, TRUE, TRUE, FALSE); $markup['avatar'] = $avatar[$album->userId]; $cmtParams = new BASE_CommentsParams('photo', 'photo_comments'); $cmtParams->setEntityId($photo->id); $cmtParams->setOwnerId($album->userId); $cmtParams->setWrapInBox(FALSE); $cmtParams->setDisplayType(array_key_exists($layout, $layoutList) ? $layoutList[$layout] : BASE_CommentsParams::DISPLAY_TYPE_WITH_LOAD_LIST_MINI); $cmtParams->setInitialCommentsCount(6); $cmtParams->setAddComment($photo->status == PHOTO_BOL_PhotoDao::STATUS_APPROVED); $customId = uniqid('photoComment'); $cmtParams->setCustomId($customId); $markup['customId'] = $customId; $comment = new BASE_CMP_Comments($cmtParams); $markup['comment'] = $comment->render(); $action = new BASE_ContextAction(); $action->setKey('photo-moderate'); $context = new BASE_CMP_ContextAction(); $context->addAction($action); $contextEvent = new BASE_CLASS_EventCollector('photo.collect_photo_context_actions', array('photoId' => $photo->id, 'photoDto' => $photo)); OW::getEventManager()->trigger($contextEvent); foreach ($contextEvent->getData() as $contextAction) { $action = new BASE_ContextAction(); $action->setKey(empty($contextAction['key']) ? uniqid() : $contextAction['key']); $action->setParentKey('photo-moderate'); $action->setLabel($contextAction['label']); if (!empty($contextAction['id'])) { $action->setId($contextAction['id']); } if (!empty($contextAction['order'])) { $action->setOrder($contextAction['order']); } if (!empty($contextAction['class'])) { $action->setClass($contextAction['class']); } if (!empty($contextAction['url'])) { $action->setUrl($contextAction['url']); } $attributes = empty($contextAction['attributes']) ? array() : $contextAction['attributes']; foreach ($attributes as $key => $value) { $action->addAttribute($key, $value); } $context->addAction($action); } $lang = OW::getLanguage(); if ($userId && !$ownerMode && $photo->status == PHOTO_BOL_PhotoDao::STATUS_APPROVED) { $action = new BASE_ContextAction(); $action->setKey('flag'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'flag')); $action->setId('btn-photo-flag'); $action->addAttribute('rel', $photoId); $action->addAttribute('url', OW::getRouter()->urlForRoute('view_photo', array('id' => $photo->id))); $context->addAction($action); } if ($ownerMode || $modPermissions) { $action = new BASE_ContextAction(); $action->setKey('edit'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'edit')); $action->setId('btn-photo-edit'); $action->addAttribute('rel', $photoId); $context->addAction($action); $action = new BASE_ContextAction(); $action->setKey('delete'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('base', 'delete')); $action->setId('photo-delete'); $action->addAttribute('rel', $photoId); $context->addAction($action); } if ($modPermissions) { if (PHOTO_BOL_PhotoFeaturedService::getInstance()->isFeatured($photo->id)) { $action = new BASE_ContextAction(); $action->setKey('unmark-featured'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('photo', 'remove_from_featured')); $action->setId('photo-mark-featured'); $action->addAttribute('rel', 'remove_from_featured'); $action->addAttribute('photo-id', $photoId); $context->addAction($action); } elseif ($photo->status == PHOTO_BOL_PhotoDao::STATUS_APPROVED) { $action = new BASE_ContextAction(); $action->setKey('mark-featured'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('photo', 'mark_featured')); $action->setId('photo-mark-featured'); $action->addAttribute('rel', 'mark_featured'); $action->addAttribute('photo-id', $photoId); $context->addAction($action); } if ($photo->status != PHOTO_BOL_PhotoDao::STATUS_APPROVED) { $action = new BASE_ContextAction(); $action->setKey('mark-approved'); $action->setParentKey('photo-moderate'); $action->setLabel($lang->text('photo', 'approve_photo')); $action->setUrl(OW::getRouter()->urlForRoute('photo.approve', array('id' => $photoId))); // $action->setId('photo-approve'); // $action->addAttribute('url', OW::getRouter()->urlForRoute('photo.approve', array('id' => $photoId))); $context->addAction($action); } } $markup['contextAction'] = $context->render(); $eventParams = array('url' => OW::getRouter()->urlForRoute('view_photo', array('id' => $photo->id)), 'image' => $photo->url, 'title' => $photo->description, 'entityType' => 'photo', 'entityId' => $photo->id); $event = new BASE_CLASS_EventCollector('socialsharing.get_sharing_buttons', $eventParams); OW::getEventManager()->trigger($event); $markup['share'] = @implode("\n", $event->getData()); $document = OW::getDocument(); $onloadScript = $document->getOnloadScript(); if (!empty($onloadScript)) { $markup['onloadScript'] = $onloadScript; } $scriptFiles = $document->getScripts(); if (!empty($scriptFiles)) { $markup['scriptFiles'] = $scriptFiles; } $css = $document->getStyleDeclarations(); if (!empty($css)) { $markup['css'] = $css; } $cssFiles = $document->getStyleSheets(); if (!empty($cssFiles)) { $markup['cssFiles'] = $cssFiles; } $meta = $document->getMeta(); if (!empty($meta)) { $markup['meta'] = $meta; } return $markup; }
/** * * @return BASE_CMP_ContextAction */ private function getContextToolbar() { $language = OW::getLanguage(); $contextActionMenu = new BASE_CMP_ContextAction(); $contextParentAction = new BASE_ContextAction(); $contextParentAction->setKey('uheaderToolbar'); $contextParentAction->setLabel($language->text("uheader", "admin_edit_cover_label")); $contextParentAction->setId('uh-toolbar-parent'); $contextActionMenu->addAction($contextParentAction); $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('uheader', 'reposition_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhReposition'); $contextAction->setId('uhco-reposition'); $contextAction->setClass('uhco-item uhco-reposition'); $contextAction->setOrder(1); $contextActionMenu->addAction($contextAction); $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('uheader', 'remove_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhRemove'); $contextAction->setId('uhco-remove'); $contextAction->setClass('uhco-item uhco-remove'); $contextAction->setOrder(2); $contextActionMenu->addAction($contextAction); return $contextActionMenu; }
/** * * @return BASE_CMP_ContextAction */ private function getContextToolbar() { $language = OW::getLanguage(); $permissions = $this->getPemissions(); $contextActionMenu = new BASE_CMP_ContextAction(); $contextParentAction = new BASE_ContextAction(); $contextParentAction->setKey('gheaderToolbar'); $contextParentAction->setLabel('<span class="uh-toolbar-add-label">' . $language->text('gheader', 'set_covet_label') . '</span><span class="uh-toolbar-edit-label">' . $language->text('gheader', 'change_covet_label') . '</span>'); $contextParentAction->setId('uh-toolbar-parent'); //$contextParentAction->setClass('ow_ic_picture'); $contextActionMenu->addAction($contextParentAction); if ($permissions['add']) { if (GHEADER_CLASS_PhotoBridge::getInstance()->isActive()) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('gheader', 'choose_from_photos_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhChoose'); $contextAction->setId('uhco-choose'); $contextAction->setClass('uhco-item uhco-choose'); $contextAction->setOrder(1); $contextActionMenu->addAction($contextAction); } $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel('<div class="uh-fake-file"><div>' . $language->text('gheader', 'upload_label') . '</div><input type="file" name="file" id="uh-upload-cover" size="1" /></div>'); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhUpload'); $contextAction->setClass('uhco-item uhco-upload'); $contextAction->setOrder(2); $contextActionMenu->addAction($contextAction); } if ($permissions['reposition']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('gheader', 'reposition_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhReposition'); $contextAction->setId('uhco-reposition'); $contextAction->setClass('uhco-item uhco-reposition'); $contextAction->setOrder(3); $contextActionMenu->addAction($contextAction); } if ($permissions['delete']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('gheader', 'remove_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhRemove'); $contextAction->setId('uhco-remove'); $contextAction->setClass('uhco-item uhco-remove'); $contextAction->setOrder(4); $contextActionMenu->addAction($contextAction); } return $contextActionMenu; }
/** * * @return BASE_CMP_ContextAction */ private function getContextToolbar() { $language = OW::getLanguage(); $permissions = $this->getPemissions(); $contextActionMenu = new BASE_CMP_ContextAction(); $contextParentAction = new BASE_ContextAction(); $contextParentAction->setKey('uheaderToolbar'); $contextParentAction->setLabel('<span class="uh-toolbar-add-label">' . $language->text('uheader', 'set_covet_label') . '</span><span class="uh-toolbar-edit-label">' . $language->text('uheader', 'change_covet_label') . '</span>'); $contextParentAction->setId('uh-toolbar-parent'); $contextActionMenu->addAction($contextParentAction); if ($permissions['choose']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text("uheader", "choose_from_gallery_label")); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhGallery'); $contextAction->setId('uhco-gallery'); $contextAction->setClass('uhco-item uhco-gallery'); $contextAction->setOrder(1); $contextActionMenu->addAction($contextAction); } if ($permissions['add']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel('<div class="uh-fake-file"><div>' . $language->text('uheader', 'upload_label') . '</div><input type="file" name="file" id="uh-upload-cover" size="1" /></div>'); //$contextAction->setLabel($language->text('uheader', 'upload_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhUpload'); $contextAction->setId('uhco-upload'); $contextAction->setClass('uhco-item uhco-upload'); $contextAction->setOrder(2); $contextActionMenu->addAction($contextAction); } if ($permissions['reposition']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('uheader', 'reposition_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhReposition'); $contextAction->setId('uhco-reposition'); $contextAction->setClass('uhco-item uhco-reposition'); $contextAction->setOrder(3); $contextActionMenu->addAction($contextAction); } if ($permissions['stick']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('uheader', 'stick_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhStick'); $contextAction->setId('uhco-stick'); $contextAction->setClass('uhco-item uhco-stick'); $contextAction->setOrder(4); $contextActionMenu->addAction($contextAction); } if ($this->defaultTemplatesCount > 0) { if ($permissions['restore']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text("uheader", "restore_default_label")); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhRestoreDefault'); $contextAction->setId('uhco-restore-default'); $contextAction->setClass('uhco-item uhco-restore-default'); $contextAction->setOrder(5); $contextActionMenu->addAction($contextAction); } } else { if ($permissions['delete']) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text("uheader", "remove_label")); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhRemove'); $contextAction->setId('uhco-remove'); $contextAction->setClass('uhco-item uhco-remove'); $contextAction->setOrder(5); $contextActionMenu->addAction($contextAction); } } /*if ( $permissions['delete'] ) { $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($language->text('uheader', 'remove_label')); $contextAction->setUrl('javascript://'); $contextAction->setKey('uhRemove'); $contextAction->setId('uhco-remove'); $contextAction->setClass('uhco-item uhco-remove'); $contextAction->setOrder(4); $contextActionMenu->addAction($contextAction); }*/ return $contextActionMenu; }
private function getFilterContextAction() { $context = new BASE_CMP_ContextAction(); $action = new BASE_ContextAction(); $action->setKey('forum-search'); $context->addAction($action); $action = new BASE_ContextAction(); $action->setKey('filter_by_user'); $action->setParentKey('forum-search'); $action->setLabel('Filter by user'); $action->setId('btn-filter-by-user'); $context->addAction($action); return $context; }
public function itemHandler(BASE_CLASS_EventProcessCommentItem $e) { $language = OW::getLanguage(); $deleteButton = false; $cAction = null; $value = $e->getItem(); if ($this->isOwnerAuthorized || $this->isModerator || (int) OW::getUser()->getId() === (int) $value->getUserId()) { $deleteButton = true; } if ($this->isBaseModerator || $deleteButton) { $cAction = new BASE_CMP_ContextAction(); $parentAction = new BASE_ContextAction(); $parentAction->setKey('parent'); $parentAction->setClass('ow_comments_context'); $cAction->addAction($parentAction); if ($deleteButton) { $delAction = new BASE_ContextAction(); $delAction->setLabel($language->text('base', 'contex_action_comment_delete_label')); $delAction->setKey('udel'); $delAction->setParentKey($parentAction->getKey()); $delId = 'del-' . $value->getId(); $delAction->setId($delId); $this->actionArr['comments'][$delId] = $value->getId(); $cAction->addAction($delAction); } if ($this->isBaseModerator && $value->getUserId() != OW::getUser()->getId()) { $modAction = new BASE_ContextAction(); $modAction->setLabel($language->text('base', 'contex_action_user_delete_label')); $modAction->setKey('cdel'); $modAction->setParentKey($parentAction->getKey()); $delId = 'udel-' . $value->getId(); $modAction->setId($delId); $this->actionArr['users'][$delId] = $value->getUserId(); $cAction->addAction($modAction); } } $e->setDataProp('cnxAction', empty($cAction) ? '' : $cAction->render()); }
protected function getContextMenu($data) { $contextActionMenu = new BASE_CMP_ContextAction(); $contextParentAction = new BASE_ContextAction(); $contextParentAction->setKey('newsfeed_context_menu_' . $this->autoId); $contextParentAction->setClass('ow_newsfeed_context'); $contextActionMenu->addAction($contextParentAction); $order = 1; foreach ($data['contextMenu'] as $action) { $action = array_merge(array('label' => null, 'order' => $order, 'class' => null, 'url' => null, 'id' => null, 'key' => uniqid($this->autoId . '_'), 'attributes' => array()), $action); $contextAction = new BASE_ContextAction(); $contextAction->setParentKey($contextParentAction->getKey()); $contextAction->setLabel($action['label']); $contextAction->setClass($action['class']); $contextAction->setUrl($action['url']); $contextAction->setId($action['id']); $contextAction->setKey($action['key']); $contextAction->setOrder($action['order']); foreach ($action['attributes'] as $key => $value) { $contextAction->addAttribute($key, $value); } $contextActionMenu->addAction($contextAction); $order++; } return $contextActionMenu->render(); }