84857aa9509035a449cced97932de28c4d476b64
3 * Administrator plugin - Option definitions
6 * @author Philippe Mingo
7 * @copyright (c) 1999-2004 The SquirrelMail Project Team
8 * @license http://opensource.org/licenses/gpl-license.php GNU Public License
10 * @subpackage administrator
14 require_once( SM_PATH
. 'functions/constants.php' );
16 /* Define constants for the various option types. */
17 define('SMOPT_TYPE_UNDEFINED', -1);
18 define('SMOPT_TYPE_STRING', 0);
19 define('SMOPT_TYPE_STRLIST', 1);
20 define('SMOPT_TYPE_TEXTAREA', 2);
21 define('SMOPT_TYPE_INTEGER', 3);
22 define('SMOPT_TYPE_FLOAT', 4);
23 define('SMOPT_TYPE_BOOLEAN', 5);
24 define('SMOPT_TYPE_HIDDEN', 6);
25 define('SMOPT_TYPE_COMMENT', 7);
26 define('SMOPT_TYPE_NUMLIST', 8);
27 define('SMOPT_TYPE_TITLE', 9);
28 define('SMOPT_TYPE_THEME', 10);
29 define('SMOPT_TYPE_PLUGINS', 11);
30 define('SMOPT_TYPE_LDAP', 12);
31 define('SMOPT_TYPE_EXTERNAL', 32);
32 define('SMOPT_TYPE_PATH',33);
36 $language_values = array( );
37 foreach ($languages as $lang_key => $lang_attributes) {
38 if (isset($lang_attributes['NAME'])) {
39 $language_values[$lang_key] = $lang_attributes['NAME'];
42 asort( $language_values );
43 $language_values = array_merge(array('' => _("Default")), $language_values);
44 $left_size_values = array();
45 for ($lsv = 100; $lsv <= 300; $lsv +
= 10) {
46 $left_size_values[$lsv] = "$lsv " . _("pixels");
49 $defcfg = array( '$config_version' => array( 'name' => _("Config File Version"),
50 'type' => SMOPT_TYPE_COMMENT
,
52 'SM_ver' => array( 'name' => _("Squirrelmail Version"),
53 'type' => SMOPT_TYPE_EXTERNAL
,
54 'value' => "$version" ),
55 'PHP_ver' => array( 'name' => _("PHP Version"),
56 'type' => SMOPT_TYPE_EXTERNAL
,
57 'value' => phpversion() ),
58 /* --------------------------------------------------------*/
59 'Group1' => array( 'name' => _("Organization Preferences"),
60 'type' => SMOPT_TYPE_TITLE
),
61 '$org_name' => array( 'name' => _("Organization Name"),
62 'type' => SMOPT_TYPE_STRING
,
64 '$org_logo' => array( 'name' => _("Organization Logo"),
65 'type' => SMOPT_TYPE_PATH
,
67 'default' => '../images/sm_logo.png'),
68 '$org_logo_width' => array( 'name' => _("Organization Logo Width"),
69 'type' => SMOPT_TYPE_STRING
,
72 '$org_logo_height' => array( 'name' => _("Organization Logo Height"),
73 'type' => SMOPT_TYPE_STRING
,
76 '$org_title' => array( 'name' => _("Organization Title"),
77 'type' => SMOPT_TYPE_STRING
,
79 '$signout_page' => array( 'name' => _("Signout Page"),
80 'type' => SMOPT_TYPE_PATH
,
82 '$provider_uri' => array( 'name' => _("Provider Link URI"),
83 'type' => SMOPT_TYPE_STRING
),
84 '$provider_name' => array( 'name' => _("Provider Name"),
85 'type' => SMOPT_TYPE_STRING
),
86 '$frame_top' => array( 'name' => _("Top Frame"),
87 'type' => SMOPT_TYPE_STRING
,
89 'default' => '_top' ),
90 /* --------------------------------------------------------*/
91 'Group2' => array( 'name' => _("Server Settings"),
92 'type' => SMOPT_TYPE_TITLE
),
93 '$domain' => array( 'name' => _("Mail Domain"),
94 'type' => SMOPT_TYPE_STRING
,
96 '$imapServerAddress' => array( 'name' => _("IMAP Server Address"),
97 'type' => SMOPT_TYPE_STRING
,
99 '$imapPort' => array( 'name' => _("IMAP Server Port"),
100 'type' => SMOPT_TYPE_INTEGER
),
101 '$imap_server_type' => array( 'name' => _("IMAP Server Type"),
102 'type' => SMOPT_TYPE_STRLIST
,
103 'posvals' => array( 'cyrus' => _("Cyrus IMAP server"),
104 'uw' => _("University of Washington's IMAP server"),
105 'exchange' => _("Microsoft Exchange IMAP server"),
106 'courier' => _("Courier IMAP server"),
107 'other' => _("Not one of the above servers") ) ),
108 '$optional_delimiter' => array( 'name' => _("IMAP Folder Delimiter"),
109 'type' => SMOPT_TYPE_STRING
,
110 'comment' => _("Use \"detect\" to auto-detect."),
112 'default' => 'detect' ),
113 '$use_imap_tls' => array( 'name' => _("Use TLS for IMAP Connections"),
114 'type' => SMOPT_TYPE_BOOLEAN
,
115 'comment' => _("Requires PHP 4.3.x! Experimental."),
116 'default' => false ),
117 '$imap_auth_mech' => array( 'name' => _("IMAP Authentication Type"),
118 'type' => SMOPT_TYPE_STRLIST
,
119 'posvals' => array('login' => 'IMAP LOGIN',
120 'cram-md5' => 'CRAM-MD5',
121 'digest-md5' => 'DIGEST-MD5'),
122 'default' => 'login' ),
123 '$useSendmail' => array( 'name' => _("Use Sendmail Binary"),
124 'type' => SMOPT_TYPE_BOOLEAN
,
125 'comment' => "Say 'no' for SMTP" ),
126 '$sendmail_path' => array( 'name' => _("Sendmail Path"),
127 'type' => SMOPT_TYPE_STRING
,
129 '$smtpServerAddress' => array( 'name' => _("SMTP Server Address"),
130 'type' => SMOPT_TYPE_STRING
,
132 '$smtpPort' => array( 'name' => _("SMTP Server Port"),
133 'type' => SMOPT_TYPE_INTEGER
),
134 '$use_smtp_tls' => array( 'name' => _("Use TLS for SMTP Connections"),
135 'type' => SMOPT_TYPE_BOOLEAN
,
136 'comment' => _("Requires PHP 4.3.x! Experimental."),
137 'default' => false ),
138 '$smtp_auth_mech' => array( 'name' => _("SMTP Authentication Type"),
139 'type' => SMOPT_TYPE_STRLIST
,
140 'posvals' => array('none' => 'No SMTP auth',
141 'login' => 'Login (Plaintext)',
142 'cram-md5' => 'CRAM-MD5',
143 'digest-md5' => 'DIGEST-MD5'),
144 'default' => 'none'),
145 '$pop_before_smtp' => array( 'name' => _("POP3 Before SMTP?"),
146 'type' => SMOPT_TYPE_BOOLEAN
,
147 'default' => false ),
148 '$skip_SM_header' => array( 'name' => _("Hide SquirrelMail Header"),
149 'type' => SMOPT_TYPE_BOOLEAN
),
150 '$invert_time' => array( 'name' => _("Invert Time"),
151 'type' => SMOPT_TYPE_BOOLEAN
),
152 /* --------------------------------------------------------*/
153 'Group3' => array( 'name' => _("Folders Defaults"),
154 'type' => SMOPT_TYPE_TITLE
),
155 '$default_folder_prefix' => array( 'name' => _("Default Folder Prefix"),
156 'type' => SMOPT_TYPE_STRING
,
158 '$show_prefix_option' => array( 'name' => _("Show Folder Prefix Option"),
159 'type' => SMOPT_TYPE_BOOLEAN
),
160 '$trash_folder' => array( 'name' => _("Trash Folder"),
161 'type' => SMOPT_TYPE_STRING
,
163 '$sent_folder' => array( 'name' => _("Sent Folder"),
164 'type' => SMOPT_TYPE_STRING
,
166 '$draft_folder' => array( 'name' => _("Draft Folder"),
167 'type' => SMOPT_TYPE_STRING
,
169 '$default_move_to_trash' => array( 'name' => _("By default, move to trash"),
170 'type' => SMOPT_TYPE_BOOLEAN
),
171 '$default_move_to_sent' => array( 'name' => _("By default, move to sent"),
172 'type' => SMOPT_TYPE_BOOLEAN
),
173 '$default_save_as_draft' => array( 'name' => _("By default, save as draft"),
174 'type' => SMOPT_TYPE_BOOLEAN
),
175 '$list_special_folders_first' => array( 'name' => _("List Special Folders First"),
176 'type' => SMOPT_TYPE_BOOLEAN
),
177 '$use_special_folder_color' => array( 'name' => _("Show Special Folders Color"),
178 'type' => SMOPT_TYPE_BOOLEAN
),
179 '$auto_expunge' => array( 'name' => _("Auto Expunge"),
180 'type' => SMOPT_TYPE_BOOLEAN
),
181 '$default_sub_of_inbox' => array( 'name' => _("Default Sub. of INBOX"),
182 'type' => SMOPT_TYPE_BOOLEAN
),
183 '$show_contain_subfolders_option' => array( 'name' => _("Show 'Contain Sub.' Option"),
184 'type' => SMOPT_TYPE_BOOLEAN
),
185 '$default_unseen_notify' => array( 'name' => _("Default Unseen Notify"),
186 'type' => SMOPT_TYPE_NUMLIST
,
187 'posvals' => array( SMPREF_UNSEEN_NONE
=> _("No Notification"),
188 SMPREF_UNSEEN_INBOX
=> _("Only INBOX"),
189 SMPREF_UNSEEN_ALL
=> _("All Folders")) ),
190 '$default_unseen_type' => array( 'name' => _("Default Unseen Type"),
191 'type' => SMOPT_TYPE_NUMLIST
,
192 'posvals' => array( SMPREF_UNSEEN_ONLY
=> _("Only Unseen"),
193 SMPREF_UNSEEN_TOTAL
=> _("Unseen and Total") ) ),
194 '$auto_create_special' => array( 'name' => _("Auto Create Special Folders"),
195 'type' => SMOPT_TYPE_BOOLEAN
),
196 '$default_use_javascript_addr_book' => array( 'name' => _("Default Javascript Addressbook"),
197 'type' => SMOPT_TYPE_BOOLEAN
),
198 '$delete_folder' => array( 'name' => _("Auto delete folders"),
199 'type' => SMOPT_TYPE_BOOLEAN
),
200 '$noselect_fix_enable' => array( 'name' => _("Enable /NoSelect folder fix"),
201 'type' => SMOPT_TYPE_BOOLEAN
,
203 /* --------------------------------------------------------*/
204 'Group4' => array( 'name' => _("General Options"),
205 'type' => SMOPT_TYPE_TITLE
),
206 '$data_dir' => array( 'name' => _("Data Directory"),
207 'type' => SMOPT_TYPE_PATH
,
209 '$attachment_dir' => array( 'name' => _("Temp Directory"),
210 'type' => SMOPT_TYPE_PATH
,
212 '$dir_hash_level' => array( 'name' => _("Hash Level"),
213 'type' => SMOPT_TYPE_NUMLIST
,
214 'posvals' => array( 0 => _("Hash Disabled"),
219 '$default_left_size' => array( 'name' => _("Default Left Size"),
220 'type' => SMOPT_TYPE_NUMLIST
,
221 'posvals' => $left_size_values ),
222 '$force_username_lowercase' => array( 'name' => _("Usernames in Lowercase"),
223 'type' => SMOPT_TYPE_BOOLEAN
),
224 '$default_use_priority' => array( 'name' => _("Allow use of priority"),
225 'type' => SMOPT_TYPE_BOOLEAN
),
226 '$hide_sm_attributions' => array( 'name' => _("Hide SM attributions"),
227 'type' => SMOPT_TYPE_BOOLEAN
),
228 '$default_use_mdn' => array( 'name' => _("Enable use of delivery receipts"),
229 'type' => SMOPT_TYPE_BOOLEAN
),
230 '$edit_identity' => array( 'name' => _("Allow editing of identities"),
231 'type' => SMOPT_TYPE_BOOLEAN
),
232 '$edit_name' => array( 'name' => _("Allow editing of full name"),
233 'type' => SMOPT_TYPE_BOOLEAN
),
234 '$allow_server_sort' => array( 'name' => _("Use server-side sorting"),
235 'type' => SMOPT_TYPE_BOOLEAN
,
236 'default' => false ),
237 '$allow_thread_sort' => array( 'name' => _("Use server-side thread sorting"),
238 'type' => SMOPT_TYPE_BOOLEAN
,
239 'default' => false ),
240 '$allow_charset_search' => array( 'name' => _("Allow server charset search"),
241 'type' => SMOPT_TYPE_BOOLEAN
,
242 'default' => false ),
243 '$session_name' => array( 'name' => _("PHP session name"),
244 'type' => SMOPT_TYPE_HIDDEN
),
245 /* --------------------------------------------------------*/
246 'Group5' => array( 'name' => _("Message of the Day"),
247 'type' => SMOPT_TYPE_TITLE
),
248 '$motd' => array( 'name' => _("Message of the Day"),
249 'type' => SMOPT_TYPE_TEXTAREA
,
251 /* --------------------------------------------------------*/
252 'Group6' => array( 'name' => _("Database"),
253 'type' => SMOPT_TYPE_TITLE
),
254 '$addrbook_dsn' => array( 'name' => _("Address book DSN"),
255 'type' => SMOPT_TYPE_STRING
,
257 '$addrbook_table' => array( 'name' => _("Address book table"),
258 'type' => SMOPT_TYPE_STRING
,
260 'default' => 'address' ),
261 '$prefs_dsn' => array( 'name' => _("Preferences DSN"),
262 'type' => SMOPT_TYPE_STRING
,
264 '$prefs_table' => array( 'name' => _("Preferences table"),
265 'type' => SMOPT_TYPE_STRING
,
267 'default' => 'userprefs' ),
268 '$prefs_user_field' => array('name' => _("Preferences username field"),
269 'type' => SMOPT_TYPE_STRING
,
271 'default' => 'user' ),
272 '$prefs_key_field' => array('name' => _("Preferences key field"),
273 'type' => SMOPT_TYPE_STRING
,
275 'default' => 'prefkey' ),
276 '$prefs_val_field' => array('name' => _("Preferences value field"),
277 'type' => SMOPT_TYPE_STRING
,
279 'default' => 'prefval' ),
280 '$addrbook_global_dsn' => array( 'name' => _("Global address book DSN"),
281 'type' => SMOPT_TYPE_STRING
,
283 '$addrbook_global_table' => array( 'name' => _("Global address book table"),
284 'type' => SMOPT_TYPE_STRING
,
286 'default' => 'global_abook' ),
287 '$addrbook_global_writeable' => array( 'name' => _("Allow writing into global address book"),
288 'type' => SMOPT_TYPE_BOOLEAN
),
289 '$addrbook_global_listing' => array( 'name' => _("Allow listing of global address book"),
290 'type' => SMOPT_TYPE_BOOLEAN
),
291 'Group9' => array( 'name' => _("Language settings"),
292 'type' => SMOPT_TYPE_TITLE
),
293 '$squirrelmail_default_language' => array( 'name' => _("Default Language"),
294 'type' => SMOPT_TYPE_STRLIST
,
296 'posvals' => $language_values ),
298 '$default_charset' => array( 'name' => _("Default Charset"),
299 'type' => SMOPT_TYPE_STRLIST
,
300 'posvals' => array( 'iso-8859-1' => 'iso-8859-1',
301 'iso-8859-2' => 'iso-8859-2',
302 'iso-8859-7' => 'iso-8859-7',
303 'iso-8859-15' => 'iso-8859-15',
304 'iso-8859-15' => 'iso-8859-15',
305 'ns_4551_1' => 'ns_4551_1',
306 'koi8-r' => 'koi8-r',
307 'euc-KR' => 'euc-KR',
308 'windows-1251' => 'windows-1251',
309 'ISO-2022-JP' => 'ISO-2022-JP' ) ),
310 '$show_alternative_names' => array( 'name' => _("Show alternative language names"),
311 'type' => SMOPT_TYPE_BOOLEAN
),
312 '$available_languages' => array( 'name' => _("Available languages"),
313 'type' => SMOPT_TYPE_STRING
,
315 '$agresive_decoding' => array( 'name' => _("Use agresive decoding"),
316 'type' => SMOPT_TYPE_BOOLEAN
),
317 'Group10' => array( 'name' => _("Tweaks"),
318 'type' => SMOPT_TYPE_TITLE
),
319 '$advanced_tree' => array( 'name' => _("Use advanced tree folder listing"),
320 'type' => SMOPT_TYPE_BOOLEAN
),
321 '$oldway' => array( 'name' => _("Use old folder listing functions"),
322 'type' => SMOPT_TYPE_BOOLEAN
),
323 '$use_icons' => array( 'name' => _("Use icons"),
324 'type' => SMOPT_TYPE_BOOLEAN
),
325 '$use_php_recode' => array( 'name' => _("Use php recode functions"),
326 'type' => SMOPT_TYPE_BOOLEAN
),
327 '$use_php_iconv' => array( 'name' => _("Use php iconv functions"),
328 'type' => SMOPT_TYPE_BOOLEAN
),
329 /* --------------------------------------------------------*/
330 'Group7' => array( 'name' => _("Themes"),
331 'type' => SMOPT_TYPE_TITLE
),
332 '$theme_css' => array( 'name' => _("Style Sheet URL (css)"),
333 'type' => SMOPT_TYPE_PATH
,
335 '$theme_default' => array( 'name' => _("Default theme"),
336 'type' => SMOPT_TYPE_INTEGER
,
338 'comment' => _("Use index number of theme") ),
339 /* --------------------------------------------------------*/
340 '$config_use_color' => array( 'name' => '',
341 'type' => SMOPT_TYPE_HIDDEN
),
342 '$no_list_for_subscribe' => array( 'name' => '',
343 'type' => SMOPT_TYPE_HIDDEN
),
344 /* --------------------------------------------------------*/