]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Delete orphaned background imgs. Design settings code now passes
authorZach Copley <zach@controlyourself.ca>
Mon, 29 Jun 2009 23:55:42 +0000 (16:55 -0700)
committerZach Copley <zach@controlyourself.ca>
Mon, 29 Jun 2009 23:57:36 +0000 (16:57 -0700)
phpcs.

actions/groupdesignsettings.php
actions/userdesignsettings.php
lib/designsettings.php

index 79c192ac466bceeb9b0988a67ade4a9ae2ab7aad..df34ecb423d0e9c4517ea556578ebef82ce6f362 100644 (file)
@@ -34,19 +34,37 @@ if (!defined('LACONICA')) {
 
 require_once INSTALLDIR . '/lib/designsettings.php';
 
+/**
+ * Setting a groups's design
+ *
+ * Saves a design for a given group
+ *
+ * @category Settings
+ * @package  Laconica
+ * @author   Zach Copley <zach@controlyourself.ca>
+ * @author   Sarven Capadisli <csarven@controlyourself.ca>
+ * @license  http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link     http://laconi.ca/
+ */
+
 class GroupDesignSettingsAction extends DesignSettingsAction
 {
     var $group = null;
 
     /**
-     * Prepare to run
+     * Sets the right action for the form, and passes request args into
+     * the base action
+     *
+     * @param array $args misc. arguments
+     *
+     * @return boolean true
      */
 
     function prepare($args)
     {
         parent::prepare($args);
 
-        if (!common_config('inboxes','enabled')) {
+        if (!common_config('inboxes', 'enabled')) {
             $this->serverError(_('Inboxes must be enabled for groups to work'));
             return false;
         }
@@ -57,7 +75,7 @@ class GroupDesignSettingsAction extends DesignSettingsAction
         }
 
         $nickname_arg = $this->trimmed('nickname');
-        $nickname = common_canonical_nickname($nickname_arg);
+        $nickname     = common_canonical_nickname($nickname_arg);
 
         // Permanent redirect on non-canonical nickname
 
@@ -158,7 +176,8 @@ class GroupDesignSettingsAction extends DesignSettingsAction
      * @return Design
      */
 
-    function getWorkingDesign() {
+    function getWorkingDesign()
+    {
 
         $design = null;
 
@@ -273,9 +292,9 @@ class GroupDesignSettingsAction extends DesignSettingsAction
                 return;
             }
 
-            $original = clone($this->group);
+            $original               = clone($this->group);
             $this->group->design_id = $id;
-            $result = $this->group->update($original);
+            $result                 = $this->group->update($original);
 
             if (empty($result)) {
                 common_log_db_error($original, 'UPDATE', __FILE__);
index ec688d36dbbbe8a269ccfd9f3cf39517f4de001c..4386d55f85f77590cb09f1c992495c7375f84ef3 100644 (file)
@@ -34,8 +34,29 @@ if (!defined('LACONICA')) {
 
 require_once INSTALLDIR . '/lib/designsettings.php';
 
+/**
+ * Setting a user's design
+ *
+ * Saves a design for a given user
+ *
+ * @category Settings
+ * @package  Laconica
+ * @author   Zach Copley <zach@controlyourself.ca>
+ * @author   Sarven Capadisli <csarven@controlyourself.ca>
+ * @license  http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link     http://laconi.ca/
+ */
+
 class UserDesignSettingsAction extends DesignSettingsAction
 {
+    /**
+     * Sets the right action for the form, and passes request args into
+     * the base action
+     *
+     * @param array $args misc. arguments
+     *
+     * @return boolean true
+     */
 
     function prepare($args)
     {
@@ -73,9 +94,10 @@ class UserDesignSettingsAction extends DesignSettingsAction
      * @return Design
      */
 
-    function getWorkingDesign() {
+    function getWorkingDesign()
+    {
 
-        $user = common_current_user();
+        $user   = common_current_user();
         $design = $user->getDesign();
 
         if (empty($design)) {
@@ -142,7 +164,7 @@ class UserDesignSettingsAction extends DesignSettingsAction
             $tile = true;
         }
 
-        $user = common_current_user();
+        $user   = common_current_user();
         $design = $user->getDesign();
 
         if (!empty($design)) {
@@ -189,9 +211,9 @@ class UserDesignSettingsAction extends DesignSettingsAction
                 return;
             }
 
-            $original = clone($user);
+            $original        = clone($user);
             $user->design_id = $id;
-            $result = $user->update($original);
+            $result          = $user->update($original);
 
             if (empty($result)) {
                 common_log_db_error($original, 'UPDATE', __FILE__);
@@ -215,9 +237,10 @@ class UserDesignSettingsAction extends DesignSettingsAction
      * @return nothing
      */
 
-    function sethd() {
+    function sethd()
+    {
 
-        $user = common_current_user();
+        $user   = common_current_user();
         $design = $user->getDesign();
 
         $user->query('BEGIN');
@@ -241,9 +264,9 @@ class UserDesignSettingsAction extends DesignSettingsAction
             return;
         }
 
-        $original = clone($user);
+        $original        = clone($user);
         $user->design_id = $id;
-        $result = $user->update($original);
+        $result          = $user->update($original);
 
         if (empty($result)) {
             common_log_db_error($original, 'UPDATE', __FILE__);
index 476621c0706cbdbcdde02f94c08401706f18eb15..fbffdb208f1e73a35e03497768f61e8f304beadc 100644 (file)
@@ -35,6 +35,20 @@ if (!defined('LACONICA')) {
 require_once INSTALLDIR . '/lib/accountsettingsaction.php';
 require_once INSTALLDIR . '/lib/webcolor.php';
 
+/**
+ * Base class for setting a user or group design
+ *
+ * Shows the design setting form and also handles some things like saving
+ * background images, and fetching a default design
+ *
+ * @category Settings
+ * @package  Laconica
+ * @author   Zach Copley <zach@controlyourself.ca>
+ * @author   Sarven Capadisli <csarven@controlyourself.ca>
+ * @license  http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link     http://laconi.ca/
+ */
+
 class DesignSettingsAction extends AccountSettingsAction
 {
 
@@ -63,6 +77,14 @@ class DesignSettingsAction extends AccountSettingsAction
         'with a background image and a colour palette of your choice.');
     }
 
+    /**
+     * Shows the design settings form
+     *
+     * @param Design $design a working design to show
+     *
+     * @return nothing
+     */
+
     function showDesignForm($design)
     {
 
@@ -94,7 +116,8 @@ class DesignSettingsAction extends AccountSettingsAction
 
         if (!empty($design->backgroundimage)) {
 
-            $this->elementStart('li', array('id' => 'design_background-image_onoff'));
+            $this->elementStart('li', array('id' =>
+                'design_background-image_onoff'));
 
             $this->element('img', array('src' =>
                 Design::url($design->backgroundimage)));
@@ -136,7 +159,7 @@ class DesignSettingsAction extends AccountSettingsAction
             $this->elementStart('li');
             $this->checkbox('design_background-image_repeat',
                             _('Tile background image'),
-                            ($design->disposition & BACKGROUND_TILE) ? true : false );
+                            ($design->disposition & BACKGROUND_TILE) ? true : false);
             $this->elementEnd('li');
         }
 
@@ -362,10 +385,13 @@ class DesignSettingsAction extends AccountSettingsAction
     /**
      * Save the background image, if any, and set its disposition
      *
+     * @param Design $design a working design to attach the img to
+     *
      * @return nothing
      */
 
-    function saveBackgroundImage($design) {
+    function saveBackgroundImage($design)
+    {
 
         // Now that we have a Design ID we can add a file to the design.
         // XXX: This is an additional DB hit, but figured having the image
@@ -378,12 +404,12 @@ class DesignSettingsAction extends AccountSettingsAction
             $filepath = null;
 
             try {
-                    $imagefile =
-                        ImageFile::fromUpload('design_background-image_file');
-                } catch (Exception $e) {
-                    $this->showForm($e->getMessage());
-                    return;
-                }
+                $imagefile =
+                    ImageFile::fromUpload('design_background-image_file');
+            } catch (Exception $e) {
+                $this->showForm($e->getMessage());
+                return;
+            }
 
             $filename = Design::filename($design->id,
                 image_type_to_extension($imagefile->type),
@@ -393,7 +419,14 @@ class DesignSettingsAction extends AccountSettingsAction
 
             move_uploaded_file($imagefile->filepath, $filepath);
 
+            // delete any old backround img laying around
+
+            if (isset($design->backgroundimage)) {
+                @unlink(Design::path($design->backgroundimage));
+            }
+
             $original = clone($design);
+
             $design->backgroundimage = $filename;
 
             // default to on, no tile