diff options
author | Evan Prodromou <evan@prodromou.name> | 2008-07-07 01:43:58 -0400 |
---|---|---|
committer | Evan Prodromou <evan@prodromou.name> | 2008-07-07 01:43:58 -0400 |
commit | 8d3ec9c92076e172e5871e3603c143333d73ac3c (patch) | |
tree | 987471d0d11cec6e46d8520494eb63ea4985eba0 /classes | |
parent | f6303475aa512ce96759c9f39b7a4b7d2e6fb7f9 (diff) |
twiddle a few bits to make replies work correctly
darcs-hash:20080707054358-84dde-916977a2af4f792e0dc9e02a9f5344ec60911319.gz
Diffstat (limited to 'classes')
-rw-r--r-- | classes/Profile.php | 15 | ||||
-rw-r--r-- | classes/User.php | 17 |
2 files changed, 19 insertions, 13 deletions
diff --git a/classes/Profile.php b/classes/Profile.php index 000590a98..f41acad4c 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -137,4 +137,19 @@ class Profile extends DB_DataObject function getBestName() { return ($this->fullname) ? $this->fullname : $this->nickname; } + + # Get latest notice on or before date; default now + function getCurrentNotice($dt=NULL) { + $notice = new Notice(); + $notice->profile_id = $this->id; + if ($dt) { + $notice->whereAdd('created < "' . $dt . '"'); + } + $notice->orderBy('created DESC'); + $notice->limit(1); + if ($notice->find(true)) { + return $notice; + } + return NULL; + } } diff --git a/classes/User.php b/classes/User.php index b22e486f3..c5119de15 100644 --- a/classes/User.php +++ b/classes/User.php @@ -95,17 +95,8 @@ class User extends DB_DataObject return !in_array($nickname, $merged); } - function getCurrentNotice() { - $notice = DB_DataObject::factory('notice'); - $profile = $this->getProfile(); - $notice->profile_id = $profile->id; - $notice->limit(1); - $notice->orderBy('created DESC'); - if ($notice->find()) { - $notice->fetch(); - return $notice; - } - return NULL; - } - + function getCurrentNotice($dt=NULL) { + $profile = $this->getProfile(); + return $profile->getCurrentNotice($dt); + } } |