Issues (15)

Security Analysis    no vulnerabilities found

This project does not seem to handle request data directly as such no vulnerable execution paths were found.

  File Inclusion
File Inclusion enables an attacker to inject custom files into PHP's file loading mechanism, either explicitly passed to include, or for example via PHP's auto-loading mechanism.
  Regex Injection
Regex Injection enables an attacker to execute arbitrary code in your PHP process.
  SQL Injection
SQL Injection enables an attacker to execute arbitrary SQL code on your database server gaining access to user data, or manipulating user data.
  Response Splitting
Response Splitting can be used to send arbitrary responses.
  File Manipulation
File Manipulation enables an attacker to write custom data to files. This potentially leads to injection of arbitrary code on the server.
  Object Injection
Object Injection enables an attacker to inject an object into PHP code, and can lead to arbitrary code execution, file exposure, or file manipulation attacks.
  File Exposure
File Exposure allows an attacker to gain access to local files that he should not be able to access. These files can for example include database credentials, or other configuration files.
  XML Injection
XML Injection enables an attacker to read files on your local filesystem including configuration files, or can be abused to freeze your web-server process.
  Code Injection
Code Injection enables an attacker to execute arbitrary code on the server.
  Variable Injection
Variable Injection enables an attacker to overwrite program variables with custom data, and can lead to further vulnerabilities.
  XPath Injection
XPath Injection enables an attacker to modify the parts of XML document that are read. If that XML document is for example used for authentication, this can lead to further vulnerabilities similar to SQL Injection.
  Other Vulnerability
This category comprises other attack vectors such as manipulating the PHP runtime, loading custom extensions, freezing the runtime, or similar.
  Command Injection
Command Injection enables an attacker to inject a shell command that is execute with the privileges of the web-server. This can be used to expose sensitive data, or gain access of your server.
  LDAP Injection
LDAP Injection enables an attacker to inject LDAP statements potentially granting permission to run unauthorized queries, or modify content inside the LDAP tree.
  Cross-Site Scripting
Cross-Site Scripting enables an attacker to inject code into the response of a web-request that is viewed by other users. It can for example be used to bypass access controls, or even to take over other users' accounts.
  Header Injection
Unfortunately, the security analysis is currently not available for your project. If you are a non-commercial open-source project, please contact support to gain access.

pages/options.php (3 issues)

Severity
1
<?php
2
3
declare(strict_types=1);
4
5
/**
6
 * Teampass - a collaborative passwords manager.
7
 * ---
8
 * This file is part of the TeamPass project.
9
 * 
10
 * TeamPass is free software: you can redistribute it and/or modify it
11
 * under the terms of the GNU General Public License as published by
12
 * the Free Software Foundation, version 3 of the License.
13
 * 
14
 * TeamPass is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
 * GNU General Public License for more details.
18
 * 
19
 * You should have received a copy of the GNU General Public License
20
 * along with this program. If not, see <https://www.gnu.org/licenses/>.
21
 * 
22
 * Certain components of this file may be under different licenses. For
23
 * details, see the `licenses` directory or individual file headers.
24
 * ---
25
 * @file      options.php
26
 * @author    Nils Laumaillé ([email protected])
27
 * @copyright 2009-2025 Teampass.net
28
 * @license   GPL-3.0
29
 * @see       https://www.teampass.net
30
 */
31
32
use TeampassClasses\SessionManager\SessionManager;
33
use Symfony\Component\HttpFoundation\Request as SymfonyRequest;
34
use TeampassClasses\Language\Language;
35
use TeampassClasses\NestedTree\NestedTree;
36
use TeampassClasses\PerformChecks\PerformChecks;
37
use TeampassClasses\ConfigManager\ConfigManager;
38
39
// Load functions
40
require_once __DIR__.'/../sources/main.functions.php';
41
42
// init
43
loadClasses('DB');
44
$session = SessionManager::getSession();
45
$request = SymfonyRequest::createFromGlobals();
46
$lang = new Language($session->get('user-language') ?? 'english');
47
48
// Load config
49
$configManager = new ConfigManager();
50
$SETTINGS = $configManager->getAllSettings();
51
52
// Do checks
53
$checkUserAccess = new PerformChecks(
54
    dataSanitizer(
55
        [
56
            'type' => htmlspecialchars($request->request->get('type', ''), ENT_QUOTES, 'UTF-8'),
57
        ],
58
        [
59
            'type' => 'trim|escape',
60
        ],
61
    ),
62
    [
63
        'user_id' => returnIfSet($session->get('user-id'), null),
64
        'user_key' => returnIfSet($session->get('key'), null),
65
    ]
66
);
67
// Handle the case
68
echo $checkUserAccess->caseHandler();
69
if ($checkUserAccess->checkSession() === false || $checkUserAccess->userAccessPage('options') === false) {
70
    // Not allowed page
71
    $session->set('system-error_code', ERR_NOT_ALLOWED);
72
    include $SETTINGS['cpassman_dir'] . '/error.php';
73
    exit;
74
}
75
76
// Define Timezone
77
date_default_timezone_set($SETTINGS['timezone'] ?? 'UTC');
78
79
// Set header properties
80
header('Content-type: text/html; charset=utf-8');
81
header('Cache-Control: no-cache, no-store, must-revalidate');
82
83
// --------------------------------- //
84
 
85
// Generates zones
86
$zones = timezone_list();
87
?>
88
89
<!-- Content Header (Page header) -->
90
<div class='content-header'>
91
    <div class='container-fluid'>
92
        <div class='row mb-2'>
93
            <div class='col-sm-6'>
94
                <h1 class='m-0 text-dark'><?php echo $lang->get('options'); ?></h1>
95
            </div><!-- /.col -->
96
            <div class='col-sm-6 text-right'>
97
                <div class="input-group input-group-sm">
98
                    <input type="search" class="form-control" placeholder="<?php echo $lang->get('find'); ?>" id="find-options">
99
                    <div class="input-group-append">
100
                        <div class="btn btn-primary" id="button-find-options">
101
                            <i class="fas fa-search"></i>
102
                        </div>
103
                    </div>
104
                </div>
105
            </div><!-- /.col -->
106
        </div><!-- /.row -->
107
    </div><!-- /.container-fluid -->
108
</div>
109
<!-- /.content-header -->
110
111
112
<!-- Main content -->
113
<div class='content'>
114
    <div class='container-fluid'>
115
        <div class='row'>
116
            <div class='col-md-6'>
117
                <div class='card card-primary'>
118
                    <div class='card-header'>
119
                        <h3 class='card-title'><?php echo $lang->get('admin_settings_title'); ?></h3>
120
                    </div>
121
                    <!-- /.card-header -->
122
                    <!-- form start -->
123
                    <form role='form-horizontal'>
124
                        <div class='card-body'>
125
                            <div class='form-group option' data-keywords="server setting">
126
                                <label for='cpassman_dir' class='col-sm-10 control-label'>
127
                                    <?php echo $lang->get('admin_misc_cpassman_dir'); ?>
128
                                </label>
129
                                <div class='col-sm-12'>
130
                                    <input type='text' class='form-control form-control-sm' id='cpassman_dir' value='<?php echo isset($SETTINGS['cpassman_dir']) === true ? htmlspecialchars($SETTINGS['cpassman_dir']) : ''; ?>'>
131
                                </div>
132
                            </div>
133
134
                            <div class='form-group option' data-keywords="server setting">
135
                                <label for='cpassman_url' class='col-sm-10 control-label'>
136
                                    <?php echo $lang->get('admin_misc_cpassman_url'); ?>
137
                                </label>
138
                                <div class='col-sm-12'>
139
                                    <input type='text' class='form-control form-control-sm' id='cpassman_url' value='<?php echo isset($SETTINGS['cpassman_url']) === true ? htmlspecialchars($SETTINGS['cpassman_url']) : ''; ?>'>
140
                                </div>
141
                            </div>
142
143
                            <div class='form-group option' data-keywords="server setting">
144
                                <label for='path_to_upload_folder' class='col-sm-10 control-label'>
145
                                    <?php echo $lang->get('admin_path_to_upload_folder'); ?>
146
                                </label>
147
                                <div class='col-sm-12'>
148
                                    <input type='text' class='form-control form-control-sm' id='path_to_upload_folder' value='<?php echo isset($SETTINGS['path_to_upload_folder']) === true ? htmlspecialchars($SETTINGS['path_to_upload_folder']) : ''; ?>'>
149
                                    <small id='passwordHelpBlock' class='form-text text-muted'>
150
                                        <?php echo $lang->get('admin_path_to_upload_folder_tip'); ?>
151
                                    </small>
152
                                </div>
153
                            </div>
154
155
                            <div class='form-group option' data-keywords="server setting">
156
                                <label for='path_to_files_folder' class='col-sm-10 control-label'>
157
                                    <?php echo $lang->get('admin_path_to_files_folder'); ?>
158
                                </label>
159
                                <div class='col-sm-12'>
160
                                    <input type='text' class='form-control form-control-sm' id='path_to_files_folder' value='<?php echo isset($SETTINGS['path_to_files_folder']) === true ? htmlspecialchars($SETTINGS['path_to_files_folder']) : ''; ?>'>
161
                                    <small id='passwordHelpBlock' class='form-text text-muted'>
162
                                        <?php echo $lang->get('admin_path_to_files_folder_tip'); ?>
163
                                    </small>
164
                                </div>
165
                            </div>
166
167
                            <div class='form-group option' data-keywords="server setting">
168
                                <label for='favicon' class='col-sm-10 control-label'>
169
                                    <?php echo $lang->get('admin_misc_favicon'); ?>
170
                                </label>
171
                                <div class='col-sm-12'>
172
                                    <input type='text' class='form-control form-control-sm' id='favicon' value='<?php echo isset($SETTINGS['favicon']) === true ? htmlspecialchars($SETTINGS['favicon']) : ''; ?>'>
173
                                </div>
174
                            </div>
175
176
                            <div class='form-group option' data-keywords="server setting">
177
                                <label for='custom_logo' class='col-sm-10 control-label'>
178
                                    <?php echo $lang->get('admin_misc_custom_logo'); ?>
179
                                </label>
180
                                <div class='col-sm-12'>
181
                                    <input type='text' class='form-control form-control-sm' id='custom_logo' value='<?php echo isset($SETTINGS['custom_logo']) === true ? htmlspecialchars($SETTINGS['custom_logo']) : ''; ?>'>
182
                                </div>
183
                            </div>
184
185
                            <div class='form-group option' data-keywords="server setting">
186
                                <label for='custom_login_text' class='col-sm-10 control-label'>
187
                                    <?php echo $lang->get('admin_misc_custom_login_text'); ?>
188
                                </label>
189
                                <div class='col-sm-12'>
190
                                    <input type='text' class='form-control form-control-sm' id='custom_login_text' value='<?php echo isset($SETTINGS['custom_login_text']) === true ? htmlspecialchars($SETTINGS['custom_login_text']) : ''; ?>'>
191
                                </div>
192
                            </div>
193
                        </div>
194
                        <!-- /.card-body -->
195
                    </form>
196
                </div>
197
                <!-- /.card -->
198
199
                <div class='card card-primary'>
200
                    <div class='card-header'>
201
                        <h3 class='card-title'><?php echo $lang->get('admin_settings_title'); ?></h3>
202
                    </div>
203
                    <!-- /.card-header -->
204
                    <!-- form start -->
205
                    <div class='card-body'>
206
                        <div class='row mb-2 option' data-keywords="setting maintenance mode">
207
                            <div class='col-10'>
208
                                <?php echo $lang->get('settings_maintenance_mode'); ?>
209
                            </div>
210
                            <div class='col-2'>
211
                                <div class='toggle toggle-modern' id='maintenance_mode' data-toggle-on='<?php echo isset($SETTINGS['maintenance_mode']) && (int) $SETTINGS['maintenance_mode'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='maintenance_mode_input' value='<?php echo isset($SETTINGS['maintenance_mode']) && (int) $SETTINGS['maintenance_mode'] === 1 ? '1' : '0'; ?>' />
212
                            </div>
213
                        </div>
214
215
                        <div class='row mb-2 option' data-keywords="server setting session expiration time">
216
                            <div class='col-10'>
217
                                <?php echo $lang->get('settings_default_session_expiration_time'); ?>
218
                            </div>
219
                            <div class='col-2 mb-2'>
220
                                <input type='number' class='form-control form-control-sm' id='default_session_expiration_time' value='<?php echo htmlspecialchars($SETTINGS['default_session_expiration_time']) ?? '60'; ?>'>
221
                            </div>
222
                        </div>
223
224
                        <div class='row mb-2 option' data-keywords="server setting session expiration time">
225
                            <div class='col-10'>
226
                                <?php echo $lang->get('maximum_session_expiration_time'); ?>
227
                                <small id='passwordHelpBlock' class='form-text text-muted'>
228
                                    <?php echo $lang->get('maximum_session_expiration_time_tip'); ?>
229
                                </small>
230
                            </div>
231
                            <div class='col-2 mb-2'>
232
                                <input type='number' class='form-control form-control-sm' id='maximum_session_expiration_time' value='<?php echo htmlspecialchars($SETTINGS['maximum_session_expiration_time']) ?? '60'; ?>'>
233
                            </div>
234
                        </div>
235
236
                        <div class='row mb-2 option' data-keywords="server setting encryption client">
237
                            <div class='col-10'>
238
                                <?php echo $lang->get('encryptClientServer'); ?>
239
                                <small id='passwordHelpBlock' class='form-text text-muted'>
240
                                    <?php echo $lang->get('encryptClientServer_tip'); ?>
241
                                </small>
242
                            </div>
243
                            <div class='col-2'>
244
                                <div class='toggle toggle-modern' id='encryptClientServer' data-toggle-on='<?php echo isset($SETTINGS['encryptClientServer']) && (int) $SETTINGS['encryptClientServer'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='encryptClientServer_input' value='<?php echo isset($SETTINGS['encryptClientServer']) && (int) $SETTINGS['encryptClientServer'] === 1 ? '1' : '0'; ?>' />
245
                            </div>
246
                        </div>
247
248
                        <div class='row mb-2 option' data-keywords="server setting ">
249
                            <div class='col-10'>
250
                                <?php echo $lang->get('enable_http_request_login'); ?>
251
                            </div>
252
                            <div class='col-2'>
253
                                <div class='toggle toggle-modern' id='enable_http_request_login' data-toggle-on='<?php echo isset($SETTINGS['enable_http_request_login']) && (int) $SETTINGS['enable_http_request_login'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_http_request_login_input' value='<?php echo isset($SETTINGS['enable_http_request_login']) && (int) $SETTINGS['enable_http_request_login'] === 1 ? '1' : '0'; ?>' />
254
                            </div>
255
                        </div>
256
257
                        <div class='row mb-2 option' data-keywords="server setting strict hsts sts">
258
                            <div class='col-10'>
259
                                <?php echo $lang->get('settings_enable_sts'); ?>
260
                                <small id='passwordHelpBlock' class='form-text text-muted'>
261
                                    <?php echo $lang->get('settings_enable_sts_tip'); ?>
262
                                </small>
263
                            </div>
264
                            <div class='col-2'>
265
                                <div class='toggle toggle-modern' id='enable_sts' data-toggle-on='<?php echo isset($SETTINGS['enable_sts']) && (int) $SETTINGS['enable_sts'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_sts_input' value='<?php echo isset($SETTINGS['enable_sts']) && (int) $SETTINGS['enable_sts'] === 1 ? '1' : '0'; ?>' />
266
                            </div>
267
                        </div>
268
<!--
269
                        <div class='row mb-2 option' data-keywords="server setting proxy ip">
270
                            <div class='col-10'>
271
                                <?php echo $lang->get('admin_proxy_ip'); ?>
272
                                <small id='passwordHelpBlock' class='form-text text-muted'>
273
                                    <?php echo $lang->get('admin_proxy_ip_tip'); ?>
274
                                </small>
275
                            </div>
276
                            <div class='col-2'>
277
                                <input type='text' class='form-control form-control-sm' id='proxy_ip' value='<?php echo htmlspecialchars($SETTINGS['proxy_ip']) ?? '60'; ?>'>
278
                            </div>
279
                        </div>
280
281
                        <div class='row mb-2 option' data-keywords="server setting proxy port">
282
                            <div class='col-10'>
283
                                <?php echo $lang->get('admin_proxy_port'); ?>
284
                                <small id='passwordHelpBlock' class='form-text text-muted'>
285
                                    <?php echo $lang->get('admin_proxy_port_tip'); ?>
286
                                </small>
287
                            </div>
288
                            <div class='col-2'>
289
                                <input type='number' class='form-control form-control-sm' id='proxy_port' value='<?php echo htmlspecialchars($SETTINGS['proxy_port']) ?? '60'; ?>'>
290
                            </div>
291
                        </div>
292
-->
293
                        <div class='row mb-2 option' data-keywords="user ui setting login length password">
294
                            <div class='col-10'>
295
                                <?php echo $lang->get('admin_pwd_maximum_length'); ?>
296
                                <small id='passwordHelpBlock' class='form-text text-muted'>
297
                                    <?php echo $lang->get('admin_pwd_maximum_length_tip'); ?>
298
                                </small>
299
                            </div>
300
                            <div class='col-2'>
301
                                <input type='number' class='form-control form-control-sm' id='pwd_maximum_length' value='<?php echo htmlspecialchars($SETTINGS['pwd_maximum_length']) ?? '60'; ?>'>
302
                            </div>
303
                        </div>
304
305
                        <div class='row mb-2 option' data-keywords="user ui setting login length password">
306
                            <div class='col-10'>
307
                                <?php echo $lang->get('password_length_by_default'); ?>
308
                            </div>
309
                            <div class='col-2'>
310
                                <input type='number' class='form-control form-control-sm' id='pwd_default_length' value='<?php echo htmlspecialchars($SETTINGS['pwd_default_length']) ?? '14'; ?>'>
311
                            </div>
312
                        </div>
313
314
                        <div class='row mb-2 option' data-keywords="user ui setting time date">
315
                            <div class='col-4'>
316
                                <?php echo $lang->get('timezone_selection'); ?>
317
                            </div>
318
                            <div class='col-8'>
319
                                <select class='form-control form-control-sm' id='timezone'>
320
                                    <option value=''>-- <?php echo $lang->get('select'); ?> --</option>
321
                                    <?php
322
                                    // get list of all timezones
323
                                    foreach ($zones as $key => $zone) {
324
                                        echo '
325
                                <option value="' . $key . '"', isset($SETTINGS['timezone']) === true && (int) $SETTINGS['timezone'] === $key ? ' selected' : '', '>' . $zone . '</option>';
326
                                    }
327
                                    ?>
328
                                </select>
329
                            </div>
330
                        </div>
331
332
                        <div class='row mb-2 option' data-keywords="user ui setting date format">
333
                            <div class='col-4'>
334
                                <?php echo $lang->get('date_format'); ?>
335
                            </div>
336
                            <div class='col-8'>
337
                                <select class='form-control form-control-sm' id='date_format'>
338
                                    <option value=''>-- <?php echo $lang->get('select'); ?> --</option>
339
                                    <option value="d/m/Y" <?php echo isset($SETTINGS['date_format']) === false || $SETTINGS['date_format'] === 'd/m/Y' ? ' selected' : ''; ?>>d/m/Y</option>
340
                                    <option value="m/d/Y" <?php echo $SETTINGS['date_format'] === 'm/d/Y' ? ' selected' : ''; ?>>m/d/Y</option>
341
                                    <option value="d-M-Y" <?php echo $SETTINGS['date_format'] === 'd-M-Y' ? ' selected' : ''; ?>>d-M-Y</option>
342
                                    <option value="d/m/y" <?php echo $SETTINGS['date_format'] === 'd/m/y' ? ' selected' : ''; ?>>d/m/y</option>
343
                                    <option value="m/d/y" <?php echo $SETTINGS['date_format'] === 'm/d/y' ? ' selected' : ''; ?>>m/d/y</option>
344
                                    <option value="d-M-y" <?php echo $SETTINGS['date_format'] === 'd-M-y' ? ' selected' : ''; ?>>d-M-y</option>
345
                                    <option value="d-m-y" <?php echo $SETTINGS['date_format'] === 'd-m-y' ? ' selected' : ''; ?>>d-m-y</option>
346
                                    <option value="Y-m-d" <?php echo $SETTINGS['date_format'] === 'Y-m-d' ? ' selected' : ''; ?>>Y-m-d</option>
347
                                </select>
348
                            </div>
349
                        </div>
350
351
                        <div class='row mb-2 option' data-keywords="user ui setting time format">
352
                            <div class='col-4'>
353
                                <?php echo $lang->get('time_format'); ?>
354
                            </div>
355
                            <div class='col-8'>
356
                                <select class='form-control form-control-sm' id='time_format'>
357
                                    <option value=''>-- <?php echo $lang->get('select'); ?> --</option>
358
                                    <option value="H:i:s" <?php echo isset($SETTINGS['time_format']) === false || $SETTINGS['time_format'] === 'H:i:s' ? ' selected' : ''; ?>>H:i:s</option>
359
                                    <option value="H:i:s a" <?php echo $SETTINGS['time_format'] === 'H:i:s a' ? ' selected' : ''; ?>>H:i:s a</option>
360
                                    <option value="g:i:s a" <?php echo $SETTINGS['time_format'] === 'g:i:s a' ? ' selected' : ''; ?>>g:i:s a</option>
361
                                    <option value="G:i:s" <?php echo $SETTINGS['time_format'] === 'G:i:s' ? ' selected' : ''; ?>>G:i:s</option>
362
                                </select>
363
                            </div>
364
                        </div>
365
366
                        <div class='row mb-2 option' data-keywords="user ui setting language">
367
                            <div class='col-8'>
368
                                <?php echo $lang->get('settings_default_language'); ?>
369
                            </div>
370
                            <div class='col-4'>
371
                                <select class='form-control form-control-sm' id='default_language'>
372
                                    <option value=''>-- <?php echo $lang->get('select'); ?> --</option>
373
                                    <?php
374
                                    $languagesList = $languagesList ?? [];
375
                                    foreach ($languagesList as $teampassLang) {
376
                                        echo '
377
                                <option value="' . $teampassLang . '"', isset($SETTINGS['default_language']) === true && (int) $SETTINGS['default_language'] === $teampassLang ? ' selected' : '', '>' . $teampassLang . '</option>';
378
                                    }
379
                                    ?>
380
                                </select>
381
                            </div>
382
                        </div>
383
384
                        <!--
385
                    <div class='row mb-2 option'>
386
                        <div class='col-10'>
387
                            <?php echo $lang->get('number_of_used_pw'); ?>
388
                        </div>
389
                        <div class='col-2'>
390
                            <input type='text' class='form-control form-control-sm' id='number_of_used_pw' value='<?php echo htmlspecialchars($SETTINGS['number_of_used_pw']) ?? '5'; ?>'>
391
                        </div>
392
                    </div>
393
                    -->
394
395
                        <div class='row mb-2 option' data-keywords="user login password duration">
396
                            <div class='col-10'>
397
                                <?php echo $lang->get('pw_life_duration'); ?>
398
                            </div>
399
                            <div class='col-2'>
400
                                <input type='number' class='form-control form-control-sm' id='pw_life_duration' value='<?php echo htmlspecialchars($SETTINGS['pw_life_duration']) ?? '5'; ?>'>
401
                            </div>
402
                        </div>
403
404
                        <div class='row mb-2 option' data-keywords="log user login password security">
405
                            <div class='col-10'>
406
                                <?php echo $lang->get('nb_false_login_attempts'); ?>
407
                            </div>
408
                            <div class='col-2'>
409
                                <input type='number' class='form-control form-control-sm' id='nb_bad_authentication' value='<?php echo htmlspecialchars($SETTINGS['nb_bad_authentication']) ?? '0'; ?>'>
410
                            </div>
411
                        </div>
412
413
                        <!--
414
                        <div class='row mb-2 option' data-keywords="log user login">
415
                            <div class='col-10'>
416
                                <?php echo $lang->get('settings_log_connections'); ?>
417
                            </div>
418
                            <div class='col-2'>
419
                                <div class='toggle toggle-modern' id='log_connections' data-toggle-on='<?php echo isset($SETTINGS['log_connections']) === true && (int) $SETTINGS['log_connections'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='log_connections_input' value='<?php echo isset($SETTINGS['log_connections']) && (int) $SETTINGS['log_connections'] === 1 ? 1 : 0; ?>' />
420
                            </div>
421
                        </div>
422
                        -->
423
424
                        <div class='row mb-2 option' data-keywords="log item password log security">
425
                            <div class='col-10'>
426
                                <?php echo $lang->get('settings_log_accessed'); ?>
427
                            </div>
428
                            <div class='col-2'>
429
                                <div class='toggle toggle-modern' id='log_accessed' data-toggle-on='<?php echo isset($SETTINGS['log_accessed']) === true && (int) $SETTINGS['log_accessed'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='log_accessed_input' value='<?php echo isset($SETTINGS['log_accessed']) && (int) $SETTINGS['log_accessed'] === 1 ? 1 : 0; ?>' />
430
                            </div>
431
                        </div>
432
433
                        <div class='row mb-2 option' data-keywords="folder personal user">
434
                            <div class='col-10'>
435
                                <?php echo $lang->get('enable_personal_folder_feature'); ?>
436
                                <small id='passwordHelpBlock' class='form-text text-muted'>
437
                                    <?php echo $lang->get('enable_personal_folder_feature_tip'); ?>
438
                                </small>
439
                            </div>
440
                            <div class='col-2'>
441
                                <div class='toggle toggle-modern' id='enable_pf_feature' data-toggle-on='<?php echo isset($SETTINGS['enable_pf_feature']) === true && (int) $SETTINGS['enable_pf_feature'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_pf_feature_input' value='<?php echo isset($SETTINGS['enable_pf_feature']) && (int) $SETTINGS['enable_pf_feature'] === 1 ? 1 : 0; ?>' />
442
                            </div>
443
                        </div>
444
445
                        <!--
446
                  <div class='row mb-2 option'>
447
                      <div class='col-10'>
448
                          <?php echo $lang->get('enable_personal_saltkey_cookie'); ?>
449
                      </div>
450
                      <div class='col-2'>
451
                          <div class='toggle toggle-modern' id='enable_personal_saltkey_cookie' data-toggle-on='<?php echo isset($SETTINGS['enable_personal_saltkey_cookie']) === true && (int) $SETTINGS['enable_personal_saltkey_cookie'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_personal_saltkey_cookie_input' value='<?php echo isset($SETTINGS['enable_personal_saltkey_cookie']) && (int) $SETTINGS['enable_personal_saltkey_cookie'] === 1 ? 1 : 0; ?>' />
452
                      </div>
453
                  </div>
454
455
                  <div class='row mb-2 option'>
456
                      <div class='col-10'>
457
                          <?php echo $lang->get('personal_saltkey_cookie_duration'); ?>
458
                      </div>
459
                      <div class='col-2'>
460
                      <input type='text' class='form-control form-control-sm' id='personal_saltkey_cookie_duration' value='<?php echo htmlspecialchars($SETTINGS['personal_saltkey_cookie_duration']) ?? '31'; ?>'>
461
                      </div>
462
                  </div>
463
464
                    <div class='row mb-2 option'>
465
                        <div class='col-8'>
466
                            <?php echo $lang->get('personal_saltkey_security_level'); ?>
467
                        </div>
468
                        <div class='col-4'>
469
                            <select class='form-control form-control-sm' id='personal_saltkey_security_level'>
470
                                <option value=''>-- <?php echo $lang->get('select'); ?> --</option>
471
                                <?php
472
                                foreach (TP_PW_COMPLEXITY as $complex) {
473
                                    echo '
474
                                <option value="' . $complex[0] . '"', isset($SETTINGS['personal_saltkey_security_level']) === true && (int) $SETTINGS['personal_saltkey_security_level'] === $complex[0] ? ' selected' : '', '>' . $complex[1] . '</option>';
475
                                }
476
                                ?>
477
                            </select>
478
                        </div>
479
                    </div>
480
481
                  <div class='row mb-2 option'>
482
                      <div class='col-10'>
483
                          <?php echo $lang->get('settings_attachments_encryption'); ?>
484
                          <small id='passwordHelpBlock' class='form-text text-muted'>
485
                              <?php echo $lang->get('settings_attachments_encryption_tip'); ?>
486
                          </small>
487
                      </div>
488
                      <div class='col-2'>
489
                          <div class='toggle toggle-modern' id='enable_attachment_encryption' data-toggle-on='<?php echo isset($SETTINGS['enable_attachment_encryption']) === true && (int) $SETTINGS['enable_attachment_encryption'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_attachment_encryption_input' value='<?php echo isset($SETTINGS['enable_attachment_encryption']) && (int) $SETTINGS['enable_attachment_encryption'] === 1 ? 1 : 0; ?>' />
490
                      </div>
491
                  </div>
492
                  -->
493
494
                        <div class='row mb-2 option' data-keywords="image">
495
                            <div class='col-10'>
496
                                <?php echo $lang->get('settings_secure_display_image'); ?>
497
                                <small id='passwordHelpBlock' class='form-text text-muted'>
498
                                    <?php echo $lang->get('settings_secure_display_image_tip'); ?>
499
                                </small>
500
                            </div>
501
                            <div class='col-2'>
502
                                <div class='toggle toggle-modern' id='secure_display_image' data-toggle-on='<?php echo isset($SETTINGS['secure_display_image']) === true && (int) $SETTINGS['secure_display_image'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='secure_display_image_input' value='<?php echo isset($SETTINGS['secure_display_image']) && (int) $SETTINGS['secure_display_image'] === 1 ? 1 : 0; ?>' />
503
                            </div>
504
                        </div>
505
506
                        <div class='row mb-2 option' data-keywords="option">
507
                            <div class='col-10'>
508
                                <?php echo $lang->get('settings_kb'); ?>
509
                                <small id='passwordHelpBlock' class='form-text text-muted'>
510
                                    <?php echo $lang->get('settings_kb_tip'); ?>
511
                                </small>
512
                            </div>
513
                            <div class='col-2'>
514
                                <div class='toggle toggle-modern' id='enable_kb' data-toggle-on='<?php echo isset($SETTINGS['enable_kb']) === true && (int) $SETTINGS['enable_kb'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_kb_input' value='<?php echo isset($SETTINGS['enable_kb']) && (int) $SETTINGS['enable_kb'] === 1 ? 1 : 0; ?>' />
515
                            </div>
516
                        </div>
517
518
                        <div class='row mb-2 option' data-keywords="option">
519
                            <div class='col-10'>
520
                                <?php echo $lang->get('settings_suggestion'); ?>
521
                                <small id='passwordHelpBlock' class='form-text text-muted'>
522
                                    <?php echo $lang->get('settings_suggestion_tip'); ?>
523
                                </small>
524
                            </div>
525
                            <div class='col-2'>
526
                                <div class='toggle toggle-modern' id='enable_suggestion' data-toggle-on='<?php echo isset($SETTINGS['enable_suggestion']) === true && (int) $SETTINGS['enable_suggestion'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_suggestion_input' value='<?php echo isset($SETTINGS['enable_suggestion']) && (int) $SETTINGS['enable_suggestion'] === 1 ? 1 : 0; ?>' />
527
                            </div>
528
                        </div>
529
530
                        <div class='row mb-2 option' data-keywords="display">
531
                            <div class='col-10'>
532
                                <?php echo $lang->get('settings_get_tp_info'); ?>
533
                                <small id='passwordHelpBlock' class='form-text text-muted'>
534
                                    <?php echo $lang->get('settings_get_tp_info_tip'); ?>
535
                                </small>
536
                            </div>
537
                            <div class='col-2'>
538
                                <div class='toggle toggle-modern' id='get_tp_info' data-toggle-on='<?php echo isset($SETTINGS['get_tp_info']) === true && (int) $SETTINGS['get_tp_info'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='get_tp_info_input' value='<?php echo isset($SETTINGS['get_tp_info']) && (int) $SETTINGS['get_tp_info'] === 1 ? 1 : 0; ?>' />
539
                            </div>
540
                        </div>
541
542
                    </div>
543
                    <!-- /.card-body -->
544
                </div>
545
                <!-- /.card -->
546
            
547
548
                <div class='card card-primary'>
549
                        <div class='card-header'>
550
                            <h3 class='card-title'><?php echo $lang->get('otv_link'); ?></h3>
551
                        </div>
552
                        <!-- /.card-header -->
553
                        <!-- form start -->
554
                        <div class='card-body'>
555
                            <div class='row mb-2 option' data-keywords="one time link">
556
                                <div class='col-10'>
557
                                    <?php echo $lang->get('otv_is_enabled'); ?>
558
                                </div>
559
                                <div class='col-2'>
560
                                    <div class='toggle toggle-modern' id='otv_is_enabled' data-toggle-on='<?php echo isset($SETTINGS['otv_is_enabled']) === true && (int) $SETTINGS['otv_is_enabled'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='otv_is_enabled_input' value='<?php echo isset($SETTINGS['otv_is_enabled']) && (int) $SETTINGS['otv_is_enabled'] === 1 ? 1 : 0; ?>' />
561
                                </div>
562
                            </div>
563
564
                            <div class='row mb-2 option' data-keywords="one time period expiration link">
565
                                <div class='col-10'>
566
                                    <?php echo $lang->get('settings_otv_expiration_period'); ?>
567
                                </div>
568
                                <div class='col-2'>
569
                                    <input type='number' class='form-control form-control-sm' id='otv_expiration_period' value='<?php echo htmlspecialchars($SETTINGS['otv_expiration_period']) ?? '7'; ?>'>
570
                                </div>
571
                            </div>
572
573
                            <div class='row mb-2 option' data-keywords="one time subdomain link">
574
                                <div class='col-12'>
575
                                    <?php echo $lang->get('settings_otv_subdomain'); ?>
576
                                    <small class='form-text text-muted'>
577
                                        <?php echo $lang->get('settings_otv_subdomain_tip'); ?>
578
                                    </small>
579
                                </div>
580
                                <div class='col-sm-12'>
581
                                    <input type='text' class='form-control form-control-sm' id='otv_subdomain' value='<?php echo isset($SETTINGS['otv_subdomain']) === true ? htmlspecialchars($SETTINGS['otv_subdomain']) : ''; ?>'>
582
                                </div>
583
                            </div>
584
                        </div>
585
                    </div>
586
587
            </div>
588
            <!-- /.col-md-6 -->
589
            <!--/.col (left) -->
590
            <!-- right column -->
591
            <div class='col-md-6'>
592
                <!-- Horizontal Form -->
593
                <div class='card card-info'>
594
                    <div class='card-header'>
595
                        <h3 class='card-title'><?php echo $lang->get('admin_settings_title'); ?></h3>
596
                    </div>
597
                    <!-- /.card-header -->
598
                    <!-- card-body -->
599
                    <div class='card-body'>
600
                        <div class='row mb-2 option' data-keywords="item edit">
601
                            <div class='col-10'>
602
                                <?php echo $lang->get('settings_delay_for_item_edition'); ?>
603
                                <small id='passwordHelpBlock' class='form-text text-muted'>
604
                                    <?php echo $lang->get('settings_delay_for_item_edition_tip'); ?>
605
                                </small>
606
                            </div>
607
                            <div class='col-2'>
608
                                <input type='number' class='form-control form-control-sm' id='delay_item_edition' value='<?php echo $SETTINGS['delay_item_edition'] ?? '9'; ?>'>
609
                            </div>
610
                        </div>
611
612
                        <div class='row mb-2 option' data-keywords="right manager item">
613
                            <div class='col-10'>
614
                                <?php echo $lang->get('settings_manager_edit'); ?>
615
                            </div>
616
                            <div class='col-2'>
617
                                <div class='toggle toggle-modern' id='manager_edit' data-toggle-on='<?php echo isset($SETTINGS['manager_edit']) === true && (int) $SETTINGS['manager_edit'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='manager_edit_input' value='<?php echo isset($SETTINGS['manager_edit']) && (int) $SETTINGS['manager_edit'] === 1 ? 1 : 0; ?>' />
618
                            </div>
619
                        </div>
620
621
                        <div class='row mb-2 option' data-keywords="right manager move item">
622
                            <div class='col-10'>
623
                                <?php echo $lang->get('settings_manager_move_item'); ?>
624
                            </div>
625
                            <div class='col-2'>
626
                                <div class='toggle toggle-modern' id='manager_move_item' data-toggle-on='<?php echo isset($SETTINGS['manager_move_item']) === true && (int) $SETTINGS['manager_move_item'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='manager_move_item_input' value='<?php echo isset($SETTINGS['manager_move_item']) && (int) $SETTINGS['manager_move_item'] === 1 ? 1 : 0; ?>' />
627
                            </div>
628
                        </div>
629
630
                        <div class='row mb-2 option' data-keywords="password last">
631
                            <div class='col-10'>
632
                                <?php echo $lang->get('max_last_items'); ?>
633
                            </div>
634
                            <div class='col-2'>
635
                                <input type='number' class='form-control form-control-sm' id='max_last_items' value='<?php echo isset($SETTINGS['max_last_items']) === true ? $SETTINGS['max_last_items'] : '7'; ?>'>
636
                            </div>
637
                        </div>
638
639
                        <div class='row mb-2 option' data-keywords="create duplicate folder">
640
                            <div class='col-10'>
641
                                <?php echo $lang->get('duplicate_folder'); ?>
642
                            </div>
643
                            <div class='col-2'>
644
                                <div class='toggle toggle-modern' id='duplicate_folder' data-toggle-on='<?php echo isset($SETTINGS['duplicate_folder']) === true && (int) $SETTINGS['duplicate_folder'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='duplicate_folder_input' value='<?php echo isset($SETTINGS['duplicate_folder']) && (int) $SETTINGS['duplicate_folder'] === 1 ? 1 : 0; ?>' />
645
                            </div>
646
                        </div>
647
648
                        <div class='row mb-2 option' data-keywords="password duplicate">
649
                            <div class='col-10'>
650
                                <?php echo $lang->get('duplicate_item'); ?>
651
                            </div>
652
                            <div class='col-2'>
653
                                <div class='toggle toggle-modern' id='duplicate_item' data-toggle-on='<?php echo isset($SETTINGS['duplicate_item']) === true && (int) $SETTINGS['duplicate_item'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='duplicate_item_input' value='<?php echo isset($SETTINGS['duplicate_item']) && (int) $SETTINGS['duplicate_item'] === 1 ? 1 : 0; ?>' />
654
                            </div>
655
                        </div>
656
657
                        <div class='row mb-2 option' data-keywords="password duplicate folder">
658
                            <div class='col-10'>
659
                                <?php echo $lang->get('duplicate_item_in_folder'); ?>
660
                            </div>
661
                            <div class='col-2'>
662
                                <div class='toggle toggle-modern' id='item_duplicate_in_same_folder' data-toggle-on='<?php echo isset($SETTINGS['item_duplicate_in_same_folder']) === true && (int) $SETTINGS['item_duplicate_in_same_folder'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='item_duplicate_in_same_folder_input' value='<?php echo isset($SETTINGS['item_duplicate_in_same_folder']) && (int) $SETTINGS['item_duplicate_in_same_folder'] === 1 ? 1 : 0; ?>' />
663
                            </div>
664
                        </div>
665
666
                        <div class='row mb-2 option' data-keywords="folder display optimization hide">
667
                            <div class='col-10'>
668
                                <?php echo $lang->get('show_only_accessible_folders'); ?>
669
                                <small class='form-text text-muted'>
670
                                    <?php echo $lang->get('show_only_accessible_folders_tip'); ?>
671
                                </small>
672
                            </div>
673
                            <div class='col-2'>
674
                                <div class='toggle toggle-modern' id='show_only_accessible_folders' data-toggle-on='<?php echo isset($SETTINGS['show_only_accessible_folders']) === true && (int) $SETTINGS['show_only_accessible_folders'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='show_only_accessible_folders_input' value='<?php echo isset($SETTINGS['show_only_accessible_folders']) && (int) $SETTINGS['show_only_accessible_folders'] === 1 ? 1 : 0; ?>' />
675
                            </div>
676
                        </div>
677
678
                        <div class='row mb-2 option' data-keywords="folder creation">
679
                            <div class='col-10'>
680
                                <?php echo $lang->get('subfolder_rights_as_parent'); ?>
681
                                <small class='form-text text-muted'>
682
                                    <?php echo $lang->get('subfolder_rights_as_parent_tip'); ?>
683
                                </small>
684
                            </div>
685
                            <div class='col-2'>
686
                                <div class='toggle toggle-modern' id='subfolder_rights_as_parent' data-toggle-on='<?php echo isset($SETTINGS['subfolder_rights_as_parent']) === true && (int) $SETTINGS['subfolder_rights_as_parent'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='subfolder_rights_as_parent_input' value='<?php echo isset($SETTINGS['subfolder_rights_as_parent']) && (int) $SETTINGS['subfolder_rights_as_parent'] === 1 ? 1 : 0; ?>' />
687
                            </div>
688
                        </div>
689
690
                        <div class='row mb-2 option' data-keywords="password creation">
691
                            <div class='col-10'>
692
                                <?php echo $lang->get('create_item_without_password'); ?>
693
                            </div>
694
                            <div class='col-2'>
695
                                <div class='toggle toggle-modern' id='create_item_without_password' data-toggle-on='<?php echo isset($SETTINGS['create_item_without_password']) === true && (int) $SETTINGS['create_item_without_password'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='create_item_without_password_input' value='<?php echo isset($SETTINGS['create_item_without_password']) && (int) $SETTINGS['create_item_without_password'] === 1 ? 1 : 0; ?>' />
696
                            </div>
697
                        </div>
698
699
                        <div class='row mb-2 option' data-keywords="profile">
700
                            <div class='col-10'>
701
                                <?php echo $lang->get('disable_user_edit_profile'); ?>
702
                            </div>
703
                            <div class='col-2'>
704
                                <div class='toggle toggle-modern' id='disable_user_edit_profile' data-toggle-on='<?php echo isset($SETTINGS['disable_user_edit_profile']) === true && (int) $SETTINGS['disable_user_edit_profile'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='disable_user_edit_profile_input' value='<?php echo isset($SETTINGS['disable_user_edit_profile']) && (int) $SETTINGS['disable_user_edit_profile'] === 1 ? 1 : 0; ?>' />
705
                            </div>
706
                        </div>
707
708
                        <div class='row mb-2 option' data-keywords="language lang">
709
                            <div class='col-10'>
710
                                <?php echo $lang->get('disable_user_edit_language'); ?>
711
                            </div>
712
                            <div class='col-2'>
713
                                <div class='toggle toggle-modern' id='disable_user_edit_language' data-toggle-on='<?php echo isset($SETTINGS['disable_user_edit_language']) === true && (int) $SETTINGS['disable_user_edit_language'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='disable_user_edit_language_input' value='<?php echo isset($SETTINGS['disable_user_edit_language']) && (int) $SETTINGS['disable_user_edit_language'] === 1 ? 1 : 0; ?>' />
714
                            </div>
715
                        </div>
716
717
                        <div class='row mb-2 option' data-keywords="timezone">
718
                            <div class='col-10'>
719
                                <?php echo $lang->get('disable_user_edit_timezone'); ?>
720
                            </div>
721
                            <div class='col-2'>
722
                                <div class='toggle toggle-modern' id='disable_user_edit_timezone' data-toggle-on='<?php echo isset($SETTINGS['disable_user_edit_timezone']) === true && (int) $SETTINGS['disable_user_edit_timezone'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='disable_user_edit_timezone_input' value='<?php echo isset($SETTINGS['disable_user_edit_timezone']) && (int) $SETTINGS['disable_user_edit_timezone'] === 1 ? 1 : 0; ?>' />
723
                            </div>
724
                        </div>
725
726
                        <div class='row mb-2 option' data-keywords="tree load strategy">
727
                            <div class='col-10'>
728
                                <?php echo $lang->get('disable_drag_drop'); ?>
729
                            </div>
730
                            <div class='col-2'>
731
                                <div class='toggle toggle-modern' id='disable_drag_drop' data-toggle-on='<?php echo isset($SETTINGS['disable_drag_drop']) === true && (int) $SETTINGS['disable_drag_drop'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='disable_drag_drop_input' value='<?php echo isset($SETTINGS['disable_drag_drop']) && (int) $SETTINGS['disable_drag_drop'] === 1 ? 1 : 0; ?>' />
732
                            </div>
733
                        </div>
734
735
                        <div class='row mb-2 option' data-keywords="tree load strategy">
736
                            <div class='col-10'>
737
                                <?php echo $lang->get('disable_user_edit_tree_load_strategy'); ?>
738
                            </div>
739
                            <div class='col-2'>
740
                                <div class='toggle toggle-modern' id='disable_user_edit_tree_load_strategy' data-toggle-on='<?php echo isset($SETTINGS['disable_user_edit_tree_load_strategy']) === true && (int) $SETTINGS['disable_user_edit_tree_load_strategy'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='disable_user_edit_tree_load_strategy_input' value='<?php echo isset($SETTINGS['disable_user_edit_tree_load_strategy']) && (int) $SETTINGS['disable_user_edit_tree_load_strategy'] === 1 ? 1 : 0; ?>' />
741
                            </div>
742
                        </div>
743
744
                        <div class='row mb-2 option' data-keywords="favorite">
745
                            <div class='col-10'>
746
                                <?php echo $lang->get('enable_favourites'); ?>
747
                            </div>
748
                            <div class='col-2'>
749
                                <div class='toggle toggle-modern' id='enable_favourites' data-toggle-on='<?php echo isset($SETTINGS['enable_favourites']) === true && (int) $SETTINGS['enable_favourites'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_favourites_input' value='<?php echo isset($SETTINGS['enable_favourites']) && (int) $SETTINGS['enable_favourites'] === 1 ? 1 : 0; ?>' />
750
                            </div>
751
                        </div>
752
753
                        <div class='row mb-2 option' data-keywords="folder creation">
754
                            <div class='col-10'>
755
                                <?php echo $lang->get('enable_user_can_create_folders'); ?>
756
                            </div>
757
                            <div class='col-2'>
758
                                <div class='toggle toggle-modern' id='enable_user_can_create_folders' data-toggle-on='<?php echo isset($SETTINGS['enable_user_can_create_folders']) === true && (int) $SETTINGS['enable_user_can_create_folders'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_user_can_create_folders_input' value='<?php echo isset($SETTINGS['enable_user_can_create_folders']) && (int) $SETTINGS['enable_user_can_create_folders'] === 1 ? 1 : 0; ?>' />
759
                            </div>
760
                        </div>
761
762
                        <div class='row mb-2 option' data-keywords="folder creation">
763
                            <div class='col-10'>
764
                                <?php echo $lang->get('can_create_root_folder'); ?>
765
                            </div>
766
                            <div class='col-2'>
767
                                <div class='toggle toggle-modern' id='can_create_root_folder' data-toggle-on='<?php echo isset($SETTINGS['can_create_root_folder']) === true && (int) $SETTINGS['can_create_root_folder'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='can_create_root_folder_input' value='<?php echo isset($SETTINGS['can_create_root_folder']) && (int) $SETTINGS['can_create_root_folder'] === 1 ? 1 : 0; ?>' />
768
                            </div>
769
                        </div>
770
771
                        <div class='row mb-2 option' data-keywords="password delete massive">
772
                            <div class='col-10'>
773
                                <?php echo $lang->get('enable_massive_move_delete'); ?>
774
                                <small class='form-text text-muted'>
775
                                    <?php echo $lang->get('enable_massive_move_delete_tip'); ?>
776
                                </small>
777
                            </div>
778
                            <div class='col-2'>
779
                                <div class='toggle toggle-modern' id='enable_massive_move_delete' data-toggle-on='<?php echo isset($SETTINGS['enable_massive_move_delete']) === true && (int) $SETTINGS['enable_massive_move_delete'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_massive_move_delete_input' value='<?php echo isset($SETTINGS['enable_massive_move_delete']) && (int) $SETTINGS['enable_massive_move_delete'] === 1 ? 1 : 0; ?>' />
780
                            </div>
781
                        </div>
782
783
                        <div class='row mb-2 option' data-keywords="password display">
784
                            <div class='col-10'>
785
                                <?php echo $lang->get('password_overview_delay'); ?>
786
                                <small class='form-text text-muted'>
787
                                    <?php echo $lang->get('password_overview_delay_tip'); ?>
788
                                </small>
789
                            </div>
790
                            <div class='col-2'>
791
                                <input type='number' class='form-control form-control-sm' id='password_overview_delay' value='<?php echo isset($SETTINGS['password_overview_delay']) === true ? htmlspecialchars($SETTINGS['password_overview_delay']) : '4'; ?>'>
792
                            </div>
793
                        </div>
794
795
                        <div class='row mb-2 option' data-keywords="password delete view expiration">
796
                            <div class='col-10'>
797
                                <?php echo $lang->get('admin_setting_activate_expiration'); ?>
798
                                <small class='form-text text-muted'>
799
                                    <?php echo $lang->get('admin_setting_activate_expiration_tip'); ?>
800
                                </small>
801
                            </div>
802
                            <div class='col-2'>
803
                                <div class='toggle toggle-modern' id='activate_expiration' data-toggle-on='<?php echo isset($SETTINGS['activate_expiration']) === true && (int) $SETTINGS['activate_expiration'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='activate_expiration_input' value='<?php echo isset($SETTINGS['activate_expiration']) && (int) $SETTINGS['activate_expiration'] === 1 ? 1 : 0; ?>' />
804
                            </div>
805
                        </div>
806
807
                        <div class='row mb-2 option' data-keywords="password delete view expiration">
808
                            <div class='col-10'>
809
                                <?php echo $lang->get('admin_setting_enable_delete_after_consultation'); ?>
810
                                <small class='form-text text-muted'>
811
                                    <?php echo $lang->get('admin_setting_enable_delete_after_consultation_tip'); ?>
812
                                </small>
813
                            </div>
814
                            <div class='col-2'>
815
                                <div class='toggle toggle-modern' id='enable_delete_after_consultation' data-toggle-on='<?php echo isset($SETTINGS['enable_delete_after_consultation']) === true && (int) $SETTINGS['enable_delete_after_consultation'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_delete_after_consultation_input' value='<?php echo isset($SETTINGS['enable_delete_after_consultation']) && (int) $SETTINGS['enable_delete_after_consultation'] === 1 ? 1 : 0; ?>' />
816
                            </div>
817
                        </div>
818
819
                        <div class='row mb-2 option' data-keywords="export print">
820
                            <div class='col-10'>
821
                                <?php echo $lang->get('settings_printing'); ?>
822
                                <small class='form-text text-muted'>
823
                                    <?php echo $lang->get('settings_printing_tip'); ?>
824
                                </small>
825
                            </div>
826
                            <div class='col-2'>
827
                                <div class='toggle toggle-modern' id='allow_print' data-toggle-on='<?php echo isset($SETTINGS['allow_print']) === true && (int) $SETTINGS['allow_print'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='allow_print_input' value='<?php echo isset($SETTINGS['allow_print']) && (int) $SETTINGS['allow_print'] === 1 ? 1 : 0; ?>' />
828
                            </div>
829
                        </div>
830
831
                        <div class='row mb-2 option' data-keywords="export print">
832
                            <div class='col-6'>
833
                                <?php echo $lang->get('settings_roles_allowed_to_print'); ?>
834
                                <small class='form-text text-muted'>
835
                                    <?php echo $lang->get('settings_roles_allowed_to_print_tip'); ?>
836
                                </small>
837
                            </div>
838
                            <div class='col-6'>
839
                                <select class='form-control form-control-sm select2 disabled' id='roles_allowed_to_print_select' onchange='' multiple="multiple" style="width:100%;">
840
                                    <?php
841
                                    // Get selected groups
842
                                    if (isset($SETTINGS['allow_print']) === true) {
843
                                        $arrRolesToPrint = json_decode($SETTINGS['roles_allowed_to_print_select'], true);
844
                                        if ($arrRolesToPrint === 0 || empty($arrRolesToPrint) === true) {
845
                                            $arrRolesToPrint = [];
846
                                        }
847
                                        // Get full list
848
                                        $roles = getRolesTitles();
849
                                        foreach ($roles as $role) {
850
                                            echo '
851
                                    <option value="' . htmlspecialchars($role['id']) . '"', in_array($role['id'], $arrRolesToPrint) === true ? ' selected' : '', '>' . htmlspecialchars(addslashes($role['title'])) . '</option>';
852
                                        }
853
                                    }
854
                                    ?>
855
                                </select>
856
                            </div>
857
                        </div>
858
859
                        <div class='row mb-2 option' data-keywords="import">
860
                            <div class='col-10'>
861
                                <?php echo $lang->get('settings_importing'); ?>
862
                            </div>
863
                            <div class='col-2'>
864
                                <div class='toggle toggle-modern' id='allow_import' data-toggle-on='<?php echo isset($SETTINGS['allow_import']) === true && (int) $SETTINGS['allow_import'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='allow_import_input' value='<?php echo isset($SETTINGS['allow_import']) && (int) $SETTINGS['allow_import'] === 1 ? 1 : 0; ?>' />
865
                            </div>
866
                        </div>
867
868
                        <div class='row mb-2 option' data-keywords="role restriction modify right">
869
                            <div class='col-10'>
870
                                <?php echo $lang->get('settings_anyone_can_modify'); ?>
871
                                <small class='form-text text-muted'>
872
                                    <?php echo $lang->get('settings_anyone_can_modify_tip'); ?>
873
                                </small>
874
                            </div>
875
                            <div class='col-2'>
876
                                <div class='toggle toggle-modern' id='anyone_can_modify' data-toggle-on='<?php echo isset($SETTINGS['anyone_can_modify']) === true && (int) $SETTINGS['anyone_can_modify'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='anyone_can_modify_input' value='<?php echo isset($SETTINGS['anyone_can_modify']) && (int) $SETTINGS['anyone_can_modify'] === 1 ? 1 : 0; ?>' />
877
                            </div>
878
                        </div>
879
880
                        <div class='row mb-2 option <?php echo isset($SETTINGS['anyone_can_modify']) === true && (int) $SETTINGS['anyone_can_modify'] === '1' ? '' : 'hidden'; ?>' id="form-item-row-modify" data-keywords="role restriction modify right">
0 ignored issues
show
The condition (int)$SETTINGS['anyone_can_modify'] === '1' is always false.
Loading history...
881
                            <div class='col-10'>
882
                                <?php echo $lang->get('settings_anyone_can_modify_bydefault'); ?>
883
                            </div>
884
                            <div class='col-2'>
885
                                <div class='toggle toggle-modern' id='anyone_can_modify_bydefault' data-toggle-on='<?php echo isset($SETTINGS['anyone_can_modify_bydefault']) === true && (int) $SETTINGS['anyone_can_modify_bydefault'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='anyone_can_modify_bydefault_input' value='<?php echo isset($SETTINGS['anyone_can_modify_bydefault']) && (int) $SETTINGS['anyone_can_modify_bydefault'] === 1 ? 1 : 0; ?>' />
886
                            </div>
887
                        </div>
888
889
                        <div class='row mb-2 option' data-keywords="role restriction">
890
                            <div class='col-10'>
891
                                <?php echo $lang->get('settings_restricted_to'); ?>
892
                            </div>
893
                            <div class='col-2'>
894
                                <div class='toggle toggle-modern' id='restricted_to' data-toggle-on='<?php echo isset($SETTINGS['restricted_to']) === true && (int) $SETTINGS['restricted_to'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='restricted_to_input' value='<?php echo isset($SETTINGS['restricted_to']) && (int) $SETTINGS['restricted_to'] === 1 ? 1 : 0; ?>' />
895
                            </div>
896
                        </div>
897
898
                        <div class='row mb-2 option <?php echo isset($SETTINGS['restricted_to']) === true && (int) $SETTINGS['restricted_to'] === '1' ? '' : 'hidden'; ?>' id="form-item-row-restricted" data-keywords="role restriction">
0 ignored issues
show
The condition (int)$SETTINGS['restricted_to'] === '1' is always false.
Loading history...
899
                            <div class='col-10'>
900
                                <?php echo $lang->get('restricted_to_roles'); ?>
901
                            </div>
902
                            <div class='col-2'>
903
                                <div class='toggle toggle-modern' id='restricted_to_roles' data-toggle-on='<?php echo isset($SETTINGS['restricted_to_roles']) === true && (int) $SETTINGS['restricted_to_roles'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='restricted_to_roles_input' value='<?php echo isset($SETTINGS['restricted_to_roles']) && (int) $SETTINGS['restricted_to_roles'] === 1 ? 1 : 0; ?>' />
904
                            </div>
905
                        </div>
906
907
                        <div class='row mb-2 option' data-keywords="display optimization icon">
908
                            <div class='col-10'>
909
                                <?php echo $lang->get('copy_to_clipboard_small_icons'); ?>
910
                                <small class='form-text text-muted'>
911
                                    <?php echo $lang->get('copy_to_clipboard_small_icons_tip'); ?>
912
                                </small>
913
                            </div>
914
                            <div class='col-2'>
915
                                <div class='toggle toggle-modern' id='copy_to_clipboard_small_icons' data-toggle-on='<?php echo isset($SETTINGS['copy_to_clipboard_small_icons']) === true && (int) $SETTINGS['copy_to_clipboard_small_icons'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='copy_to_clipboard_small_icons_input' value='<?php echo isset($SETTINGS['copy_to_clipboard_small_icons']) && (int) $SETTINGS['copy_to_clipboard_small_icons'] === 1 ? 1 : 0; ?>' />
916
                            </div>
917
                        </div>
918
919
                        <div class='row mb-2 option' data-keywords="display optimization icon clipboard">
920
                            <div class='col-10'>
921
                                <?php echo $lang->get('clipboard_password_life_duration'); ?>
922
                                <small class='form-text text-muted'>
923
                                    <?php echo $lang->get('clipboard_password_life_duration_tip'); ?>
924
                                </small>
925
                            </div>
926
                            <div class='col-2'>
927
                                <input type='number' class='form-control form-control-sm' id='clipboard_life_duration' value='<?php echo isset($SETTINGS['clipboard_life_duration']) === true ? htmlspecialchars($SETTINGS['clipboard_life_duration']) : '30'; ?>'>
928
                            </div>
929
                        </div>
930
931
                        <div class='row mb-2 option' data-keywords="display tree counter">
932
                            <div class='col-10'>
933
                                <?php echo $lang->get('show_item_data'); ?>
934
                                <small class='form-text text-muted'>
935
                                    <?php echo $lang->get('show_item_data_tip'); ?>
936
                                </small>
937
                            </div>
938
                            <div class='col-2'>
939
                                <div class='toggle toggle-modern' id='show_item_data' data-toggle-on='<?php echo isset($SETTINGS['show_item_data']) === true && (int) $SETTINGS['show_item_data'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='show_item_data_input' value='<?php echo isset($SETTINGS['show_item_data']) && (int) $SETTINGS['show_item_data'] === 1 ? 1 : 0; ?>' />
940
                            </div>
941
                        </div>
942
943
944
                        <div class='row mb-2 option' data-keywords="display optimization description">
945
                            <div class='col-10'>
946
                                <?php echo $lang->get('settings_show_description'); ?>
947
                            </div>
948
                            <div class='col-2'>
949
                                <div class='toggle toggle-modern' id='show_description' data-toggle-on='<?php echo isset($SETTINGS['show_description']) === true && (int) $SETTINGS['show_description'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='show_description_input' value='<?php echo isset($SETTINGS['show_description']) && (int) $SETTINGS['show_description'] === 1 ? 1 : 0; ?>' />
950
                            </div>
951
                        </div>
952
<?php
953
if (isset($SETTINGS['show_description']) === true && (int) $SETTINGS['show_description'] === '1') {
0 ignored issues
show
The condition (int)$SETTINGS['show_description'] === '1' is always false.
Loading history...
954
    ?>
955
                        <div class='row mb-2 option' data-keywords="display tree counter">
956
                            <div class='col-10'>
957
                                <?php echo $lang->get('settings_tree_counters'); ?>
958
                                <small class='form-text text-muted'>
959
                                    <?php echo $lang->get('settings_tree_counters_tip'); ?>
960
                                </small>
961
                            </div>
962
                            <div class='col-2'>
963
                                <div class='toggle toggle-modern' id='tree_counters' data-toggle-on='<?php echo isset($SETTINGS['tree_counters']) === true && (int) $SETTINGS['tree_counters'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='tree_counters_input' value='<?php echo isset($SETTINGS['tree_counters']) && (int) $SETTINGS['tree_counters'] === 1 ? 1 : 0; ?>' />
964
                            </div>
965
                        </div>
966
<?php
967
}
968
?>
969
970
                        <div class='row mb-2 option' data-keywords="query display optimization">
971
                            <div class='col-10'>
972
                                <?php echo $lang->get('limited_search_default'); ?>
973
                                <small class='form-text text-muted'>
974
                                    <?php echo $lang->get('limited_search_default_tip'); ?>
975
                                </small>
976
                            </div>
977
                            <div class='col-2'>
978
                                <div class='toggle toggle-modern' id='limited_search_default' data-toggle-on='<?php echo isset($SETTINGS['limited_search_default']) === true && (int) $SETTINGS['limited_search_default'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='limited_search_default_input' value='<?php echo isset($SETTINGS['limited_search_default']) && (int) $SETTINGS['limited_search_default'] === 1 ? 1 : 0; ?>' />
979
                            </div>
980
                        </div>
981
982
                        <div class='row mb-2 option' data-keywords="query display optimization">
983
                            <div class='col-10'>
984
                                <?php echo $lang->get('highlight_selected'); ?>
985
                                <small class='form-text text-muted'>
986
                                    <?php echo $lang->get('highlight_selected_tip'); ?>
987
                                </small>
988
                            </div>
989
                            <div class='col-2'>
990
                                <div class='toggle toggle-modern' id='highlight_selected' data-toggle-on='<?php echo isset($SETTINGS['highlight_selected']) === true && (int) $SETTINGS['highlight_selected'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='highlight_selected_input' value='<?php echo isset($SETTINGS['highlight_selected']) && (int) $SETTINGS['highlight_selected'] === 1 ? 1 : 0; ?>' />
991
                            </div>
992
                        </div>
993
994
                        <div class='row mb-2 option' data-keywords="query display optimization">
995
                            <div class='col-10'>
996
                                <?php echo $lang->get('highlight_favorites'); ?>
997
                                <small class='form-text text-muted'>
998
                                    <?php echo $lang->get('highlight_favorites_tip'); ?>
999
                                </small>
1000
                            </div>
1001
                            <div class='col-2'>
1002
                                <div class='toggle toggle-modern' id='highlight_favorites' data-toggle-on='<?php echo isset($SETTINGS['highlight_favorites']) === true && (int) $SETTINGS['highlight_favorites'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='highlight_favorites_input' value='<?php echo isset($SETTINGS['highlight_favorites']) && (int) $SETTINGS['highlight_favorites'] === 1 ? 1 : 0; ?>' />
1003
                            </div>
1004
                        </div>
1005
1006
                        <div class='row mb-2 option' data-keywords="query display optimization">
1007
                            <div class='col-10'>
1008
                                <?php echo $lang->get('nb_items_by_query'); ?>
1009
                                <small class='form-text text-muted'>
1010
                                    <?php echo $lang->get('nb_items_by_query_tip'); ?>
1011
                                </small>
1012
                            </div>
1013
                            <div class='col-2'>
1014
                                <input type='text' class='form-control form-control-sm' id='nb_items_by_query' value='<?php echo isset($SETTINGS['nb_items_by_query']) === true ? htmlspecialchars($SETTINGS['nb_items_by_query']) : ''; ?>'>
1015
                            </div>
1016
                        </div>
1017
1018
                        <div class='row mb-2 option' data-keywords="email notification login">
1019
                            <div class='col-10'>
1020
                                <?php echo $lang->get('enable_send_email_on_user_login'); ?>
1021
                            </div>
1022
                            <div class='col-2'>
1023
                                <div class='toggle toggle-modern' id='enable_send_email_on_user_login' data-toggle-on='<?php echo isset($SETTINGS['enable_send_email_on_user_login']) === true && (int) $SETTINGS['enable_send_email_on_user_login'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_send_email_on_user_login_input' value='<?php echo isset($SETTINGS['enable_send_email_on_user_login']) && (int) $SETTINGS['enable_send_email_on_user_login'] === 1 ? 1 : 0; ?>' />
1024
                            </div>
1025
                        </div>
1026
1027
                        <div class='row mb-2 option' data-keywords="email notification">
1028
                            <div class='col-10'>
1029
                                <?php echo $lang->get('enable_email_notification_on_item_shown'); ?>
1030
                            </div>
1031
                            <div class='col-2'>
1032
                                <div class='toggle toggle-modern' id='enable_email_notification_on_item_shown' data-toggle-on='<?php echo isset($SETTINGS['enable_email_notification_on_item_shown']) === true && (int) $SETTINGS['enable_email_notification_on_item_shown'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_email_notification_on_item_shown_input' value='<?php echo isset($SETTINGS['enable_email_notification_on_item_shown']) && (int) $SETTINGS['enable_email_notification_on_item_shown'] === 1 ? 1 : 0; ?>' />
1033
                            </div>
1034
                        </div>
1035
1036
                        <div class='row mb-2 option' data-keywords="email notification password change">
1037
                            <div class='col-10'>
1038
                                <?php echo $lang->get('enable_email_notification_on_user_pw_change'); ?>
1039
                            </div>
1040
                            <div class='col-2'>
1041
                                <div class='toggle toggle-modern' id='enable_email_notification_on_user_pw_change' data-toggle-on='<?php echo isset($SETTINGS['enable_email_notification_on_user_pw_change']) === true && (int) $SETTINGS['enable_email_notification_on_user_pw_change'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_email_notification_on_user_pw_change_input' value='<?php echo isset($SETTINGS['enable_email_notification_on_user_pw_change']) && (int) $SETTINGS['enable_email_notification_on_user_pw_change'] === 1 ? 1 : 0; ?>' />
1042
                            </div>
1043
                        </div>
1044
1045
                        <div class='row mb-2 option' data-keywords="history manual">
1046
                            <div class='col-10'>
1047
                                <?php echo $lang->get('settings_insert_manual_entry_item_history'); ?>
1048
                                <small class='form-text text-muted'>
1049
                                    <?php echo $lang->get('settings_insert_manual_entry_item_history_tip'); ?>
1050
                                </small>
1051
                            </div>
1052
                            <div class='col-2'>
1053
                                <div class='toggle toggle-modern' id='insert_manual_entry_item_history' data-toggle-on='<?php echo isset($SETTINGS['insert_manual_entry_item_history']) === true && (int) $SETTINGS['insert_manual_entry_item_history'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='insert_manual_entry_item_history_input' value='<?php echo isset($SETTINGS['insert_manual_entry_item_history']) && (int) $SETTINGS['insert_manual_entry_item_history'] === 1 ? 1 : 0; ?>' />
1054
                            </div>
1055
                        </div>
1056
1057
                        <div class='row mb-2 option' data-keywords="offline export">
1058
                            <div class='col-10'>
1059
                                <?php echo $lang->get('settings_offline_mode'); ?>
1060
                                <small class='form-text text-muted'>
1061
                                    <?php echo $lang->get('settings_offline_mode_tip'); ?>
1062
                                </small>
1063
                            </div>
1064
                            <div class='col-2'>
1065
                                <div class='toggle toggle-modern' id='settings_offline_mode' data-toggle-on='<?php echo isset($SETTINGS['settings_offline_mode']) === true && (int) $SETTINGS['settings_offline_mode'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='settings_offline_mode_input' value='<?php echo isset($SETTINGS['settings_offline_mode']) && (int) $SETTINGS['settings_offline_mode'] === 1 ? 1 : 0; ?>' />
1066
                            </div>
1067
                        </div>
1068
1069
                        <div class='row mb-2 option' data-keywords="offline">
1070
                            <div class='col-7'>
1071
                                <?php echo $lang->get('offline_mode_key_level'); ?>
1072
                            </div>
1073
                            <div class='col-5'>
1074
                                <select class='form-control form-control-sm' id='offline_key_level'>
1075
                                    <?php
1076
                                    foreach (TP_PW_COMPLEXITY as $complex) {
1077
                                        echo '
1078
                                <option value="' . $complex[0] . '"', isset($SETTINGS['offline_key_level']) === true && (int) $SETTINGS['offline_key_level'] === $complex[0] ? ' selected' : '', '>' . $complex[1] . '</option>';
1079
                                    }
1080
                                    ?>
1081
                                </select>
1082
                            </div>
1083
                        </div>
1084
1085
                        <div class='row mb-2 option' data-keywords="syslog">
1086
                            <div class='col-10'>
1087
                                <?php echo $lang->get('syslog_enable'); ?>
1088
                            </div>
1089
                            <div class='col-2'>
1090
                                <div class='toggle toggle-modern' id='syslog_enable' data-toggle-on='<?php echo isset($SETTINGS['syslog_enable']) === true && (int) $SETTINGS['syslog_enable'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='syslog_enable_input' value='<?php echo isset($SETTINGS['syslog_enable']) && (int) $SETTINGS['syslog_enable'] === 1 ? 1 : 0; ?>' />
1091
                            </div>
1092
                        </div>
1093
1094
                        <div class='row mb-2 option' data-keywords="syslog">
1095
                            <div class='col-7'>
1096
                                <?php echo $lang->get('syslog_host'); ?>
1097
                            </div>
1098
                            <div class='col-5'>
1099
                                <input type='text' class='form-control form-control-sm' id='syslog_host' value='<?php echo isset($SETTINGS['syslog_host']) === true ? htmlspecialchars($SETTINGS['syslog_host']) : ''; ?>'>
1100
                            </div>
1101
                        </div>
1102
1103
                        <div class='row mb-5 option' data-keywords="syslog port">
1104
                            <div class='col-10'>
1105
                                <?php echo $lang->get('syslog_port'); ?>
1106
                            </div>
1107
                            <div class='col-2'>
1108
                                <input type='number' class='form-control form-control-sm' id='syslog_port' value='<?php echo isset($SETTINGS['syslog_port']) === true ? htmlspecialchars($SETTINGS['syslog_port']) : ''; ?>'>
1109
                            </div>
1110
                        </div>
1111
1112
                        <div class='row mb-2 option' data-keywords="password server">
1113
                            <div class='col-10'>
1114
                                <?php echo $lang->get('server_password_change_enable'); ?>
1115
                                <small class='form-text text-muted'>
1116
                                    <?php echo $lang->get('server_password_change_enable_tip'); ?>
1117
                                </small>
1118
                            </div>
1119
                            <div class='col-2'>
1120
                                <div class='toggle toggle-modern disabled' id='enable_server_password_change' data-toggle-on='<?php echo isset($SETTINGS['enable_server_password_change']) === true && (int) $SETTINGS['enable_server_password_change'] === 1 ? 'true' : 'false'; ?>'></div><input type='hidden' id='enable_server_password_change_input' value='<?php echo isset($SETTINGS['enable_server_password_change']) && (int) $SETTINGS['enable_server_password_change'] === 1 ? 1 : 0; ?>' />
1121
                            </div>
1122
                        </div>
1123
1124
                    </div>
1125
                    <!-- /.card-body -->
1126
                </div>
1127
                <!-- /.card -->
1128
            </div>
1129
            <!--/.col (right) -->
1130
        </div>
1131
        <!-- /.row -->
1132
    </div><!-- /.container-fluid -->
1133
</div>
1134
<!-- /.content -->
1135