From c8c6bf9a1c20e104d7a90ff32d537dceaa640eb9 Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Fri, 6 Jun 2014 00:32:07 +0200 Subject: [PATCH] Simplify functions regarding locally cached profiles etc. --- classes/Profile.php | 28 ++++++++++------------------ classes/User.php | 14 +++++--------- classes/User_group.php | 14 +++++--------- 3 files changed, 20 insertions(+), 36 deletions(-) diff --git a/classes/Profile.php b/classes/Profile.php index e4c68724ee..862e8ff11a 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -97,37 +97,29 @@ class Profile extends Managed_DataObject public function getUser() { if (!isset($this->_user[$this->id])) { - $this->_setUser(User::getKV('id', $this->id)); + $user = User::getKV('id', $this->id); + if (!$user instanceof User) { + throw new NoSuchUserException(array('id'=>$this->id)); + } + $this->_user[$this->id] = $user; } return $this->_user[$this->id]; } - public function _setUser(User $user=null) - { - if (!$user instanceof User) { - throw new NoSuchUserException(array('id'=>$this->id)); - } - $this->_user[$this->id] = $user; - } - protected $_group = array(); public function getGroup() { if (!isset($this->_group[$this->id])) { - $this->_setGroup(User_group::getKV('profile_id', $this->id)); + $group = User_group::getKV('profile_id', $this->id); + if (!$group instanceof User_group) { + throw new NoSuchGroupException(array('profile_id'=>$this->id)); + } + $this->_group[$this->id] = $group; } return $this->_group[$this->id]; } - public function _setGroup(User_group $group=null) - { - if (!$group instanceof User_group) { - throw new NoSuchGroupException(array('profile_id'=>$this->id)); - } - $this->_group[$this->id] = $group; - } - public function isGroup() { try { diff --git a/classes/User.php b/classes/User.php index c23b0a0b0a..9b3ebed057 100644 --- a/classes/User.php +++ b/classes/User.php @@ -123,19 +123,15 @@ class User extends Managed_DataObject public function getProfile() { if (!isset($this->_profile[$this->id])) { - $this->_setProfile(Profile::getKV('id', $this->id)); + $profile = Profile::getKV('id', $this->id); + if (!$profile instanceof Profile) { + throw new UserNoProfileException($this); + } + $this->_profile[$this->id] = $profile; } return $this->_profile[$this->id]; } - public function _setProfile(Profile $profile=null) - { - if (!$profile instanceof Profile) { - throw new UserNoProfileException($this); - } - $this->_profile[$this->id] = $profile; - } - public function getUri() { return $this->uri; diff --git a/classes/User_group.php b/classes/User_group.php index a9dfacd498..d81449faa1 100644 --- a/classes/User_group.php +++ b/classes/User_group.php @@ -84,19 +84,15 @@ class User_group extends Managed_DataObject public function getProfile() { if (!isset($this->_profile[$this->profile_id])) { - $this->_setProfile(Profile::getKV('id', $this->profile_id)); + $profile = Profile::getKV('id', $this->profile_id); + if (!$profile instanceof Profile) { + throw new GroupNoProfileException($this); + } + $this->_profile[$this->profile_id] = $profile; } return $this->_profile[$this->profile_id]; } - public function _setProfile(Profile $profile=null) - { - if (!$profile instanceof Profile) { - throw new GroupNoProfileException($this); - } - $this->_profile[$this->profile_id] = $profile; - } - public static function defaultLogo($size) { static $sizenames = array(AVATAR_PROFILE_SIZE => 'profile',