diff options
author | Zach Copley <zach@controlyourself.ca> | 2009-08-18 22:59:14 +0000 |
---|---|---|
committer | Zach Copley <zach@controlyourself.ca> | 2009-08-18 23:46:08 +0000 |
commit | c049931dc735d7767c5199d2d2816edb5f0487a2 (patch) | |
tree | 845688b957f617df53d819421017e9cbe289c50a | |
parent | 486167ad8e4011292587d4a1ed569a18d50b4a27 (diff) |
Return null if all columns in the compound primary key aren't specified
-rw-r--r-- | classes/Foreign_link.php | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/classes/Foreign_link.php b/classes/Foreign_link.php index c0b356ece..ae8c22fd8 100644 --- a/classes/Foreign_link.php +++ b/classes/Foreign_link.php @@ -29,34 +29,38 @@ class Foreign_link extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - // XXX: This only returns a 1->1 single obj mapping. Change? Or make - // a getForeignUsers() that returns more than one? --Zach static function getByUserID($user_id, $service) { + if (empty($user_id) || empty($service)) { + return null; + } + $flink = new Foreign_link(); + $flink->service = $service; $flink->user_id = $user_id; $flink->limit(1); - if ($flink->find(true)) { - return $flink; - } + $result = $flink->find(true); + + return empty($result) ? null : $flink; - return null; } static function getByForeignID($foreign_id, $service) { - $flink = new Foreign_link(); - $flink->service = $service; - $flink->foreign_id = $foreign_id; - $flink->limit(1); + if (empty($foreign_id) || empty($service)) { + return null; + } else { + $flink = new Foreign_link(); + $flink->service = $service; + $flink->foreign_id = $foreign_id; + $flink->limit(1); - if ($flink->find(true)) { - return $flink; - } + $result = $flink->find(true); - return null; + return empty($result) ? null : $flink; + } } function set_flags($noticesend, $noticerecv, $replysync, $friendsync) @@ -66,7 +70,7 @@ class Foreign_link extends Memcached_DataObject } else { $this->noticesync &= ~FOREIGN_NOTICE_SEND; } - + if ($noticerecv) { $this->noticesync |= FOREIGN_NOTICE_RECV; } else { |