]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/applicationeditform.php
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
[quix0rs-gnu-social.git] / lib / applicationeditform.php
index ed187ba0b4e402b2aeeecb31b78c559476660b3b..9b7d0586143304586ab3f103262c4e08766b4e63 100644 (file)
@@ -81,6 +81,21 @@ class ApplicationEditForm extends Form
         }
     }
 
+    /**
+     * HTTP method used to submit the form
+     *
+     * For image data we need to send multipart/form-data
+     * so we set that here too
+     *
+     * @return string the method to use for submitting
+     */
+
+    function method()
+    {
+        $this->enctype = 'multipart/form-data';
+        return 'post';
+    }
+
     /**
      * class of the form
      *
@@ -104,12 +119,9 @@ class ApplicationEditForm extends Form
 
         if (!empty($this->application)) {
             return common_local_url('editapplication',
-                array('id' => $this->application->id,
-                      'nickname' => $cur->nickname)
-            );
+                                    array('id' => $this->application->id));
         } else {
-            return common_local_url('newapplication',
-                array('nickname' => $cur->nickname));
+            return common_local_url('newapplication');
         }
     }
 
@@ -134,6 +146,7 @@ class ApplicationEditForm extends Form
     {
         if ($this->application) {
             $id                = $this->application->id;
+            $icon              = $this->application->icon;
             $name              = $this->application->name;
             $description       = $this->application->description;
             $source_url        = $this->application->source_url;
@@ -144,6 +157,7 @@ class ApplicationEditForm extends Form
             $this->access_type = $this->application->access_type;
         } else {
             $id                = '';
+            $icon              = '';
             $name              = '';
             $description       = '';
             $source_url        = '';
@@ -155,10 +169,28 @@ class ApplicationEditForm extends Form
         }
 
         $this->out->elementStart('ul', 'form_data');
+
+        $this->out->elementStart('li', array('id' => 'application_icon'));
+
+        if (!empty($icon)) {
+            $this->out->element('img', array('src' => $icon));
+        }
+
+        $this->out->element('label', array('for' => 'app_icon'),
+                            _('Icon'));
+        $this->out->element('input', array('name' => 'app_icon',
+                                           'type' => 'file',
+                                           'id' => 'app_icon'));
+        $this->out->element('p', 'form_guide', _('Icon for this application'));
+        $this->out->element('input', array('name' => 'MAX_FILE_SIZE',
+                                           'type' => 'hidden',
+                                           'id' => 'MAX_FILE_SIZE',
+                                           'value' => ImageFile::maxFileSizeInt()));
+        $this->out->elementEnd('li');
+
         $this->out->elementStart('li');
 
         $this->out->hidden('application_id', $id);
-        $this->out->hidden('token', common_session_token());
 
         $this->out->input('name', _('Name'),
                           ($this->out->arg('name')) ? $this->out->arg('name') : $name);
@@ -169,14 +201,14 @@ class ApplicationEditForm extends Form
 
         $maxDesc = Oauth_application::maxDesc();
         if ($maxDesc > 0) {
-            $descInstr = sprintf(_('Describe your application in %d chars'),
-                                $maxDesc);
+            $descInstr = sprintf(_('Describe your application in %d characters'),
+                                 $maxDesc);
         } else {
             $descInstr = _('Describe your application');
         }
         $this->out->textarea('description', _('Description'),
                         ($this->out->arg('description')) ? $this->out->arg('description') : $description,
-                        $descInstr);
+                             $descInstr);
 
         $this->out->elementEnd('li');
 
@@ -204,7 +236,7 @@ class ApplicationEditForm extends Form
                           _('URL to redirect to after authentication'));
         $this->out->elementEnd('li');
 
-        $this->out->elementStart('li');
+        $this->out->elementStart('li', array('id' => 'application_types'));
 
         $attrs = array('name' => 'app_type',
                        'type' => 'radio',
@@ -215,15 +247,15 @@ class ApplicationEditForm extends Form
         // Default to Browser
 
         if ($this->application->type == Oauth_application::$browser
-            || empty($this->applicaiton->type)) {
+            || empty($this->application->type)) {
             $attrs['checked'] = 'checked';
         }
 
         $this->out->element('input', $attrs);
 
         $this->out->element('label', array('for' => 'app_type-browser',
-                                      'class' => 'radio'),
-                                      _('Browser'));
+                                           'class' => 'radio'),
+                            _('Browser'));
 
         $attrs = array('name' => 'app_type',
                        'type' => 'radio',
@@ -238,12 +270,12 @@ class ApplicationEditForm extends Form
         $this->out->element('input', $attrs);
 
         $this->out->element('label', array('for' => 'app_type-desktop',
-                                      'class' => 'radio'),
-                                      _('Desktop'));
+                                           'class' => 'radio'),
+                            _('Desktop'));
         $this->out->element('p', 'form_guide', _('Type of application, browser or desktop'));
         $this->out->elementEnd('li');
 
-        $this->out->elementStart('li');
+        $this->out->elementStart('li', array('id' => 'default_access_types'));
 
         $attrs = array('name' => 'default_access_type',
                        'type' => 'radio',
@@ -261,8 +293,8 @@ class ApplicationEditForm extends Form
         $this->out->element('input', $attrs);
 
         $this->out->element('label', array('for' => 'default_access_type-ro',
-                                      'class' => 'radio'),
-                                      _('Read-only'));
+                                           'class' => 'radio'),
+                            _('Read-only'));
 
         $attrs = array('name' => 'default_access_type',
                        'type' => 'radio',
@@ -272,15 +304,15 @@ class ApplicationEditForm extends Form
 
         if ($this->application->access_type & Oauth_application::$readAccess
             && $this->application->access_type & Oauth_application::$writeAccess
-        ) {
+            ) {
             $attrs['checked'] = 'checked';
         }
 
         $this->out->element('input', $attrs);
 
         $this->out->element('label', array('for' => 'default_access_type-rw',
-                                      'class' => 'radio'),
-                                      _('Read-write'));
+                                           'class' => 'radio'),
+                            _('Read-write'));
         $this->out->element('p', 'form_guide', _('Default access for this application: read-only, or read-write'));
 
         $this->out->elementEnd('li');
@@ -296,7 +328,9 @@ class ApplicationEditForm extends Form
 
     function formActions()
     {
-        $this->out->submit('save', _('Save'));
-        $this->out->submit('cancel', _('Cancel'));
+        $this->out->submit('cancel', _('Cancel'), 'submit form_action-primary',
+                           'cancel', _('Cancel'));
+        $this->out->submit('save', _('Save'), 'submit form_action-secondary',
+                           'save', _('Save'));
     }
 }