]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/QnA/classes/QnA_Answer.php
Added a lot more type-hints where they will happen. Please note that I found
[quix0rs-gnu-social.git] / plugins / QnA / classes / QnA_Answer.php
index 7f92e47c61653a8c5499d0544ca970c2f2ce304a..ef8bcf5b609ea3272a1a4783018144e7a120a63f 100644 (file)
@@ -55,39 +55,6 @@ class QnA_Answer extends Managed_DataObject
     public $content;     // text -> response text
     public $created;     // datetime
 
-    /**
-     * Get an instance by key
-     *
-     * This is a utility method to get a single instance with a given key value.
-     *
-     * @param string $k Key to use to lookup
-     * @param mixed  $v Value to lookup
-     *
-     * @return QnA_Answer object found, or null for no hits
-     *
-     */
-    function staticGet($k, $v=null)
-    {
-        return Memcached_DataObject::staticGet('QnA_Answer', $k, $v);
-    }
-
-    /**
-     * Get an instance by compound key
-     *
-     * This is a utility method to get a single instance with a given set of
-     * key-value pairs. Usually used for the primary key for a compound key; thus
-     * the name.
-     *
-     * @param array $kv array of key-value mappings
-     *
-     * @return QA_Answer object found, or null for no hits
-     *
-     */
-    function pkeyGet($kv)
-    {
-        return Memcached_DataObject::pkeyGet('QnA_Answer', $kv);
-    }
-
     /**
      * The One True Thingy that must be defined and declared.
      */
@@ -136,9 +103,9 @@ class QnA_Answer extends Managed_DataObject
      *
      * @return QnA_Answer found response or null
      */
-    function getByNotice($notice)
+    static function getByNotice(Notice $notice)
     {
-        $answer = self::staticGet('uri', $notice->uri);
+        $answer = self::getKV('uri', $notice->uri);
         if (empty($answer)) {
             throw new Exception("No answer with URI {$notice->uri}");
         }
@@ -152,17 +119,17 @@ class QnA_Answer extends Managed_DataObject
      */
     function getNotice()
     {
-        return Notice::staticGet('uri', $this->uri);
+        return Notice::getKV('uri', $this->uri);
     }
 
-    static function fromNotice($notice)
+    static function fromNotice(Notice $notice)
     {
-        return QnA_Answer::staticGet('uri', $notice->uri);
+        return QnA_Answer::getKV('uri', $notice->uri);
     }
 
-    function bestUrl()
+    function getUrl()
     {
-        return $this->getNotice()->bestUrl();
+        return $this->getNotice()->getUrl();
     }
 
     /**
@@ -172,7 +139,7 @@ class QnA_Answer extends Managed_DataObject
      */
     function getQuestion()
     {
-        $question = QnA_Question::staticGet('id', $this->question_id);
+        $question = QnA_Question::getKV('id', $this->question_id);
         if (empty($question)) {
             // TRANS: Exception thown when getting a question with a non-existing ID.
             // TRANS: %s is the non-existing question ID.
@@ -183,7 +150,7 @@ class QnA_Answer extends Managed_DataObject
 
     function getProfile()
     {
-        $profile = Profile::staticGet('id', $this->profile_id);
+        $profile = Profile::getKV('id', $this->profile_id);
         if (empty($profile)) {
             // TRANS: Exception thown when getting a profile with a non-existing ID.
             // TRANS: %s is the non-existing profile ID.
@@ -210,7 +177,7 @@ class QnA_Answer extends Managed_DataObject
         );
     }
 
-    static function toHTML($profile, $question, $answer)
+    static function toHTML(Profile $profile, $question, $answer)
     {
         $notice = $question->getNotice();
 
@@ -268,12 +235,8 @@ class QnA_Answer extends Managed_DataObject
      *
      * @return Notice saved notice
      */
-    static function saveNew($profile, $question, $text, $options = null)
+    static function saveNew(Profile $profile, $question, $text, array $options = array())
     {
-        if (empty($options)) {
-            $options = array();
-        }
-
         $answer              = new QnA_Answer();
         $answer->id          = UUID::gen();
         $answer->profile_id  = $profile->id;
@@ -287,7 +250,7 @@ class QnA_Answer extends Managed_DataObject
             array('id' => $answer->id)
         );
 
-        common_log(LOG_DEBUG, "Saving answer: $answer->id, $answer->uri");
+        common_debug("Saving answer: $answer->id, $answer->uri");
         $answer->insert();
 
         $content  = sprintf(