summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-10-14 21:07:19 -0700
committerTim Almdal <tnalmdal@shaw.ca>2009-10-14 21:07:19 -0700
commit8e1ab75530b2085ed5ae67e714c624b06cae3695 (patch)
treef83632394bff4e5902fe38d48aed8b1dbeb10313
parent8641b51217a312a0136e6e8f6d691dee205e4d9b (diff)
Recreate group::lookup that somehow got removed.
-rw-r--r--modules/gallery/helpers/group.php31
-rw-r--r--modules/gallery/helpers/user.php2
2 files changed, 29 insertions, 4 deletions
diff --git a/modules/gallery/helpers/group.php b/modules/gallery/helpers/group.php
index fbc5157d..dbfa03fe 100644
--- a/modules/gallery/helpers/group.php
+++ b/modules/gallery/helpers/group.php
@@ -61,14 +61,39 @@ class group_Core {
}
/**
+ * Look up a user by id.
+ * @param integer $id the user id
+ * @return User_Model the user object, or null if the id was invalid.
+ */
+ static function lookup($id) {
+ return self::_lookup_group_by_field("id", $id);
+ }
+
+ /**
* Look up a group by name.
* @param integer $id the group name
* @return Group_Model the group object, or null if the name was invalid.
*/
static function lookup_by_name($name) {
- $group = model_cache::get("group", $name, "name");
- if ($group->loaded) {
- return $group;
+ return self::_lookup_group_by_field("name", $name);
+ }
+
+ /**
+ * Look up a user by field value.
+ * @param string search field
+ * @param string search value
+ * @return Group_Model the user object, or null if the name was invalid.
+ */
+ private static function _lookup_group_by_field($field_name, $value) {
+ try {
+ $user = model_cache::get("group", $value, $field_name);
+ if ($user->loaded) {
+ return $user;
+ }
+ } catch (Exception $e) {
+ if (strpos($e->getMessage(), "MISSING_MODEL") === false) {
+ throw $e;
+ }
}
return null;
}
diff --git a/modules/gallery/helpers/user.php b/modules/gallery/helpers/user.php
index 7aa990e1..cb205170 100644
--- a/modules/gallery/helpers/user.php
+++ b/modules/gallery/helpers/user.php
@@ -351,7 +351,7 @@ class user_Core {
* @param string search value
* @return User_Core the user object, or null if the name was invalid.
*/
- private static function _lookup_user_by_field($field_name, $value) {
+ private static function _lookup_user_by_field($field_name, $value) {
try {
$user = model_cache::get("user", $value, $field_name);
if ($user->loaded) {