diff options
Diffstat (limited to 'modules/user/models/group.php')
| -rw-r--r-- | modules/user/models/group.php | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/modules/user/models/group.php b/modules/user/models/group.php index 17d9320b..66c9aafc 100644 --- a/modules/user/models/group.php +++ b/modules/user/models/group.php @@ -19,6 +19,7 @@   */  class Group_Model_Core extends ORM implements Group_Definition {    protected $has_and_belongs_to_many = array("users"); +  protected $users_cache = null;    /**     * @see ORM::delete() @@ -28,10 +29,14 @@ class Group_Model_Core extends ORM implements Group_Definition {      module::event("group_before_delete", $this);      parent::delete($id);      module::event("group_deleted", $old); +    unset($this->users_cache);    }    public function users() { -    return $this->users->find_all(); +    if (!$this->users_cache) { +      $this->users_cache = $this->users->find_all(); +    } +    return $this->users_cache;    }    /** @@ -60,6 +65,7 @@ class Group_Model_Core extends ORM implements Group_Definition {        module::event("group_updated", $original, $this);      } +    unset($this->users_cache);      return $this;    } | 
