Completed
Push — development ( 490822...4b9a72 )
by Nils
07:44
created

admin.settings.php (1 issue)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
/**
3
 *
4
 * @file          admin.settings.php
5
 * @author        Nils Laumaillé
6
 * @version       2.1.27
7
 * @copyright     (c) 2009-2017 Nils Laumaillé
8
 * @licensing     GNU AFFERO GPL 3.0
9
 * @link          http://www.teampass.net
10
 *
11
 * This library is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
 */
15
16
if (!isset($_SESSION['CPM']) || $_SESSION['CPM'] != 1 ||
17
    !isset($_SESSION['user_id']) || empty($_SESSION['user_id']) ||
18
    !isset($_SESSION['key']) || empty($_SESSION['key'])
19
) {
20
    die('Hacking attempt...');
21
}
22
23
// Load config
24 View Code Duplication
if (file_exists('../includes/config/tp.config.php')) {
25
    require_once '../includes/config/tp.config.php';
26
} elseif (file_exists('./includes/config/tp.config.php')) {
27
    require_once './includes/config/tp.config.php';
28
} else {
29
    throw new Exception("Error file '/includes/config/tp.config.php' not exists", 1);
30
}
31
32
/* do checks */
33
require_once $SETTINGS['cpassman_dir'].'/sources/checks.php';
34 View Code Duplication
if (!checkUser($_SESSION['user_id'], $_SESSION['key'], curPage())) {
35
    $_SESSION['error']['code'] = ERR_NOT_ALLOWED; //not allowed page
36
    include $SETTINGS['cpassman_dir'].'/error.php';
37
    exit();
38
}
39
40
echo '
41
<input type="hidden" id="user_token" value="" />
42
<div style="margin-top:10px;">
43
    <form name="form_settings" method="post" action="">';
44
// Main div for TABS
45
echo '
46
        <div style="width:900px;margin:auto; line-height:20px; padding:10px;" id="tabs">';
47
// Tabs menu
48
echo '
49
            <ul>
50
                <li><a href="#tabs-1">'.$LANG['admin_settings_title'].'</a></li>
51
                <li><a href="#tabs-3">'.$LANG['admin_misc_title'].'</a></li>
52
                <li><a href="#tabs-7">'.$LANG['admin_upload_title'].'</a></li>
53
                <li><a href="#tabs-2">'.$LANG['admin_actions_title'].'</a></li>
54
                <li><a href="#tabs-4">'.$LANG['admin_ldap_menu'].'</a></li>
55
                <li><a href="#tabs-5">'.$LANG['admin_backups'].'</a></li>
56
                <li><a href="#tabs-6">'.$LANG['admin_emails'].'</a></li>
57
                <li><a href="admin.settings_categories.php">'.$LANG['categories'].'</a></li>
58
                <li><a href="admin.settings_api.php">'.$LANG['admin_api'].'</a></li>
59
                <li><a href="admin.settings_duo.php">'.$LANG['admin_2factor_authentication_tab'].'</a></li>
60
            </ul>';
61
// --------------------------------------------------------------------------------
62
// TAB Né1
63
echo '
64
            <div id="tabs-1">
65
                <table border="0">';
66
// cpassman_dir
67
echo '
68
                <tr style="margin-bottom:3px">
69
                    <td>
70
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
71
                        <label for="cpassman_dir">'.$LANG['admin_misc_cpassman_dir'].'</label>
72
                    </td>
73
                    <td>
74
                        <input type="text" size="80" id="cpassman_dir" name="cpassman_dir" value="', isset($SETTINGS['cpassman_dir']) ? $SETTINGS['cpassman_dir'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
75
                    </td>
76
                </tr>';
77
// cpassman_url
78
echo '
79
                <tr style="margin-bottom:3px">
80
                    <td>
81
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
82
                        <label for="cpassman_url">'.$LANG['admin_misc_cpassman_url'].'</label>
83
                    </td>
84
                    <td>
85
                        <input type="text" size="80" id="cpassman_url" name="cpassman_url" value="', isset($SETTINGS['cpassman_url']) ? $SETTINGS['cpassman_url'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
86
                    </td>
87
                </tr>';
88
// path_to_upload_folder
89
echo '
90
                <tr style="margin-bottom:3px">
91
                    <td>
92
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
93
                        <label for="path_to_upload_folder">'.$LANG['admin_path_to_upload_folder'].'</label>
94
                        &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_path_to_upload_folder_tip']), ENT_QUOTES).'"></i>
95
                    </td>
96
                    <td>
97
                        <input type="text" size="80" id="path_to_upload_folder" name="path_to_upload_folder" value="', isset($SETTINGS['path_to_upload_folder']) ? $SETTINGS['path_to_upload_folder'] : $SETTINGS['cpassman_dir'].'/upload', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
98
                    </td>
99
                </tr>';
100
// url_to_upload_folder
101
echo '
102
                <tr style="margin-bottom:3px">
103
                    <td>
104
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
105
                        <label for="url_to_upload_folder">'.$LANG['admin_url_to_upload_folder'].'</label>
106
                    </td>
107
                    <td>
108
                        <input type="text" size="80" id="url_to_upload_folder" name="url_to_upload_folder" value="', isset($SETTINGS['url_to_upload_folder']) ? $SETTINGS['url_to_upload_folder'] : $SETTINGS['cpassman_url'].'/upload', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
109
                    </td>
110
                </tr>';
111
// path_to_files_folder
112
echo '
113
                <tr style="margin-bottom:3px">
114
                    <td>
115
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
116
                        <label for="path_to_files_folder">'.$LANG['admin_path_to_files_folder'].'</label>
117
                        &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_path_to_files_folder_tip']), ENT_QUOTES).'"></i>
118
                    </td>
119
                    <td>
120
                        <input type="text" size="80" id="path_to_files_folder" name="path_to_files_folder" value="', isset($SETTINGS['path_to_files_folder']) ? $SETTINGS['path_to_files_folder'] : $SETTINGS['cpassman_dir'].'/files', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
121
                    </td>
122
                </tr>';
123
// url_to_files_folder
124
echo '
125
                <tr style="margin-bottom:3px">
126
                    <td>
127
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
128
                        <label for="url_to_files_folder">'.$LANG['admin_url_to_files_folder'].'</label>
129
                    </td>
130
                    <td>
131
                        <input type="text" size="80" id="url_to_files_folder" name="url_to_files_folder" value="', isset($SETTINGS['url_to_files_folder']) ? $SETTINGS['url_to_files_folder'] : $SETTINGS['cpassman_url'].'/files', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
132
                    </td>
133
                </tr>';
134
// Favicon
135
echo '
136
                <tr style="margin-bottom:3px">
137
                    <td>
138
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
139
                        <label for="favicon">'.$LANG['admin_misc_favicon'].'</label>
140
                    </td>
141
                    <td>
142
                        <input type="text" size="80" id="favicon" name="favicon" value="', isset($SETTINGS['favicon']) ? $SETTINGS['favicon'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
143
                    </td>
144
                </tr>';
145
// custom_logo
146
echo '
147
                <tr style="margin-bottom:3px">
148
                    <td>
149
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
150
                        <label for="cpassman_dir">'.$LANG['admin_misc_custom_logo'].'</label>
151
                    </td>
152
                    <td>
153
                        <input type="text" size="80" id="custom_logo" name="custom_logo" value="', isset($SETTINGS['custom_logo']) ? $SETTINGS['custom_logo'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
154
                    </td>
155
                </tr>';
156
// custom_login_text
157
echo '
158
            <tr style="margin-bottom:3px">
159
                <td>
160
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
161
                    <label for="cpassman_dir">'.$LANG['admin_misc_custom_login_text'].'</label>
162
                </td>
163
                <td>
164
                    <input type="text" size="80" id="custom_login_text" name="custom_login_text" value="', isset($SETTINGS['custom_login_text']) ? $SETTINGS['custom_login_text'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
165
                </td>
166
            </tr>';
167
168
echo '
169
            </table>';
170
171
echo '
172
            <table>';
173
174
echo '<tr><td colspan="3"><hr /></td></tr>';
175
// Maintenance mode
176
echo '
177
            <tr style="margin-bottom:3px">
178
            <td>
179
                  <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
180
                  <label>' .
181
$LANG['settings_maintenance_mode'].'
182
                      &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_maintenance_mode_tip']), ENT_QUOTES).'"></i>
183
                  </label>
184
            </td>
185
            <td>
186
                <div class="toggle toggle-modern" id="maintenance_mode" data-toggle-on="', isset($SETTINGS['maintenance_mode']) && $SETTINGS['maintenance_mode'] == 1 ? 'true' : 'false', '"></div><input type="hidden" name="maintenance_mode_input" id="maintenance_mode_input" value="', isset($SETTINGS['maintenance_mode']) && $SETTINGS['maintenance_mode'] == 1 ? '1' : '0', '" />
187
            </td>
188
            </tr>';
189
// default_session_expiration_time
190
echo '
191
            <tr style="margin-bottom:3px">
192
            <td>
193
                  <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
194
                  <label>'.$LANG['settings_default_session_expiration_time'].'</label>
195
            </td>
196
            <td>
197
                <input type="text" size="15" id="default_session_expiration_time" name="default_session_expiration_time" value="', isset($SETTINGS['default_session_expiration_time']) ? $SETTINGS['default_session_expiration_time'] : "60", '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
198
             </td>
199
            </tr>';
200
echo '<tr><td colspan="3"><hr /></td></tr>';
201
//Enable SSL STS
202
echo '
203
            <tr style="margin-bottom:3px">
204
                <td>
205
                      <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
206
                      <label>' .
207
                            $LANG['settings_enable_sts'].'
208
                          &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_enable_sts_tip']), ENT_QUOTES).'"></i>
209
                      </label>
210
                </td>
211
                <td>
212
                    <div class="toggle toggle-modern" id="enable_sts" data-toggle-on="', isset($SETTINGS['enable_sts']) && $SETTINGS['enable_sts'] == 1 ? 'true' : 'false', '"></div><input type="hidden" name="enable_sts_input" id="enable_sts_input" value="', isset($SETTINGS['enable_sts']) && $SETTINGS['enable_sts'] == 1 ? '1' : '0', '" />
213
                </td>
214
            </tr>';
215
216
echo '<tr><td colspan="3"><hr /></td></tr>';
217
//Proxy
218
echo '
219
            <tr style="margin-bottom:3px">
220
                <td>
221
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
222
                    <label for="proxy_ip">'.$LANG['admin_proxy_ip'].'</label>
223
                    &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_proxy_ip_tip']), ENT_QUOTES).'"></i>
224
                </td>
225
                <td>
226
                    <input type="text" size="15" id="proxy_ip" name="proxy_ip" value="', isset($SETTINGS['proxy_ip']) ? $SETTINGS['proxy_ip'] : "", '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
227
                </td>
228
            </tr>
229
            <tr style="margin-bottom:3px">
230
                <td>
231
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
232
                    <label for="proxy_port">'.$LANG['admin_proxy_port'].'</label>
233
                    &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_proxy_port_tip']), ENT_QUOTES).'"></i>
234
                </td>
235
                <td>
236
                    <input type="text" size="10" id="proxy_port" name="proxy_port" value="', isset($SETTINGS['proxy_port']) ? $SETTINGS['proxy_port'] : "", '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
237
                </td>
238
            </tr>';
239
240
241
echo '<tr><td colspan="3"><hr /></td></tr>';
242
// pwd_maximum_length
243
echo '
244
            <tr style="margin-bottom:3px">
245
                <td>
246
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
247
                    <label for="pwd_maximum_length">'.$LANG['admin_pwd_maximum_length'].'</label>
248
                    &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_pwd_maximum_length_tip']), ENT_QUOTES).'"></i>
249
                </td>
250
                <td>
251
                    <input type="text" size="10" id="pwd_maximum_length" name="pwd_maximum_length" value="', isset($SETTINGS['pwd_maximum_length']) ? $SETTINGS['pwd_maximum_length'] : 40, '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
252
                </td>
253
            </tr>';
254
255
echo '<tr><td colspan="3"><hr /></td></tr>';
256
// TIMEZONE
257
// get list of all timezones
258
$zones = timezone_identifiers_list();
259
echo '
260
                <tr style="margin-bottom:3px">
261
                    <td>
262
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
263
                        <label for="timezone">'.$LANG['timezone_selection'].'</label>
264
                    </td>
265
                    <td>
266
                        <select id="timezone" name="timezone" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));">
267
                            <option value="">-- '.$LANG['select'].' --</option>';
268
foreach ($zones as $zone) {
269
    echo '
270
    <option value="'.$zone.'"', isset($SETTINGS['timezone']) && $SETTINGS['timezone'] == $zone ? ' selected="selected"' : '', '>'.$zone.'</option>';
271
}
272
echo '
273
                        </select>
274
                    </td>
275
                </tr>';
276
// DATE format
277
echo '
278
                <tr style="margin-bottom:3px">
279
                    <td>
280
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
281
                        <label for="date_format">'.$LANG['date_format'].'</label>
282
                    </td>
283
                    <td>
284
                        <select id="date_format" name="date_format" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));">
285
                            <option value="d/m/Y"', !isset($SETTINGS['date_format']) || $SETTINGS['date_format'] == "d/m/Y" ? ' selected="selected"' : "", '>d/m/Y</option>
286
                            <option value="m/d/Y"', $SETTINGS['date_format'] == "m/d/Y" ? ' selected="selected"' : "", '>m/d/Y</option>
287
                            <option value="d-M-Y"', $SETTINGS['date_format'] == "d-M-Y" ? ' selected="selected"' : "", '>d-M-Y</option>
288
                            <option value="d/m/y"', $SETTINGS['date_format'] == "d/m/y" ? ' selected="selected"' : "", '>d/m/y</option>
289
                            <option value="m/d/y"', $SETTINGS['date_format'] == "m/d/y" ? ' selected="selected"' : "", '>m/d/y</option>
290
                            <option value="d-M-y"', $SETTINGS['date_format'] == "d-M-y" ? ' selected="selected"' : "", '>d-M-y</option>
291
                            <option value="d-m-y"', $SETTINGS['date_format'] == "d-m-y" ? ' selected="selected"' : "", '>d-m-y</option>
292
                            <option value="Y-m-d"', $SETTINGS['date_format'] == "Y-m-d" ? ' selected="selected"' : "", '>Y-m-d</option>
293
                        </select>
294
                    </td>
295
                </tr>';
296
// TIME format
297
echo '
298
                <tr style="margin-bottom:3px">
299
                    <td>
300
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
301
                        <label for="time_format">'.$LANG['time_format'].'</label>
302
                    </td>
303
                    <td>
304
                        <select id="time_format" name="time_format" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));">
305
                            <option value="H:i:s"', !isset($SETTINGS['time_format']) || $SETTINGS['time_format'] == "H:i:s" ? ' selected="selected"' : "", '>H:i:s</option>
306
                            <option value="h:m:s a"', $SETTINGS['time_format'] == "h:i:s a" ? ' selected="selected"' : "", '>h:i:s a</option>
307
                            <option value="g:i:s a"', $SETTINGS['time_format'] == "g:i:s a" ? ' selected="selected"' : "", '>g:i:s a</option>
308
                            <option value="G:i:s"', $SETTINGS['time_format'] == "G:i:s" ? ' selected="selected"' : "", '>G:i:s</option>
309
                        </select>
310
                    </td>
311
                </tr>';
312
313
echo '<tr><td colspan="3"><hr /></td></tr>';
314
// LANGUAGES
315
$zones = timezone_identifiers_list();
316
echo '
317
                <tr style="margin-bottom:3px">
318
                    <td>
319
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
320
                        <label for="default_language">'.$LANG['settings_default_language'].'</label>
321
                    </td>
322
                    <td>
323
                        <select id="default_language" name="default_language" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));">
324
                            <option value="">-- '.$LANG['select'].' --</option>';
325
foreach ($languagesList as $lang) {
326
    echo '
327
    <option value="'.$lang.'"', isset($SETTINGS['default_language']) && $SETTINGS['default_language'] == $lang ? ' selected="selected"' : '', '>'.$lang.'</option>';
328
}
329
echo '
330
                        </select>
331
                    </td>
332
                </tr>';
333
334
echo '<tr><td colspan="3"><hr /></td></tr>';
335
// Number of used pw
336
echo '
337
                <tr style="margin-bottom:3px">
338
                    <td>
339
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
340
                        <label for="number_of_used_pw">'.$LANG['number_of_used_pw'].'</label>
341
                    </td>
342
                    <td>
343
                        <input type="text" size="10" id="number_of_used_pw" name="number_of_used_pw" value="', isset($SETTINGS['number_of_used_pw']) ? $SETTINGS['number_of_used_pw'] : '5', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
344
                    </td>
345
                </tr>';
346
// Number days before changing pw
347
echo '
348
                <tr style="margin-bottom:3px">
349
                    <td>
350
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
351
                        <label for="pw_life_duration">'.$LANG['pw_life_duration'].'</label>
352
                    </td>
353
                    <td>
354
                        <input type="text" size="10" id="pw_life_duration" name="pw_life_duration" value="', isset($SETTINGS['pw_life_duration']) ? $SETTINGS['pw_life_duration'] : '5', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
355
                    </td>
356
                </tr>';
357
// Number of bad authentication tentations before disabling user
358
echo '
359
                <tr style="margin-bottom:3px">
360
                    <td>
361
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
362
                        <label for="nb_bad_authentication">'.$LANG['nb_false_login_attempts'].'</label>
363
                    </td>
364
                    <td>
365
                        <input type="text" size="10" id="nb_bad_authentication" name="nb_bad_authentication" value="', isset($SETTINGS['nb_bad_authentication']) ? $SETTINGS['nb_bad_authentication'] : '0', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
366
                    </td>
367
                </tr>';
368
369
echo '<tr><td colspan="3"><hr /></td></tr>';
370
// Enable log connections
371
echo '
372
                <tr><td>
373
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
374
                    <label>'.$LANG['settings_log_connections'].'</label>
375
                    </td>
376
                    <td>
377
                        <div class="toggle toggle-modern" id="log_connections" data-toggle-on="', isset($SETTINGS['log_connections']) && $SETTINGS['log_connections'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="log_connections_input" name="log_connections_input" value="', isset($SETTINGS['log_connections']) && $SETTINGS['log_connections'] == 1 ? '1' : '0', '" />
378
                    </td>
379
                </tr>';
380
// Enable log accessed
381
echo '
382
                <tr><td>
383
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
384
                    <label>'.$LANG['settings_log_accessed'].'</label>
385
                    </td><td>
386
                        <div class="toggle toggle-modern" id="log_accessed" data-toggle-on="', isset($SETTINGS['log_accessed']) && $SETTINGS['log_accessed'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="log_accessed_input" name="log_accessed_input" value="', isset($SETTINGS['log_accessed']) && $SETTINGS['log_accessed'] == 1 ? '1' : '0', '" />
387
                </td>
388
                </tr>';
389
390
echo '<tr><td colspan="3"><hr /></td></tr>';
391
// enable PF
392
echo '
393
            <tr><td>
394
                <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
395
                <label>'.$LANG['enable_personal_folder_feature'].'</label>
396
                <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['enable_personal_folder_feature_tip']), ENT_QUOTES).'"></i></span>
397
            </td><td>
398
                <div class="toggle toggle-modern" id="enable_pf_feature" data-toggle-on="', isset($SETTINGS['enable_pf_feature']) && $SETTINGS['enable_pf_feature'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_pf_feature_input" name="enable_pf_feature_input" value="', isset($SETTINGS['enable_pf_feature']) && $SETTINGS['enable_pf_feature'] == 1 ? '1' : '0', '" />
399
            </td></tr>';
400
401
// enable PF cookie for Personal SALTKEY
402
echo '
403
            <tr><td>
404
                <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
405
                <label>'.$LANG['enable_personal_saltkey_cookie'].'</label>
406
            </td><td>
407
                <div class="toggle toggle-modern" id="enable_personal_saltkey_cookie" data-toggle-on="', isset($SETTINGS['enable_personal_saltkey_cookie']) && $SETTINGS['enable_personal_saltkey_cookie'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_personal_saltkey_cookie_input" name="enable_personal_saltkey_cookie_input" value="', isset($SETTINGS['enable_personal_saltkey_cookie']) && $SETTINGS['enable_personal_saltkey_cookie'] == 1 ? '1' : '0', '" />
408
            </td></tr>';
409
// PF cookie for Personal SALTKEY duration
410
echo '
411
            <tr><td>
412
                <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
413
                <label>'.$LANG['personal_saltkey_cookie_duration'].'</label>
414
            </td><td>
415
            <div class="div_radio">
416
                <input type="text" size="10" id="personal_saltkey_cookie_duration" name="personal_saltkey_cookie_duration" value="', isset($SETTINGS['personal_saltkey_cookie_duration']) ? $SETTINGS['personal_saltkey_cookie_duration'] : '31', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
417
            </div>
418
            </td></tr>';
419
420
echo '<tr><td colspan="3"><hr /></td></tr>';
421
// Attachments encryption strategy
422
423
echo '
424
                    <tr><td>
425
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
426
                        <label>
427
                            '.$LANG['settings_attachments_encryption'].'
428
                            <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_attachments_encryption_tip']), ENT_QUOTES).'"></i>&nbsp;</span>
429
                        </label>
430
                        </td><td>
431
                            <div class="toggle toggle-modern" id="enable_attachment_encryption" data-toggle-on="', isset($SETTINGS['enable_attachment_encryption']) && $SETTINGS['enable_attachment_encryption'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_attachment_encryption_input" name="enable_attachment_encryption_input" value="', isset($SETTINGS['enable_attachment_encryption']) && $SETTINGS['enable_attachment_encryption'] == 1 ? '1' : '0', '" />
432
                    </td></tr>';
433
434
echo '<tr><td colspan="3"><hr /></td></tr>';
435
// Enable KB
436
echo '
437
                    <tr><td>
438
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
439
                        <label>
440
                            '.$LANG['settings_kb'].'
441
                            <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_kb_tip']), ENT_QUOTES).'"></i></span>
442
                        </label>
443
                        </td><td>
444
                            <div class="toggle toggle-modern" id="enable_kb" data-toggle-on="', isset($SETTINGS['enable_kb']) && $SETTINGS['enable_kb'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_kb_input" name="enable_kb_input" value="', isset($SETTINGS['enable_kb']) && $SETTINGS['enable_kb'] == 1 ? '1' : '0', '" />
445
                    </td></tr>';
446
447
echo '<tr><td colspan="3"><hr /></td></tr>';
448
// Enable SUGGESTION
449
echo '
450
                    <tr><td>
451
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
452
                        <label>
453
                            '.$LANG['settings_suggestion'].'
454
                            <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_suggestion_tip']), ENT_QUOTES).'"></i></span>
455
                        </label>
456
                        </td><td>
457
                            <div class="toggle toggle-modern" id="enable_suggestion" data-toggle-on="', isset($SETTINGS['enable_suggestion']) && $SETTINGS['enable_suggestion'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_suggestion_input" name="enable_suggestion_input" value="', isset($SETTINGS['enable_suggestion']) && $SETTINGS['enable_suggestion'] == 1 ? '1' : '0', '" />
458
                    </td></tr>';
459
460
// Enable GET TP Information
461
echo '
462
                    <tr><td>
463
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
464
                        <label>
465
                            '.$LANG['settings_get_tp_info'].'
466
                            <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_get_tp_info_tip']), ENT_QUOTES).'"></i></span>
467
                        </label>
468
                        </td><td>
469
                            <div class="toggle toggle-modern" id="get_tp_info" data-toggle-on="', isset($SETTINGS['get_tp_info']) && $SETTINGS['get_tp_info'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="get_tp_info_input" name="get_tp_info_input" value="', isset($SETTINGS['get_tp_info']) && $SETTINGS['get_tp_info'] == 1 ? '1' : '0', '" />
470
                    </td></tr>';
471
472
echo '
473
                <tr><td colspan="3"><hr /></td></tr>
474
                </table>
475
            </div>';
476
// --------------------------------------------------------------------------------
477
// --------------------------------------------------------------------------------
478
// TAB Né2
479
echo '
480
            <div id="tabs-2">';
481
// Rebuild Config file
482
echo '
483
                <div style="margin-bottom:3px">
484
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_rebuild_config_file\')" style="cursor:pointer;">
485
                        <i class="fa fa-square fa-stack-2x"></i>
486
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
487
                    </span>
488
                    <label>'.$LANG['rebuild_config_file'].'</label>
489
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['rebuild_config_file_tip']), ENT_QUOTES).'"></i></span>
490
                    <span id="result_admin_rebuild_config_file" style="margin-left:10px;display:none;"></span>
491
                </div>';
492
// Update Personal folders for users
493
echo '
494
                <div style="margin-bottom:3px">
495
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_check_pf\')" style="cursor:pointer;">
496
                        <i class="fa fa-square fa-stack-2x"></i>
497
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
498
                    </span>
499
                    <label>'.$LANG['admin_action_check_pf'].'</label>
500
                    <span id="result_admin_action_check_pf" style="margin-left:10px;display:none;"></span>
501
                </div>';
502
// Clean DB with orphan items
503
echo '
504
                <div style="margin-bottom:3px">
505
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_db_clean_items\')" style="cursor:pointer;">
506
                        <i class="fa fa-square fa-stack-2x"></i>
507
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
508
                    </span>
509
                    <label>'.$LANG['admin_action_db_clean_items'].'</label>
510
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_clean_items_tip']), ENT_QUOTES).'"></i></span>
511
                    <span id="result_admin_action_db_clean_items" style="margin-left:10px;"></span>
512
                </div>';
513
// Optimize the DB
514
echo '
515
                <div style="margin-bottom:3px">
516
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_db_optimize\')" style="cursor:pointer;">
517
                        <i class="fa fa-square fa-stack-2x"></i>
518
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
519
                    </span>
520
                    <label>'.$LANG['admin_action_db_optimize'].'</label>
521
                    <span id="result_admin_action_db_optimize" style="margin-left:10px;"></span>
522
                </div>';
523
// Purge old files
524
echo '
525
                <div style="margin-bottom:3px">
526
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_purge_old_files\')" style="cursor:pointer;">
527
                        <i class="fa fa-square fa-stack-2x"></i>
528
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
529
                    </span>
530
                    <label>'.$LANG['admin_action_purge_old_files'].'</label>
531
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_purge_old_files_tip']), ENT_QUOTES).'"></i></span>
532
                    <span id="result_admin_action_purge_old_files" style="margin-left:10px;"></span>
533
                </div>';
534
// Reload Cache Table
535
echo '
536
                <div style="margin-bottom:3px">
537
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_reload_cache_table\')" style="cursor:pointer;">
538
                        <i class="fa fa-square fa-stack-2x"></i>
539
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
540
                    </span>
541
                    <label>'.$LANG['admin_action_reload_cache_table'].'</label>
542
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_reload_cache_table_tip']), ENT_QUOTES).'"></i></span>
543
                    <span id="result_admin_action_reload_cache_table" style="margin-left:10px;"></span>
544
                </div>';
545
// Change main SALT key
546
echo '
547
                <div style="margin-bottom:3px">
548
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="confirmChangingSk()" style="cursor:pointer;">
549
                        <i class="fa fa-square fa-stack-2x"></i>
550
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
551
                    </span>
552
                    <label>'.$LANG['admin_action_change_salt_key'].'</label>
553
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_change_salt_key_tip']), ENT_QUOTES).'"></i></span>
554
                        <br/>
555
                        <div id="changeMainSaltKey_message" class="ui-widget-content ui-state-focus ui-corner-all" style="padding:10px; display:none; margin-left:30px; text-align:center;"></div>
556
                    </span>
557
                    <input type="hidden" id="changeMainSaltKey_itemsCount" />
558
                </div>';
559
560
// Encrypt / decrypt attachments
561
echo '
562
                <div style="margin-bottom:3px">
563
                    <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="startFileEncDecyption()" style="cursor:pointer;">
564
                        <i class="fa fa-square fa-stack-2x"></i>
565
                        <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
566
                    </span>
567
                    '.$LANG['admin_action_attachments_cryption'].'
568
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_attachments_cryption_tip']), ENT_QUOTES).'"></i></span>
569
                    <br/>
570
                    <div id="admin_action_attachments_cryption_selection" class="ui-widget-content ui-state-focus ui-corner-all" style="padding:10px; display:none; margin-left:30px; text-align:center;">
571
                        '.$LANG['what_action_to_perform'].':&nbsp;
572
                        <span class="div_radio" style="">
573
                            <input type="radio" id="attachments_cryption_radio1" name="attachments_cryption" value="encrypt" /><label for="attachments_cryption_radio1">'.$LANG['encrypt'].'</label>
574
                            <input type="radio" id="attachments_cryption_radio2" name="attachments_cryption" value="decrypt" /><label for="attachments_cryption_radio2">'.$LANG['decrypt'].'</label>
575
                        </span>
576
                        &nbsp;&nbsp;<a href="#" onclick="LaunchAdminActions(\'admin_action_attachments_cryption\')">'.addslashes($LANG['admin_action_db_backup_start_tip']).'</a>
577
                        <div id="result_admin_action_attachments_cryption" class="" style="padding:10px; display:none; margin-left:30px; text-align:center;"></div>
578
                    </div>
579
                </div>';
580
581
echo '
582
            </div>';
583
// --------------------------------------------------------------------------------
584
// --------------------------------------------------------------------------------
585
// TAB N°3
586
echo '
587
            <div id="tabs-3">
588
                <table width="100%">';
589
// After how long, edition is considered as failed or finished
590
echo '
591
                <tr><td>
592
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
593
                    <label>'.$LANG['settings_delay_for_item_edition'].
594
    '<span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_delay_for_item_edition_tip']), ENT_QUOTES).'"></i></span>
595
                    </label>
596
                    </td><td>
597
                    <input type="text" size="5" id="delay_item_edition" name="delay_item_edition" value="', isset($SETTINGS['delay_item_edition']) ? $SETTINGS['delay_item_edition'] : '0', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
598
                </td></tr>';
599
// OTV - otv_is_enabled
600
echo '
601
                <tr><td>
602
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
603
                    <label>'.$LANG['otv_is_enabled'].'</label>
604
                    </td><td>
605
                        <div class="toggle toggle-modern" id="otv_is_enabled" data-toggle-on="', isset($SETTINGS['otv_is_enabled']) && $SETTINGS['otv_is_enabled'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="otv_is_enabled_input" name="otv_is_enabled_input" value="', isset($SETTINGS['otv_is_enabled']) && $SETTINGS['otv_is_enabled'] == 1 ? '1' : '0', '" />
606
                </td></tr>';
607
// Expired time for OTV - otv_expiration_period
608
echo '
609
                <tr><td>
610
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
611
                    <label>'.$LANG['settings_otv_expiration_period'].'</label>
612
                    </td><td>
613
                    <input type="text" size="5" id="otv_expiration_period" name="otv_expiration_period" value="', isset($SETTINGS['otv_expiration_period']) ? $SETTINGS['otv_expiration_period'] : '7', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
614
                </td></tr>';
615
616
echo '<tr><td colspan="3"><hr /></td></tr>';
617
// Managers can edit & delete items they are allowed to see
618
echo '
619
                <tr><td>
620
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
621
                    <label>'.$LANG['settings_manager_edit'].'</label>
622
                    </td><td>
623
                        <div class="toggle toggle-modern" id="manager_edit" data-toggle-on="', isset($SETTINGS['manager_edit']) && $SETTINGS['manager_edit'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="manager_edit_input" name="manager_edit_input" value="', isset($SETTINGS['manager_edit']) && $SETTINGS['manager_edit'] == 1 ? '1' : '0', '" />
624
                </td></tr>';
625
626
// Managers can move items they are allowed to see
627
echo '
628
                <tr><td>
629
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
630
                    <label>'.$LANG['settings_manager_move_item'].'</label>
631
                    </td><td>
632
                        <div class="toggle toggle-modern" id="manager_move_item" data-toggle-on="', isset($SETTINGS['manager_move_item']) && $SETTINGS['manager_move_item'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="manager_move_item_input" name="manager_move_item_input" value="', isset($SETTINGS['manager_move_item']) && $SETTINGS['manager_move_item'] == 1 ? '1' : '0', '" />
633
                </td></tr>';
634
635
echo '<tr><td colspan="3"><hr /></td></tr>';
636
// max items
637
echo '
638
                <tr><td>
639
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
640
                    <label for="max_last_items">'.$LANG['max_last_items'].'</label>
641
                    </td><td>
642
                    <input type="text" size="4" id="max_last_items" name="max_last_items" value="', isset($SETTINGS['max_latest_items']) ? $SETTINGS['max_latest_items'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
643
                </td></tr>';
644
645
echo '<tr><td colspan="3"><hr /></td></tr>';
646
// Duplicate folder
647
echo '
648
                <tr><td>
649
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
650
                    <label>'.$LANG['duplicate_folder'].'</label>
651
                    </td><td>
652
                        <div class="toggle toggle-modern" id="duplicate_folder" data-toggle-on="', isset($SETTINGS['duplicate_folder']) && $SETTINGS['duplicate_folder'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="duplicate_folder_input" name="duplicate_folder_input" value="', isset($SETTINGS['duplicate_folder']) && $SETTINGS['duplicate_folder'] == 1 ? '1' : '0', '" />
653
                </td></tr>';
654
// Duplicate item name
655
echo '
656
                <tr><td>
657
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
658
                    <label>'.$LANG['duplicate_item'].'</label>
659
                    </td><td>
660
                        <div class="toggle toggle-modern" id="duplicate_item" data-toggle-on="', isset($SETTINGS['duplicate_item']) && $SETTINGS['duplicate_item'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="duplicate_item_input" name="duplicate_item_input" value="', isset($SETTINGS['duplicate_item']) && $SETTINGS['duplicate_item'] == 1 ? '1' : '0', '" />
661
                </td></tr>';
662
// Duplicate item name in same folder - item_duplicate_in_same_folder
663
echo '
664
                <tr><td>
665
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
666
                    <label>'.$LANG['duplicate_item_in_folder'].'</label>
667
                    </td><td>
668
                        <div class="toggle toggle-modern" id="item_duplicate_in_same_folder" data-toggle-on="', isset($SETTINGS['item_duplicate_in_same_folder']) && $SETTINGS['item_duplicate_in_same_folder'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="item_duplicate_in_same_folder_input" name="item_duplicate_in_same_folder_input" value="', isset($SETTINGS['item_duplicate_in_same_folder']) && $SETTINGS['item_duplicate_in_same_folder'] == 1 ? '1' : '0', '" />
669
                </td></tr>';
670
// Enable show_only_accessible_folders
671
echo '
672
                <tr><td>
673
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
674
                    <label>
675
                        '.$LANG['show_only_accessible_folders'].'
676
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['show_only_accessible_folders_tip']), ENT_QUOTES).'"></i></span>
677
                    </label>
678
                    </td><td>
679
                        <div class="toggle toggle-modern" id="show_only_accessible_folders" data-toggle-on="', isset($SETTINGS['show_only_accessible_folders']) && $SETTINGS['show_only_accessible_folders'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="show_only_accessible_folders_input" name="show_only_accessible_folders_input" value="', isset($SETTINGS['show_only_accessible_folders']) && $SETTINGS['show_only_accessible_folders'] == 1 ? '1' : '0', '" />
680
                </td></tr>';
681
// Enable subfolder_rights_as_parent
682
echo '
683
                <tr><td>
684
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
685
                    <label>
686
                        '.$LANG['subfolder_rights_as_parent'].'
687
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['subfolder_rights_as_parent_tip']), ENT_QUOTES).'"></i></span>
688
                    </label>
689
                    </td><td>
690
                        <div class="toggle toggle-modern" id="subfolder_rights_as_parent" data-toggle-on="', isset($SETTINGS['subfolder_rights_as_parent']) && $SETTINGS['subfolder_rights_as_parent'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="subfolder_rights_as_parent_input" name="subfolder_rights_as_parent_input" value="', isset($SETTINGS['subfolder_rights_as_parent']) && $SETTINGS['subfolder_rights_as_parent'] == 1 ? '1' : '0', '" />
691
                </td></tr>';
692
// Enable create_item_without_password
693
echo '
694
                <tr><td>
695
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
696
                    <label>
697
                        '.$LANG['create_item_without_password'].'
698
                    </label>
699
                    </td><td>
700
                        <div class="toggle toggle-modern" id="create_item_without_password" data-toggle-on="', isset($SETTINGS['create_item_without_password']) && $SETTINGS['create_item_without_password'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="create_item_without_password_input" name="create_item_without_password_input" value="', isset($SETTINGS['create_item_without_password']) && $SETTINGS['create_item_without_password'] == 1 ? '1' : '0', '" />
701
                </td></tr>';
702
703
echo '<tr><td colspan="3"><hr /></td></tr>';
704
// enable FAVOURITES
705
echo '
706
                <tr><td>
707
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
708
                    <label>'.$LANG['enable_favourites'].'</label>
709
                    </td><td>
710
                        <div class="toggle toggle-modern" id="enable_favourites" data-toggle-on="', isset($SETTINGS['enable_favourites']) && $SETTINGS['enable_favourites'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_favourites_input" name="enable_favourites_input" value="', isset($SETTINGS['enable_favourites']) && $SETTINGS['enable_favourites'] == 1 ? '1' : '0', '" />
711
                </td></tr>';
712
// enable USER can create folders
713
echo '
714
                <tr><td>
715
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
716
                    <label>'.$LANG['enable_user_can_create_folders'].'</label>
717
                    </td><td>
718
                        <div class="toggle toggle-modern" id="enable_user_can_create_folders" data-toggle-on="', isset($SETTINGS['enable_user_can_create_folders']) && $SETTINGS['enable_user_can_create_folders'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_user_can_create_folders_input" name="enable_user_can_create_folders_input" value="', isset($SETTINGS['enable_user_can_create_folders']) && $SETTINGS['enable_user_can_create_folders'] == 1 ? '1' : '0', '" />
719
                </td></tr>';
720
// enable can_create_root_folder
721
echo '
722
                <tr><td>
723
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
724
                    <label>'.$LANG['setting_can_create_root_folder'].'</label>
725
                    </td><td>
726
                        <div class="toggle toggle-modern" id="can_create_root_folder" data-toggle-on="', isset($SETTINGS['can_create_root_folder']) && $SETTINGS['can_create_root_folder'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="can_create_root_folder_input" name="can_create_root_folder_input" value="', isset($SETTINGS['can_create_root_folder']) && $SETTINGS['can_create_root_folder'] == 1 ? '1' : '0', '" />
727
                </td></tr>';
728
// enable enable_massive_move_delete
729
echo '
730
                <tr><td>
731
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
732
                    <label>'.$LANG['enable_massive_move_delete'].'
733
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['enable_massive_move_delete_tip']), ENT_QUOTES).'"></i></span>
734
                    </label>
735
                    </td><td>
736
                        <div class="toggle toggle-modern" id="enable_massive_move_delete" data-toggle-on="', isset($SETTINGS['enable_massive_move_delete']) && $SETTINGS['enable_massive_move_delete'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_massive_move_delete_input" name="enable_massive_move_delete_input" value="', isset($SETTINGS['enable_massive_move_delete']) && $SETTINGS['enable_massive_move_delete'] == 1 ? '1' : '0', '" />
737
                </td></tr>';
738
739
echo '<tr><td colspan="3"><hr /></td></tr>';
740
// Enable activate_expiration
741
echo '
742
                <tr><td>
743
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
744
                    <label>
745
                        '.$LANG['admin_setting_activate_expiration'].'
746
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_setting_activate_expiration_tip']), ENT_QUOTES).'"></i></span>
747
                    </label>
748
                    </td><td>
749
                        <div class="toggle toggle-modern" id="activate_expiration" data-toggle-on="', isset($SETTINGS['activate_expiration']) && $SETTINGS['activate_expiration'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="activate_expiration_input" name="activate_expiration_input" value="', isset($SETTINGS['activate_expiration']) && $SETTINGS['activate_expiration'] == 1 ? '1' : '0', '" />
750
                </td></tr>';
751
// Enable enable_delete_after_consultation
752
echo '
753
                <tr><td>
754
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
755
                    <label>
756
                        '.$LANG['admin_setting_enable_delete_after_consultation'].'
757
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_setting_enable_delete_after_consultation_tip']), ENT_QUOTES).'"></i></span>
758
                    </label>
759
                    </td><td>
760
                        <div class="toggle toggle-modern" id="enable_delete_after_consultation" data-toggle-on="', isset($SETTINGS['enable_delete_after_consultation']) && $SETTINGS['enable_delete_after_consultation'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_delete_after_consultation_input" name="enable_delete_after_consultation_input" value="', isset($SETTINGS['enable_delete_after_consultation']) && $SETTINGS['enable_delete_after_consultation'] == 1 ? '1' : '0', '" />
761
                </td></tr>';
762
763
echo '<tr><td colspan="3"><hr /></td></tr>';
764
// Enable Printing
765
echo '
766
                <tr><td>
767
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
768
                    <label>
769
                        '.$LANG['settings_printing'].'
770
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_printing_tip']), ENT_QUOTES).'"></i></span>
771
                    </label>
772
                    </td><td>
773
                        <div class="toggle toggle-modern" id="allow_print" data-toggle-on="', isset($SETTINGS['allow_print']) && $SETTINGS['allow_print'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="allow_print_input" name="allow_print_input" value="', isset($SETTINGS['allow_print']) && $SETTINGS['allow_print'] == 1 ? '1' : '0', '" />
774
                </td></tr>';
775
776
// Enable Printing Groups - roles_allowed_to_print
777
echo '
778
                <tr><td>
779
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
780
                    <label>
781
                        '.$LANG['settings_roles_allowed_to_print'].'
782
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_roles_allowed_to_print_tip']), ENT_QUOTES).'"></i></span>
783
                    </label>
784
                    </td><td>
785
                    <input type="hidden" id="roles_allowed_to_print" name="roles_allowed_to_print" value="', isset($SETTINGS['roles_allowed_to_print']) ? $SETTINGS['roles_allowed_to_print'] : '', '" />
786
                    <select id="roles_allowed_to_print_select" name="roles_allowed_to_print_select" class="text ui-widget-content" multiple="multiple" onchange="refreshInput()">';
787 View Code Duplication
if (!isset($SETTINGS['roles_allowed_to_print']) || empty($SETTINGS['roles_allowed_to_print'])) {
788
    $arrRolesToPrint = array();
789
} else {
790
    $arrRolesToPrint = explode(";", $SETTINGS['roles_allowed_to_print']);
791
}
792
$roles = DB::query("SELECT id, title FROM ".prefix_table("roles_title"));
793
foreach ($roles as $role) {
794
    echo '<option value="'.$role['id'].'"', in_array($role['id'], $arrRolesToPrint) ? ' selected="selected"' : '', '>'.addslashes($role['title']).'</option>';
795
}
796
echo '
797
                        </select>
798
                </td></tr>';
799
// Enable IMPORT
800
echo '
801
                <tr><td>
802
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
803
                    <label>
804
                        '.$LANG['settings_importing'].'
805
                    </label>
806
                    </td><td>
807
                        <div class="toggle toggle-modern" id="allow_import" data-toggle-on="', isset($SETTINGS['allow_import']) && $SETTINGS['allow_import'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="allow_import_input" name="allow_import_input" value="', isset($SETTINGS['allow_import']) && $SETTINGS['allow_import'] == 1 ? '1' : '0', '" />
808
                </td></tr>';
809
810
echo '<tr><td colspan="3"><hr /></td></tr>';
811
// Enable Item modification by anyone
812
echo '
813
                <tr><td>
814
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
815
                    <label>
816
                        '.$LANG['settings_anyone_can_modify'].'
817
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_anyone_can_modify_tip']), ENT_QUOTES).'"></i></span>
818
                    </label>
819
                    </td><td>
820
                        <div class="toggle toggle-modern" id="anyone_can_modify" data-toggle-on="', isset($SETTINGS['anyone_can_modify']) && $SETTINGS['anyone_can_modify'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="anyone_can_modify_input" name="anyone_can_modify_input" value="', isset($SETTINGS['anyone_can_modify']) && $SETTINGS['anyone_can_modify'] == 1 ? '1' : '0', '" />
821
                </td></tr>';
822
// Enable Item modification by anyone by default
823
echo '
824
                <tr id="tr_option_anyone_can_modify_bydefault"', isset($SETTINGS['anyone_can_modify']) && $SETTINGS['anyone_can_modify'] == 1 ? '' : ' style="display:none;"', '><td>
825
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
826
                    <label>'.htmlentities(strip_tags($LANG['settings_anyone_can_modify_bydefault'])).'</label>
827
                    </td><td>
828
                        <div class="toggle toggle-modern" id="anyone_can_modify_bydefault" data-toggle-on="', isset($SETTINGS['anyone_can_modify_bydefault']) && $SETTINGS['anyone_can_modify_bydefault'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="anyone_can_modify_bydefault_input" name="anyone_can_modify_bydefault_input" value="', isset($SETTINGS['anyone_can_modify_bydefault']) && $SETTINGS['anyone_can_modify_bydefault'] == 1 ? '1' : '0', '" />
829
                </td></tr>';
830
// enable restricted_to option
831
echo '
832
                <tr><td>
833
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
834
                    <label>'.$LANG['settings_restricted_to'].'</label>
835
                    </td><td>
836
                        <div class="toggle toggle-modern" id="restricted_to" data-toggle-on="', isset($SETTINGS['restricted_to']) && $SETTINGS['restricted_to'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="restricted_to_input" name="restricted_to_input" value="', isset($SETTINGS['restricted_to']) && $SETTINGS['restricted_to'] == 1 ? '1' : '0', '" />
837
                </td></tr>';
838
// enable restricted_to_roles
839
echo '
840
                <tr id="tr_option_restricted_to_roles" style="display:', isset($SETTINGS['restricted_to']) && $SETTINGS['restricted_to'] == 1 ? 'inline' : 'none', ';"><td>
841
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
842
                    <label>'.$LANG['restricted_to_roles'].'</label>
843
                    </td><td>
844
                        <div class="toggle toggle-modern" id="restricted_to_roles" data-toggle-on="', isset($SETTINGS['restricted_to_roles']) && $SETTINGS['restricted_to_roles'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="restricted_to_roles_input" name="restricted_to_roles_input" value="', isset($SETTINGS['restricted_to_roles']) && $SETTINGS['restricted_to_roles'] == 1 ? '1' : '0', '" />
845
                </td></tr>';
846
847
echo '<tr><td colspan="3"><hr /></td></tr>';
848
// enable show copy to clipboard small icons
849
echo '
850
                <tr><td>
851
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
852
                    <label>
853
                        '.$LANG['copy_to_clipboard_small_icons'].'
854
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['copy_to_clipboard_small_icons_tip']), ENT_QUOTES).'"></i></span>
855
                    </label>
856
                    </td><td>
857
                        <div class="toggle toggle-modern" id="copy_to_clipboard_small_icons" data-toggle-on="', isset($SETTINGS['copy_to_clipboard_small_icons']) && $SETTINGS['copy_to_clipboard_small_icons'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="copy_to_clipboard_small_icons_input" name="copy_to_clipboard_small_icons_input" value="', isset($SETTINGS['copy_to_clipboard_small_icons']) && $SETTINGS['copy_to_clipboard_small_icons'] == 1 ? '1' : '0', '" />
858
                </td></tr>';
859
// Enable Show description in items list
860
echo '
861
                <tr><td>
862
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
863
                    <label>
864
                        '.$LANG['settings_show_description'].'
865
                    </label>
866
                    </td><td>
867
                        <div class="toggle toggle-modern" id="show_description" data-toggle-on="', isset($SETTINGS['show_description']) && $SETTINGS['show_description'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="show_description_input" name="show_description_input" value="', isset($SETTINGS['show_description']) && $SETTINGS['show_description'] == 1 ? '1' : '0', '" />
868
                </td></tr>';
869
// In Tree, display number of Items in subfolders and number of subfolders - tree_counters
870
echo '
871
                <tr><td>
872
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
873
                    <label>
874
                        '.$LANG['settings_tree_counters'].'
875
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_tree_counters_tip']), ENT_QUOTES).'"></i></span>
876
                    </label>
877
                    </td><td>
878
                        <div class="toggle toggle-modern" id="tree_counters" data-toggle-on="', isset($SETTINGS['tree_counters']) && $SETTINGS['tree_counters'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="tree_counters_input" name="tree_counters_input" value="', isset($SETTINGS['tree_counters']) && $SETTINGS['tree_counters'] == 1 ? '1' : '0', '" />
879
                </td></tr>';
880
// nb of items to display by ajax query
881
echo '
882
                <tr><td>
883
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
884
                    <label>'.$LANG['nb_items_by_query'].'</label>
885
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['nb_items_by_query_tip']), ENT_QUOTES).'"></i></span>
886
                    </td><td>
887
                    <input type="text" size="4" id="nb_items_by_query" name="nb_items_by_query" value="', isset($SETTINGS['nb_items_by_query']) ? $SETTINGS['nb_items_by_query'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
888
                </td></tr>';
889
890
echo '<tr><td colspan="3"><hr /></td></tr>';
891
// enable sending email on USER login
892
echo '
893
                <tr><td>
894
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
895
                    <label>'.$LANG['enable_send_email_on_user_login'].'</label>
896
                    </td><td>
897
                        <div class="toggle toggle-modern" id="enable_send_email_on_user_login" data-toggle-on="', isset($SETTINGS['enable_send_email_on_user_login']) && $SETTINGS['enable_send_email_on_user_login'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_send_email_on_user_login_input" name="enable_send_email_on_user_login_input" value="', isset($SETTINGS['enable_send_email_on_user_login']) && $SETTINGS['enable_send_email_on_user_login'] == 1 ? '1' : '0', '" />
898
                </td></tr>';
899
// enable email notification on item shown
900
echo '
901
                <tr><td>
902
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
903
                    <label>'.$LANG['enable_email_notification_on_item_shown'].'</label>
904
                    </td><td>
905
                        <div class="toggle toggle-modern" id="enable_email_notification_on_item_shown" data-toggle-on="', isset($SETTINGS['enable_email_notification_on_item_shown']) && $SETTINGS['enable_email_notification_on_item_shown'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_email_notification_on_item_shown_input" name="enable_email_notification_on_item_shown_input" value="', isset($SETTINGS['enable_email_notification_on_item_shown']) && $SETTINGS['enable_email_notification_on_item_shown'] == 1 ? '1' : '0', '" />
906
                </td></tr>';
907
// enable email notification when user password is changed
908
echo '
909
                <tr><td>
910
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
911
                    <label>'.$LANG['enable_email_notification_on_user_pw_change'].'</label>
912
                    </td><td>
913
                        <div class="toggle toggle-modern" id="enable_email_notification_on_user_pw_change" data-toggle-on="', isset($SETTINGS['enable_email_notification_on_user_pw_change']) && $SETTINGS['enable_email_notification_on_user_pw_change'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_email_notification_on_user_pw_change_input" name="enable_email_notification_on_user_pw_change_input" value="', isset($SETTINGS['enable_email_notification_on_user_pw_change']) && $SETTINGS['enable_email_notification_on_user_pw_change'] == 1 ? '1' : '0', '" />
914
                </td></tr>';
915
916
echo '<tr><td colspan="3"><hr /></td></tr>';
917
// enable add manual entries in History
918
echo '
919
                <tr><td>
920
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
921
                    <label>
922
                        '.$LANG['settings_insert_manual_entry_item_history'].'
923
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_insert_manual_entry_item_history_tip']), ENT_QUOTES).'"></i></span>
924
                    </label>
925
                    </td><td>
926
                        <div class="toggle toggle-modern" id="insert_manual_entry_item_history" data-toggle-on="', isset($SETTINGS['insert_manual_entry_item_history']) && $SETTINGS['insert_manual_entry_item_history'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="insert_manual_entry_item_history_input" name="insert_manual_entry_item_history_input" value="', isset($SETTINGS['insert_manual_entry_item_history']) && $SETTINGS['insert_manual_entry_item_history'] == 1 ? '1' : '0', '" />
927
                </td></tr>';
928
echo '<tr><td colspan="3"><hr /></td></tr>';
929
// OffLine mode options
930
echo '
931
                <tr><td>
932
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
933
                    <label>
934
                        '.$LANG['settings_offline_mode'].'
935
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_offline_mode_tip']), ENT_QUOTES).'"></i></span>
936
                    </label>
937
                    </td><td>
938
                        <div class="toggle toggle-modern" id="settings_offline_mode" data-toggle-on="', isset($SETTINGS['settings_offline_mode']) && $SETTINGS['settings_offline_mode'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="settings_offline_mode_input" name="settings_offline_mode_input" value="', isset($SETTINGS['settings_offline_mode']) && $SETTINGS['settings_offline_mode'] == 1 ? '1' : '0', '" />
939
                </td></tr>';
940
// OffLne KEy Level
941
echo '
942
                <tr style="margin-bottom:3px">
943
                    <td>
944
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
945
                        <label for="offline_key_level">'.$LANG['offline_mode_key_level'].'</label>
946
                    </td>
947
                    <td>
948
                        <select id="offline_key_level" name="offline_key_level" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));">';
949
foreach ($SETTINGS_EXT['pwComplexity'] as $complex) {
950
    echo '<option value="'.$complex[0].'"', isset($SETTINGS['offline_key_level']) && $SETTINGS['offline_key_level'] == $complex[0] ? ' selected="selected"' : '', '>'.$complex[1].'</option>';
951
}
952
echo '
953
                        </select>
954
                    </td>
955
                </tr>';
956
echo '<tr><td colspan="3"><hr /></td></tr>';
957
// SYSLOG ENABLE
958
echo '
959
                <tr><td>
960
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
961
                    <label>'.$LANG['syslog_enable'].'</label>
962
                    </td><td>
963
                        <div class="toggle toggle-modern" id="syslog_enable" data-toggle-on="', isset($SETTINGS['syslog_enable']) && $SETTINGS['syslog_enable'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="syslog_enable_input" name="syslog_enable_input" value="', isset($SETTINGS['syslog_enable']) && $SETTINGS['syslog_enable'] == 1 ? '1' : '0', '" />
964
                </td></tr>';
965
// SYSLOG Host
966
echo '
967
                    <tr style="margin-bottom:3px">
968
                        <td>
969
                            <i class="fa fa-long-arrow-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
970
                            '.$LANG['syslog_host'].'
971
                        </td>
972
                        <td>
973
                            <input id="syslog_host" name="syslog_host" type="text" size="40px" value="', !isset($SETTINGS['syslog_host']) ? 'localhost' : $SETTINGS['syslog_host'], '" onchange="updateSetting($(this).attr(\'id\'));" />
974
                        </td>
975
                    </tr>';
976
// SYSLOG port
977
echo '
978
                    <tr style="margin-bottom:3px">
979
                        <td>
980
                            <i class="fa fa-long-arrow-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
981
                            '.$LANG['syslog_port'].'
982
                        </td>
983
                        <td>
984
                            <input id="syslog_port" name="syslog_port" type="text" size="40px" value="', !isset($SETTINGS['syslog_port']) ? '514' : $SETTINGS['syslog_port'], '" onchange="updateSetting($(this).attr(\'id\'));" />
985
                        </td>
986
                    </tr>';
987
988
echo '<tr><td colspan="3"><hr /></td></tr>';
989
990
// Automatic server password change
991
echo '
992
                <tr><td>
993
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
994
                    <label>'.$LANG['server_password_change_enable'].'
995
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['server_password_change_enable_tip']), ENT_QUOTES).'"></i>&nbsp;</span>
996
                    </label>
997
                    </td><td>
998
                        <div class="toggle toggle-modern" id="enable_server_password_change" data-toggle-on="', isset($SETTINGS['enable_server_password_change']) && $SETTINGS['enable_server_password_change'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="enable_server_password_change_input" name="enable_server_password_change_input" value="', isset($SETTINGS['enable_server_password_change']) && $SETTINGS['enable_server_password_change'] == 1 ? '1' : '0', '" />
999
                </td></tr>';
1000
1001
echo '
1002
            </table>
1003
            </div>';
1004
// --------------------------------------------------------------------------------
1005
// --------------------------------------------------------------------------------
1006
// TAB Né4
1007
echo '
1008
            <div id="tabs-4">';
1009
// Check if LDAP extension is loaded
1010
if (!extension_loaded('ldap')) {
1011
    echo '
1012
    <div style="margin-bottom:3px;">
1013
        <div class="ui-widget-content ui-corner-all" style="padding:10px;">
1014
            <i class="fa fa-warning fa-2x"></i>&nbsp;'.$LANG['ldap_extension_not_loaded'].'
1015
        </div>
1016
    </div>';
1017
} else {
1018
    // Enable LDAP mode
1019
    echo '
1020
    <div style="margin-bottom:3px;">
1021
        <table><tr>
1022
        <td><label for="ldap_mode">'.$LANG['settings_ldap_mode'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_mode_tip']), ENT_QUOTES).'"></i></label></td>
1023
        <td><div class="toggle toggle-modern" id="ldap_mode" data-toggle-on="', isset($SETTINGS['ldap_mode']) && $SETTINGS['ldap_mode'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="ldap_mode_input" name="ldap_mode_input" value="', isset($SETTINGS['ldap_mode']) && $SETTINGS['ldap_mode'] == 1 ? '1' : '0', '" /></td>
1024
        </tr></table>
1025
    </div>';
1026
}
1027
// LDAP inputs
1028
echo '
1029
            <div id="div_ldap_configuration" ', (isset($SETTINGS['ldap_mode']) && $SETTINGS['ldap_mode'] == 1) ? '' : ' style="display:none;"', '>
1030
                <div style="font-weight:bold;font-size:14px;margin:15px 0px 8px 0px;">'.$LANG['admin_ldap_configuration'].'</div>
1031
                <table id="ldap_config_values">';
1032
// Type
1033
$ldap_type = isset($SETTINGS['ldap_type']) ? $SETTINGS['ldap_type'] : '';
1034
echo '
1035
                    <tr>
1036
                        <td><label for="ldap_type">'.$LANG['settings_ldap_type'].'</label></td>
1037
                        <td>
1038
                            <select id="ldap_type" name="ldap_type" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\')); showLdapFields($(this).val());">
1039
                                <option value="0">-- '.$LANG['select'].' --</option>
1040
                                <option value="windows"', $ldap_type === 'windows' ? ' selected="selected"' : '', '>Windows / Active Directory</option>
1041
                                <option value="posix"', $ldap_type === 'posix' ? ' selected="selected"' : '', '>Posix / OpenLDAP (RFC2307)</option>
1042
                                <option value="posix-search"', $ldap_type === 'posix-search' ? ' selected="selected"' : '', '>Posix / OpenLDAP (RFC2307) Search Based</option>
1043
                            </select>
1044
                        </td>
1045
                    </tr>';
1046
// Domain
1047
echo '
1048
                    <tr style="display:', (isset($ldap_type)) ? '' : 'none', '" class="tr-windows tr-ldap tr-posix tr-posix-search">
1049
                        <td><label for="ldap_suffix">'.$LANG['settings_ldap_domain'].'</label></td>
1050
                        <td><input type="text" size="50" id="ldap_suffix" name="ldap_suffix" class="text ui-widget-content" title="@dc=example,dc=com" value="', isset($SETTINGS['ldap_suffix']) ? $SETTINGS['ldap_suffix'] : '', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1051
                    </tr>';
1052
1053
// Domain DN
1054
echo '
1055
                    <tr style="display:', (isset($ldap_type) && $ldap_type != 'posix-search') ? '' : 'none', '" class="tr-windows tr-posix tr-ldap">
1056
                        <td><label for="ldap_domain_dn">'.$LANG['settings_ldap_domain_dn'].'</label></td>
1057
                        <td><input type="text" size="50" id="ldap_domain_dn" name="ldap_domain_dn" class="text ui-widget-content" title="dc=example,dc=com" value="', isset($SETTINGS['ldap_domain_dn']) ? $SETTINGS['ldap_domain_dn'] : '', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1058
                    </tr>';
1059
/*
0 ignored issues
show
Unused Code Comprehensibility introduced by
60% of this comment could be valid code. Did you maybe forget this after debugging?

Sometimes obsolete code just ends up commented out instead of removed. In this case it is better to remove the code once you have checked you do not need it.

The code might also have been commented out for debugging purposes. In this case it is vital that someone uncomments it again or your project may behave in very unexpected ways in production.

This check looks for comments that seem to be mostly valid code and reports them.

Loading history...
1060
// Subtree for posix / openldap
1061
        echo '
1062
                <tr>
1063
                    <td><label for="ldap_suffix">'.$LANG['settings_ldap_domain_posix'].'</label></td>
1064
                    <td><input type="text" size="50" id="ldap_suffix" name="ldap_suffix" class="text ui-widget-content" title="@dc=example,dc=com" value="', isset($SETTINGS['ldap_suffix']) ? $SETTINGS['ldap_suffix'] : '', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1065
                </tr>';
1066
*/
1067
// LDAP username attribute
1068
        // LDAP Object Class
1069
        echo '
1070
                <tr style="display:', (isset($ldap_type) && $ldap_type === 'posix-search') ? '' : 'none', '" class="tr-posix-search tr-ldap">
1071
                    <td><label for="ldap_object_class">'.$LANG['settings_ldap_object_class'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_object_class_tip']), ENT_QUOTES).'"></i></label></td>
1072
                    <td><input type="text" size="50" id="ldap_object_class" name="ldap_object_class" class="text ui-widget-content" title="Person" value="',
1073
                    isset($SETTINGS['ldap_object_class']) ? $SETTINGS['ldap_object_class'] : 'posixAccount', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1074
                </tr>';
1075
        echo '
1076
                <tr style="display:', (isset($ldap_type) && $ldap_type === 'posix-search') ? '' : 'none', '" class="tr-posix-search tr-ldap">
1077
                    <td><label for="ldap_user_attribute">'.$LANG['settings_ldap_user_attribute'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_user_attribute_tip']), ENT_QUOTES).'"></i></label></td>
1078
                    <td><input type="text" size="50" id="ldap_user_attribute" name="ldap_user_attribute" class="text ui-widget-content" title="uid" value="',
1079
                        isset($SETTINGS['ldap_user_attribute']) ? $SETTINGS['ldap_user_attribute'] : 'uid', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1080
                </tr>';
1081
                // LDAP
1082
                echo '
1083
                <tr style="display:', (isset($ldap_type) && $ldap_type === 'posix-search') ? '' : 'none', '" class="tr-posix-search tr-ldap">
1084
                    <td><label for="ldap_usergroup">'.$LANG['settings_ldap_usergroup'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_usergroup_tip']), ENT_QUOTES).'"></i></label></td>
1085
                    <td><input type="text" size="50" id="ldap_usergroup" name="ldap_usergroup" class="text ui-widget-content" title="uid" value="',
1086
                        isset($SETTINGS['ldap_usergroup']) ? $SETTINGS['ldap_usergroup'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1087
                </tr>';
1088
                // LDAP BIND DN for search
1089
                echo '
1090
                <tr style="display:', (isset($ldap_type) && $ldap_type === 'posix-search') ? '' : 'none', '" class="tr-posix-search tr-ldap">
1091
                    <td><label for="ldap_bind_dn">'.$LANG['settings_ldap_bind_dn'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_bind_dn_tip']), ENT_QUOTES).'"></i></label></td>
1092
                    <td><input type="text" size="50" id="ldap_bind_dn" name="ldap_bind_dn" class="text ui-widget-content" title="uid=teampass,ou=people,dc=mydomain,dc=local" value="', isset($SETTINGS['ldap_bind_dn']) ? $SETTINGS['ldap_bind_dn'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1093
                </tr>';
1094
                // LDAP BIND PASSWD for search
1095
                echo '
1096
                <tr style="display:', (isset($ldap_type) && $ldap_type === 'posix-search') ? '' : 'none', '" class="tr-posix-search tr-ldap">
1097
                    <td><label for="ldap_bind_passwd">'.$LANG['settings_ldap_bind_passwd'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_bind_passwd_tip']), ENT_QUOTES).'"></i></label></td>
1098
                    <td><input type="text" size="50" id="ldap_bind_passwd" name="ldap_bind_passwd" class="text ui-widget-content" title="123password456" value="', isset($SETTINGS['ldap_bind_passwd']) ? $SETTINGS['ldap_bind_passwd'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1099
                </tr>';
1100
                // LDAP BASE for search
1101
                echo '
1102
                <tr style="display:', (isset($ldap_type) && $ldap_type === 'posix-search') ? '' : 'none', '" class="tr-posix-search tr-ldap">
1103
                    <td><label for="ldap_search_base">'.$LANG['settings_ldap_search_base'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_search_base_tip']), ENT_QUOTES).'"></i></label></td>
1104
                    <td><input type="text" size="50" id="ldap_search_base" name="ldap_search_base" class="text ui-widget-content" title="ou=people,dc=octopoos,dc=local" value="', isset($SETTINGS['ldap_search_base']) ? $SETTINGS['ldap_search_base'] : '', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1105
                </tr>';
1106
1107
// Domain controler
1108
echo '
1109
                <tr>
1110
                    <td><label for="ldap_domain_controler">'.$LANG['settings_ldap_domain_controler'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_domain_controler_tip']), ENT_QUOTES).'"></i></label></td>
1111
                    <td><input type="text" size="50" id="ldap_domain_controler" name="ldap_domain_controler" class="text ui-widget-content" title="dc01.mydomain.local,dc02.mydomain.local" value="', isset($SETTINGS['ldap_domain_controler']) ? $SETTINGS['ldap_domain_controler'] : '', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1112
                </tr>';
1113
1114
// AD Port
1115
    echo '
1116
                <tr>
1117
                    <td><label for="ldap_port">'.$LANG['settings_ldap_port'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_port_tip']), ENT_QUOTES).'"></i></label></td>
1118
                    <td><input type="text" size="50" id="ldap_port" name="ldap_port" class="text ui-widget-content" title="389" value="', isset($SETTINGS['ldap_port']) ? $SETTINGS['ldap_port'] : '389', '" onchange="updateSetting($(this).attr(\'id\'));" /></td>
1119
                </tr>';
1120
1121
// AD SSL
1122
echo '
1123
                <tr>
1124
                    <td><label>'.$LANG['settings_ldap_ssl'].'</label></td>
1125
                    <td>
1126
                        <div class="toggle toggle-modern" id="ldap_ssl" data-toggle-on="', isset($SETTINGS['ldap_ssl']) && $SETTINGS['ldap_ssl'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="ldap_ssl_input" name="ldap_ssl_input" value="', isset($SETTINGS['ldap_ssl']) && $SETTINGS['ldap_ssl'] == 1 ? '1' : '0', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1127
                    </td>
1128
                </tr>';
1129
1130
// AD TLS
1131
echo '
1132
                <tr>
1133
                    <td><label>'.$LANG['settings_ldap_tls'].'</label></td>
1134
                    <td>
1135
                        <div class="toggle toggle-modern" id="ldap_tls" data-toggle-on="', isset($SETTINGS['ldap_tls']) && $SETTINGS['ldap_tls'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="ldap_tls_input" name="ldap_tls_input" value="', isset($SETTINGS['ldap_tls']) && $SETTINGS['ldap_tls'] == 1 ? '1' : '0', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1136
                    </td>
1137
                </tr>';
1138
1139
// Enable only localy declared users with tips help
1140
echo '
1141
                <tr>
1142
                    <td><label>'.$LANG['settings_ldap_elusers'].'&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_ldap_elusers_tip']), ENT_QUOTES).'"></i></label></td>
1143
                    <td>
1144
                        <div class="toggle toggle-modern" id="ldap_elusers" data-toggle-on="', isset($SETTINGS['ldap_elusers']) && $SETTINGS['ldap_elusers'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="ldap_elusers_input" name="ldap_elusers_input" value="', isset($SETTINGS['ldap_elusers']) && $SETTINGS['ldap_elusers'] == 1 ? '1' : '0', '" />
1145
                    </td>
1146
                </tr>';
1147
echo '
1148
                </table>';
1149
1150
// Test LDAP configuration
1151
echo '
1152
                <div style="font-weight:bold;font-size:14px;margin:15px 0px 8px 0px;">
1153
                    '.$LANG['ldap_test_config'].'
1154
                </div>
1155
                    <table>
1156
                        <tr>
1157
                            <td><label>'.htmlentities($LANG['ldap_test_username']).'</label></td>
1158
                            <td><input type="text" size="50" id="ldap_test_username" class="text ui-widget-content" value="" class="text ui-widget-content" /></td>
1159
                        </tr>
1160
                        <tr>
1161
                            <td><label>'.htmlentities($LANG['ldap_test_username_pwd']).'</label></td>
1162
                            <td><input type="password" size="50" id="ldap_test_pwd" class="text ui-widget-content" value="" class="text ui-widget-content" /></td>
1163
                        </tr>
1164
                        <tr>
1165
                            <td><label for="ldap_test_no_username">'.htmlentities($LANG['no_username_needed']).'</label></td>
1166
                            <td><input type="checkbox" size="50" id="ldap_test_no_username" /></td>
1167
                        </tr>
1168
                        <tr>
1169
                            <td colspan="2">
1170
                                <div id="ldap_test_msg" class="ui-widget-content ui-state-focus ui-corner-all" style="padding:10px; display:none;"></div>
1171
                            </td>
1172
                        </tr>
1173
                        <tr>
1174
                            <td><b>'.htmlentities($LANG['admin_action_db_backup_start_tip']).'</b></td>
1175
                            <td><span class="fa-stack" onclick="LaunchAdminActions(\'admin_ldap_test_configuration\')" style="cursor:pointer;">
1176
                                <i class="fa fa-square fa-stack-2x"></i>
1177
                                <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1178
                            </span></td>
1179
                        </tr>
1180
                    </table>';
1181
1182
echo '
1183
            </div>
1184
            </div>';
1185
// --------------------------------------------------------------------------------
1186
// --------------------------------------------------------------------------------
1187
// TAB Né5
1188
echo '
1189
            <div id="tabs-5">
1190
                <div class="" style="padding: 0 .7em;">
1191
                   <i class="fa fa-chevron-circle-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1192
                    <b>'.$LANG['admin_one_shot_backup'].'</b>
1193
                </div>
1194
                <div style="margin:0 0 5px 20px;">
1195
                    <table width="100%">';
1196
// Backup the DB
1197
echo '
1198
                    <tr style="margin-bottom:3px">
1199
                        <td width="35%">
1200
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1201
                        '.$LANG['admin_action_db_backup'].'
1202
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_tip']), ENT_QUOTES).'"></i></span>
1203
                        </td>
1204
                        <td>
1205
                        <span id="result_admin_action_db_backup_get_key" style="margin-left:10px; text-align:left;">
1206
                            &nbsp;'.$LANG['encrypt_key'].'<input type="password" size="20" id="result_admin_action_db_backup_key" />
1207
                            &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_key_tip']), ENT_QUOTES).'"></i>&nbsp;
1208
                            <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_db_backup\')" style="cursor:pointer;">
1209
                                <i class="fa fa-square fa-stack-2x"></i>
1210
                                <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1211
                            </span>
1212
                        </span>
1213
                        <span id="result_admin_action_db_backup" style="margin-left:10px;"></span>
1214
                        </td>
1215
                    </tr>';
1216
// Restore the DB
1217
echo '
1218
                    <tr style="margin-bottom:3px">
1219
                        <td>
1220
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1221
                        '.$LANG['admin_action_db_restore'].'
1222
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_restore_tip']), ENT_QUOTES).'"></i></span>
1223
                        </td>
1224
                        <td>
1225
                        <span id="result_admin_action_db_restore" style="margin-left:10px;"></span>
1226
                        <div id="upload_container_restoreDB">
1227
                            <div id="filelist_restoreDB"></div><br />
1228
                            <span id="pickfiles_restoreDB" class="fa-stack tip" title="'.htmlentities($LANG['select'], ENT_QUOTES).'" style="cursor:pointer;">
1229
                                <i class="fa fa-square fa-stack-2x"></i>
1230
                                <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1231
                            </span>
1232
                        </div>
1233
                        </td>
1234
                    </tr>';
1235
1236
echo '
1237
                    </table>
1238
                </div>';
1239
1240
echo '
1241
                <div class="" style="0padding: 0 .7em;">
1242
                   <i class="fa fa-chevron-circle-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1243
                    <b>'.$LANG['admin_script_backups'].'</b>&nbsp;
1244
                    <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_script_backups_tip']), ENT_QUOTES).'"></i></span>
1245
                </div>
1246
                <div style="margin:0 0 5px 20px;">
1247
                    <table width="100%">';
1248
// Backups script path
1249
echo '
1250
                    <tr style="margin-bottom:3px">
1251
                        <td width="35%">
1252
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1253
                        '.$LANG['admin_script_backup_path'].'
1254
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_script_backup_path_tip']), ENT_QUOTES).'"></i></span>
1255
                        </td>
1256
                        <td>
1257
                        <input id="bck_script_path" name="bck_script_path" type="text" size="60px" value="', isset($SETTINGS['bck_script_path']) ? $SETTINGS['bck_script_path'] : $SETTINGS['cpassman_dir'].'/backups', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1258
                        </td>
1259
                    </tr>';
1260
// Backups script name
1261
echo '
1262
                    <tr style="margin-bottom:3px">
1263
                        <td>
1264
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1265
                        '.$LANG['admin_script_backup_filename'].'
1266
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_script_backup_filename_tip']), ENT_QUOTES).'"></i></span>
1267
                        </td>
1268
                        <td>
1269
                        <input id="bck_script_filename" name="bck_script_filename" type="text" size="50px" value="', isset($SETTINGS['bck_script_filename']) ? $SETTINGS['bck_script_filename'] : 'bck_teampass', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1270
                        </td>
1271
                    </tr>';
1272
// Backup key
1273 View Code Duplication
if (isset($SETTINGS['bck_script_passkey'])) {
1274
    require_once './sources/main.functions.php';
1275
    $currentKey = cryption(
1276
        $SETTINGS['bck_script_passkey'],
1277
        "",
1278
        "decrypt"
1279
    )['string'];
1280
} else {
1281
    $currentKey = "";
1282
}
1283
echo '
1284
                    <tr style="margin-bottom:3px">
1285
                        <td>
1286
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1287
                        '.$LANG['admin_script_backup_secret'].'
1288
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_script_backup_secret_tip']), ENT_QUOTES).'"></i></span>
1289
                        </td>
1290
                        <td>
1291
                        <input id="bck_script_passkey" name="bck_script_passkey" type="text" size="50px" value="', isset($SETTINGS['bck_script_passkey']) ? $currentKey : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1292
                        &nbsp;
1293
                        <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['pw_generate']), ENT_QUOTES).'" onclick="generateAndStoreBackupPass();" style="cursor:pointer;">
1294
                            <i class="fa fa-square fa-stack-2x"></i>
1295
                            <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1296
                        </span>
1297
                        </td>
1298
                    </tr>';
1299
// Backups script encryption
1300
echo '
1301
                    <tr style="margin-bottom:3px">
1302
                        <td>
1303
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1304
                        '.$LANG['admin_script_backup_encryption'].'
1305
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_script_backup_encryption_tip']), ENT_QUOTES).'"></i></span>
1306
                        </td>
1307
                        <td>
1308
                        <input id="bck_script_key" name="bck_script_key" type="password" size="50px" value="', isset($SETTINGS['bck_script_key']) ? $SETTINGS['bck_script_key'] : '', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1309
                        </td>
1310
                    </tr>';
1311
// Decrypt SQL file
1312
echo '
1313
                    <tr style="margin-bottom:3px">
1314
                        <td>
1315
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1316
                        '.$LANG['admin_script_backup_decrypt'].'
1317
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_script_backup_decrypt_tip']), ENT_QUOTES).'"></i></span>
1318
                        </td>
1319
                        <td>
1320
                        <input id="bck_script_decrypt_file" name="bck_script_decrypt_file" type="text" size="50px" value="" />
1321
                        &nbsp;
1322
                        <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_action_backup_decrypt\')" style="cursor:pointer;">
1323
                            <i class="fa fa-square fa-stack-2x"></i>
1324
                            <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1325
                        </span>
1326
                        </td>
1327
                    </tr>';
1328
1329
echo '
1330
                    <tr>
1331
                        <td></td>
1332
                        <td>
1333
                            <div id="result_admin_script_backup" class="ui-state-focus ui-corner-all" style="padding:3px; display:none;"></div>
1334
                        </td>
1335
                    </tr>';
1336
1337
echo '
1338
                    </table>
1339
                </div>
1340
            </div>';
1341
// --------------------------------------------------------------------------------
1342
// --------------------------------------------------------------------------------
1343
// TAB Né6
1344
echo '
1345
            <div id="tabs-6">
1346
                <div class="" style="padding: 0 .7em;">
1347
                   <i class="fa fa-chevron-circle-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1348
                    <b>'.$LANG['admin_emails_configuration'].'</b>
1349
                </div>
1350
                <div style="margin:0 0 5px 20px;">
1351
                    <table>';
1352
// SMTP server
1353
echo '
1354
                    <tr style="margin-bottom:3px">
1355
                        <td>
1356
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1357
                            '.$LANG['admin_email_smtp_server'].'
1358
                        </td>
1359
                        <td>
1360
                            <input type="text" size="80" id="email_smtp_server" name="email_smtp_server" value="', !isset($SETTINGS['email_smtp_server']) ? $smtp_server : $SETTINGS['email_smtp_server'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1361
                        </td>
1362
                    </tr>';
1363
// SMTP auth
1364
echo '
1365
                    <tr style="margin-bottom:3px">
1366
                        <td>
1367
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1368
                            '.$LANG['admin_email_auth'].'
1369
                        </td>
1370
                        <td>
1371
                            <div class="toggle toggle-modern" id="email_smtp_auth" data-toggle-on="', isset($SETTINGS['email_smtp_auth']) && $SETTINGS['email_smtp_auth'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="email_smtp_auth_input" name="email_smtp_auth_input" value="', isset($SETTINGS['email_smtp_auth']) && $SETTINGS['email_smtp_auth'] == 1 ? '1' : '0', '" />
1372
                        </td>
1373
                    </tr>';
1374
// SMTP auth username
1375
echo '
1376
                    <tr style="margin-bottom:3px">
1377
                        <td>
1378
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1379
                            '.$LANG['admin_email_auth_username'].'
1380
                        </td>
1381
                        <td>
1382
                            <input id="email_auth_username" name="email_auth_username" type="text" size="40px" value="', !isset($SETTINGS['email_auth_username']) ? $smtp_auth_username : $SETTINGS['email_auth_username'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1383
                        </td>
1384
                    </tr>';
1385
// SMTP auth pwd
1386
echo '
1387
                    <tr style="margin-bottom:3px">
1388
                        <td>
1389
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1390
                            '.$LANG['admin_email_auth_pwd'].'
1391
                        </td>
1392
                        <td>
1393
                            <input id="email_auth_pwd" name="email_auth_pwd" type="password" size="40px" value="', !isset($SETTINGS['email_auth_pwd']) ? $smtp_auth_password : $SETTINGS['email_auth_pwd'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1394
                        </td>
1395
                    </tr>';
1396
// SMTP server url
1397
echo '
1398
                    <tr style="margin-bottom:3px">
1399
                        <td>
1400
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1401
                            '.$LANG['admin_email_server_url'].'
1402
                        <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_email_server_url_tip']), ENT_QUOTES).'"></i></span>
1403
                        </td>
1404
                        <td>
1405
                            <input id="email_server_url" name="email_server_url" type="text" size="40px" value="', !isset($SETTINGS['email_server_url']) ? $SETTINGS['cpassman_url'] : $SETTINGS['email_server_url'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1406
                        </td>
1407
                    </tr>';
1408
// SMTP port
1409
echo '
1410
                    <tr style="margin-bottom:3px">
1411
                        <td>
1412
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1413
                            '.$LANG['admin_email_port'].'
1414
                        </td>
1415
                        <td>
1416
                            <input id="email_port" name="email_port" type="text" size="40px" value="', !isset($SETTINGS['email_port']) ? '25' : $SETTINGS['email_port'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1417
                        </td>
1418
                    </tr>';
1419
// SMTP security
1420
echo '
1421
                    <tr style="margin-bottom:3px">
1422
                        <td>
1423
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1424
                            '.$LANG['admin_email_security'].'
1425
                        </td>
1426
                        <td>
1427
                            <select id="email_security" name="email_security" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));">
1428
                            <option value="none"', !isset($SETTINGS['email_security']) || $SETTINGS['email_security'] == "none" ? ' selected="selected"' : "", '>None</option>
1429
                            <option value="ssl"', isset($SETTINGS['email_security']) && $SETTINGS['email_security'] == "ssl" ? ' selected="selected"' : "", '>SSL</option>
1430
                            <option value="tls"', isset($SETTINGS['email_security']) && $SETTINGS['email_security'] == "tls" ? ' selected="selected"' : "", '>TLS</option>
1431
                        </select>
1432
                        </td>
1433
                    </tr>';
1434
// SMTP from
1435
echo '
1436
                    <tr style="margin-bottom:3px">
1437
                        <td>
1438
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1439
                            '.$LANG['admin_email_from'].'
1440
                        </td>
1441
                        <td>
1442
                            <input id="email_from" name="email_from" type="text" size="40px" value="', !isset($SETTINGS['email_from']) ? $email_from : $SETTINGS['email_from'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1443
                        </td>
1444
                    </tr>';
1445
// SMTP from name
1446
echo '
1447
                    <tr style="margin-bottom:3px">
1448
                        <td>
1449
                            <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1450
                            '.$LANG['admin_email_from_name'].'
1451
                        </td>
1452
                        <td>
1453
                            <input id="email_from_name" name="email_from_name" type="text" size="40px" value="', !isset($SETTINGS['email_from_name']) ? $email_from_name : $SETTINGS['email_from_name'], '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1454
                        </td>
1455
                    </tr>';
1456
1457
echo '
1458
                    </table>
1459
                </div>';
1460
1461
echo '
1462
                <div class="" style="0padding: 0 .7em;">
1463
                   <i class="fa fa-chevron-circle-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1464
                    <b>'.$LANG['admin_emails_configuration_testing'].'</b>
1465
                </div>
1466
                <div id="email_testing_results" class="ui-state-error ui-corner-all" style="padding:5px;display:none;margin:2px;"></div>
1467
                <div style="margin:0 0 5px 20px;">
1468
                    <table>';
1469
// Test email configuration
1470
echo '
1471
                    <tr style="margin-bottom:3px">
1472
                        <td>
1473
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1474
                            '.$LANG['admin_email_test_configuration'].'
1475
                            <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_email_test_configuration_tip']), ENT_QUOTES).'"></i></span>
1476
                        </td>
1477
                        <td>
1478
                            <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_email_test_configuration\')" style="cursor:pointer;">
1479
                                <i class="fa fa-square fa-stack-2x"></i>
1480
                                <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1481
                            </span>
1482
                        </td>
1483
                    </tr>';
1484
// Send emails backlog
1485
DB::query("SELECT * FROM ".prefix_table("emails")." WHERE status = %s OR status = %s", 'not_sent', '');
1486
$nb_emails = DB::count();
1487
echo '
1488
                    <tr style="margin-bottom:3px">
1489
                        <td>
1490
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1491
                            '.str_replace("#nb_emails#", $nb_emails, $LANG['admin_email_send_backlog']).'
1492
                            <span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['admin_email_send_backlog_tip']), ENT_QUOTES).'"></i></span>
1493
                        </td>
1494
                        <td>
1495
                            <span class="fa-stack tip" title="'.htmlentities(strip_tags($LANG['admin_action_db_backup_start_tip']), ENT_QUOTES).'" onclick="LaunchAdminActions(\'admin_email_send_backlog\')" style="cursor:pointer;">
1496
                                <i class="fa fa-square fa-stack-2x"></i>
1497
                                <i class="fa fa-cogs fa-stack-1x fa-inverse"></i>
1498
                            </span>
1499
                        </td>
1500
                    </tr>';
1501
1502
echo '
1503
                    </table>
1504
                </div>
1505
            </div>';
1506
// --------------------------------------------------------------------------------
1507
// TAB N°7
1508
echo '
1509
            <div id="tabs-7">
1510
                <table width="100%">';
1511
// Max file size
1512
echo '
1513
                <tr><td>
1514
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1515
                    <label>'.$LANG['settings_upload_maxfilesize'].
1516
                    '<span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_upload_maxfilesize_tip']), ENT_QUOTES).'"></i></span>
1517
                    </label>
1518
                    </td><td>
1519
                    <input type="text" size="5" id="upload_maxfilesize" name="upload_maxfilesize" value="', isset($SETTINGS['upload_maxfilesize']) ? $SETTINGS['upload_maxfilesize'] : '10', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1520
                </td></tr>';
1521
// Extension for Documents
1522
echo '
1523
                <tr><td>
1524
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1525
                    <label>'.$LANG['settings_upload_docext'].
1526
                    '<span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_upload_docext_tip']), ENT_QUOTES).'"></i></span>
1527
                    </label>
1528
                    </td><td>
1529
                    <input type="text" size="70" id="upload_docext" name="upload_docext" value="', isset($SETTINGS['upload_docext']) ? $SETTINGS['upload_docext'] : 'doc,docx,dotx,xls,xlsx,xltx,rtf,csv,txt,pdf,ppt,pptx,pot,dotx,xltx', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1530
                </td></tr>';
1531
// Extension for Images
1532
echo '
1533
                <tr><td>
1534
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1535
                    <label>'.$LANG['settings_upload_imagesext'].
1536
                    '<span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_upload_imagesext_tip']), ENT_QUOTES).'"></i></span>
1537
                    </label>
1538
                    </td><td>
1539
                    <input type="text" size="70" id="upload_imagesext" name="upload_imagesext" value="', isset($SETTINGS['upload_imagesext']) ? $SETTINGS['upload_imagesext'] : 'jpg,jpeg,gif,png', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1540
                </td></tr>';
1541
// Extension for Packages
1542
echo '
1543
                <tr><td>
1544
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1545
                    <label>'.$LANG['settings_upload_pkgext'].
1546
                    '<span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_upload_pkgext_tip']), ENT_QUOTES).'"></i></span>
1547
                    </label>
1548
                    </td><td>
1549
                    <input type="text" size="70" id="upload_pkgext" name="upload_pkgext" value="', isset($SETTINGS['upload_pkgext']) ? $SETTINGS['upload_pkgext'] : '7z,rar,tar,zip', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1550
                </td></tr>';
1551
// Extension for Other
1552
echo '
1553
                <tr><td>
1554
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1555
                    <label>'.$LANG['settings_upload_otherext'].
1556
                    '<span style="margin-left:0px;">&nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_upload_otherext_tip']), ENT_QUOTES).'"></i></span>
1557
                    </label>
1558
                    </td><td>
1559
                    <input type="text" size="70" id="upload_otherext" name="upload_otherext" value="', isset($SETTINGS['upload_otherext']) ? $SETTINGS['upload_otherext'] : 'sql,xml', '" class="text ui-widget-content" onchange="updateSetting($(this).attr(\'id\'));" />
1560
                </td></tr>';
1561
echo '<tr><td colspan="3"><hr /></td></tr>';
1562
// Image resize width / height / quality
1563
echo '
1564
                <tr style="margin-bottom:3px">
1565
                    <td>
1566
                        <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1567
                        <label>' .
1568
                        $LANG['settings_upload_imageresize_options'].'
1569
                        &nbsp;<i class="fa fa-question-circle tip" title="'.htmlentities(strip_tags($LANG['settings_upload_imageresize_options_tip']), ENT_QUOTES).'"></i>
1570
                        </label>
1571
                    </td>
1572
                    <td>
1573
                        <div class="toggle toggle-modern" id="upload_imageresize_options" data-toggle-on="', isset($SETTINGS['upload_imageresize_options']) && $SETTINGS['upload_imageresize_options'] == 1 ? 'true' : 'false', '"></div><input type="hidden" id="upload_imageresize_options_input" name="upload_imageresize_options_input" value="', isset($SETTINGS['upload_imageresize_options']) && $SETTINGS['upload_imageresize_options'] == 1 ? '1' : '0', '" />
1574
                    </td>
1575
                </tr>
1576
                <tr><td>
1577
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1578
                    <label>'.$LANG['settings_upload_imageresize_options_w'].
1579
                    '</label>
1580
                    </td><td>
1581
                    <input type="text" size="5" id="upload_imageresize_width" name="upload_imageresize_width" value="',
1582
                        isset($SETTINGS['upload_imageresize_width']) ? $SETTINGS['upload_imageresize_width'] : '800', '" class="text ui-widget-content upl_img_opt" onchange="updateSetting($(this).attr(\'id\'));" />
1583
                    </td>
1584
                </tr>
1585
                <tr><td>
1586
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1587
                    <label>'.$LANG['settings_upload_imageresize_options_h'].
1588
                    '</label>
1589
                    </td><td>
1590
                    <input type="text" size="5" id="upload_imageresize_height" name="upload_imageresize_height" value="',
1591
                        isset($SETTINGS['upload_imageresize_height']) ? $SETTINGS['upload_imageresize_height'] : '600', '" class="text ui-widget-content upl_img_opt" onchange="updateSetting($(this).attr(\'id\'));" />
1592
                    </td>
1593
                </tr>
1594
                <tr><td>
1595
                    <i class="fa fa-chevron-right mi-grey-1" style="margin-right: .3em;">&nbsp;</i>
1596
                    <label>'.$LANG['settings_upload_imageresize_options_q'].
1597
                    '</label>
1598
                    </td><td>
1599
                    <input type="text" size="5" id="upload_imageresize_quality" name="upload_imageresize_quality" value="',
1600
                        isset($SETTINGS['upload_imageresize_quality']) ? $SETTINGS['upload_imageresize_quality'] : '90', '" class="text ui-widget-content upl_img_opt" onchange="updateSetting($(this).attr(\'id\'));" />
1601
                </td></tr>';
1602
echo '
1603
                <tr><td colspan="3"><hr /></td></tr>';
1604
echo '
1605
                </table>
1606
            </div>';
1607
// --------------------------------------------------------------------------------
1608
1609
echo '
1610
        </div>';
1611
1612
echo '
1613
    </form>
1614
</div>';
1615
1616
echo '
1617
<input id="restore_bck_fileObj" name="restore_bck_fileObj" type="hidden" value="" />
1618
<div id="restore_bck_encryption_key_dialog" style="display:none; text-align:center;">
1619
    <input id="restore_bck_encryption_key" name="restore_bck_encryption_key" type="text" value="" />
1620
    <br>
1621
    <div class="ui-state-error ui-corner-all" style="display:none;padding:5px;display:none;margin:2px;" id="restore_bck_encryption_key_dialog_error"></div>
1622
</div>';
1623
include "admin.settings.load.php";
1624