/** * Returns an instance of the UserProfileMenu class. * * @return UserProfileMenu */ public static function getInstance() { if (self::$instance == null) { self::$instance = new UserProfileMenu(); } return self::$instance; }
/** * @see EventListener::execute() */ public function execute($eventObj, $className, $eventName) { if (MODULE_USER_INFRACTION == 1) { if ($eventName == 'init') { if (WCF::getUser()->getPermission('admin.user.infraction.canWarnUser') || USER_CAN_SEE_HIS_WARNINGS && WCF::getUser()->userID == $eventObj->userID) { $eventObj->sqlSelects .= "(SELECT COUNT(*) FROM wcf" . WCF_N . "_user_infraction_warning_to_user WHERE userID = " . $eventObj->userID . ") AS warnings,"; } } else { if ($eventName == 'assignVariables') { if (!$eventObj->getUser()->warnings) { // remove warning overview tab foreach (UserProfileMenu::getInstance()->menuItems as $parentMenuItem => $items) { foreach ($items as $key => $item) { if ($item['menuItem'] == 'wcf.user.profile.menu.link.infraction') { unset(UserProfileMenu::getInstance()->menuItems[$parentMenuItem][$key]); } } } } // add warn button if (WCF::getUser()->getPermission('admin.user.infraction.canWarnUser')) { WCF::getTPL()->append('additionalAdminOptions', '<li><a href="index.php?form=UserWarn&userID=' . $eventObj->userID . SID_ARG_2ND . '">' . WCF::getLanguage()->get('wcf.user.infraction.button.warn') . '</a></li>'); } } } } }
/** * @see EventListener::execute() */ public function execute($eventObj, $className, $eventName) { if (!WCF::getUser()->getPermission('user.ucstomUserPages.canViewPages')) return; switch ($className) { case 'UserProfileMenu': $items = UserCustomPage::getMenuItemsByUserID($eventObj->userID); foreach ($items as $name => $menuItem) { UserProfileMenu::getInstance()->menuItems[''][] = array( 'menuItem' => $menuItem, 'parentMenuItem' => '', 'menuItemLink' => 'index.php?page=UserCustomPage&userID='.$eventObj->userID.'&pageName='.$name.SID_ARG_2ND_NOT_ENCODED, 'menuItemIcon' => 'messageM.png', 'permissions' => 'user.customUserPages.canViewPages' ); } break; case 'UserProfileFrame': if (WCF::getUser()->userID == $eventObj->userID && $eventObj->getUser()->getPermission('user.customUserPages.canUse')) WCF::getTPL()->append('additionalUserCardOptions', WCF::getTPL()->display('customUserPagesUserCardOption') ); break; } }
public function show() { // set active tab // set active menu item UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.bash.ownEntries'); parent::show(); }
/** * @see EventListener::execute() */ public function execute($eventObj, $className, $eventName) { if ($eventName == 'init') { $eventObj->sqlSelects .= "(SELECT COUNT(*) FROM wcf" . WCF_N . "_contest WHERE userID = user.userID) AS contestEntries,"; } else { if ($eventName == 'assignVariables') { if (!WCF::getUser()->getPermission('user.contest.canViewContest') || !$eventObj->getUser()->getPermission('user.contest.canUseContest') || !$eventObj->getUser()->contestEntries && (WCF::getUser()->userID != $eventObj->userID || !WCF::getUser()->getPermission('user.contest.canUseContest'))) { // remove contest overview tab foreach (UserProfileMenu::getInstance()->menuItems as $parentMenuItem => $items) { foreach ($items as $key => $item) { if ($item['menuItem'] == 'wcf.user.profile.menu.link.contest') { unset(UserProfileMenu::getInstance()->menuItems[$parentMenuItem][$key]); } } } } } } }
/** * Initialises the user profile menu. */ protected static function initUserProfileMenu() { require_once WCF_DIR . 'lib/page/util/menu/UserProfileMenu.class.php'; self::$userProfileMenuObj = UserProfileMenu::getInstance(); }
/** * @see Page::show() */ public function show() { // set active menu item UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.infraction'); // check permission if (!USER_CAN_SEE_HIS_WARNINGS || WCF::getUser()->userID != $this->frame->getUserID()) { WCF::getUser()->checkPermission('admin.user.infraction.canWarnUser'); } parent::show(); }
/** * Assigns variables to the template engine. */ public function assignVariables() { // call assignVariables event EventHandler::fireAction($this, 'assignVariables'); if (!$this->getUser()->friends || !$this->getUser()->shareWhitelist) { // remove friends tab foreach (UserProfileMenu::getInstance()->menuItems as $parentMenuItem => $items) { foreach ($items as $key => $item) { if ($item['menuItem'] == 'wcf.user.profile.menu.link.friends') { unset(UserProfileMenu::getInstance()->menuItems[$parentMenuItem][$key]); } } } } // assign variables WCF::getTPL()->assign(array('user' => $this->user, 'userID' => $this->userID, 'connection' => $this->connection, 'network' => $this->network, 'userSymbols' => $this->userSymbols)); }
/** * @see Page::show() */ public function show() { UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.guestbook'); if (!MODULE_USER_GUESTBOOK) { throw new IllegalLinkException(); } parent::show(); }
/** * @see Page::show() */ public function show() { UserProfileMenu::getInstance()->setActiveMenuItem($this->page->menuItem); parent::show(); }
/** * @see Page::show() */ public function show() { UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.guestbook'); // TODO: check permissions and shit parent::show(); }
/** * @see Page::show() */ public function show() { require_once WCF_DIR . 'lib/page/util/menu/UserProfileMenu.class.php'; UserProfileMenu::getInstance()->userID = $this->userID; UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.guestbook'); // check permission WCF::getUser()->checkPermission('user.guestbook.canRead'); if ($this->user->ignoredUser) { require_once WCF_DIR . 'lib/system/exception/NamedUserException.class.php'; throw new NamedUserException(WCF::getLanguage()->get('wcf.user.profile.error.ignoredUser', array('$username' => StringUtil::encodeHTML($this->user->username)))); } if (WCF::getUser()->getPermission('user.guestbook.canViewMembersListTab') && WCF::getUser()->getPermission('user.membersList.canView')) { HeaderMenu::setActiveMenuItem('wcf.header.menu.memberslist'); } else { if (WCF::getUser()->getPermission('user.guestbook.canViewListMenuButton')) { HeaderMenu::setActiveMenuItem('wcf.header.menu.userGuestbook'); } } parent::show(); }
/** * @see Page::show() */ public function show() { // set active menu item UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.profile'); // update profile hits if ($this->frame->getUserID() != WCF::getUser()->userID && !WCF::getSession()->spiderID) { $sql = "UPDATE\twcf" . WCF_N . "_user\n\t\t\t\tSET\tprofileHits = profileHits + 1\n\t\t\t\tWHERE\tuserID = " . $this->frame->getUserID(); WCF::getDB()->registerShutdownUpdate($sql); // save visitor if (WCF::getUser()->userID && !WCF::getUser()->invisible) { $sql = "INSERT INTO\t\t\twcf" . WCF_N . "_user_profile_visitor\n\t\t\t\t\t\t\t\t\t(ownerID, userID, time)\n\t\t\t\t\tVALUES\t\t\t\t(" . $this->frame->getUserID() . ", " . WCF::getUser()->userID . ", " . TIME_NOW . ")\n\t\t\t\t\tON DUPLICATE KEY UPDATE\t\ttime = VALUES(time)"; WCF::getDB()->registerShutdownUpdate($sql); } } parent::show(); }
/** * @see Page::show() */ public function show() { // check permission if (!WCF::getUser()->userID) { require_once WCF_DIR . 'lib/system/exception/PermissionDeniedException.class.php'; throw new PermissionDeniedException(); } // set active tab require_once WCF_DIR . 'lib/page/util/menu/UserProfileMenu.class.php'; UserProfileMenu::getInstance()->userID = $this->userID; UserCPMenu::getInstance()->setActiveMenuItem('wcf.user.usercp.menu.link.profile.guestbook'); if (WCF::getUser()->getPermission('user.guestbook.canViewMembersListTab') && WCF::getUser()->getPermission('user.membersList.canView')) { HeaderMenu::setActiveMenuItem('wcf.header.menu.memberslist'); } else { if (WCF::getUser()->getPermission('user.guestbook.canViewListMenuButton')) { HeaderMenu::setActiveMenuItem('wcf.header.menu.userGuestbook'); } } require_once WCF_DIR . 'lib/data/message/attachment/AttachmentsEditor.class.php'; $this->attachmentsEditor = new AttachmentsEditor(); // show form parent::show(); }
/** * @see Page::show() */ public function show() { // check permission if (!WCF::getUser()->getPermission('user.wantedPoster.canViewWantedPoster')) { require_once WCF_DIR . 'lib/system/exception/PermissionDeniedException.class.php'; throw new PermissionDeniedException(); } else { if ($this->user->ignoredUser) { require_once WCF_DIR . 'lib/system/exception/NamedUserException.class.php'; throw new NamedUserException(WCF::getLanguage()->get('wcf.user.profile.error.ignoredUser', array('$username' => StringUtil::encodeHTML($this->user->username)))); } } if (WCF::getUser()->getPermission('user.wantedPoster.canViewMembersListTab') && WCF::getUser()->getPermission('user.membersList.canView')) { HeaderMenu::setActiveMenuItem('wcf.header.menu.memberslist'); } else { if (WCF::getUser()->getPermission('user.wantedPoster.canViewHeaderMenu')) { HeaderMenu::setActiveMenuItem('wcf.header.menu.userWantedPoster'); } } require_once WCF_DIR . 'lib/page/util/menu/UserProfileMenu.class.php'; UserProfileMenu::getInstance()->userID = $this->userID; UserProfileMenu::getInstance()->setActiveMenuItem('wcf.user.profile.menu.link.wantedPoster'); // get attachments require_once WCF_DIR . 'lib/data/message/attachment/Attachments.class.php'; $attachments = new Attachments($this->userID, 'wantedPoster'); $this->attachmentList = $attachments->getSortedAttachments(); require_once WCF_DIR . 'lib/data/message/bbcode/AttachmentBBCode.class.php'; AttachmentBBCode::setAttachments($this->attachmentList); parent::show(); }