]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
set/get viewdesigns flag and use it
authorEvan Prodromou <evan@controlyourself.ca>
Sun, 5 Jul 2009 18:33:12 +0000 (14:33 -0400)
committerEvan Prodromou <evan@controlyourself.ca>
Sun, 5 Jul 2009 18:33:12 +0000 (14:33 -0400)
actions/othersettings.php
lib/groupdesignaction.php
lib/ownerdesignaction.php

index b542233ca79ee72dc5bde18531822288c572f4ac..1277f80527f2c3e94c52e59c6176973bc3868fb0 100644 (file)
@@ -83,14 +83,12 @@ class OthersettingsAction extends AccountSettingsAction
     {
         $user = common_current_user();
 
-
         $this->elementStart('form', array('method' => 'post',
                                           'id' => 'form_settings_other',
                                           'class' => 'form_settings',
                                           'action' =>
                                           common_local_url('othersettings')));
         $this->elementStart('fieldset');
-        $this->element('legend', null, _('URL Auto-shortening'));
         $this->hidden('token', common_session_token());
 
         // I18N
@@ -109,10 +107,14 @@ class OthersettingsAction extends AccountSettingsAction
 
         $this->elementStart('ul', 'form_data');
         $this->elementStart('li');
-        $this->dropdown('urlshorteningservice', _('Service'),
+        $this->dropdown('urlshorteningservice', _('Shorten URLs with'),
                         $services, _('Automatic shortening service to use.'),
                         false, $user->urlshorteningservice);
         $this->elementEnd('li');
+        $this->elementStart('li');
+        $this->checkbox('viewdesigns', _('View profile designs'),
+                        $user->viewdesigns, _('Show or hide profile designs.'));
+        $this->elementEnd('li');
         $this->elementEnd('ul');
         $this->submit('save', _('Save'));
         $this->elementEnd('fieldset');
@@ -145,6 +147,8 @@ class OthersettingsAction extends AccountSettingsAction
             return;
         }
 
+        $viewdesigns = $this->boolean('viewdesigns');
+
         $user = common_current_user();
 
         assert(!is_null($user)); // should already be checked
@@ -154,6 +158,7 @@ class OthersettingsAction extends AccountSettingsAction
         $original = clone($user);
 
         $user->urlshorteningservice = $urlshorteningservice;
+        $user->viewdesigns          = $viewdesigns;
 
         $result = $user->update($original);
 
index bc95921f1b156b1751b55fb060b7ea5930ea233e..58777c283a06859a5b635baf08b397ac8b713a5a 100644 (file)
@@ -34,7 +34,7 @@ if (!defined('LACONICA')) {
 /**
  * Base class for actions that use a group's design
  *
- * Pages related to groups can be themed with a design. 
+ * Pages related to groups can be themed with a design.
  * This superclass returns that design.
  *
  * @category Action
@@ -48,7 +48,7 @@ class GroupDesignAction extends Action {
 
     /** The group in question */
     var $group = null;
-    
+
     /**
       * Show the groups's design stylesheet
       *
@@ -58,10 +58,14 @@ class GroupDesignAction extends Action {
      {
          parent::showStylesheets();
 
-         $design = $this->getDesign();
+         $user = common_current_user();
+
+         if (empty($user) || $user->viewdesigns) {
+             $design = $this->getDesign();
 
-         if (!empty($design)) {
-             $design->showCSS($this);
+             if (!empty($design)) {
+                 $design->showCSS($this);
+             }
          }
      }
 
@@ -76,12 +80,10 @@ class GroupDesignAction extends Action {
 
     function getDesign()
     {
-
         if (empty($this->group)) {
             return null;
         }
 
         return $this->group->getDesign();
     }
-
 }
index 424474f4298d75b69a2cfc5c3dd487641331778f..785b8a93d3aad2a0a3962e324516d9d7ef726d1e 100644 (file)
@@ -61,11 +61,15 @@ class OwnerDesignAction extends Action {
      {
          parent::showStylesheets();
 
-         $design = $this->getDesign();
+         $user = common_current_user();
 
-         if (!empty($design)) {
-             $design->showCSS($this);
-        }
+         if (empty($user) || $user->viewdesigns) {
+             $design = $this->getDesign();
+
+             if (!empty($design)) {
+                 $design->showCSS($this);
+             }
+         }
      }
 
     /**