Fixed option handling
authorAlexander Ebert <ebert@woltlab.com>
Mon, 4 Feb 2013 20:42:21 +0000 (21:42 +0100)
committerAlexander Ebert <ebert@woltlab.com>
Mon, 4 Feb 2013 20:42:21 +0000 (21:42 +0100)
wcfsetup/install/files/lib/acp/form/AbstractOptionListForm.class.php
wcfsetup/install/files/lib/acp/form/UserGroupAddForm.class.php
wcfsetup/install/files/lib/acp/form/UserOptionListForm.class.php
wcfsetup/install/files/lib/system/option/IOptionHandler.class.php
wcfsetup/install/files/lib/system/option/OptionHandler.class.php
wcfsetup/install/files/lib/system/option/user/UserOptionHandler.class.php
wcfsetup/install/files/lib/system/option/user/group/UserGroupOptionHandler.class.php

index dee75cf445ef432d289e7fa6f992f35d60ace04b..11c2daf90236ccf5d7b6458472569014892809d3 100755 (executable)
@@ -7,7 +7,7 @@ use wcf\system\exception\UserInputException;
  * This class provides default implementations for a list of options.
  * 
  * @author     Marcel Werk
- * @copyright  2001-2012 WoltLab GmbH
+ * @copyright  2001-2013 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage acp.form
@@ -24,12 +24,6 @@ abstract class AbstractOptionListForm extends AbstractForm {
         */
        public $errorType = array();
        
-       /**
-        * cache class name
-        * @var string
-        */
-       public $cacheClass = 'wcf\system\cache\builder\OptionCacheBuilder';
-       
        /**
         * name of the active option category
         * @var string
@@ -66,7 +60,7 @@ abstract class AbstractOptionListForm extends AbstractForm {
        public function readParameters() {
                parent::readParameters();
                
-               $this->optionHandler = new $this->optionHandlerClassName($this->cacheClass, $this->supportI18n, $this->languageItemPattern, $this->categoryName);
+               $this->optionHandler = new $this->optionHandlerClassName($this->supportI18n, $this->languageItemPattern, $this->categoryName);
                $this->initOptionHandler();
        }
        
index 22b37a2157d07ff071a644c75daf1f2d17b4a364..abb59a9eb48a3aba58c6ef3a13878a170b94bb9f 100755 (executable)
@@ -13,7 +13,7 @@ use wcf\system\WCFACP;
  * Shows the group add form.
  * 
  * @author     Marcel Werk
- * @copyright  2001-2012 WoltLab GmbH
+ * @copyright  2001-2013 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage acp.form
index d7cc1c9a9c56c218e7b4fd6ef6b192f598bcffdc..adc542e4faec2532e18797e69b4e70db186977df 100644 (file)
@@ -7,7 +7,7 @@ use wcf\system\language\LanguageFactory;
  * This class provides default implementations for a list of dynamic user options.
  * 
  * @author     Marcel Werk
- * @copyright  2001-2012 WoltLab GmbH
+ * @copyright  2001-2013 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage acp.form
@@ -15,14 +15,14 @@ use wcf\system\language\LanguageFactory;
  */
 abstract class UserOptionListForm extends AbstractOptionListForm {
        /**
-        * @see wcf\acp\form\AbstractOptionListForm::$supportI18n
+        * @see wcf\acp\form\AbstractOptionListForm::$optionHandlerClassName
         */
-       public $supportI18n = false;
+       public $optionHandlerClassName = 'wcf\system\option\user\UserOptionHandler';
        
        /**
-        * @see wcf\acp\form\AbstractOptionListForm::$optionHandlerClassName
+        * @see wcf\acp\form\AbstractOptionListForm::$supportI18n
         */
-       public $optionHandlerClassName = 'wcf\system\option\user\UserOptionHandler';
+       public $supportI18n = false;
        
        /**
         * Returns a list of all available user groups.
index 71f08b4c219ccacb9866a9a85b2cf54aedad364b..51a9eb3aaa499277bfc74dac59c7911c2923cd52 100644 (file)
@@ -5,7 +5,7 @@ namespace wcf\system\option;
  * Every option handler has to implement this interface.
  * 
  * @author     Alexander Ebert
- * @copyright  2001-2012 WoltLab GmbH
+ * @copyright  2001-2013 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage system.option
@@ -15,13 +15,11 @@ interface IOptionHandler {
        /**
         * Creates a new option handler instance.
         * 
-        * @param       string          $cacheName
-        * @param       string          $cacheClass
         * @param       boolean         $supportI18n
         * @param       string          $languageItemPattern
         * @param       string          $categoryName
         */
-       public function __construct($cacheName, $cacheClass, $supportI18n, $languageItemPattern = '', $categoryName = '');
+       public function __construct($supportI18n, $languageItemPattern = '', $categoryName = '');
        
        /**
         * Reads user input from given source array.
index 6cc683d1f4485fd370340972d51dece947fd1848..7656518e8673ec8b24a9e717c2630907bf2c829a 100644 (file)
@@ -31,7 +31,7 @@ class OptionHandler implements IOptionHandler {
         * cache class name
         * @var string
         */
-       public $cacheClass = '';
+       protected $cacheClass = 'wcf\system\cache\builder\OptionCacheBuilder';
        
        /**
         * list of all option categories
@@ -108,8 +108,7 @@ class OptionHandler implements IOptionHandler {
        /**
         * @see wcf\system\option\IOptionHandler::__construct()
         */
-       public function __construct($cacheClass, $supportI18n, $languageItemPattern = '', $categoryName = '') {
-               $this->cacheClass = $cacheClass;
+       public function __construct($supportI18n, $languageItemPattern = '', $categoryName = '') {
                $this->categoryName = $categoryName;
                $this->languageItemPattern = $languageItemPattern;
                $this->supportI18n = $supportI18n;
index 7dfffe5b2bc734b1145cc7594362625b5b0efbaa..e6f0998990ff4ee52d03e2b3bcaaac598f92afe0 100644 (file)
@@ -11,13 +11,18 @@ use wcf\system\option\OptionHandler;
  * Handles user options.
  * 
  * @author     Alexander Ebert
- * @copyright  2001-2012 WoltLab GmbH
+ * @copyright  2001-2013 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage system.option.user
  * @category   Community Framework
  */
 class UserOptionHandler extends OptionHandler {
+       /**
+        * @see wcf\system\option\OptionHandler::$cacheClass
+        */
+       protected $cacheClass = 'wcf\system\cache\builder\UserOptionCacheBuilder';
+       
        /**
         * true, if within registration process
         * @var boolean
index 871ccfad298692cb4fadee3cf516ac24f981d8b0..535ee5a7c28fb3bcaa0ef5f48b1f4c4854d37c12 100644 (file)
@@ -9,13 +9,18 @@ use wcf\util\ClassUtil;
  * Handles user group options.
  * 
  * @author     Alexander Ebert
- * @copyright  2001-2012 WoltLab GmbH
+ * @copyright  2001-2013 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage system.option.user.group
  * @category   Community Framework
  */
 class UserGroupOptionHandler extends OptionHandler {
+       /**
+        * @see wcf\system\option\OptionHandler::$cacheClass
+        */
+       protected $cacheClass = 'wcf\system\cache\builder\UserGroupOptionCacheBuilder';
+       
        /**
         * user group object
         * @var wcf\data\user\group\UserGroup