public function removeMember(\thebuggenie\core\entities\User $user) { if ($this->_members !== null) { unset($this->_members[$user->getID()]); } if ($this->_num_members !== null) { $this->_num_members--; } }
/** * Load user fixtures for a specified scope * * @param Scope $scope * @param Group $admin_group * @param Group $user_group * @param Group $guest_group */ public static function loadFixtures(Scope $scope, Group $admin_group, Group $user_group, Group $guest_group) { $adminuser = new User(); $adminuser->setUsername('administrator'); $adminuser->setRealname('Administrator'); $adminuser->setBuddyname('Admin'); $adminuser->setGroup($admin_group); $adminuser->setPassword('admin'); $adminuser->setActivated(); $adminuser->setEnabled(); $adminuser->setAvatar('admin'); $adminuser->save(); $guestuser = new User(); $guestuser->setUsername('guest'); $guestuser->setRealname('Guest user'); $guestuser->setBuddyname('Guest user'); $guestuser->setGroup($guest_group); $guestuser->setPassword('password'); // Settings not active yet $guestuser->setActivated(); $guestuser->setEnabled(); $guestuser->save(); framework\Settings::saveSetting('defaultuserid', $guestuser->getID(), 'core', $scope->getID()); return array($guestuser->getID(), $adminuser->getID()); }
protected function _getArticleRelatedUsers(Article $article, User $triggered_by_user = null) { $u_id = $triggered_by_user instanceof User ? $triggered_by_user->getID() : $triggered_by_user; $users = $article->getSubscribers(); foreach ($users as $key => $user) { if ($user->getNotificationSetting(self::NOTIFY_SUBSCRIBED_ARTICLES, true, 'mailing')->isOff()) { unset($users[$key]); } if ($user->getNotificationSetting(self::NOTIFY_UPDATED_SELF, true, 'mailing')->isOff() && $user->getID() == $u_id) { unset($users[$key]); } if ($user->getNotificationSetting(self::NOTIFY_ITEM_ONCE, false, 'mailing')->isOn() && $user->getNotificationSetting(self::NOTIFY_ITEM_ONCE . '_article_' . $article->getID(), false, 'mailing')->isOn()) { unset($users[$key]); } } return $users; }
/** * @param \thebuggenie\core\entities\User $user * @return array */ public function getPlanningColumns(\thebuggenie\core\entities\User $user) { $columns = framework\Settings::get('planning_columns_' . $this->getID(), 'project', framework\Context::getScope()->getID(), $user->getID()); $columns = explode(',', $columns); if (empty($columns) || isset($columns[0]) && empty($columns[0])) { // Default values $columns = array('priority', 'estimated_time', 'spent_time'); } // Set array keys to equal array values $columns = array_combine($columns, $columns); return $columns; }
/** * Check if the given user is a friend of this user * * @param \thebuggenie\core\entities\User $user The user to check * * @return boolean */ public function isFriend($user) { $this->_setupFriends(); if (empty($this->_friends)) { return false; } return array_key_exists($user->getID(), $this->_friends); }
public function removeMember(\thebuggenie\core\entities\User $user) { if ($this->_members !== null) { unset($this->_members[$user->getID()]); } if ($this->_num_members !== null) { $this->_num_members--; } tables\TeamMembers::getTable()->removeUserFromTeam($user->getID(), $this->getID()); }
/** * Populate the array of starred articles */ protected function User__populateStarredArticles(User $user) { if ($user->_isset('publish', 'starredarticles') === null) { $articles = UserArticles::getTable()->getUserStarredArticles($user->getID()); $user->_store('publish', 'starredarticles', $articles); } }
/** * Register a user as working on the issue * * @param \thebuggenie\core\entities\User $user */ public function startWorkingOnIssue(User $user) { $this->_addChangedProperty('_being_worked_on_by_user', $user->getID()); $this->_being_worked_on_by_user_since = NOW; }
/** * Return if the specified user can view this comment * * @param \thebuggenie\core\entities\User $user A User * * @return boolean */ public function isViewableByUser(\thebuggenie\core\entities\User $user) { $can_view = false; try { // Show comment if valid user and... if ($user instanceof \thebuggenie\core\entities\User) { if (!$this->isPublic() && $user->canSeeNonPublicComments() || $this->isPublic() && $user->canViewComments() || $this->postedByUser($user->getID())) { $can_view = true; } //endif } //endif } catch (\Exception $e) { } return $can_view; }
protected function _getArticleRelatedUsers(Article $article, User $triggered_by_user = null) { $u_id = $triggered_by_user instanceof User ? $triggered_by_user->getID() : $triggered_by_user; $subscribers = $article->getSubscribers(); $users = array(); foreach ($subscribers as $user) { if ($user->getNotificationSetting(self::NOTIFY_SUBSCRIBED_ARTICLES, true, 'mailing')->isOff()) { unset($users[$user->getID()]); } if ($user->getNotificationSetting(self::NOTIFY_UPDATED_SELF, true, 'mailing')->isOff() && $user->getID() == $u_id) { unset($users[$user->getID()]); } if ($user->getNotificationSetting(self::NOTIFY_ITEM_ONCE, false, 'mailing')->isOn() && $user->getNotificationSetting(self::NOTIFY_ITEM_ONCE . '_article_' . $article->getID(), false, 'mailing')->isOn()) { unset($users[$user->getID()]); } if ($user->getNotificationSetting(framework\Settings::SETTINGS_USER_NOTIFY_ONLY_IN_BOX_WHEN_ACTIVE, false, 'core')->isOn() && $user->isActive()) { unset($users[$user->getID()]); } } $mentioned_users = $article->getMentionedUsers(); foreach ($mentioned_users as $user) { $users[$user->getID()] = $user; if ($user->getNotificationSetting(self::NOTIFY_MENTIONED, true, 'mailing')->isOff()) { unset($users[$user->getID()]); } if ($user->getNotificationSetting(self::NOTIFY_ITEM_ONCE, false, 'mailing')->isOn() && $user->getNotificationSetting(self::NOTIFY_ITEM_ONCE . '_article_' . $article->getID(), false, 'mailing')->isOn()) { unset($users[$user->getID()]); } if ($user->getNotificationSetting(framework\Settings::SETTINGS_USER_NOTIFY_ONLY_IN_BOX_WHEN_ACTIVE, false, 'core')->isOn() && $user->isActive()) { unset($users[$user->getID()]); } } return $users; }