ここの情報は古いです。ご理解頂いた上でお取り扱いください。

source: OpenPNE/trunk/webapp/lib/OpenPNE/Config.php @ 4006

Last change on this file since 4006 was 4006, checked in by ebihara, 14 years ago

#1146:SNS設定ページの「Flashリスト表示」のデフォルトを「通常HTML版」にした

File size: 7.5 KB
Line 
1<?php
2/**
3 * @copyright 2005-2007 OpenPNE Project
4 * @license   http://www.php.net/license/3_01.txt PHP License 3.01
5 */
6
7/**
8 * 設定項目の管理クラス
9 */
10class OpenPNE_Config
11{
12    var $allowed_names = array();
13
14    /**
15     * constructor
16     * @access private
17     */
18    function OpenPNE_Config()
19    {
20        $this->allowed_names = array(
21            'SNS_NAME', 'SNS_TITLE',
22            'ADMIN_EMAIL', 'AMAZON_AFFID',
23            'CATCH_COPY', 'OPERATION_COMPANY', 'COPYRIGHT',
24            'IS_CLOSED_SNS', 'IS_USER_INVITE', 'IS_GET_EASY_ACCESS_ID',
25            'OPENPNE_ENABLE_PC', 'OPENPNE_ENABLE_KTAI', 'OPENPNE_KTAI_ID_REQUIRED',
26            'OPENPNE_REGIST_FROM',
27            'LOGIN_CHECK_ENABLE','LOGIN_CHECK_TIME','LOGIN_CHECK_NUM','LOGIN_REJECT_TIME',
28            'LOGIN_URL_PC', 'DISPLAY_LOGIN',
29            'DISPLAY_SCHEDULE_HOME', 'DISPLAY_SEARCH_HOME', 'DAILY_NEWS_DAY',
30            'USE_BOOKMARK_FEED', 'USE_SHINOBIASHI', 'USE_DIARY_CATEGORY',
31            'OPENPNE_USE_CMD_TAG', 'OPENPNE_USE_FLASH_LIST',
32            'WORD_FRIEND','WORD_MY_FRIEND',
33            'WORD_FRIEND_HALF','WORD_MY_FRIEND_HALF',
34            'SORT_ORDER_NICK', 'SORT_ORDER_BIRTH',
35            'OPENPNE_ENABLE_ROLLOVER',
36            'OPENPNE_DISP_POINT', 'OPENPNE_DISP_RANK',
37            'OPENPNE_IS_POINT_ADMIN',
38            'AFFILIATE_TAG',
39            'AFFILIATE_KTAI_TAG',
40            'UNUSED_MAILS',
41            'DISPLAY_OPENPNE_INFO',
42            'USE_EXTRA_SERVICE',
43            'USE_BIZ_DIR',
44            'SEND_USER_DATA',
45            'LIMIT_DOMAIN1',
46            'LIMIT_DOMAIN2',
47            'LIMIT_DOMAIN3',
48            'LIMIT_DOMAIN4',
49            'LIMIT_DOMAIN5',
50            'OPENPNE_USE_POINT_RANK',
51            'OPENPNE_SKIN_THEME',
52            'OPENPNE_USE_KTAI_LOGO',
53        );
54    }
55
56    function &getInstance()
57    {
58        static $singleton;
59        if (empty($singleton)) {
60            $singleton = new OpenPNE_Config();
61        }
62        return $singleton;
63    }
64
65    function is_allowed($name)
66    {
67        return in_array($name, $this->allowed_names);
68    }
69
70    /**
71     * c_admin_config から設定値を読み込み
72     * ひとまず定数として定義
73     */
74    function db_load_config()
75    {
76        $sql = 'SELECT * FROM c_admin_config';
77        $configs = db_get_all($sql);
78
79        foreach ($configs as $config) {
80            if (!$this->is_allowed($config['name'])) continue;
81
82            defined($config['name']) or define($config['name'], $config['value']);
83        }
84    }
85
86    /**
87     * bind_default()
88     *
89     * @access public
90     */
91    function bind_default()
92    {
93        $defaults = array(
94        // 管理画面
95            'SNS_NAME' => 'MySNS',
96            'SNS_TITLE' => '',
97            'ADMIN_EMAIL' => 'sns@' . MAIL_SERVER_DOMAIN,
98            'IS_CLOSED_SNS' => true,
99            'IS_USER_INVITE' => true,
100            'IS_GET_EASY_ACCESS_ID' => 1,
101            'OPENPNE_ENABLE_PC' => true,
102            'OPENPNE_ENABLE_KTAI' => true,
103            'OPENPNE_KTAI_ID_REQUIRED' => false,
104            'OPENPNE_REGIST_FROM' => 3,
105            'AMAZON_AFFID'   => 'snsoftjp-22',
106            'LOGIN_URL_PC' => '',
107            'DISPLAY_LOGIN' => 1,
108            'DISPLAY_SCHEDULE_HOME' => 1,
109            'DISPLAY_SEARCH_HOME' => 1,
110            'DAILY_NEWS_DAY' => '月,木',
111            'USE_BOOKMARK_FEED' => false,
112            'USE_SHINOBIASHI' => false,
113            'USE_DIARY_CATEGORY' => true,
114            'OPENPNE_USE_CMD_TAG' => true,
115            'LOGIN_CHECK_ENABLE' => false,
116            'LOGIN_CHECK_NUM' => 1000,
117            'LOGIN_CHECK_TIME' => 6,
118            'LOGIN_REJECT_TIME' => 30,
119            'CATCH_COPY' => '',
120            'OPERATION_COMPANY' => '',
121            'COPYRIGHT' => '',
122            'WORD_FRIEND' => 'フレンド',
123            'WORD_FRIEND_HALF' => 'フレンド',
124            'WORD_MY_FRIEND' => 'マイフレンド',
125            'WORD_MY_FRIEND_HALF' => 'マイフレンド',
126            'SORT_ORDER_NICK'  => 0,
127            'SORT_ORDER_BIRTH' => 0,
128            'OPENPNE_USE_FLASH_LIST' => false,
129            'OPENPNE_ENABLE_ROLLOVER' => true,
130            'AFFILIATE_TAG' => '',
131            'AFFILIATE_KTAI_TAG' => '',
132            'UNUSED_MAILS' => '',
133            'USE_EXTRA_SERVICE' => '1',
134            'USE_BIZ_DIR' => '0',
135            'SEND_USER_DATA' => '0',
136            'LIMIT_DOMAIN1' => '',
137            'LIMIT_DOMAIN2' => '',
138            'LIMIT_DOMAIN3' => '',
139            'LIMIT_DOMAIN4' => '',
140            'LIMIT_DOMAIN5' => '',
141            'OPENPNE_USE_POINT_RANK' => 0,
142            'OPENPNE_DISP_POINT' => 1,
143            'OPENPNE_DISP_RANK' => 1,
144            'OPENPNE_IS_POINT_ADMIN' => 1,
145            'OPENPNE_SKIN_THEME' => 'default',
146        // config.php
147            'OPENPNE_RSS_CACHE_DIR' => OPENPNE_VAR_DIR . '/rss_cache',
148            'OPENPNE_PUBLIC_HTML_DIR' => OPENPNE_DIR . '/public_html',
149            'OPENPNE_UNDER_MAINTENANCE' => false,
150            'OPENPNE_DEBUGGING' => false,
151            'OPENPNE_TRIM_DOUBLEBYTE_SPACE' => true,
152            'OPENPNE_USE_API' => false,
153            'SESSION_STORAGE' => 0,
154            'OPENPNE_TMP_IMAGE_DB' => false,
155            'OPENPNE_TMP_FILE_DB' => false,
156            'OPENPNE_USE_PARTIAL_SSL' => false,
157            'OPENPNE_USE_SSL_PARAM' => false,
158            'OPENPNE_IMG_URL' => '',
159            'OPENPNE_IMG_CACHE_PUBLIC' => false,
160            'OPENPNE_IMG_CACHE_PREFIX' => 'img_cache_',
161            'IMAGE_MAX_FILESIZE' => 300,
162            'IMAGE_MAX_WIDTH' => 0,
163            'IMAGE_MAX_HEIGHT' => 0,
164            'OPENPNE_USE_FILEUPLOAD' => false,
165            'FILE_MAX_FILESIZE' => 300,
166            'FILE_ALLOWED_EXTENTIONS' => '',
167            'MAIL_ADDRESS_PREFIX' => '',
168            'MAIL_ADDRESS_HASHED' => true,
169            'MAIL_HAN2ZEN' => true,
170            'MAIL_HEADER_SEP' => 'LF',
171            'MAIL_FROM_ENCODING' => 'auto',
172            'MAIL_WRAP_WIDTH' => 200,
173            'MAIL_SET_ENVFROM' => true,
174            'MAIL_ENVFROM' => '',
175            'LOG_C_ACCESS_LOG' => false,
176            'OPENPNE_ADMIN_URL' => '',
177            'ADMIN_MODULE_NAME' => 'admin',
178            'ADMIN_INIT_CONFIG' => true,
179            'SERVER_IP_KEY' => 'REMOTE_ADDR',
180            'OPENPNE_USE_FUNCTION_CACHE' => false,
181            'OPENPNE_USE_MYSQL_HINT' => false,
182            'OPENPNE_USE_COMMU_MAP' => true,
183            'OPENPNE_USE_OLD_CRYPT_BLOWFISH' => false,
184            'OPENPNE_SESSION_CHECK_URL' => false,
185            'OPENPNE_INFO_URL' => 'http://info.openpne.jp/rss',
186            'DISPLAY_OPENPNE_INFO' => true,
187            'IS_SLAVEPNE' => false,
188            'OPENPNE_IMG_KTAI_MAX_WIDTH' => 240,
189            'OPENPNE_IMG_KTAI_MAX_HEIGHT' => 320,
190            'OPENPNE_MAINTENANCE_TEXT' => '',
191            'CHECK_KTAI_IP' => false,
192            'OPENPNE_WEATHER_URL' => 'http://weather.yahoo.co.jp/weather/',
193            'OPENPNE_USE_KTAI_LOGO' => true,
194            'OPENPNE_USE_FUNCTION_CACHE_MEMCACHE' => false,
195        // 固定値
196            'AMAZON_TOKEN'   => '1WZYY1W9YF49AGM0RTG2',
197            'AMAZON_LOCALE'  => 'jp',
198            'AMAZON_BASEURL' => 'http://xml-jp.amznxslt.com/onca/xml3',
199            'OPENPNE_REGIST_FROM_NONE'   => 0,
200            'OPENPNE_REGIST_FROM_PC'     => 1,
201            'OPENPNE_REGIST_FROM_KTAI'   => 2,
202            'OPENPNE_REGIST_FROM_PCKTAI' => 3,
203            'OPENPNE_FUNCTION_CACHE_LIFETIME_FAST' => 300,
204            'OPENPNE_FUNCTION_CACHE_LIFETIME_SHORT' => 1200,
205            'OPENPNE_FUNCTION_CACHE_LIFETIME_LONG' => 3600,
206        );
207
208        foreach ($defaults as $key => $value) {
209            defined($key) or define($key, $value);
210        }
211    }
212}
213
214?>
Note: See TracBrowser for help on using the repository browser.