]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/editapplication.php
Merge remote-tracking branch 'upstream/master' into social-master
[quix0rs-gnu-social.git] / actions / editapplication.php
index 760b1d284e19eea9d4f044ed430952b59d88654f..95ed98ad90ddf57e74cfa40eabbb9af0f97f2c38 100644 (file)
@@ -22,7 +22,7 @@
  * @category  Applications
  * @package   StatusNet
  * @author    Zach Copley <zach@status.net>
- * @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2008-2011 StatusNet, Inc.
  * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
  * @link      http://status.net/
  */
@@ -42,7 +42,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
  * @license  http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
  * @link     http://status.net/
  */
-class EditApplicationAction extends OwnerDesignAction
+class EditApplicationAction extends Action
 {
     var $msg   = null;
     var $owner = null;
@@ -57,20 +57,19 @@ class EditApplicationAction extends OwnerDesignAction
     /**
      * Prepare to run
      */
-    function prepare($args)
+    function prepare(array $args=array())
     {
         parent::prepare($args);
 
         if (!common_logged_in()) {
             // TRANS: Client error displayed trying to edit an application while not logged in.
             $this->clientError(_('You must be logged in to edit an application.'));
-            return false;
         }
 
         $id = (int)$this->arg('id');
 
-        $this->app   = Oauth_application::staticGet($id);
-        $this->owner = User::staticGet($this->app->owner);
+        $this->app   = Oauth_application::getKV($id);
+        $this->owner = User::getKV($this->app->owner);
         $cur         = common_current_user();
 
         if ($cur->id != $this->owner->id) {
@@ -81,7 +80,6 @@ class EditApplicationAction extends OwnerDesignAction
         if (!$this->app) {
             // TRANS: Client error displayed trying to edit an application that does not exist.
             $this->clientError(_('No such application.'));
-            return false;
         }
 
         return true;
@@ -96,7 +94,7 @@ class EditApplicationAction extends OwnerDesignAction
      *
      * @return void
      */
-    function handle($args)
+    function handle(array $args=array())
     {
         parent::handle($args);
 
@@ -128,8 +126,8 @@ class EditApplicationAction extends OwnerDesignAction
         // CSRF protection
         $token = $this->trimmed('token');
         if (!$token || $token != common_session_token()) {
+            // TRANS: Client error displayed when the session token does not match or is not given.
             $this->clientError(_('There was a problem with your session token.'));
-            return;
         }
 
         $cur = common_current_user();
@@ -198,6 +196,7 @@ class EditApplicationAction extends OwnerDesignAction
         } elseif (Oauth_application::descriptionTooLong($description)) {
             $this->showForm(sprintf(
                 // TRANS: Validation error shown when providing too long a description in the "Edit application" form.
+                // TRANS: %d is the maximum number of allowed characters.
                 _m('Description is too long (maximum %d character).',
                   'Description is too long (maximum %d characters).',
                   Oauth_application::maxDesc()),
@@ -208,12 +207,10 @@ class EditApplicationAction extends OwnerDesignAction
             $this->showForm(_('Source URL is too long.'));
             return;
         } elseif ((mb_strlen($source_url) > 0)
-                  && !Validate::uri($source_url,
-                                    array('allowed_schemes' => array('http', 'https'))))
-            {
-                // TRANS: Validation error shown when providing an invalid source URL in the "Edit application" form.
-                $this->showForm(_('Source URL is not valid.'));
-                return;
+                  && !common_valid_http_url($source_url)) {
+            // TRANS: Validation error shown when providing an invalid source URL in the "Edit application" form.
+            $this->showForm(_('Source URL is not valid.'));
+            return;
         } elseif (empty($organization)) {
             // TRANS: Validation error shown when not providing an organisation in the "Edit application" form.
             $this->showForm(_('Organization is required.'));
@@ -223,28 +220,24 @@ class EditApplicationAction extends OwnerDesignAction
             $this->showForm(_('Organization is too long (maximum 255 characters).'));
             return;
         } elseif (empty($homepage)) {
+            // TRANS: Form validation error show when an organisation name has not been provided in the edit application form.
             $this->showForm(_('Organization homepage is required.'));
             return;
         } elseif ((mb_strlen($homepage) > 0)
-                  && !Validate::uri($homepage,
-                                    array('allowed_schemes' => array('http', 'https'))))
-            {
-                // TRANS: Validation error shown when providing an invalid homepage URL in the "Edit application" form.
-                $this->showForm(_('Homepage is not a valid URL.'));
-                return;
-            } elseif (mb_strlen($callback_url) > 255) {
-                // TRANS: Validation error shown when providing too long a callback URL in the "Edit application" form.
-                $this->showForm(_('Callback is too long.'));
-                return;
-            } elseif (mb_strlen($callback_url) > 0
-                      && !Validate::uri($source_url,
-                                        array('allowed_schemes' => array('http', 'https'))
-                                        ))
-                {
-                    // TRANS: Validation error shown when providing an invalid callback URL in the "Edit application" form.
-                    $this->showForm(_('Callback URL is not valid.'));
-                    return;
-                }
+                && !common_valid_http_url($homepage)) {
+            // TRANS: Validation error shown when providing an invalid homepage URL in the "Edit application" form.
+            $this->showForm(_('Homepage is not a valid URL.'));
+            return;
+        } elseif (mb_strlen($callback_url) > 255) {
+            // TRANS: Validation error shown when providing too long a callback URL in the "Edit application" form.
+            $this->showForm(_('Callback is too long.'));
+            return;
+        } elseif (mb_strlen($callback_url) > 0
+                && !common_valid_http_url($callback_url)) {
+            // TRANS: Validation error shown when providing an invalid callback URL in the "Edit application" form.
+            $this->showForm(_('Callback URL is not valid.'));
+            return;
+        }
 
         $cur = common_current_user();
 
@@ -299,7 +292,7 @@ class EditApplicationAction extends OwnerDesignAction
      */
     function nameExists($name)
     {
-        $newapp = Oauth_application::staticGet('name', $name);
+        $newapp = Oauth_application::getKV('name', $name);
         if (empty($newapp)) {
             return false;
         } else {