/** * Clear this users clients */ public function clearClients() { \thebuggenie\core\entities\tables\ClientMembers::getTable()->clearClientsByUserID($this->getID()); }
/** * Pre-save function to check for conflicting usernames and to make * sure some properties are set * * @param boolean $is_new Whether this is a new user object */ protected function _preSave($is_new) { parent::_preSave($is_new); if (!framework\Context::isInstallmode() && !framework\Context::isUpgrademode()) { $compare_user = self::getByUsername($this->getUsername()); if ($compare_user instanceof User && $compare_user->getID() && $compare_user->getID() != $this->getID()) { throw new \Exception(framework\Context::getI18n()->__('This username already exists')); } } if ($is_new) { // In case the postsave event isn't processed we automatically enable the user // since we can't be sure that an activation email has been sent out $this->setEnabled(); $this->setActivated(); } if (!$this->_realname) { $this->_realname = $this->_username; } if (!$this->_buddyname) { $this->_buddyname = $this->_username; } if (is_object($this->_timezone)) { $this->_timezone = $this->_timezone->getName(); } if ($is_new && $this->_joined === 0) { $this->_joined = NOW; } if ($is_new && $this->_group_id === null) { $this->setGroup(framework\Settings::getDefaultGroup()); } if ($this->_deleted) { try { if ($this->getGroup() instanceof \thebuggenie\core\entities\Group) { $this->getGroup()->removeMember($this); } } catch (\Exception $e) { } $this->_group_id = null; $this->_buddyname = $this->_username; $this->_username = ''; if (!$is_new) { tables\TeamMembers::getTable()->clearTeamsByUserID($this->getID()); tables\ClientMembers::getTable()->clearClientsByUserID($this->getID()); tables\UserScopes::getTable()->clearUserScopes($this->getID()); } } }
public function getNumberOfMembers() { if ($this->_members !== null) { return count($this->_members); } elseif ($this->_num_members === null) { $this->_num_members = tables\ClientMembers::getTable()->getNumberOfMembersByClientID($this->getID()); } return $this->_num_members; }