cdda33728991d04b1abd5ddaad916cfc747b16cf
[tine20] / tine20 / Filemanager / Config.php
1 <?php
2 /**
3  * @package     Filemanager
4  * @subpackage  Config
5  * @license     http://www.gnu.org/licenses/agpl.html AGPL Version 3
6  * @author      Cornelius Weiß <c.weiss@metaways.de>
7  * @copyright   Copyright (c) 2016-2017 Metaways Infosystems GmbH (http://www.metaways.de)
8  */
9
10 /**
11  * Filemanager config class
12  * 
13  * @package     Filemanager
14  * @subpackage  Config
15  */
16 class Filemanager_Config extends Tinebase_Config_Abstract
17 {
18     const PUBLIC_DOWNLOAD_URL = 'publicDownloadUrl';
19
20     /**
21      * (non-PHPdoc)
22      * @see tine20/Tinebase/Config/Definition::$_properties
23      */
24     protected static $_properties = array(
25         self::PUBLIC_DOWNLOAD_URL => array(
26                                    //_('Public Download URL')
27             'label'                 => 'Public Download URL',
28                                    //_('Possible status. Please note that additional status might impact other Filemanager systems on export or syncronisation.')
29             'description'           => 'Serve anonymous downloads from a differnt URL. Make sure to setup propper rewrite rules',
30             'type'                  => 'string',
31             'clientRegistryInclude' => true,
32             'setByAdminModule'      => false,
33             'setBySetupModule'      => true,
34         )
35     );
36     
37     /**
38      * (non-PHPdoc)
39      * @see tine20/Tinebase/Config/Abstract::$_appName
40      */
41     protected $_appName = 'Filemanager';
42     
43     /**
44      * holds the instance of the singleton
45      *
46      * @var Tinebase_Config
47      */
48     private static $_instance = NULL;
49     
50     /**
51      * the constructor
52      *
53      * don't use the constructor. use the singleton 
54      */    
55     private function __construct() {}
56     
57     /**
58      * the constructor
59      *
60      * don't use the constructor. use the singleton 
61      */    
62     private function __clone() {}
63     
64     /**
65      * Returns instance of Tinebase_Config
66      *
67      * @return Tinebase_Config
68      */
69     public static function getInstance() 
70     {
71         if (self::$_instance === NULL) {
72             self::$_instance = new self();
73         }
74         
75         return self::$_instance;
76     }
77     
78     /**
79      * (non-PHPdoc)
80      * @see tine20/Tinebase/Config/Abstract::getProperties()
81      */
82     public static function getProperties()
83     {
84         return self::$_properties;
85     }
86 }