]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Added a lot more type-hints where they will happen. Please note that I found
authorRoland Haeder <roland@mxchange.org>
Tue, 27 Jan 2015 18:10:48 +0000 (19:10 +0100)
committerRoland Haeder <roland@mxchange.org>
Tue, 27 Jan 2015 18:12:15 +0000 (19:12 +0100)
a confusion in one method's signature as Profile and User are given at the same
parameter (see @WARNING).

Signed-off-by: Roland Haeder <roland@mxchange.org>
31 files changed:
classes/Confirm_address.php
classes/File_redirection.php
classes/File_thumbnail.php
classes/Notice.php
lib/docfile.php
lib/noticeform.php
plugins/ActivitySpam/ActivitySpamPlugin.php
plugins/ActivitySpam/classes/spam_score.php
plugins/Blog/classes/Blog_entry.php
plugins/Bookmark/BookmarkPlugin.php
plugins/Bookmark/classes/Bookmark.php
plugins/Event/classes/Happening.php
plugins/Event/classes/RSVP.php
plugins/GNUsocialPhoto/classes/Photo.php
plugins/GNUsocialVideo/classes/Video.php
plugins/Minify/MinifyPlugin.php
plugins/ModHelper/ModHelperPlugin.php
plugins/ModLog/ModLogPlugin.php
plugins/NoticeTitle/NoticeTitlePlugin.php
plugins/NoticeTitle/classes/Notice_title.php
plugins/Oembed/classes/File_oembed.php
plugins/Poll/classes/Poll.php
plugins/Poll/classes/Poll_response.php
plugins/QnA/classes/QnA_Answer.php
plugins/QnA/classes/QnA_Question.php
plugins/QnA/forms/qnanewquestion.php
plugins/Recaptcha/RecaptchaPlugin.php
plugins/RegisterThrottle/RegisterThrottlePlugin.php
plugins/SubMirror/classes/SubMirror.php
plugins/UserFlag/UserFlagPlugin.php
plugins/UserLimit/UserLimitPlugin.php

index 0ed7796ad40b8458de85c6538d166ad4ee38b13d..97c69872a60d1cb524c357e0a2b1f37a62a09b6f 100644 (file)
@@ -56,7 +56,7 @@ class Confirm_address extends Managed_DataObject
         return null;
     }
 
-    static function saveNew($user, $address, $addressType, $extra=null)
+    static function saveNew(User $user, $address, $addressType, $extra=null)
     {
         $ca = new Confirm_address();
 
index 0bcccc6cffbbb52ecd8aa4b0100e2afe6cd93dda..292e6372a65374687385e2180254c57849ff4077 100644 (file)
@@ -332,7 +332,7 @@ class File_redirection extends Managed_DataObject
         return $out_url;
     }
 
-    function saveNew($data, $file_id, $url) {
+    function saveNew(array $data, $file_id, $url) {
         $file_redir = new File_redirection;
         $file_redir->url = $url;
         $file_redir->file_id = $file_id;
index 4d76b7dc55fc2e61036f9756aecc71f07183842d..9d8131463dafeb1535c1f6bcc1abff61e3b9ac00 100644 (file)
@@ -63,6 +63,9 @@ class File_thumbnail extends Managed_DataObject
      * @param int $file_id
      */
     public static function saveNew($data, $file_id) {
+        // @TODO Must be an object (see below code)
+        assert(is_object($data));
+
         if (!empty($data->thumbnail_url)) {
             // Non-photo types such as video will usually
             // show us a thumbnail, though it's not required.
index 37765ce38c533bda143256b840820261d13acf5c..6314ff534a0a23846e2a11f06e716826b618c299 100644 (file)
@@ -414,7 +414,7 @@ class Notice extends Managed_DataObject
      * @return Notice
      * @throws ClientException
      */
-    static function saveNew($profile_id, $content, $source, array $options=null) {
+    static function saveNew($profile_id, $content, $source, array $options=array()) {
         $defaults = array('uri' => null,
                           'url' => null,
                           'conversation' => null,   // URI of conversation
@@ -425,13 +425,16 @@ class Notice extends Managed_DataObject
                           'object_type' => null,
                           'verb' => null);
 
-        if (!empty($options) && is_array($options)) {
+        /*
+         * Above type-hint is already array, so simply count it, this saves
+         * "some" CPU cycles.
+         */
+        if (count($options) > 0) {
             $options = array_merge($defaults, $options);
-            extract($options);
-        } else {
-            extract($defaults);
         }
 
+        extract($options);
+
         if (!isset($is_local)) {
             $is_local = Notice::LOCAL_PUBLIC;
         }
index e3968706953003e5a88e752930c956f22ec0967f..1b7fde3cfe686741557ee817a9e70162550fd9e1 100644 (file)
@@ -95,7 +95,7 @@ class DocFile
         }
     }
 
-    function toHTML($args=null)
+    function toHTML(array $args=null)
     {
         if (is_null($args)) {
             $args = array();
index 012619a0ba19a1b38f515c27432947deab0cac2f..320b097e628039a205e7976150fc7f397a9d6d51 100644 (file)
@@ -101,7 +101,7 @@ class NoticeForm extends Form
      *                        'location_id' ID of location
      *                        'location_ns' Namespace of location
      */
-    function __construct($action, $options=null)
+    function __construct(Action $action, array $options = array())
     {
         // XXX: ??? Is this to keep notice forms distinct?
         // Do we have to worry about sub-second race conditions?
@@ -111,10 +111,6 @@ class NoticeForm extends Form
 
         parent::__construct($action);
 
-        if (is_null($options)) {
-            $options = array();
-        }
-
         $this->actionName  = $action->trimmed('action');
 
         $prefill = array('content', 'inreplyto', 'lat', 
index 9d61b2ddddba392d34a59203dbe0fccbc14f512b..fe6b8f6ceffce6c9b0d111faa3302758b84878bc 100644 (file)
@@ -118,7 +118,7 @@ class ActivitySpamPlugin extends Plugin
         return true;
     }
 
-    function onNoticeDeleteRelated($notice) {
+    function onNoticeDeleteRelated(Notice $notice) {
         $score = Spam_score::getKV('notice_id', $notice->id);
         if (!empty($score)) {
             $score->delete();
@@ -126,7 +126,7 @@ class ActivitySpamPlugin extends Plugin
         return true;
     }
 
-    function onUserRightsCheck($profile, $right, &$result) {
+    function onUserRightsCheck(Profile $profile, $right, &$result) {
         switch ($right) {
         case self::REVIEWSPAM:
         case self::TRAINSPAM:
index 5c583a2e0722ebb3d72d90b0623c3befac1cf39d..6a2a11d0698895d46a23ced6c58cca58cef3160e 100644 (file)
@@ -53,7 +53,7 @@ class Spam_score extends Managed_DataObject
     public $score;       // float
     public $created;     // datetime
 
-    function saveNew($notice, $result) {
+    function saveNew(Notice $notice, $result) {
 
         $score = new Spam_score();
 
index 1f585dce4ff854c15b5b1c5ac8d0f7cebbd89671..26ed41f452037cb0514de1dc32392098321d5d0b 100644 (file)
@@ -107,12 +107,8 @@ class Blog_entry extends Managed_DataObject
         );
     }
 
-    static function saveNew($profile, $title, $content, $options=null)
+    static function saveNew(Profile $profile, $title, $content, array $options = array())
     {
-        if (is_null($options)) {
-            $options = array();
-        }
-
         $be             = new Blog_entry();
         $be->id         = (string) new UUID();
         $be->profile_id = $profile->id;
@@ -218,7 +214,7 @@ class Blog_entry extends Managed_DataObject
         }
     }
 
-    static function fromNotice($notice)
+    static function fromNotice(Notice $notice)
     {
         return Blog_entry::getKV('uri', $notice->uri);
     }
index a3dc196e78eabe513c4e727f45acc2b9c9721aa6..33c3a9eea9ab3324f2612a2716caaca3f86ea61d 100644 (file)
@@ -61,7 +61,7 @@ class BookmarkPlugin extends MicroAppPlugin
      *
      * @return boolean hook value
      */
-    function onUserRightsCheck($profile, $right, &$result)
+    function onUserRightsCheck(Profile $profile, $right, &$result)
     {
         if ($right == self::IMPORTDELICIOUS) {
             $result = !$profile->isSilenced();
index a99df87ee3d7da8da3a2117839f9d4d3a96d7a58..b86746dde797c6f76c9d446bc68b4f7e01c1ff30 100644 (file)
@@ -92,7 +92,7 @@ class Bookmark extends Managed_DataObject
      *
      * @return Bookmark found bookmark or null
      */
-    static function getByNotice($notice)
+    static function getByNotice(Notice $notice)
     {
         return self::getKV('uri', $notice->uri);
     }
@@ -105,7 +105,7 @@ class Bookmark extends Managed_DataObject
      *
      * @return Bookmark bookmark found or null
      */
-    static function getByURL($profile, $url)
+    static function getByURL(Profile $profile, $url)
     {
         $nb = new Bookmark();
 
@@ -131,8 +131,8 @@ class Bookmark extends Managed_DataObject
      *
      * @return Notice saved notice
      */
-    static function saveNew($profile, $title, $url, $rawtags, $description,
-                            $options=null)
+    static function saveNew(Profile $profile, $title, $url, $rawtags, $description,
+                            array $options=array())
     {
         if (!common_valid_http_url($url)) {
             throw new ClientException(_m('Only web bookmarks can be posted (HTTP or HTTPS).'));
@@ -145,10 +145,6 @@ class Bookmark extends Managed_DataObject
             throw new ClientException(_m('Bookmark already exists.'));
         }
 
-        if (empty($options)) {
-            $options = array();
-        }
-
         if (array_key_exists('uri', $options)) {
             $other = Bookmark::getKV('uri', $options['uri']);
             if (!empty($other)) {
index 3a094ece6cf3fe34672784e60544d3872b8a28d8..3d2a1738b5e21e8427d8d0f7f848f6e74faf2ff9 100644 (file)
@@ -102,7 +102,7 @@ class Happening extends Managed_DataObject
         );
     }
 
-    static function saveNew($profile, $start_time, $end_time, $title, $location, $description, $url, $options=array())
+    static function saveNew(Profile $profile, $start_time, $end_time, $title, $location, $description, $url, array $options=array())
     {
         if (array_key_exists('uri', $options)) {
             $other = Happening::getKV('uri', $options['uri']);
@@ -207,7 +207,7 @@ class Happening extends Managed_DataObject
         return Notice::getKV('uri', $this->uri);
     }
 
-    static function fromNotice($notice)
+    static function fromNotice(Notice $notice)
     {
         return Happening::getKV('uri', $notice->uri);
     }
index 7266ea7493aa0ba7a508a8a78ca0e358750aefb0..c9504bf601cfafac25576f444a9939215207010a 100644 (file)
@@ -107,7 +107,7 @@ class RSVP extends Managed_DataObject
         );
     }
 
-    function saveNew($profile, $event, $verb, $options=array())
+    function saveNew(Profile $profile, $event, $verb, array $options = array())
     {
         if (array_key_exists('uri', $options)) {
             $other = RSVP::getKV('uri', $options['uri']);
@@ -315,7 +315,7 @@ class RSVP extends Managed_DataObject
                               $this->response);
     }
 
-    static function toHTML($profile, $event, $response)
+    static function toHTML(Profile $profile, Event $event, $response)
     {
         $fmt = null;
 
index a6e01a8c1b385f1fffdc55b4da3647b8f627efd3..c530ca030c7309d0bb8ff6f4680dafb0e9cde6cc 100644 (file)
@@ -46,7 +46,7 @@ class Photo extends Managed_DataObject
     public $description;       // text
     public $profile_id;        // int
 
-    public static function getByNotice($notice)
+    public static function getByNotice(Notice $notice)
     {
         return self::getKV('uri', $notice->uri);
     }
@@ -81,7 +81,7 @@ class Photo extends Managed_DataObject
         );
     }
 
-    static function saveNew(Profile $profile, $photo_uri, $thumb_uri, $title, $description, $options=array())
+    static function saveNew(Profile $profile, $photo_uri, $thumb_uri, $title, $description, array $options=array())
     {
         $photo = new Photo();
 
index d2dd0469a1f6b4d94b0fe64909ccbe20ca1bec46..9746948e16f93aefc7bc2fc2ef7f2024d188df0e 100644 (file)
@@ -43,7 +43,7 @@ class Video extends Managed_DataObject
     public $url;               // varchar (255)
     public $profile_id;        // int
 
-    public static function getByNotice($notice)
+    public static function getByNotice(Notice $notice)
     {
         return self::getKV('uri', $notice->uri);
     }
@@ -75,7 +75,7 @@ class Video extends Managed_DataObject
         );
     }
 
-    static function saveNew(Profile $profile, $url, $options=array())
+    static function saveNew(Profile $profile, $url, array $options=array())
     {
         $vid = new Video();
 
index 1dd3bdcf345fcd685cabdfe9ba3ad304d3e3ced0..cb51e980f3760c95e5345b16a77a032f8c72c877 100644 (file)
@@ -152,7 +152,7 @@ class MinifyPlugin extends Plugin
         return JSMin::minify($code);
     }
 
-    static function minifyCss($code, $options = array()) {
+    static function minifyCss($code, array $options = array()) {
         require_once('Minify/CSS.php');
         return Minify_CSS::minify($code,$options);
     }
index 2752a2153947302d251aabf8374d381e32412f44..b37ea445788aa651a7172ec0dad28bcaebb62199 100644 (file)
@@ -42,7 +42,7 @@ class ModHelperPlugin extends Plugin
         return true;
     }
 
-    function onUserRightsCheck($profile, $right, &$result)
+    function onUserRightsCheck(Profile $profile, $right, &$result)
     {
         if (in_array($right, self::$rights)) {
             // Hrm.... really we should confirm that the *other* user isn't privleged. :)
index 32c96be0e8c0722b5d7249adc0012beacc7455d6..e659ee57c39afce27336ed081d3e3f041eb2f8f3 100644 (file)
@@ -71,7 +71,7 @@ class ModLogPlugin extends Plugin
         return true;
     }
 
-    function onEndGrantRole($profile, $role)
+    function onEndGrantRole(Profile $profile, $role)
     {
         $modlog = new ModLog();
 
@@ -79,7 +79,7 @@ class ModLogPlugin extends Plugin
         $modlog->profile_id = $profile->id;
 
         $cur = common_current_user();
-        
+
         if (!empty($cur)) {
             $modlog->moderator_id = $cur->id;
         }
@@ -93,7 +93,7 @@ class ModLogPlugin extends Plugin
         return true;
     }
 
-    function onEndRevokeRole($profile, $role)
+    function onEndRevokeRole(Profile $profile, $role)
     {
         $modlog = new ModLog();
 
@@ -102,7 +102,7 @@ class ModLogPlugin extends Plugin
         $modlog->profile_id = $profile->id;
 
         $cur = common_current_user();
-        
+
         if (!empty($cur)) {
             $modlog->moderator_id = $cur->id;
         }
@@ -173,7 +173,7 @@ class ModLogPlugin extends Plugin
         }
     }
 
-    function onUserRightsCheck($profile, $right, &$result) {
+    function onUserRightsCheck(Profile $profile, $right, &$result) {
         switch ($right) {
         case self::VIEWMODLOG:
             $result = ($profile->hasRole(Profile_role::MODERATOR) || $profile->hasRole('modhelper'));
index 960cb935f715ced90e5ec2102c353a2e8f619351..87e07d5a63fb75fdadf5d76e0adbec6cf5d4525d 100644 (file)
@@ -246,7 +246,7 @@ class NoticeTitlePlugin extends Plugin
      *
      * @return boolean hook value
      */
-    function onNoticeDeleteRelated($notice)
+    function onNoticeDeleteRelated(Notice $notice)
     {
         $nt = Notice_title::getKV('notice_id', $notice->id);
 
@@ -264,7 +264,7 @@ class NoticeTitlePlugin extends Plugin
      *
      * @return boolean hook value
      */
-    function onStartShowHeadTitle($action)
+    function onStartShowHeadTitle(Action $action)
     {
         $actionName = $action->trimmed('action');
 
index 610e32fca757bcff1ff39f16f3652c4ad66a578d..66ad948e6d9cb376b5d6c38cbd231fd4de43cb2b 100644 (file)
@@ -77,7 +77,7 @@ class Notice_title extends Managed_DataObject
      *
      * @return string title of the notice, or null if none
      */
-    static function fromNotice($notice)
+    static function fromNotice(Notice $notice)
     {
         $nt = Notice_title::getKV('notice_id', $notice->id);
         if (empty($nt)) {
index cb8420e352c6bc297335f9d3481e95d7683fddf9..e2b003c31d7653ab9c7339010da2957a06a94850 100644 (file)
@@ -92,6 +92,9 @@ class File_oembed extends Managed_DataObject
      * @param int $file_id
      */
     public static function saveNew($data, $file_id) {
+        // @TODO Must be an object
+        assert(is_object($data));
+
         $file_oembed = new File_oembed;
         $file_oembed->file_id = $file_id;
         if (!isset($data->version)) {
index 15441420285d332cdf5daac06fac8b2c44d04e1a..850b5fc0578ed47e30ccaaded8e0196e9fe70827 100644 (file)
@@ -82,7 +82,7 @@ class Poll extends Managed_DataObject
      *
      * @return Poll found poll or null
      */
-    static function getByNotice($notice)
+    static function getByNotice(Notice $notice)
     {
         return self::getKV('uri', $notice->uri);
     }
@@ -167,12 +167,8 @@ class Poll extends Managed_DataObject
      *
      * @return Notice saved notice
      */
-    static function saveNew($profile, $question, $opts, $options=null)
+    static function saveNew(Profile $profile, $question, $opts, array $options = array())
     {
-        if (empty($options)) {
-            $options = array();
-        }
-
         $p = new Poll();
 
         $p->id          = UUID::gen();
index 0fc08443fa7ee3ecd5fb71cce05fc60c9dbe2c60..3c9379a938c96452bc6840b95dbb10f7deba2a6b 100644 (file)
@@ -85,7 +85,7 @@ class Poll_response extends Managed_DataObject
      *
      * @return Poll_response found response or null
      */
-    static function getByNotice($notice)
+    static function getByNotice(Notice $notice)
     {
         return self::getKV('uri', $notice->uri);
     }
@@ -123,12 +123,8 @@ class Poll_response extends Managed_DataObject
      *
      * @return Notice saved notice
      */
-    static function saveNew($profile, $poll, $selection, $options=null)
+    static function saveNew(Profile $profile, $poll, $selection, array $options=array)
     {
-        if (empty($options)) {
-            $options = array();
-        }
-
         if (!$poll->isValidSelection($selection)) {
             // TRANS: Client exception thrown when responding to a poll with an invalid option.
             throw new ClientException(_m('Invalid poll selection.'));
index 70285cfe14bfbdca95a8494400d7161b6c7ffd40..ef8bcf5b609ea3272a1a4783018144e7a120a63f 100644 (file)
@@ -103,7 +103,7 @@ class QnA_Answer extends Managed_DataObject
      *
      * @return QnA_Answer found response or null
      */
-    static function getByNotice($notice)
+    static function getByNotice(Notice $notice)
     {
         $answer = self::getKV('uri', $notice->uri);
         if (empty($answer)) {
@@ -122,7 +122,7 @@ class QnA_Answer extends Managed_DataObject
         return Notice::getKV('uri', $this->uri);
     }
 
-    static function fromNotice($notice)
+    static function fromNotice(Notice $notice)
     {
         return QnA_Answer::getKV('uri', $notice->uri);
     }
@@ -177,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();
 
@@ -235,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;
index 66eb1b12362b7b826f307212bb20f5fded21946d..977f93fe4704022fb02d34d4e801cd554a6a5877 100644 (file)
@@ -97,7 +97,7 @@ class QnA_Question extends Managed_DataObject
      *
      * @return Question found question or null
      */
-    static function getByNotice($notice)
+    static function getByNotice(Notice $notice)
     {
         return self::getKV('uri', $notice->uri);
     }
@@ -164,7 +164,7 @@ class QnA_Question extends Managed_DataObject
         return $a->count();
     }
 
-    static function fromNotice($notice)
+    static function fromNotice(Notice $notice)
     {
         return QnA_Question::getKV('uri', $notice->uri);
     }
@@ -179,7 +179,7 @@ class QnA_Question extends Managed_DataObject
         return self::toString($this->getProfile(), $this);
     }
 
-    static function toHTML($profile, $question)
+    static function toHTML(Profile $profile, $question)
     {
         $notice = $question->getNotice();
 
@@ -237,7 +237,7 @@ class QnA_Question extends Managed_DataObject
      *
      * @return Notice saved notice
      */
-    static function saveNew($profile, $title, $description, $options = array())
+    static function saveNew(Profile $profile, $title, $description, array $options = array())
     {
         $q = new QnA_Question();
 
index eca01879822d2a03af8f282012ed0c684e3395ee..760c38905105542be66132cb5e843949dd032255 100644 (file)
@@ -56,7 +56,7 @@ class QnanewquestionForm extends Form
      *
      * @return void
      */
-    function __construct($out = null, $title = null, $description = null, $options = null)
+    function __construct($out = null, $title = null, $description = null, array $options = array())
     {
         parent::__construct($out);
         $this->title       = $title;
index 48754ffab4309045b395cf3e56113835a86a49d1..e44caa13f7a9aad9d085ee7727b8465686547e75 100644 (file)
@@ -85,7 +85,17 @@ class RecaptchaPlugin extends Plugin
         return true;
     }
 
-    function onStartRegistrationTry($action)
+    /**
+     * Called when someone tries to register.
+     *
+     * We check the IP here to determine if it goes over any of our
+     * configured limits.
+     *
+     * @param Action $action Action that is being executed
+     *
+     * @return boolean hook value
+     */
+    function onStartRegistrationTry(Action $action)
     {
         $resp = recaptcha_check_answer ($this->private_key,
                                         $_SERVER["REMOTE_ADDR"],
index 9d3be3b8a26bdea267a036133e3cce4b0973e090..d09642a6330872d0206d5a00406674c87ae4a3ee 100644 (file)
@@ -91,7 +91,7 @@ class RegisterThrottlePlugin extends Plugin
      *
      * @return boolean hook value
      */
-    public function onStartRegistrationTry($action)
+    public function onStartRegistrationTry(Action $action)
     {
         $ipaddress = $this->_getIpAddress();
 
@@ -241,7 +241,7 @@ class RegisterThrottlePlugin extends Plugin
      *
      * @return boolean hook value
      */
-    public function onEndGrantRole($profile, $role)
+    public function onEndGrantRole(Profile $profile, $role)
     {
         if (!self::$enabled) {
             return true;
index de63841e729e84f44f712d7efaa0c3bbb5f555ba..cdbbed6726e415c2ddcbd24d18cbef7ba7a36fe6 100644 (file)
@@ -188,10 +188,11 @@ class SubMirror extends Managed_DataObject
      * Kind of dirty, but if pulling an external data feed into an account
      * that may be what you want.
      *
-     * @param Notice $notice
-     * @return mixed Notice on successful repeat, true if already repeated, false on failure
+     * @param  Profile $profile
+     * @param  Notice  $notice
+     * @return mixed   Notice on successful repeat, true if already repeated, false on failure
      */
-    protected function copyNotice($profile, $notice)
+    protected function copyNotice(Profile $profile, Notice $notice)
     {
         $options = array('is_local' => Notice::LOCAL_PUBLIC,
                          'url' => $notice->getUrl(), // pass through the foreign link...
index d2afeaced85346c4f6aae441db7466d6893e3438..696019337a04257461498a6bf6bee511c931c8a2 100644 (file)
@@ -152,6 +152,8 @@ class UserFlagPlugin extends Plugin
      * @param boolean &$result out, result of the check
      *
      * @return boolean hook result
+     * @TODO Other implementing classes expect Profile here!!!
+     * @WARNING
      */
     function onUserRightsCheck($user, $right, &$result)
     {
index ac4d503151d569d1d619c52776efe3bab3d31b14..ed4ff9df497267bda79f09ac6c5290a1e0467a47 100644 (file)
@@ -55,7 +55,17 @@ class UserLimitPlugin extends Plugin
         return true;
     }
 
-    function onStartRegistrationTry($action)
+    /**
+     * Called when someone tries to register.
+     *
+     * We check the IP here to determine if it goes over any of our
+     * configured limits.
+     *
+     * @param Action $action Action that is being executed
+     *
+     * @return boolean hook value
+     */
+    function onStartRegistrationTry(Action $action)
     {
         $this->_checkMaxUsers();
         return true;