@@ -28,8 +28,8 @@  | 
                                                    ||
| 28 | 28 | * @see https://www.teampass.net  | 
                                                        
| 29 | 29 | */  | 
                                                        
| 30 | 30 | |
| 31 | - // TO REMOVE  | 
                                                        |
| 32 | - // - selected_items_to_be_imported  | 
                                                        |
| 31 | + // TO REMOVE  | 
                                                        |
| 32 | + // - selected_items_to_be_imported  | 
                                                        |
| 33 | 33 | |
| 34 | 34 | return array(  | 
                                                        
| 35 | 35 | 'max_parallel_tasks' => 'Maximum number of parallel tasks',  | 
                                                        
@@ -72,7 +72,7 @@ discard block  | 
                                                    ||
| 72 | 72 | csrfProtector::init();  | 
                                                        
| 73 | 73 | |
| 74 | 74 | // Load functions  | 
                                                        
| 75 | -require_once __DIR__. '/includes/config/include.php';  | 
                                                        |
| 75 | +require_once __DIR__.'/includes/config/include.php';  | 
                                                        |
| 76 | 76 | require_once __DIR__.'/sources/main.functions.php';  | 
                                                        
| 77 | 77 | |
| 78 | 78 | // init  | 
                                                        
@@ -106,7 +106,7 @@ discard block  | 
                                                    ||
| 106 | 106 | $SETTINGS = $antiXss->xss_clean($SETTINGS);  | 
                                                        
| 107 | 107 | |
| 108 | 108 | // Load Core library  | 
                                                        
| 109 | -require_once $SETTINGS['cpassman_dir'] . '/sources/core.php';  | 
                                                        |
| 109 | +require_once $SETTINGS['cpassman_dir'].'/sources/core.php';  | 
                                                        |
| 110 | 110 | // Prepare POST variables  | 
                                                        
| 111 | 111 | $post_language = filter_input(INPUT_POST, 'language', FILTER_SANITIZE_FULL_SPECIAL_CHARS);  | 
                                                        
| 112 | 112 |  $session_user_language = $session->get('user-language'); | 
                                                        
@@ -160,7 +160,7 @@ discard block  | 
                                                    ||
| 160 | 160 |  if ($hasSuperPrivilege > 0) { | 
                                                        
| 161 | 161 |      if (defined('MYSQL_LOG') && MYSQL_LOG === true) { | 
                                                        
| 162 | 162 |          DB::query("SET GLOBAL general_log = 'ON'"); | 
                                                        
| 163 | -        DB::query("SET GLOBAL general_log_file = " . (defined('MYSQL_LOG_FILE') ? MYSQL_LOG_FILE : "'/var/log/teampass_mysql_query.log'")); | 
                                                        |
| 163 | +        DB::query("SET GLOBAL general_log_file = ".(defined('MYSQL_LOG_FILE') ? MYSQL_LOG_FILE : "'/var/log/teampass_mysql_query.log'")); | 
                                                        |
| 164 | 164 |      } else { | 
                                                        
| 165 | 165 |          DB::query("SET GLOBAL general_log = 'OFF'"); | 
                                                        
| 166 | 166 | }  | 
                                                        
@@ -171,8 +171,8 @@ discard block  | 
                                                    ||
| 171 | 171 | //get default language  | 
                                                        
| 172 | 172 | $dataLanguage = DB::queryFirstRow(  | 
                                                        
| 173 | 173 | 'SELECT m.valeur AS valeur, l.flag AS flag  | 
                                                        
| 174 | -        FROM ' . prefixTable('misc') . ' AS m | 
                                                        |
| 175 | -        INNER JOIN ' . prefixTable('languages') . ' AS l ON (m.valeur = l.name) | 
                                                        |
| 174 | +        FROM ' . prefixTable('misc').' AS m | 
                                                        |
| 175 | +        INNER JOIN ' . prefixTable('languages').' AS l ON (m.valeur = l.name) | 
                                                        |
| 176 | 176 | WHERE m.type=%s_type AND m.intitule=%s_intitule',  | 
                                                        
| 177 | 177 | [  | 
                                                        
| 178 | 178 | 'type' => 'admin',  | 
                                                        
@@ -203,7 +203,7 @@ discard block  | 
                                                    ||
| 203 | 203 | $session_user_language = $SETTINGS['default_language'];  | 
                                                        
| 204 | 204 | }  | 
                                                        
| 205 | 205 | }  | 
                                                        
| 206 | -$lang = new Language($session_user_language, __DIR__. '/includes/language/');  | 
                                                        |
| 206 | +$lang = new Language($session_user_language, __DIR__.'/includes/language/');  | 
                                                        |
| 207 | 207 | |
| 208 | 208 |  if (isset($SETTINGS['cpassman_dir']) === false || $SETTINGS['cpassman_dir'] === '') { | 
                                                        
| 209 | 209 | $SETTINGS['cpassman_dir'] = __DIR__;  | 
                                                        
@@ -277,29 +277,29 @@ discard block  | 
                                                    ||
| 277 | 277 | </script>  | 
                                                        
| 278 | 278 | |
| 279 | 279 | <!-- IonIcons -->  | 
                                                        
| 280 | - <link rel="stylesheet" href="includes/css/ionicons.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 280 | + <link rel="stylesheet" href="includes/css/ionicons.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 281 | 281 | <!-- Theme style -->  | 
                                                        
| 282 | - <link rel="stylesheet" href="plugins/adminlte/css/adminlte.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 283 | - <link rel="stylesheet" href="plugins/pace-progress/themes/corner-indicator.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 284 | - <link rel="stylesheet" href="plugins/select2/css/select2.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 285 | - <link rel="stylesheet" href="plugins/select2/theme/select2-bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 282 | + <link rel="stylesheet" href="plugins/adminlte/css/adminlte.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 283 | + <link rel="stylesheet" href="plugins/pace-progress/themes/corner-indicator.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 284 | + <link rel="stylesheet" href="plugins/select2/css/select2.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 285 | + <link rel="stylesheet" href="plugins/select2/theme/select2-bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 286 | 286 | <!-- Theme style -->  | 
                                                        
| 287 | - <link rel="stylesheet" href="includes/css/teampass.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 287 | + <link rel="stylesheet" href="includes/css/teampass.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 288 | 288 | <!-- Google Font: Source Sans Pro -->  | 
                                                        
| 289 | - <link rel="stylesheet" type="text/css" href="includes/fonts/fonts.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 289 | + <link rel="stylesheet" type="text/css" href="includes/fonts/fonts.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 290 | 290 | <!-- Altertify -->  | 
                                                        
| 291 | - <link rel="stylesheet" href="plugins/alertifyjs/css/alertify.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 292 | - <link rel="stylesheet" href="plugins/alertifyjs/css/themes/bootstrap.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 291 | + <link rel="stylesheet" href="plugins/alertifyjs/css/alertify.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 292 | + <link rel="stylesheet" href="plugins/alertifyjs/css/themes/bootstrap.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 293 | 293 | <!-- Toastr -->  | 
                                                        
| 294 | - <link rel="stylesheet" href="plugins/toastr/toastr.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 294 | + <link rel="stylesheet" href="plugins/toastr/toastr.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 295 | 295 | <!-- favicon -->  | 
                                                        
| 296 | - <link rel="shortcut icon" type="image/png" href="<?php echo $favicon;?>"/>  | 
                                                        |
| 296 | + <link rel="shortcut icon" type="image/png" href="<?php echo $favicon; ?>"/>  | 
                                                        |
| 297 | 297 | <!-- manifest (PWA) -->  | 
                                                        
| 298 | - <link rel="manifest" href="manifest.json?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 298 | + <link rel="manifest" href="manifest.json?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 299 | 299 | <!-- Custom style -->  | 
                                                        
| 300 | 300 | <?php  | 
                                                        
| 301 | -    if (file_exists(__DIR__ . '/includes/css/custom.css') === true) {?> | 
                                                        |
| 302 | - <link rel="stylesheet" href="includes/css/custom.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 301 | +    if (file_exists(__DIR__.'/includes/css/custom.css') === true) {?> | 
                                                        |
| 302 | + <link rel="stylesheet" href="includes/css/custom.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 303 | 303 | <?php  | 
                                                        
| 304 | 304 | } ?>  | 
                                                        
| 305 | 305 | </head>  | 
                                                        
@@ -346,7 +346,7 @@ discard block  | 
                                                    ||
| 346 | 346 | <div class="dropdown show">  | 
                                                        
| 347 | 347 | <a class="btn btn-primary dropdown-toggle" href="#" data-toggle="dropdown">  | 
                                                        
| 348 | 348 | <?php  | 
                                                        
| 349 | - echo $session_name . ' ' . $session_lastname; ?>  | 
                                                        |
| 349 | + echo $session_name.' '.$session_lastname; ?>  | 
                                                        |
| 350 | 350 | </a>  | 
                                                        
| 351 | 351 | |
| 352 | 352 | <div class="dropdown-menu dropdown-menu-right">  | 
                                                        
@@ -370,7 +370,7 @@ discard block  | 
                                                    ||
| 370 | 370 | </a>  | 
                                                        
| 371 | 371 | <?php  | 
                                                        
| 372 | 372 | } ?>  | 
                                                        
| 373 | - <a class="dropdown-item user-menu<?php echo (int) $session_user_admin === 1 ? ' hidden' : '';?>" href="#" data-name="generate-new_keys">  | 
                                                        |
| 373 | + <a class="dropdown-item user-menu<?php echo (int) $session_user_admin === 1 ? ' hidden' : ''; ?>" href="#" data-name="generate-new_keys">  | 
                                                        |
| 374 | 374 |                                      <i class="fa-solid fa-spray-can-sparkles fa-fw mr-2"></i><?php echo $lang->get('generate_new_keys'); ?> | 
                                                        
| 375 | 375 | </a>  | 
                                                        
| 376 | 376 | |
@@ -404,7 +404,7 @@ discard block  | 
                                                    ||
| 404 | 404 | <!-- Main Sidebar Container -->  | 
                                                        
| 405 | 405 | <aside class="main-sidebar sidebar-dark-primary elevation-4">  | 
                                                        
| 406 | 406 | <!-- Brand Logo -->  | 
                                                        
| 407 | - <a href="<?php echo $cpassman_url . '/index.php?page=' . ((int) $session_user_admin === 1 ? 'admin' : 'items'); ?>" class="brand-link">  | 
                                                        |
| 407 | + <a href="<?php echo $cpassman_url.'/index.php?page='.((int) $session_user_admin === 1 ? 'admin' : 'items'); ?>" class="brand-link">  | 
                                                        |
| 408 | 408 | <img src="includes/images/teampass-logo2-home.png" alt="Teampass Logo" class="brand-image">  | 
                                                        
| 409 | 409 | <span class="brand-text font-weight-light"><?php echo TP_TOOL_NAME; ?></span>  | 
                                                        
| 410 | 410 | </a>  | 
                                                        
@@ -422,7 +422,7 @@ discard block  | 
                                                    ||
| 422 | 422 | <a href="#" data-name="items" class="nav-link', $get['page'] === 'items' ? ' active' : '', '">  | 
                                                        
| 423 | 423 | <i class="nav-icon fa-solid fa-key"></i>  | 
                                                        
| 424 | 424 | <p>  | 
                                                        
| 425 | -                            ' . $lang->get('pw') . ' | 
                                                        |
| 425 | +                            ' . $lang->get('pw').' | 
                                                        |
| 426 | 426 | </p>  | 
                                                        
| 427 | 427 | </a>  | 
                                                        
| 428 | 428 | </li>';  | 
                                                        
@@ -435,7 +435,7 @@ discard block  | 
                                                    ||
| 435 | 435 | <a href="#" data-name="import" class="nav-link', $get['page'] === 'import' ? ' active' : '', '">  | 
                                                        
| 436 | 436 | <i class="nav-icon fa-solid fa-file-import"></i>  | 
                                                        
| 437 | 437 | <p>  | 
                                                        
| 438 | -                            ' . $lang->get('import') . ' | 
                                                        |
| 438 | +                            ' . $lang->get('import').' | 
                                                        |
| 439 | 439 | </p>  | 
                                                        
| 440 | 440 | </a>  | 
                                                        
| 441 | 441 | </li>';  | 
                                                        
@@ -456,7 +456,7 @@ discard block  | 
                                                    ||
| 456 | 456 | <a href="#" data-name="export" class="nav-link', $get['page'] === 'export' ? ' active' : '', '">  | 
                                                        
| 457 | 457 | <i class="nav-icon fa-solid fa-file-export"></i>  | 
                                                        
| 458 | 458 | <p>  | 
                                                        
| 459 | -                            ' . $lang->get('export') . ' | 
                                                        |
| 459 | +                            ' . $lang->get('export').' | 
                                                        |
| 460 | 460 | </p>  | 
                                                        
| 461 | 461 | </a>  | 
                                                        
| 462 | 462 | </li>';  | 
                                                        
@@ -483,7 +483,7 @@ discard block  | 
                                                    ||
| 483 | 483 | <a href="#" data-name="search" class="nav-link', $get['page'] === 'search' ? ' active' : '', '">  | 
                                                        
| 484 | 484 | <i class="nav-icon fa-solid fa-search"></i>  | 
                                                        
| 485 | 485 | <p>  | 
                                                        
| 486 | -                            ' . $lang->get('find') . ' | 
                                                        |
| 486 | +                            ' . $lang->get('find').' | 
                                                        |
| 487 | 487 | </p>  | 
                                                        
| 488 | 488 | </a>  | 
                                                        
| 489 | 489 | </li>';  | 
                                                        
@@ -499,7 +499,7 @@ discard block  | 
                                                    ||
| 499 | 499 | <a href="#" data-name="favourites" class="nav-link', $get['page'] === 'favourites' ? ' active' : '', '">  | 
                                                        
| 500 | 500 | <i class="nav-icon fa-solid fa-star"></i>  | 
                                                        
| 501 | 501 | <p>  | 
                                                        
| 502 | -                            ' . $lang->get('favorites') . ' | 
                                                        |
| 502 | +                            ' . $lang->get('favorites').' | 
                                                        |
| 503 | 503 | </p>  | 
                                                        
| 504 | 504 | </a>  | 
                                                        
| 505 | 505 | </li>';  | 
                                                        
@@ -529,7 +529,7 @@ discard block  | 
                                                    ||
| 529 | 529 | <a href="#" data-name="suggestion" class="nav-link', $get['page'] === 'suggestion' ? ' active' : '', '">  | 
                                                        
| 530 | 530 | <i class="nav-icon fa-solid fa-lightbulb"></i>  | 
                                                        
| 531 | 531 | <p>  | 
                                                        
| 532 | -                            ' . $lang->get('suggestion_menu') . ' | 
                                                        |
| 532 | +                            ' . $lang->get('suggestion_menu').' | 
                                                        |
| 533 | 533 | </p>  | 
                                                        
| 534 | 534 | </a>  | 
                                                        
| 535 | 535 | </li>';  | 
                                                        
@@ -542,7 +542,7 @@ discard block  | 
                                                    ||
| 542 | 542 | <a href="#" data-name="admin" class="nav-link', $get['page'] === 'admin' ? ' active' : '', '">  | 
                                                        
| 543 | 543 | <i class="nav-icon fa-solid fa-info"></i>  | 
                                                        
| 544 | 544 | <p>  | 
                                                        
| 545 | -                            ' . $lang->get('admin_main') . ' | 
                                                        |
| 545 | +                            ' . $lang->get('admin_main').' | 
                                                        |
| 546 | 546 | </p>  | 
                                                        
| 547 | 547 | </a>  | 
                                                        
| 548 | 548 | </li>  | 
                                                        
@@ -550,7 +550,7 @@ discard block  | 
                                                    ||
| 550 | 550 | <a href="#" class="nav-link">  | 
                                                        
| 551 | 551 | <i class="nav-icon fa-solid fa-wrench"></i>  | 
                                                        
| 552 | 552 | <p>  | 
                                                        
| 553 | -                                ' . $lang->get('admin_settings') . ' | 
                                                        |
| 553 | +                                ' . $lang->get('admin_settings').' | 
                                                        |
| 554 | 554 | <i class="fa-solid fa-angle-left right"></i>  | 
                                                        
| 555 | 555 | </p>  | 
                                                        
| 556 | 556 | </a>  | 
                                                        
@@ -558,63 +558,63 @@ discard block  | 
                                                    ||
| 558 | 558 | <li class="nav-item">  | 
                                                        
| 559 | 559 | <a href="#" data-name="options" class="nav-link', $get['page'] === 'options' ? ' active' : '', '">  | 
                                                        
| 560 | 560 | <i class="fa-solid fa-check-double nav-icon"></i>  | 
                                                        
| 561 | -                                    <p>' . $lang->get('options') . '</p> | 
                                                        |
| 561 | +                                    <p>' . $lang->get('options').'</p> | 
                                                        |
| 562 | 562 | </a>  | 
                                                        
| 563 | 563 | </li>  | 
                                                        
| 564 | 564 | <li class="nav-item">  | 
                                                        
| 565 | 565 | <a href="#" data-name="2fa" class="nav-link', $get['page'] === '2fa' ? ' active' : '', '">  | 
                                                        
| 566 | 566 | <i class="fa-solid fa-qrcode nav-icon"></i>  | 
                                                        
| 567 | -                                    <p>' . $lang->get('mfa_short') . '</p> | 
                                                        |
| 567 | +                                    <p>' . $lang->get('mfa_short').'</p> | 
                                                        |
| 568 | 568 | </a>  | 
                                                        
| 569 | 569 | </li>  | 
                                                        
| 570 | 570 | <li class="nav-item">  | 
                                                        
| 571 | 571 | <a href="#" data-name="api" class="nav-link', $get['page'] === 'api' ? ' active' : '', '">  | 
                                                        
| 572 | 572 | <i class="fa-solid fa-cubes nav-icon"></i>  | 
                                                        
| 573 | -                                    <p>' . $lang->get('api') . '</p> | 
                                                        |
| 573 | +                                    <p>' . $lang->get('api').'</p> | 
                                                        |
| 574 | 574 | </a>  | 
                                                        
| 575 | 575 | </li>  | 
                                                        
| 576 | 576 | <li class="nav-item">  | 
                                                        
| 577 | 577 | <a href="#" data-name="backups" class="nav-link', $get['page'] === 'backups' ? ' active' : '', '">  | 
                                                        
| 578 | 578 | <i class="fa-solid fa-database nav-icon"></i>  | 
                                                        
| 579 | -                                    <p>' . $lang->get('backups') . '</p> | 
                                                        |
| 579 | +                                    <p>' . $lang->get('backups').'</p> | 
                                                        |
| 580 | 580 | </a>  | 
                                                        
| 581 | 581 | </li>  | 
                                                        
| 582 | 582 | <li class="nav-item">  | 
                                                        
| 583 | 583 | <a href="#" data-name="emails" class="nav-link', $get['page'] === 'emails' ? ' active' : '', '">  | 
                                                        
| 584 | 584 | <i class="fa-solid fa-envelope nav-icon"></i>  | 
                                                        
| 585 | -                                    <p>' . $lang->get('emails') . '</p> | 
                                                        |
| 585 | +                                    <p>' . $lang->get('emails').'</p> | 
                                                        |
| 586 | 586 | </a>  | 
                                                        
| 587 | 587 | </li>  | 
                                                        
| 588 | 588 | <li class="nav-item">  | 
                                                        
| 589 | 589 | <a href="#" data-name="fields" class="nav-link', $get['page'] === 'fields' ? ' active' : '', '">  | 
                                                        
| 590 | 590 | <i class="fa-solid fa-keyboard nav-icon"></i>  | 
                                                        
| 591 | -                                    <p>' . $lang->get('fields') . '</p> | 
                                                        |
| 591 | +                                    <p>' . $lang->get('fields').'</p> | 
                                                        |
| 592 | 592 | </a>  | 
                                                        
| 593 | 593 | </li>  | 
                                                        
| 594 | 594 | <li class="nav-item">  | 
                                                        
| 595 | 595 | <a href="#" data-name="ldap" class="nav-link', $get['page'] === 'ldap' ? ' active' : '', '">  | 
                                                        
| 596 | 596 | <i class="fa-solid fa-id-card nav-icon"></i>  | 
                                                        
| 597 | -                                    <p>' . $lang->get('ldap') . '</p> | 
                                                        |
| 597 | +                                    <p>' . $lang->get('ldap').'</p> | 
                                                        |
| 598 | 598 | </a>  | 
                                                        
| 599 | 599 | </li>  | 
                                                        
| 600 | 600 | |
| 601 | 601 | <li class="nav-item">  | 
                                                        
| 602 | 602 | <a href="#" data-name="oauth" class="nav-link', $get['page'] === 'oauth' ? ' active' : '', '">  | 
                                                        
| 603 | 603 | <i class="fa-solid fa-plug nav-icon"></i>  | 
                                                        
| 604 | -                                    <p>' . $lang->get('oauth') . '</p> | 
                                                        |
| 604 | +                                    <p>' . $lang->get('oauth').'</p> | 
                                                        |
| 605 | 605 | </a>  | 
                                                        
| 606 | 606 | </li>  | 
                                                        
| 607 | 607 | |
| 608 | 608 | <li class="nav-item">  | 
                                                        
| 609 | 609 | <a href="#" data-name="uploads" class="nav-link', $get['page'] === 'uploads' ? ' active' : '', '">  | 
                                                        
| 610 | 610 | <i class="fa-solid fa-file-upload nav-icon"></i>  | 
                                                        
| 611 | -                                    <p>' . $lang->get('uploads') . '</p> | 
                                                        |
| 611 | +                                    <p>' . $lang->get('uploads').'</p> | 
                                                        |
| 612 | 612 | </a>  | 
                                                        
| 613 | 613 | </li>  | 
                                                        
| 614 | 614 | <li class="nav-item">  | 
                                                        
| 615 | 615 | <a href="#" data-name="statistics" class="nav-link', $get['page'] === 'statistics' ? ' active' : '', '">  | 
                                                        
| 616 | 616 | <i class="fa-solid fa-chart-bar nav-icon"></i>  | 
                                                        
| 617 | -                                    <p>' . $lang->get('statistics') . '</p> | 
                                                        |
| 617 | +                                    <p>' . $lang->get('statistics').'</p> | 
                                                        |
| 618 | 618 | </a>  | 
                                                        
| 619 | 619 | </li>  | 
                                                        
| 620 | 620 | </ul>  | 
                                                        
@@ -625,7 +625,7 @@ discard block  | 
                                                    ||
| 625 | 625 | <li class="nav-item">  | 
                                                        
| 626 | 626 | <a href="#" data-name="tasks" class="nav-link', $get['page'] === 'tasks' ? ' active' : '', '">  | 
                                                        
| 627 | 627 | <i class="fa-solid fa-tasks nav-icon"></i>  | 
                                                        
| 628 | -                        <p>' . $lang->get('tasks') . '</p> | 
                                                        |
| 628 | +                        <p>' . $lang->get('tasks').'</p> | 
                                                        |
| 629 | 629 | </a>  | 
                                                        
| 630 | 630 | </li>';  | 
                                                        
| 631 | 631 | }  | 
                                                        
@@ -636,7 +636,7 @@ discard block  | 
                                                    ||
| 636 | 636 | <a href="#" data-name="tools" class="nav-link', $get['page'] === 'tools' ? ' active' : '', '">  | 
                                                        
| 637 | 637 | <i class="nav-icon fa-solid fa-person-drowning"></i>  | 
                                                        
| 638 | 638 | <p>  | 
                                                        
| 639 | -                            ' . $lang->get('tools') . ' | 
                                                        |
| 639 | +                            ' . $lang->get('tools').' | 
                                                        |
| 640 | 640 | </p>  | 
                                                        
| 641 | 641 | </a>  | 
                                                        
| 642 | 642 | </li>';  | 
                                                        
@@ -646,7 +646,7 @@ discard block  | 
                                                    ||
| 646 | 646 | <a href="#" data-name="import" class="nav-link', $get['page'] === 'import' ? ' active' : '', '">  | 
                                                        
| 647 | 647 | <i class="nav-icon fa-solid fa-file-import"></i>  | 
                                                        
| 648 | 648 | <p>  | 
                                                        
| 649 | -                            ' . $lang->get('import') . ' | 
                                                        |
| 649 | +                            ' . $lang->get('import').' | 
                                                        |
| 650 | 650 | </p>  | 
                                                        
| 651 | 651 | </a>  | 
                                                        
| 652 | 652 | </li>';  | 
                                                        
@@ -662,7 +662,7 @@ discard block  | 
                                                    ||
| 662 | 662 | <a href="#" data-name="folders" class="nav-link', $get['page'] === 'folders' ? ' active' : '', '">  | 
                                                        
| 663 | 663 | <i class="nav-icon fa-solid fa-folder-open"></i>  | 
                                                        
| 664 | 664 | <p>  | 
                                                        
| 665 | -                            ' . $lang->get('folders') . ' | 
                                                        |
| 665 | +                            ' . $lang->get('folders').' | 
                                                        |
| 666 | 666 | </p>  | 
                                                        
| 667 | 667 | </a>  | 
                                                        
| 668 | 668 | </li>  | 
                                                        
@@ -670,7 +670,7 @@ discard block  | 
                                                    ||
| 670 | 670 | <a href="#" data-name="roles" class="nav-link', $get['page'] === 'roles' ? ' active' : '', '">  | 
                                                        
| 671 | 671 | <i class="nav-icon fa-solid fa-graduation-cap"></i>  | 
                                                        
| 672 | 672 | <p>  | 
                                                        
| 673 | -                            ' . $lang->get('roles') . ' | 
                                                        |
| 673 | +                            ' . $lang->get('roles').' | 
                                                        |
| 674 | 674 | </p>  | 
                                                        
| 675 | 675 | </a>  | 
                                                        
| 676 | 676 | </li>  | 
                                                        
@@ -678,38 +678,38 @@ discard block  | 
                                                    ||
| 678 | 678 | <a href="#" data-name="users" class="nav-link', $get['page'] === 'users' ? ' active' : '', '">  | 
                                                        
| 679 | 679 | <i class="nav-icon fa-solid fa-users"></i>  | 
                                                        
| 680 | 680 | <p>  | 
                                                        
| 681 | -                            ' . $lang->get('users') . ' | 
                                                        |
| 681 | +                            ' . $lang->get('users').' | 
                                                        |
| 682 | 682 | </p>  | 
                                                        
| 683 | 683 | </a>  | 
                                                        
| 684 | 684 | </li>  | 
                                                        
| 685 | 685 | <li class="nav-item has-treeview', $menuUtilities === true ? ' menu-open' : '', '">  | 
                                                        
| 686 | 686 | <a href="#" class="nav-link">  | 
                                                        
| 687 | 687 | <i class="nav-icon fa-solid fa-cubes"></i>  | 
                                                        
| 688 | -                        <p>' . $lang->get('admin_views') . '<i class="fa-solid fa-angle-left right"></i></p> | 
                                                        |
| 688 | +                        <p>' . $lang->get('admin_views').'<i class="fa-solid fa-angle-left right"></i></p> | 
                                                        |
| 689 | 689 | </a>  | 
                                                        
| 690 | 690 | <ul class="nav nav-treeview">  | 
                                                        
| 691 | 691 | <li class="nav-item">  | 
                                                        
| 692 | 692 | <a href="#" data-name="utilities.renewal" class="nav-link', $get['page'] === 'utilities.renewal' ? ' active' : '', '">  | 
                                                        
| 693 | 693 | <i class="far fa-calendar-alt nav-icon"></i>  | 
                                                        
| 694 | -                                <p>' . $lang->get('renewal') . '</p> | 
                                                        |
| 694 | +                                <p>' . $lang->get('renewal').'</p> | 
                                                        |
| 695 | 695 | </a>  | 
                                                        
| 696 | 696 | </li>  | 
                                                        
| 697 | 697 | <li class="nav-item">  | 
                                                        
| 698 | 698 | <a href="#" data-name="utilities.deletion" class="nav-link', $get['page'] === 'utilities.deletion' ? ' active' : '', '">  | 
                                                        
| 699 | 699 | <i class="fa-solid fa-trash-alt nav-icon"></i>  | 
                                                        
| 700 | -                                <p>' . $lang->get('deletion') . '</p> | 
                                                        |
| 700 | +                                <p>' . $lang->get('deletion').'</p> | 
                                                        |
| 701 | 701 | </a>  | 
                                                        
| 702 | 702 | </li>  | 
                                                        
| 703 | 703 | <li class="nav-item">  | 
                                                        
| 704 | 704 | <a href="#" data-name="utilities.logs" class="nav-link', $get['page'] === 'utilities.logs' ? ' active' : '', '">  | 
                                                        
| 705 | 705 | <i class="fa-solid fa-history nav-icon"></i>  | 
                                                        
| 706 | -                                <p>' . $lang->get('logs') . '</p> | 
                                                        |
| 706 | +                                <p>' . $lang->get('logs').'</p> | 
                                                        |
| 707 | 707 | </a>  | 
                                                        
| 708 | 708 | </li>  | 
                                                        
| 709 | 709 | <li class="nav-item">  | 
                                                        
| 710 | 710 | <a href="#" data-name="utilities.database" class="nav-link', $get['page'] === 'utilities.database' ? ' active' : '', '">  | 
                                                        
| 711 | 711 | <i class="fa-solid fa-database nav-icon"></i>  | 
                                                        
| 712 | -                                <p>' . $lang->get('database') . '</p> | 
                                                        |
| 712 | +                                <p>' . $lang->get('database').'</p> | 
                                                        |
| 713 | 713 | </a>  | 
                                                        
| 714 | 714 | </li>  | 
                                                        
| 715 | 715 | </ul>  | 
                                                        
@@ -720,10 +720,10 @@ discard block  | 
                                                    ||
| 720 | 720 | <!-- /.sidebar-menu -->  | 
                                                        
| 721 | 721 | <div class="menu-footer">  | 
                                                        
| 722 | 722 | <div class="" id="sidebar-footer">  | 
                                                        
| 723 | -                        <i class="fa-solid fa-clock-o mr-2 infotip text-info pointer" title="<?php echo htmlspecialchars($lang->get('server_time') . ' ' . | 
                                                        |
| 724 | - date($date_format, (int) $server['request_time']) . ' - ' .  | 
                                                        |
| 723 | +                        <i class="fa-solid fa-clock-o mr-2 infotip text-info pointer" title="<?php echo htmlspecialchars($lang->get('server_time').' '. | 
                                                        |
| 724 | + date($date_format, (int) $server['request_time']).' - '.  | 
                                                        |
| 725 | 725 | date($time_format, (int) $server['request_time']), ENT_QUOTES, 'UTF-8'); ?>"></i>  | 
                                                        
| 726 | -                        <i class="fa-solid fa-users mr-2 infotip text-info pointer" title="<?php echo $session_nb_users_online . ' ' . $lang->get('users_online'); ?>"></i> | 
                                                        |
| 726 | +                        <i class="fa-solid fa-users mr-2 infotip text-info pointer" title="<?php echo $session_nb_users_online.' '.$lang->get('users_online'); ?>"></i> | 
                                                        |
| 727 | 727 |                          <a href="<?php echo DOCUMENTATION_URL; ?>" target="_blank" class="text-info"><i class="fa-solid fa-book mr-2 infotip" title="<?php echo $lang->get('documentation_canal'); ?>"></i></a> | 
                                                        
| 728 | 728 |                          <a href="<?php echo HELP_URL; ?>" target="_blank" class="text-info"><i class="fa-solid fa-life-ring mr-2 infotip" title="<?php echo $lang->get('admin_help'); ?>"></i></a> | 
                                                        
| 729 | 729 |                          <?php if ($session_user_admin === 1) : ?><i class="fa-solid fa-bug infotip pointer text-info" title="<?php echo $lang->get('bugs_page'); ?>" onclick="generateBugReport()"></i><?php endif; ?> | 
                                                        
@@ -874,7 +874,7 @@ discard block  | 
                                                    ||
| 874 | 874 | </div>  | 
                                                        
| 875 | 875 | <div class="mt-3">  | 
                                                        
| 876 | 876 | <label>  | 
                                                        
| 877 | -                                        <span class="mr-2 pointer fw-normal"><i class="fa-solid fa-eye mr-2 text-orange"></i><?php echo $lang->get('show_user_password');?></span> | 
                                                        |
| 877 | +                                        <span class="mr-2 pointer fw-normal"><i class="fa-solid fa-eye mr-2 text-orange"></i><?php echo $lang->get('show_user_password'); ?></span> | 
                                                        |
| 878 | 878 | <input type="checkbox" id="dialog-admin-change-user-password-do-show-password" class="pointer">  | 
                                                        
| 879 | 879 | </label>  | 
                                                        
| 880 | 880 | </div>  | 
                                                        
@@ -1041,34 +1041,34 @@ discard block  | 
                                                    ||
| 1041 | 1041 |                      if ($get['page'] === 'items') { | 
                                                        
| 1042 | 1042 | // SHow page with Items  | 
                                                        
| 1043 | 1043 |                          if ((int) $session_user_admin !== 1) { | 
                                                        
| 1044 | - include $SETTINGS['cpassman_dir'] . '/pages/items.php';  | 
                                                        |
| 1044 | + include $SETTINGS['cpassman_dir'].'/pages/items.php';  | 
                                                        |
| 1045 | 1045 |                          } elseif ((int) $session_user_admin === 1) { | 
                                                        
| 1046 | - include $SETTINGS['cpassman_dir'] . '/pages/admin.php';  | 
                                                        |
| 1046 | + include $SETTINGS['cpassman_dir'].'/pages/admin.php';  | 
                                                        |
| 1047 | 1047 |                          } else { | 
                                                        
| 1048 | 1048 |                              $session->set('system-error_code', ERR_NOT_ALLOWED); | 
                                                        
| 1049 | 1049 | //not allowed page  | 
                                                        
| 1050 | - include $SETTINGS['cpassman_dir'] . '/error.php';  | 
                                                        |
| 1050 | + include $SETTINGS['cpassman_dir'].'/error.php';  | 
                                                        |
| 1051 | 1051 | }  | 
                                                        
| 1052 | 1052 |                      } elseif (in_array($get['page'], array_keys($mngPages)) === true) { | 
                                                        
| 1053 | 1053 | // Define if user is allowed to see management pages  | 
                                                        
| 1054 | 1054 |                          if ($session_user_admin === 1) { | 
                                                        
| 1055 | 1055 | // deepcode ignore FileInclusion: $get['page'] is secured through usage of array_keys test bellow  | 
                                                        
| 1056 | - include $SETTINGS['cpassman_dir'] . '/pages/' . basename($mngPages[$get['page']]);  | 
                                                        |
| 1056 | + include $SETTINGS['cpassman_dir'].'/pages/'.basename($mngPages[$get['page']]);  | 
                                                        |
| 1057 | 1057 |                          } elseif ($session_user_manager === 1 || $session_user_human_resources === 1) { | 
                                                        
| 1058 | 1058 | if ($get['page'] === 'manage_main' || $get['page'] === 'manage_settings'  | 
                                                        
| 1059 | 1059 |                              ) { | 
                                                        
| 1060 | 1060 |                                  $session->set('system-error_code', ERR_NOT_ALLOWED); | 
                                                        
| 1061 | 1061 | //not allowed page  | 
                                                        
| 1062 | - include $SETTINGS['cpassman_dir'] . '/error.php';  | 
                                                        |
| 1062 | + include $SETTINGS['cpassman_dir'].'/error.php';  | 
                                                        |
| 1063 | 1063 | }  | 
                                                        
| 1064 | 1064 |                          } else { | 
                                                        
| 1065 | 1065 |                              $session->set('system-error_code', ERR_NOT_ALLOWED); | 
                                                        
| 1066 | 1066 | //not allowed page  | 
                                                        
| 1067 | - include $SETTINGS['cpassman_dir'] . '/error.php';  | 
                                                        |
| 1067 | + include $SETTINGS['cpassman_dir'].'/error.php';  | 
                                                        |
| 1068 | 1068 | }  | 
                                                        
| 1069 | -                    } elseif (empty($get['page']) === false && file_exists($SETTINGS['cpassman_dir'] . '/pages/' . $get['page'] . '.php') === true) { | 
                                                        |
| 1069 | +                    } elseif (empty($get['page']) === false && file_exists($SETTINGS['cpassman_dir'].'/pages/'.$get['page'].'.php') === true) { | 
                                                        |
| 1070 | 1070 | // deepcode ignore FileInclusion: $get['page'] is tested against file_exists just below  | 
                                                        
| 1071 | - include $SETTINGS['cpassman_dir'] . '/pages/' . basename($get['page'] . '.php');  | 
                                                        |
| 1071 | + include $SETTINGS['cpassman_dir'].'/pages/'.basename($get['page'].'.php');  | 
                                                        |
| 1072 | 1072 |                      } else { | 
                                                        
| 1073 | 1073 |                          $session->set('system-array_roles', ERR_NOT_EXIST); | 
                                                        
| 1074 | 1074 | //page doesn't exist  | 
                                                        
@@ -1097,7 +1097,7 @@ discard block  | 
                                                    ||
| 1097 | 1097 | <footer class="main-footer">  | 
                                                        
| 1098 | 1098 | <!-- To the right -->  | 
                                                        
| 1099 | 1099 | <div class="float-right d-none d-sm-inline">  | 
                                                        
| 1100 | -                    <?php echo $lang->get('version_alone'); ?> <?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?> | 
                                                        |
| 1100 | +                    <?php echo $lang->get('version_alone'); ?> <?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?> | 
                                                        |
| 1101 | 1101 | </div>  | 
                                                        
| 1102 | 1102 | <!-- Default to the left -->  | 
                                                        
| 1103 | 1103 | <strong>Copyright © <?php echo TP_COPYRIGHT; ?> <a href="<?php echo TEAMPASS_URL; ?>"><?php echo TP_TOOL_NAME; ?></a>.</strong> All rights reserved.  | 
                                                        
@@ -1111,7 +1111,7 @@ discard block  | 
                                                    ||
| 1111 | 1111 | echo '  | 
                                                        
| 1112 | 1112 |  <input type="hidden" id="temps_restant" value="', $session->get('user-session_duration') ?? '', '" />'; | 
                                                        
| 1113 | 1113 | // display an item in the context of OTV link  | 
                                                        
| 1114 | -} elseif ((null === $session->get('user-validite_pw')|| empty($session->get('user-validite_pw')) === true || empty($session->get('user-id')) === true) | 
                                                        |
| 1114 | +} elseif ((null === $session->get('user-validite_pw') || empty($session->get('user-validite_pw')) === true || empty($session->get('user-id')) === true) | 
                                                        |
| 1115 | 1115 | && empty($get['otv']) === false  | 
                                                        
| 1116 | 1116 |  ) { | 
                                                        
| 1117 | 1117 | // case where one-shot viewer  | 
                                                        
@@ -1130,7 +1130,7 @@ discard block  | 
                                                    ||
| 1130 | 1130 | FILTER_SANITIZE_URL  | 
                                                        
| 1131 | 1131 | )  | 
                                                        
| 1132 | 1132 | );  | 
                                                        
| 1133 | - include $SETTINGS['cpassman_dir'] . '/error.php';  | 
                                                        |
| 1133 | + include $SETTINGS['cpassman_dir'].'/error.php';  | 
                                                        |
| 1134 | 1134 | }  | 
                                                        
| 1135 | 1135 |  } elseif (//(empty($session->get('user-id')) === false && $session->get('user-id') !== null) || | 
                                                        
| 1136 | 1136 |          empty($session->get('user-id')) === true | 
                                                        
@@ -1155,7 +1155,7 @@ discard block  | 
                                                    ||
| 1155 | 1155 | }  | 
                                                        
| 1156 | 1156 | |
| 1157 | 1157 | // LOGIN form  | 
                                                        
| 1158 | - include $SETTINGS['cpassman_dir'] . '/includes/core/login.php';  | 
                                                        |
| 1158 | + include $SETTINGS['cpassman_dir'].'/includes/core/login.php';  | 
                                                        |
| 1159 | 1159 | |
| 1160 | 1160 |  } else { | 
                                                        
| 1161 | 1161 | // Clear session  | 
                                                        
@@ -1188,153 +1188,153 @@ discard block  | 
                                                    ||
| 1188 | 1188 | <!-- REQUIRED SCRIPTS -->  | 
                                                        
| 1189 | 1189 | |
| 1190 | 1190 | <!-- Font Awesome Icons -->  | 
                                                        
| 1191 | - <link href="plugins/fontawesome-free-6/css/fontawesome.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1192 | - <link href="plugins/fontawesome-free-6/css/solid.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1193 | - <link href="plugins/fontawesome-free-6/css/regular.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1194 | - <link href="plugins/fontawesome-free-6/css/brands.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1195 | - <link href="plugins/fontawesome-free-6/css/v5-font-face.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" rel="stylesheet" />  | 
                                                        |
| 1191 | + <link href="plugins/fontawesome-free-6/css/fontawesome.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1192 | + <link href="plugins/fontawesome-free-6/css/solid.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1193 | + <link href="plugins/fontawesome-free-6/css/regular.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1194 | + <link href="plugins/fontawesome-free-6/css/brands.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" rel="stylesheet">  | 
                                                        |
| 1195 | + <link href="plugins/fontawesome-free-6/css/v5-font-face.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" rel="stylesheet" />  | 
                                                        |
| 1196 | 1196 | <!-- jQuery -->  | 
                                                        
| 1197 | - <script src="plugins/jquery/jquery.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1198 | - <script src="plugins/jquery/jquery.cookie.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1197 | + <script src="plugins/jquery/jquery.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1198 | + <script src="plugins/jquery/jquery.cookie.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1199 | 1199 | <!-- jQuery UI -->  | 
                                                        
| 1200 | - <script src="plugins/jqueryUI/jquery-ui.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1201 | - <link rel="stylesheet" href="plugins/jqueryUI/jquery-ui.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1200 | + <script src="plugins/jqueryUI/jquery-ui.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1201 | + <link rel="stylesheet" href="plugins/jqueryUI/jquery-ui.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1202 | 1202 | <!-- Popper -->  | 
                                                        
| 1203 | - <script src="plugins/popper/umd/popper.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1203 | + <script src="plugins/popper/umd/popper.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1204 | 1204 | <!-- Bootstrap -->  | 
                                                        
| 1205 | - <script src="plugins/bootstrap/js/bootstrap.bundle.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1205 | + <script src="plugins/bootstrap/js/bootstrap.bundle.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1206 | 1206 | <!-- AdminLTE -->  | 
                                                        
| 1207 | - <script src="plugins/adminlte/js/adminlte.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1207 | + <script src="plugins/adminlte/js/adminlte.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1208 | 1208 | <!-- Altertify -->  | 
                                                        
| 1209 | 1209 | <!--<script type="text/javascript" src="plugins/alertifyjs/alertify.min.js"></script>-->  | 
                                                        
| 1210 | 1210 | <!-- Toastr -->  | 
                                                        
| 1211 | - <script type="text/javascript" src="plugins/toastr/toastr.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1211 | + <script type="text/javascript" src="plugins/toastr/toastr.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1212 | 1212 | <!-- STORE.JS -->  | 
                                                        
| 1213 | - <script type="text/javascript" src="plugins/store.js/dist/store.everything.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1213 | + <script type="text/javascript" src="plugins/store.js/dist/store.everything.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1214 | 1214 | <!-- cryptojs-aesphp -->  | 
                                                        
| 1215 | - <script type="text/javascript" src="includes/libraries/cryptojs/crypto-js.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1216 | - <script type="text/javascript" src="includes/libraries/cryptojs/encryption.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1215 | + <script type="text/javascript" src="includes/libraries/cryptojs/crypto-js.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1216 | + <script type="text/javascript" src="includes/libraries/cryptojs/encryption.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1217 | 1217 | <!-- pace -->  | 
                                                        
| 1218 | -    <script type="text/javascript" data-pace-options='{ "ajax": true, "eventLag": false }' src="plugins/pace-progress/pace.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script> | 
                                                        |
| 1218 | +    <script type="text/javascript" data-pace-options='{ "ajax": true, "eventLag": false }' src="plugins/pace-progress/pace.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script> | 
                                                        |
| 1219 | 1219 | <!-- select2 -->  | 
                                                        
| 1220 | - <script type="text/javascript" src="plugins/select2/js/select2.full.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1220 | + <script type="text/javascript" src="plugins/select2/js/select2.full.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1221 | 1221 | <!-- simplePassMeter -->  | 
                                                        
| 1222 | - <link rel="stylesheet" href="plugins/simplePassMeter/simplePassMeter.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 1223 | - <script type="text/javascript" src="plugins/simplePassMeter/simplePassMeter.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1222 | + <link rel="stylesheet" href="plugins/simplePassMeter/simplePassMeter.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 1223 | + <script type="text/javascript" src="plugins/simplePassMeter/simplePassMeter.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1224 | 1224 | <!-- platform -->  | 
                                                        
| 1225 | - <script type="text/javascript" src="plugins/platform/platform.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1225 | + <script type="text/javascript" src="plugins/platform/platform.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1226 | 1226 | <!-- radiobuttons -->  | 
                                                        
| 1227 | - <link rel="stylesheet" href="plugins/radioforbuttons/bootstrap-buttons.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 1228 | - <script type="text/javascript" src="plugins/radioforbuttons/jquery.radiosforbuttons.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1227 | + <link rel="stylesheet" href="plugins/radioforbuttons/bootstrap-buttons.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/css" />  | 
                                                        |
| 1228 | + <script type="text/javascript" src="plugins/radioforbuttons/jquery.radiosforbuttons.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1229 | 1229 | <!-- ICHECK -->  | 
                                                        
| 1230 | 1230 | <!--<link rel="stylesheet" href="./plugins/icheck-material/icheck-material.min.css">-->  | 
                                                        
| 1231 | - <link rel="stylesheet" href="./plugins/icheck/skins/all.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1232 | - <script type="text/javascript" src="./plugins/icheck/icheck.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1231 | + <link rel="stylesheet" href="./plugins/icheck/skins/all.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1232 | + <script type="text/javascript" src="./plugins/icheck/icheck.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1233 | 1233 | <!-- bootstrap-add-clear -->  | 
                                                        
| 1234 | - <script type="text/javascript" src="plugins/bootstrap-add-clear/bootstrap-add-clear.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1234 | + <script type="text/javascript" src="plugins/bootstrap-add-clear/bootstrap-add-clear.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1235 | 1235 | <!-- DOMPurify -->  | 
                                                        
| 1236 | - <script type="text/javascript" src="plugins/DOMPurify/purify.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1236 | + <script type="text/javascript" src="plugins/DOMPurify/purify.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1237 | 1237 | |
| 1238 | 1238 | <?php  | 
                                                        
| 1239 | 1239 |      $get['page'] = $request->query->filter('page', null, FILTER_SANITIZE_SPECIAL_CHARS); | 
                                                        
| 1240 | 1240 |      if ($menuAdmin === true) { | 
                                                        
| 1241 | 1241 | ?>  | 
                                                        
| 1242 | - <link rel="stylesheet" href="./plugins/toggles/css/toggles.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1243 | - <link rel="stylesheet" href="./plugins/toggles/css/toggles-modern.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1244 | - <script src="./plugins/toggles/toggles.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1242 | + <link rel="stylesheet" href="./plugins/toggles/css/toggles.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1243 | + <link rel="stylesheet" href="./plugins/toggles/css/toggles-modern.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1244 | + <script src="./plugins/toggles/toggles.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1245 | 1245 | <!-- InputMask -->  | 
                                                        
| 1246 | - <script src="./plugins/inputmask/jquery.inputmask.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1246 | + <script src="./plugins/inputmask/jquery.inputmask.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1247 | 1247 | <!-- Sortable -->  | 
                                                        
| 1248 | 1248 | <!--<script src="./plugins/sortable/jquery.sortable.js"></script>-->  | 
                                                        
| 1249 | 1249 | <!-- PLUPLOAD -->  | 
                                                        
| 1250 | - <script type="text/javascript" src="plugins/plupload/js/plupload.full.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1250 | + <script type="text/javascript" src="plugins/plupload/js/plupload.full.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1251 | 1251 | <!-- DataTables -->  | 
                                                        
| 1252 | - <link rel="stylesheet" src="./plugins/datatables/css/jquery.dataTables.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1253 | - <link rel="stylesheet" src="./plugins/datatables/css/dataTables.bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1254 | - <script type="text/javascript" src="./plugins/datatables/js/jquery.dataTables.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1255 | - <script type="text/javascript" src="./plugins/datatables/js/dataTables.bootstrap4.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1256 | - <link rel="stylesheet" src="./plugins/datatables/extensions/Responsive-2.2.2/css/responsive.bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1257 | - <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/dataTables.responsive.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1258 | - <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/responsive.bootstrap4.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1259 | - <script type="text/javascript" src="./plugins/datatables/plugins/select.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1260 | - <link rel="stylesheet" src="./plugins/datatables/extensions/Scroller-1.5.0/css/scroller.bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1261 | - <script type="text/javascript" src="./plugins/datatables/extensions/Scroller-1.5.0/js/dataTables.scroller.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1252 | + <link rel="stylesheet" src="./plugins/datatables/css/jquery.dataTables.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1253 | + <link rel="stylesheet" src="./plugins/datatables/css/dataTables.bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1254 | + <script type="text/javascript" src="./plugins/datatables/js/jquery.dataTables.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1255 | + <script type="text/javascript" src="./plugins/datatables/js/dataTables.bootstrap4.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1256 | + <link rel="stylesheet" src="./plugins/datatables/extensions/Responsive-2.2.2/css/responsive.bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1257 | + <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/dataTables.responsive.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1258 | + <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/responsive.bootstrap4.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1259 | + <script type="text/javascript" src="./plugins/datatables/plugins/select.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1260 | + <link rel="stylesheet" src="./plugins/datatables/extensions/Scroller-1.5.0/css/scroller.bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1261 | + <script type="text/javascript" src="./plugins/datatables/extensions/Scroller-1.5.0/js/dataTables.scroller.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1262 | 1262 | <?php  | 
                                                        
| 1263 | 1263 |      } elseif (isset($get['page']) === true) { | 
                                                        
| 1264 | 1264 |          if (in_array($get['page'], ['items', 'import']) === true) { | 
                                                        
| 1265 | 1265 | ?>  | 
                                                        
| 1266 | - <link rel="stylesheet" href="./plugins/jstree/themes/default/style.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1267 | - <link rel="stylesheet" href="./plugins/jstree/themes/default-dark/style.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1268 | - <script src="./plugins/jstree/jstree.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1266 | + <link rel="stylesheet" href="./plugins/jstree/themes/default/style.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1267 | + <link rel="stylesheet" href="./plugins/jstree/themes/default-dark/style.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1268 | + <script src="./plugins/jstree/jstree.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1269 | 1269 | <!-- countdownTimer -->  | 
                                                        
| 1270 | - <script src="./plugins/jquery.countdown360/jquery.countdown360.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1270 | + <script src="./plugins/jquery.countdown360/jquery.countdown360.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1271 | 1271 | <!-- SUMMERNOTE -->  | 
                                                        
| 1272 | - <link rel="stylesheet" href="./plugins/summernote/summernote-bs4.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1273 | - <script src="./plugins/summernote/summernote-bs4.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1272 | + <link rel="stylesheet" href="./plugins/summernote/summernote-bs4.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1273 | + <script src="./plugins/summernote/summernote-bs4.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1274 | 1274 | <!-- date-picker -->  | 
                                                        
| 1275 | - <link rel="stylesheet" href="./plugins/bootstrap-datepicker/css/bootstrap-datepicker3.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1276 | - <script src="./plugins/bootstrap-datepicker/js/bootstrap-datepicker.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1275 | + <link rel="stylesheet" href="./plugins/bootstrap-datepicker/css/bootstrap-datepicker3.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1276 | + <script src="./plugins/bootstrap-datepicker/js/bootstrap-datepicker.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1277 | 1277 | <!-- time-picker -->  | 
                                                        
| 1278 | - <link rel="stylesheet" href="./plugins/timepicker/bootstrap-timepicker.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1279 | - <script src="./plugins/timepicker/bootstrap-timepicker.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1278 | + <link rel="stylesheet" href="./plugins/timepicker/bootstrap-timepicker.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1279 | + <script src="./plugins/timepicker/bootstrap-timepicker.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1280 | 1280 | <!-- PLUPLOAD -->  | 
                                                        
| 1281 | - <script type="text/javascript" src="plugins/plupload/js/plupload.full.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1281 | + <script type="text/javascript" src="plugins/plupload/js/plupload.full.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1282 | 1282 | <!-- VALIDATE -->  | 
                                                        
| 1283 | - <script type="text/javascript" src="plugins/jquery-validation/jquery.validate.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1283 | + <script type="text/javascript" src="plugins/jquery-validation/jquery.validate.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1284 | 1284 | <!-- PWSTRENGHT -->  | 
                                                        
| 1285 | - <script type="text/javascript" src="plugins/zxcvbn/zxcvbn.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1286 | - <script type="text/javascript" src="plugins/jquery.pwstrength/pwstrength-bootstrap.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1285 | + <script type="text/javascript" src="plugins/zxcvbn/zxcvbn.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1286 | + <script type="text/javascript" src="plugins/jquery.pwstrength/pwstrength-bootstrap.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1287 | 1287 | <!-- TOGGLE -->  | 
                                                        
| 1288 | - <link rel="stylesheet" href="./plugins/toggles/css/toggles.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1289 | - <link rel="stylesheet" href="./plugins/toggles/css/toggles-modern.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1290 | - <script src="./plugins/toggles/toggles.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1288 | + <link rel="stylesheet" href="./plugins/toggles/css/toggles.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1289 | + <link rel="stylesheet" href="./plugins/toggles/css/toggles-modern.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" />  | 
                                                        |
| 1290 | + <script src="./plugins/toggles/toggles.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>" type="text/javascript"></script>  | 
                                                        |
| 1291 | 1291 | <?php  | 
                                                        
| 1292 | 1292 |          } elseif (in_array($get['page'], ['search', 'folders', 'users', 'roles', 'utilities.deletion', 'utilities.logs', 'utilities.database', 'utilities.renewal', 'tasks']) === true) { | 
                                                        
| 1293 | 1293 | ?>  | 
                                                        
| 1294 | 1294 | <!-- DataTables -->  | 
                                                        
| 1295 | - <link rel="stylesheet" src="./plugins/datatables/css/jquery.dataTables.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1296 | - <link rel="stylesheet" src="./plugins/datatables/css/dataTables.bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1297 | - <script type="text/javascript" src="./plugins/datatables/js/jquery.dataTables.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1298 | - <script type="text/javascript" src="./plugins/datatables/js/dataTables.bootstrap4.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1299 | - <link rel="stylesheet" src="./plugins/datatables/extensions/Responsive-2.2.2/css/responsive.bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1300 | - <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/dataTables.responsive.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1301 | - <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/responsive.bootstrap4.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1302 | - <script type="text/javascript" src="./plugins/datatables/plugins/select.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1303 | - <link rel="stylesheet" src="./plugins/datatables/extensions/Scroller-1.5.0/css/scroller.bootstrap4.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1304 | - <script type="text/javascript" src="./plugins/datatables/extensions/Scroller-1.5.0/js/dataTables.scroller.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1295 | + <link rel="stylesheet" src="./plugins/datatables/css/jquery.dataTables.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1296 | + <link rel="stylesheet" src="./plugins/datatables/css/dataTables.bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1297 | + <script type="text/javascript" src="./plugins/datatables/js/jquery.dataTables.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1298 | + <script type="text/javascript" src="./plugins/datatables/js/dataTables.bootstrap4.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1299 | + <link rel="stylesheet" src="./plugins/datatables/extensions/Responsive-2.2.2/css/responsive.bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1300 | + <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/dataTables.responsive.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1301 | + <script type="text/javascript" src="./plugins/datatables/extensions/Responsive-2.2.2/js/responsive.bootstrap4.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1302 | + <script type="text/javascript" src="./plugins/datatables/plugins/select.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1303 | + <link rel="stylesheet" src="./plugins/datatables/extensions/Scroller-1.5.0/css/scroller.bootstrap4.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1304 | + <script type="text/javascript" src="./plugins/datatables/extensions/Scroller-1.5.0/js/dataTables.scroller.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1305 | 1305 | <!-- dater picker -->  | 
                                                        
| 1306 | - <link rel="stylesheet" href="./plugins/bootstrap-datepicker/css/bootstrap-datepicker3.min.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1307 | - <script src="./plugins/bootstrap-datepicker/js/bootstrap-datepicker.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1306 | + <link rel="stylesheet" href="./plugins/bootstrap-datepicker/css/bootstrap-datepicker3.min.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1307 | + <script src="./plugins/bootstrap-datepicker/js/bootstrap-datepicker.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1308 | 1308 | <!-- daterange picker -->  | 
                                                        
| 1309 | - <link rel="stylesheet" href="./plugins/daterangepicker/daterangepicker.css?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1310 | - <script src="./plugins/moment/moment.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1311 | - <script src="./plugins/daterangepicker/daterangepicker.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1309 | + <link rel="stylesheet" href="./plugins/daterangepicker/daterangepicker.css?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>">  | 
                                                        |
| 1310 | + <script src="./plugins/moment/moment.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1311 | + <script src="./plugins/daterangepicker/daterangepicker.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1312 | 1312 | <!-- SlimScroll -->  | 
                                                        
| 1313 | - <script src="./plugins/slimScroll/jquery.slimscroll.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1313 | + <script src="./plugins/slimScroll/jquery.slimscroll.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1314 | 1314 | <!-- FastClick -->  | 
                                                        
| 1315 | - <script src="./plugins/fastclick/fastclick.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1315 | + <script src="./plugins/fastclick/fastclick.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1316 | 1316 | <?php  | 
                                                        
| 1317 | 1317 |          } elseif ($get['page'] === 'profile') { | 
                                                        
| 1318 | 1318 | ?>  | 
                                                        
| 1319 | 1319 | <!-- FILESAVER -->  | 
                                                        
| 1320 | - <script type="text/javascript" src="plugins/downloadjs/download.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1320 | + <script type="text/javascript" src="plugins/downloadjs/download.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1321 | 1321 | <!-- PLUPLOAD -->  | 
                                                        
| 1322 | - <script type="text/javascript" src="plugins/plupload/js/plupload.full.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1322 | + <script type="text/javascript" src="plugins/plupload/js/plupload.full.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1323 | 1323 | <?php  | 
                                                        
| 1324 | 1324 |          } elseif ($get['page'] === 'export') { | 
                                                        
| 1325 | 1325 | ?>  | 
                                                        
| 1326 | 1326 | <!-- FILESAVER -->  | 
                                                        
| 1327 | - <script type="text/javascript" src="plugins/downloadjs/download.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1327 | + <script type="text/javascript" src="plugins/downloadjs/download.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1328 | 1328 | <!-- PWSTRENGHT -->  | 
                                                        
| 1329 | - <script type="text/javascript" src="plugins/zxcvbn/zxcvbn.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1330 | - <script type="text/javascript" src="plugins/jquery.pwstrength/pwstrength-bootstrap.min.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1329 | + <script type="text/javascript" src="plugins/zxcvbn/zxcvbn.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1330 | + <script type="text/javascript" src="plugins/jquery.pwstrength/pwstrength-bootstrap.min.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1331 | 1331 | <?php  | 
                                                        
| 1332 | 1332 | }  | 
                                                        
| 1333 | 1333 | }  | 
                                                        
| 1334 | 1334 | ?>  | 
                                                        
| 1335 | 1335 | <!-- functions -->  | 
                                                        
| 1336 | - <script type="text/javascript" src="includes/js/functions.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1337 | - <script type="text/javascript" src="includes/js/CreateRandomString.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1336 | + <script type="text/javascript" src="includes/js/functions.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1337 | + <script type="text/javascript" src="includes/js/CreateRandomString.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1338 | 1338 | <input type="hidden" id="encryptClientServerStatus" value="<?php echo $SETTINGS['encryptClientServer'] ?? 1; ?>" />  | 
                                                        
| 1339 | 1339 | |
| 1340 | 1340 | </body>  | 
                                                        
@@ -1376,7 +1376,7 @@ discard block  | 
                                                    ||
| 1376 | 1376 | };  | 
                                                        
| 1377 | 1377 | </script>  | 
                                                        
| 1378 | 1378 | |
| 1379 | -<script type="text/javascript" src="includes/js/secure-clipboard-cleaner.js?v=<?php echo TP_VERSION . '.' . TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1379 | +<script type="text/javascript" src="includes/js/secure-clipboard-cleaner.js?v=<?php echo TP_VERSION.'.'.TP_VERSION_MINOR; ?>"></script>  | 
                                                        |
| 1380 | 1380 | |
| 1381 | 1381 | <script>  | 
                                                        
| 1382 | 1382 |      $(document).ready(function() { | 
                                                        
@@ -1435,65 +1435,65 @@ discard block  | 
                                                    ||
| 1435 | 1435 | |
| 1436 | 1436 | // Load links, css and javascripts  | 
                                                        
| 1437 | 1437 |  if (isset($SETTINGS['cpassman_dir']) === true) { | 
                                                        
| 1438 | - include_once $SETTINGS['cpassman_dir'] . '/includes/core/load.js.php';  | 
                                                        |
| 1438 | + include_once $SETTINGS['cpassman_dir'].'/includes/core/load.js.php';  | 
                                                        |
| 1439 | 1439 |      if ($menuAdmin === true) { | 
                                                        
| 1440 | - include_once $SETTINGS['cpassman_dir'] . '/pages/admin.js.php';  | 
                                                        |
| 1440 | + include_once $SETTINGS['cpassman_dir'].'/pages/admin.js.php';  | 
                                                        |
| 1441 | 1441 |          if ($get['page'] === '2fa') { | 
                                                        
| 1442 | - include_once $SETTINGS['cpassman_dir'] . '/pages/2fa.js.php';  | 
                                                        |
| 1442 | + include_once $SETTINGS['cpassman_dir'].'/pages/2fa.js.php';  | 
                                                        |
| 1443 | 1443 |          } elseif ($get['page'] === 'api') { | 
                                                        
| 1444 | - include_once $SETTINGS['cpassman_dir'] . '/pages/api.js.php';  | 
                                                        |
| 1444 | + include_once $SETTINGS['cpassman_dir'].'/pages/api.js.php';  | 
                                                        |
| 1445 | 1445 |          } elseif ($get['page'] === 'backups') { | 
                                                        
| 1446 | - include_once $SETTINGS['cpassman_dir'] . '/pages/backups.js.php';  | 
                                                        |
| 1446 | + include_once $SETTINGS['cpassman_dir'].'/pages/backups.js.php';  | 
                                                        |
| 1447 | 1447 |          } elseif ($get['page'] === 'emails') { | 
                                                        
| 1448 | - include_once $SETTINGS['cpassman_dir'] . '/pages/emails.js.php';  | 
                                                        |
| 1448 | + include_once $SETTINGS['cpassman_dir'].'/pages/emails.js.php';  | 
                                                        |
| 1449 | 1449 |          } elseif ($get['page'] === 'ldap') { | 
                                                        
| 1450 | - include_once $SETTINGS['cpassman_dir'] . '/pages/ldap.js.php';  | 
                                                        |
| 1450 | + include_once $SETTINGS['cpassman_dir'].'/pages/ldap.js.php';  | 
                                                        |
| 1451 | 1451 |          } elseif ($get['page'] === 'uploads') { | 
                                                        
| 1452 | - include_once $SETTINGS['cpassman_dir'] . '/pages/uploads.js.php';  | 
                                                        |
| 1452 | + include_once $SETTINGS['cpassman_dir'].'/pages/uploads.js.php';  | 
                                                        |
| 1453 | 1453 |          } elseif ($get['page'] === 'fields') { | 
                                                        
| 1454 | - include_once $SETTINGS['cpassman_dir'] . '/pages/fields.js.php';  | 
                                                        |
| 1454 | + include_once $SETTINGS['cpassman_dir'].'/pages/fields.js.php';  | 
                                                        |
| 1455 | 1455 |          } elseif ($get['page'] === 'options') { | 
                                                        
| 1456 | - include_once $SETTINGS['cpassman_dir'] . '/pages/options.js.php';  | 
                                                        |
| 1456 | + include_once $SETTINGS['cpassman_dir'].'/pages/options.js.php';  | 
                                                        |
| 1457 | 1457 |          } elseif ($get['page'] === 'statistics') { | 
                                                        
| 1458 | - include_once $SETTINGS['cpassman_dir'] . '/pages/statistics.js.php';  | 
                                                        |
| 1458 | + include_once $SETTINGS['cpassman_dir'].'/pages/statistics.js.php';  | 
                                                        |
| 1459 | 1459 |          } elseif ($get['page'] === 'tasks') { | 
                                                        
| 1460 | - include_once $SETTINGS['cpassman_dir'] . '/pages/tasks.js.php';  | 
                                                        |
| 1460 | + include_once $SETTINGS['cpassman_dir'].'/pages/tasks.js.php';  | 
                                                        |
| 1461 | 1461 |          } elseif ($get['page'] === 'oauth' && WIP === true) { | 
                                                        
| 1462 | - include_once $SETTINGS['cpassman_dir'] . '/pages/oauth.js.php';  | 
                                                        |
| 1462 | + include_once $SETTINGS['cpassman_dir'].'/pages/oauth.js.php';  | 
                                                        |
| 1463 | 1463 |          } elseif ($get['page'] === 'tools') { | 
                                                        
| 1464 | - include_once $SETTINGS['cpassman_dir'] . '/pages/tools.js.php';  | 
                                                        |
| 1464 | + include_once $SETTINGS['cpassman_dir'].'/pages/tools.js.php';  | 
                                                        |
| 1465 | 1465 | }  | 
                                                        
| 1466 | 1466 |      } elseif (isset($get['page']) === true && $get['page'] !== '') { | 
                                                        
| 1467 | 1467 |          if ($get['page'] === 'items') { | 
                                                        
| 1468 | - include_once $SETTINGS['cpassman_dir'] . '/pages/items.js.php';  | 
                                                        |
| 1468 | + include_once $SETTINGS['cpassman_dir'].'/pages/items.js.php';  | 
                                                        |
| 1469 | 1469 |          } elseif ($get['page'] === 'import') { | 
                                                        
| 1470 | - include_once $SETTINGS['cpassman_dir'] . '/pages/import.js.php';  | 
                                                        |
| 1470 | + include_once $SETTINGS['cpassman_dir'].'/pages/import.js.php';  | 
                                                        |
| 1471 | 1471 |          } elseif ($get['page'] === 'export') { | 
                                                        
| 1472 | - include_once $SETTINGS['cpassman_dir'] . '/pages/export.js.php';  | 
                                                        |
| 1472 | + include_once $SETTINGS['cpassman_dir'].'/pages/export.js.php';  | 
                                                        |
| 1473 | 1473 |          } elseif ($get['page'] === 'offline') { | 
                                                        
| 1474 | - include_once $SETTINGS['cpassman_dir'] . '/pages/offline.js.php';  | 
                                                        |
| 1474 | + include_once $SETTINGS['cpassman_dir'].'/pages/offline.js.php';  | 
                                                        |
| 1475 | 1475 |          } elseif ($get['page'] === 'search') { | 
                                                        
| 1476 | - include_once $SETTINGS['cpassman_dir'] . '/pages/search.js.php';  | 
                                                        |
| 1476 | + include_once $SETTINGS['cpassman_dir'].'/pages/search.js.php';  | 
                                                        |
| 1477 | 1477 |          } elseif ($get['page'] === 'profile') { | 
                                                        
| 1478 | - include_once $SETTINGS['cpassman_dir'] . '/pages/profile.js.php';  | 
                                                        |
| 1478 | + include_once $SETTINGS['cpassman_dir'].'/pages/profile.js.php';  | 
                                                        |
| 1479 | 1479 |          } elseif ($get['page'] === 'favourites') { | 
                                                        
| 1480 | - include_once $SETTINGS['cpassman_dir'] . '/pages/favorites.js.php';  | 
                                                        |
| 1480 | + include_once $SETTINGS['cpassman_dir'].'/pages/favorites.js.php';  | 
                                                        |
| 1481 | 1481 |          } elseif ($get['page'] === 'folders') { | 
                                                        
| 1482 | - include_once $SETTINGS['cpassman_dir'] . '/pages/folders.js.php';  | 
                                                        |
| 1482 | + include_once $SETTINGS['cpassman_dir'].'/pages/folders.js.php';  | 
                                                        |
| 1483 | 1483 |          } elseif ($get['page'] === 'users') { | 
                                                        
| 1484 | - include_once $SETTINGS['cpassman_dir'] . '/pages/users.js.php';  | 
                                                        |
| 1484 | + include_once $SETTINGS['cpassman_dir'].'/pages/users.js.php';  | 
                                                        |
| 1485 | 1485 |          } elseif ($get['page'] === 'roles') { | 
                                                        
| 1486 | - include_once $SETTINGS['cpassman_dir'] . '/pages/roles.js.php';  | 
                                                        |
| 1486 | + include_once $SETTINGS['cpassman_dir'].'/pages/roles.js.php';  | 
                                                        |
| 1487 | 1487 |          } elseif ($get['page'] === 'utilities.deletion') { | 
                                                        
| 1488 | - include_once $SETTINGS['cpassman_dir'] . '/pages/utilities.deletion.js.php';  | 
                                                        |
| 1488 | + include_once $SETTINGS['cpassman_dir'].'/pages/utilities.deletion.js.php';  | 
                                                        |
| 1489 | 1489 |          } elseif ($get['page'] === 'utilities.logs') { | 
                                                        
| 1490 | - include_once $SETTINGS['cpassman_dir'] . '/pages/utilities.logs.js.php';  | 
                                                        |
| 1490 | + include_once $SETTINGS['cpassman_dir'].'/pages/utilities.logs.js.php';  | 
                                                        |
| 1491 | 1491 |          } elseif ($get['page'] === 'utilities.database') { | 
                                                        
| 1492 | - include_once $SETTINGS['cpassman_dir'] . '/pages/utilities.database.js.php';  | 
                                                        |
| 1492 | + include_once $SETTINGS['cpassman_dir'].'/pages/utilities.database.js.php';  | 
                                                        |
| 1493 | 1493 |          } elseif ($get['page'] === 'utilities.renewal') { | 
                                                        
| 1494 | - include_once $SETTINGS['cpassman_dir'] . '/pages/utilities.renewal.js.php';  | 
                                                        |
| 1494 | + include_once $SETTINGS['cpassman_dir'].'/pages/utilities.renewal.js.php';  | 
                                                        |
| 1495 | 1495 | }  | 
                                                        
| 1496 | 1496 |      } else { | 
                                                        
| 1497 | - include_once $SETTINGS['cpassman_dir'] . '/includes/core/login.js.php';  | 
                                                        |
| 1497 | + include_once $SETTINGS['cpassman_dir'].'/includes/core/login.js.php';  | 
                                                        |
| 1498 | 1498 | }  | 
                                                        
| 1499 | 1499 | }  | 
                                                        
@@ -54,13 +54,17 @@ discard block  | 
                                                    ||
| 54 | 54 | );  | 
                                                        
| 55 | 55 | |
| 56 | 56 |          if (empty($subtasks)) { | 
                                                        
| 57 | -            if (LOG_TASKS=== true) $this->logger->log("No subtask was found for task {$this->taskId}"); | 
                                                        |
| 57 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 58 | +                $this->logger->log("No subtask was found for task {$this->taskId}"); | 
                                                        |
| 59 | + }  | 
                                                        |
| 58 | 60 | return;  | 
                                                        
| 59 | 61 | }  | 
                                                        
| 60 | 62 | |
| 61 | 63 | // Process each subtask  | 
                                                        
| 62 | 64 |          foreach ($subtasks as $subtask) { | 
                                                        
| 63 | -            if (LOG_TASKS=== true) $this->logger->log("Processing subtask {$subtask['increment_id']} for task {$this->taskId}"); | 
                                                        |
| 65 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 66 | +                $this->logger->log("Processing subtask {$subtask['increment_id']} for task {$this->taskId}"); | 
                                                        |
| 67 | + }  | 
                                                        |
| 64 | 68 | $this->processGenerateUserKeysSubtask($subtask, $arguments);  | 
                                                        
| 65 | 69 | }  | 
                                                        
| 66 | 70 | |
@@ -97,7 +101,9 @@ discard block  | 
                                                    ||
| 97 | 101 | $subtask['increment_id']  | 
                                                        
| 98 | 102 | );  | 
                                                        
| 99 | 103 | |
| 100 | -            if (LOG_TASKS=== true) $this->logger->log("Subtask is in progress: ".$taskData['step'], 'INFO'); | 
                                                        |
| 104 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 105 | +                $this->logger->log("Subtask is in progress: ".$taskData['step'], 'INFO'); | 
                                                        |
| 106 | + }  | 
                                                        |
| 101 | 107 |              switch ($taskData['step'] ?? '') { | 
                                                        
| 102 | 108 | case 'step0':  | 
                                                        
| 103 | 109 | $this->generateNewUserStep0($arguments);  | 
                                                        
@@ -50,24 +50,24 @@ discard block  | 
                                                    ||
| 50 | 50 |      private function generateUserKeys($arguments) { | 
                                                        
| 51 | 51 | // Get all subtasks related to this task  | 
                                                        
| 52 | 52 | $subtasks = DB::query(  | 
                                                        
| 53 | -            'SELECT * FROM ' . prefixTable('background_subtasks') . ' WHERE task_id = %i AND is_in_progress = 0 ORDER BY `task` ASC', | 
                                                        |
| 53 | +            'SELECT * FROM '.prefixTable('background_subtasks').' WHERE task_id = %i AND is_in_progress = 0 ORDER BY `task` ASC', | 
                                                        |
| 54 | 54 | $this->taskId  | 
                                                        
| 55 | 55 | );  | 
                                                        
| 56 | 56 | |
| 57 | 57 |          if (empty($subtasks)) { | 
                                                        
| 58 | -            if (LOG_TASKS=== true) $this->logger->log("No subtask was found for task {$this->taskId}"); | 
                                                        |
| 58 | +            if (LOG_TASKS === true) $this->logger->log("No subtask was found for task {$this->taskId}"); | 
                                                        |
| 59 | 59 | return;  | 
                                                        
| 60 | 60 | }  | 
                                                        
| 61 | 61 | |
| 62 | 62 | // Process each subtask  | 
                                                        
| 63 | 63 |          foreach ($subtasks as $subtask) { | 
                                                        
| 64 | -            if (LOG_TASKS=== true) $this->logger->log("Processing subtask {$subtask['increment_id']} for task {$this->taskId}"); | 
                                                        |
| 64 | +            if (LOG_TASKS === true) $this->logger->log("Processing subtask {$subtask['increment_id']} for task {$this->taskId}"); | 
                                                        |
| 65 | 65 | $this->processGenerateUserKeysSubtask($subtask, $arguments);  | 
                                                        
| 66 | 66 | }  | 
                                                        
| 67 | 67 | |
| 68 | 68 | // Are all subtasks completed?  | 
                                                        
| 69 | 69 | $remainingSubtasks = DB::queryFirstField(  | 
                                                        
| 70 | -            'SELECT COUNT(*) FROM ' . prefixTable('background_subtasks') . ' WHERE task_id = %i AND is_in_progress = 0', | 
                                                        |
| 70 | +            'SELECT COUNT(*) FROM '.prefixTable('background_subtasks').' WHERE task_id = %i AND is_in_progress = 0', | 
                                                        |
| 71 | 71 | $this->taskId  | 
                                                        
| 72 | 72 | );  | 
                                                        
| 73 | 73 |          if ($remainingSubtasks == 0) { | 
                                                        
@@ -98,7 +98,7 @@ discard block  | 
                                                    ||
| 98 | 98 | $subtask['increment_id']  | 
                                                        
| 99 | 99 | );  | 
                                                        
| 100 | 100 | |
| 101 | -            if (LOG_TASKS=== true) $this->logger->log("Subtask is in progress: ".$taskData['step'], 'INFO'); | 
                                                        |
| 101 | +            if (LOG_TASKS === true) $this->logger->log("Subtask is in progress: ".$taskData['step'], 'INFO'); | 
                                                        |
| 102 | 102 |              switch ($taskData['step'] ?? '') { | 
                                                        
| 103 | 103 | case 'step0':  | 
                                                        
| 104 | 104 | $this->generateNewUserStep0($arguments);  | 
                                                        
@@ -152,7 +152,7 @@ discard block  | 
                                                    ||
| 152 | 152 | $subtask['increment_id']  | 
                                                        
| 153 | 153 | );  | 
                                                        
| 154 | 154 | |
| 155 | -            $this->logger->log("Subtask {$subtask['increment_id']} failure: " . $e->getMessage(), 'ERROR'); | 
                                                        |
| 155 | +            $this->logger->log("Subtask {$subtask['increment_id']} failure: ".$e->getMessage(), 'ERROR'); | 
                                                        |
| 156 | 156 | }  | 
                                                        
| 157 | 157 | }  | 
                                                        
| 158 | 158 | |
@@ -186,7 +186,7 @@ discard block  | 
                                                    ||
| 186 | 186 | // Loop on items  | 
                                                        
| 187 | 187 | $rows = DB::query(  | 
                                                        
| 188 | 188 | 'SELECT id, pw, perso  | 
                                                        
| 189 | -            FROM ' . prefixTable('items') . ' | 
                                                        |
| 189 | +            FROM ' . prefixTable('items').' | 
                                                        |
| 190 | 190 | WHERE perso = %i  | 
                                                        
| 191 | 191 | ORDER BY id ASC  | 
                                                        
| 192 | 192 | LIMIT %i, %i',  | 
                                                        
@@ -199,7 +199,7 @@ discard block  | 
                                                    ||
| 199 | 199 | // Get itemKey from current user  | 
                                                        
| 200 | 200 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 201 | 201 | 'SELECT share_key, increment_id  | 
                                                        
| 202 | -                FROM ' . prefixTable('sharekeys_items') . ' | 
                                                        |
| 202 | +                FROM ' . prefixTable('sharekeys_items').' | 
                                                        |
| 203 | 203 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 204 | 204 | $record['id'],  | 
                                                        
| 205 | 205 | (int) $record['perso'] === 0 ? $arguments['owner_id'] : $arguments['new_user_id']  | 
                                                        
@@ -226,7 +226,7 @@ discard block  | 
                                                    ||
| 226 | 226 | |
| 227 | 227 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 228 | 228 | 'SELECT increment_id  | 
                                                        
| 229 | -                FROM ' . prefixTable('sharekeys_items') . ' | 
                                                        |
| 229 | +                FROM ' . prefixTable('sharekeys_items').' | 
                                                        |
| 230 | 230 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 231 | 231 | $record['id'],  | 
                                                        
| 232 | 232 | $arguments['new_user_id']  | 
                                                        
@@ -276,16 +276,16 @@ discard block  | 
                                                    ||
| 276 | 276 | // Loop on logs  | 
                                                        
| 277 | 277 | $rows = DB::query(  | 
                                                        
| 278 | 278 | 'SELECT increment_id  | 
                                                        
| 279 | -            FROM ' . prefixTable('log_items') . ' | 
                                                        |
| 279 | +            FROM ' . prefixTable('log_items').' | 
                                                        |
| 280 | 280 | WHERE raison LIKE "at_pw :%" AND encryption_type = "teampass_aes"  | 
                                                        
| 281 | 281 | ORDER BY increment_id ASC  | 
                                                        
| 282 | - LIMIT ' . $taskData['index'] . ', ' . $taskData['nb']  | 
                                                        |
| 282 | + LIMIT ' . $taskData['index'].', '.$taskData['nb']  | 
                                                        |
| 283 | 283 | );  | 
                                                        
| 284 | 284 |          foreach ($rows as $record) { | 
                                                        
| 285 | 285 | // Get itemKey from current user  | 
                                                        
| 286 | 286 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 287 | 287 | 'SELECT share_key  | 
                                                        
| 288 | -                FROM ' . prefixTable('sharekeys_logs') . ' | 
                                                        |
| 288 | +                FROM ' . prefixTable('sharekeys_logs').' | 
                                                        |
| 289 | 289 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 290 | 290 | $record['increment_id'],  | 
                                                        
| 291 | 291 | $arguments['owner_id']  | 
                                                        
@@ -317,7 +317,7 @@ discard block  | 
                                                    ||
| 317 | 317 |                  if ((int) $arguments['new_user_id'] !== (int) $arguments['owner_id']) { | 
                                                        
| 318 | 318 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 319 | 319 | 'SELECT increment_id  | 
                                                        
| 320 | -                        FROM ' . prefixTable('sharekeys_items') . ' | 
                                                        |
| 320 | +                        FROM ' . prefixTable('sharekeys_items').' | 
                                                        |
| 321 | 321 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 322 | 322 | $record['id'],  | 
                                                        
| 323 | 323 | $arguments['new_user_id']  | 
                                                        
@@ -358,7 +358,7 @@ discard block  | 
                                                    ||
| 358 | 358 | // Loop on fields  | 
                                                        
| 359 | 359 | $rows = DB::query(  | 
                                                        
| 360 | 360 | 'SELECT id  | 
                                                        
| 361 | -            FROM ' . prefixTable('categories_items') . ' | 
                                                        |
| 361 | +            FROM ' . prefixTable('categories_items').' | 
                                                        |
| 362 | 362 | WHERE encryption_type = "teampass_aes"  | 
                                                        
| 363 | 363 | ORDER BY id ASC  | 
                                                        
| 364 | 364 | LIMIT %i, %i',  | 
                                                        
@@ -369,7 +369,7 @@ discard block  | 
                                                    ||
| 369 | 369 | // Get itemKey from current user  | 
                                                        
| 370 | 370 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 371 | 371 | 'SELECT share_key  | 
                                                        
| 372 | -                FROM ' . prefixTable('sharekeys_fields') . ' | 
                                                        |
| 372 | +                FROM ' . prefixTable('sharekeys_fields').' | 
                                                        |
| 373 | 373 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 374 | 374 | $record['id'],  | 
                                                        
| 375 | 375 | $arguments['owner_id']  | 
                                                        
@@ -397,7 +397,7 @@ discard block  | 
                                                    ||
| 397 | 397 |                      if ((int) $arguments['new_user_id'] !== (int) $arguments['owner_id']) { | 
                                                        
| 398 | 398 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 399 | 399 | 'SELECT increment_id  | 
                                                        
| 400 | -                            FROM ' . prefixTable('sharekeys_items') . ' | 
                                                        |
| 400 | +                            FROM ' . prefixTable('sharekeys_items').' | 
                                                        |
| 401 | 401 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 402 | 402 | $record['id'],  | 
                                                        
| 403 | 403 | $arguments['new_user_id']  | 
                                                        
@@ -439,7 +439,7 @@ discard block  | 
                                                    ||
| 439 | 439 | // Loop on suggestions  | 
                                                        
| 440 | 440 | $rows = DB::query(  | 
                                                        
| 441 | 441 | 'SELECT id  | 
                                                        
| 442 | -            FROM ' . prefixTable('suggestion') . ' | 
                                                        |
| 442 | +            FROM ' . prefixTable('suggestion').' | 
                                                        |
| 443 | 443 | ORDER BY id ASC  | 
                                                        
| 444 | 444 | LIMIT %i, %i',  | 
                                                        
| 445 | 445 | $taskData['index'],  | 
                                                        
@@ -449,7 +449,7 @@ discard block  | 
                                                    ||
| 449 | 449 | // Get itemKey from current user  | 
                                                        
| 450 | 450 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 451 | 451 | 'SELECT share_key  | 
                                                        
| 452 | -                FROM ' . prefixTable('sharekeys_suggestions') . ' | 
                                                        |
| 452 | +                FROM ' . prefixTable('sharekeys_suggestions').' | 
                                                        |
| 453 | 453 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 454 | 454 | $record['id'],  | 
                                                        
| 455 | 455 | $arguments['owner_id']  | 
                                                        
@@ -481,7 +481,7 @@ discard block  | 
                                                    ||
| 481 | 481 |                  if ((int) $arguments['new_user_id'] !== (int) $arguments['owner_id']) { | 
                                                        
| 482 | 482 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 483 | 483 | 'SELECT increment_id  | 
                                                        
| 484 | -                        FROM ' . prefixTable('sharekeys_items') . ' | 
                                                        |
| 484 | +                        FROM ' . prefixTable('sharekeys_items').' | 
                                                        |
| 485 | 485 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 486 | 486 | $record['id'],  | 
                                                        
| 487 | 487 | $arguments['new_user_id']  | 
                                                        
@@ -522,9 +522,9 @@ discard block  | 
                                                    ||
| 522 | 522 | // Loop on files  | 
                                                        
| 523 | 523 | $rows = DB::query(  | 
                                                        
| 524 | 524 | 'SELECT f.id AS id, i.perso AS perso  | 
                                                        
| 525 | -            FROM ' . prefixTable('files') . ' AS f | 
                                                        |
| 526 | -            INNER JOIN ' . prefixTable('items') . ' AS i ON i.id = f.id_item | 
                                                        |
| 527 | - WHERE f.status = "' . TP_ENCRYPTION_NAME . '"  | 
                                                        |
| 525 | +            FROM ' . prefixTable('files').' AS f | 
                                                        |
| 526 | +            INNER JOIN ' . prefixTable('items').' AS i ON i.id = f.id_item | 
                                                        |
| 527 | + WHERE f.status = "' . TP_ENCRYPTION_NAME.'"  | 
                                                        |
| 528 | 528 | LIMIT %i, %i',  | 
                                                        
| 529 | 529 | $taskData['index'],  | 
                                                        
| 530 | 530 | $taskData['nb']  | 
                                                        
@@ -533,7 +533,7 @@ discard block  | 
                                                    ||
| 533 | 533 | // Get itemKey from current user  | 
                                                        
| 534 | 534 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 535 | 535 | 'SELECT share_key, increment_id  | 
                                                        
| 536 | -                FROM ' . prefixTable('sharekeys_files') . ' | 
                                                        |
| 536 | +                FROM ' . prefixTable('sharekeys_files').' | 
                                                        |
| 537 | 537 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 538 | 538 | $record['id'],  | 
                                                        
| 539 | 539 | (int) $record['perso'] === 0 ? $arguments['owner_id'] : $arguments['new_user_id']  | 
                                                        
@@ -561,7 +561,7 @@ discard block  | 
                                                    ||
| 561 | 561 | |
| 562 | 562 | $currentUserKey = DB::queryFirstRow(  | 
                                                        
| 563 | 563 | 'SELECT increment_id  | 
                                                        
| 564 | -                FROM ' . prefixTable('sharekeys_files') . ' | 
                                                        |
| 564 | +                FROM ' . prefixTable('sharekeys_files').' | 
                                                        |
| 565 | 565 | WHERE object_id = %i AND user_id = %i',  | 
                                                        
| 566 | 566 | $record['id'],  | 
                                                        
| 567 | 567 | $arguments['new_user_id']  | 
                                                        
@@ -623,7 +623,7 @@ discard block  | 
                                                    ||
| 623 | 623 | // get user info  | 
                                                        
| 624 | 624 | $userInfo = DB::queryFirstRow(  | 
                                                        
| 625 | 625 | 'SELECT email, login, auth_type, special, lastname, name  | 
                                                        
| 626 | -            FROM ' . prefixTable('users') . ' | 
                                                        |
| 626 | +            FROM ' . prefixTable('users').' | 
                                                        |
| 627 | 627 | WHERE id = %i',  | 
                                                        
| 628 | 628 | $arguments['new_user_id']  | 
                                                        
| 629 | 629 | );  | 
                                                        
@@ -638,10 +638,10 @@ discard block  | 
                                                    ||
| 638 | 638 | filter_var($userInfo['email'], FILTER_SANITIZE_EMAIL),  | 
                                                        
| 639 | 639 | // @scrutinizer ignore-type  | 
                                                        
| 640 | 640 |                  empty($arguments['email_body']) === false ? $arguments['email_body'] : $lang->get('email_body_user_config_1'), | 
                                                        
| 641 | -                'TEAMPASS - ' . $lang->get('login_credentials'), | 
                                                        |
| 641 | +                'TEAMPASS - '.$lang->get('login_credentials'), | 
                                                        |
| 642 | 642 | (array) filter_var_array(  | 
                                                        
| 643 | 643 | [  | 
                                                        
| 644 | - '#code#' => cryption($arguments['new_user_code'], '','decrypt', $this->settings)['string'],  | 
                                                        |
| 644 | + '#code#' => cryption($arguments['new_user_code'], '', 'decrypt', $this->settings)['string'],  | 
                                                        |
| 645 | 645 | '#lastname#' => isset($userInfo['name']) === true ? $userInfo['name'] : '',  | 
                                                        
| 646 | 646 | '#login#' => isset($userInfo['login']) === true ? $userInfo['login'] : '',  | 
                                                        
| 647 | 647 | ],  | 
                                                        
@@ -677,13 +677,13 @@ discard block  | 
                                                    ||
| 677 | 677 |      private function getOwnerInfos(int $owner_id, string $owner_pwd) { | 
                                                        
| 678 | 678 | $userInfo = DB::queryFirstRow(  | 
                                                        
| 679 | 679 | 'SELECT pw, public_key, private_key, login, name  | 
                                                        
| 680 | -            FROM ' . prefixTable('users') . ' | 
                                                        |
| 680 | +            FROM ' . prefixTable('users').' | 
                                                        |
| 681 | 681 | WHERE id = %i',  | 
                                                        
| 682 | 682 | $owner_id  | 
                                                        
| 683 | 683 | );  | 
                                                        
| 684 | 684 | |
| 685 | 685 | // decrypt owner password  | 
                                                        
| 686 | - $pwd = cryption($owner_pwd, '','decrypt', $this->settings)['string'];  | 
                                                        |
| 686 | + $pwd = cryption($owner_pwd, '', 'decrypt', $this->settings)['string'];  | 
                                                        |
| 687 | 687 | // decrypt private key and send back  | 
                                                        
| 688 | 688 | return [  | 
                                                        
| 689 | 689 | 'private_key' => decryptPrivateKey($pwd, $userInfo['private_key']),  | 
                                                        
@@ -29,7 +29,7 @@ discard block  | 
                                                    ||
| 29 | 29 |  trait ItemHandlerTrait {     | 
                                                        
| 30 | 30 | |
| 31 | 31 |      private function generateUserPasswordKeys($arguments) { | 
                                                        
| 32 | -        if (LOG_TASKS=== true) $this->logger->log('Processing generateUserPasswordKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 32 | +        if (LOG_TASKS === true) $this->logger->log('Processing generateUserPasswordKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 33 | 33 | // Generate keys for user passwords  | 
                                                        
| 34 | 34 | storeUsersShareKey(  | 
                                                        
| 35 | 35 |              prefixTable('sharekeys_items'), | 
                                                        
@@ -49,8 +49,8 @@ discard block  | 
                                                    ||
| 49 | 49 | * @param array $taskData  | 
                                                        
| 50 | 50 | */  | 
                                                        
| 51 | 51 |      private function generateUserFileKeys($taskData) {     | 
                                                        
| 52 | -        if (LOG_TASKS=== true) $this->logger->log('Processing generateUserFileKeys : '.print_r($taskData, true), 'DEBUG'); | 
                                                        |
| 53 | -        foreach($taskData['files_keys'] as $file) { | 
                                                        |
| 52 | +        if (LOG_TASKS === true) $this->logger->log('Processing generateUserFileKeys : '.print_r($taskData, true), 'DEBUG'); | 
                                                        |
| 53 | +        foreach ($taskData['files_keys'] as $file) { | 
                                                        |
| 54 | 54 | storeUsersShareKey(  | 
                                                        
| 55 | 55 |                  prefixTable('sharekeys_files'), | 
                                                        
| 56 | 56 | 0,  | 
                                                        
@@ -70,9 +70,9 @@ discard block  | 
                                                    ||
| 70 | 70 | * @param array $arguments  | 
                                                        
| 71 | 71 | */  | 
                                                        
| 72 | 72 |      private function generateUserFieldKeys($arguments) { | 
                                                        
| 73 | -        if (LOG_TASKS=== true) $this->logger->log('Processing generateUserFieldKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 74 | -        foreach($arguments['fields_keys'] as $field) { | 
                                                        |
| 75 | -            $this->logger->log('Processing generateUserFieldKeys for: ' . $field['object_id'], 'DEBUG'); | 
                                                        |
| 73 | +        if (LOG_TASKS === true) $this->logger->log('Processing generateUserFieldKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 74 | +        foreach ($arguments['fields_keys'] as $field) { | 
                                                        |
| 75 | +            $this->logger->log('Processing generateUserFieldKeys for: '.$field['object_id'], 'DEBUG'); | 
                                                        |
| 76 | 76 | storeUsersShareKey(  | 
                                                        
| 77 | 77 |                  prefixTable('sharekeys_fields'), | 
                                                        
| 78 | 78 | 0,  | 
                                                        
@@ -29,7 +29,9 @@ discard block  | 
                                                    ||
| 29 | 29 |  trait ItemHandlerTrait {     | 
                                                        
| 30 | 30 | |
| 31 | 31 |      private function generateUserPasswordKeys($arguments) { | 
                                                        
| 32 | -        if (LOG_TASKS=== true) $this->logger->log('Processing generateUserPasswordKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 32 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 33 | +            $this->logger->log('Processing generateUserPasswordKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 34 | + }  | 
                                                        |
| 33 | 35 | // Generate keys for user passwords  | 
                                                        
| 34 | 36 | storeUsersShareKey(  | 
                                                        
| 35 | 37 |              prefixTable('sharekeys_items'), | 
                                                        
@@ -49,7 +51,9 @@ discard block  | 
                                                    ||
| 49 | 51 | * @param array $taskData  | 
                                                        
| 50 | 52 | */  | 
                                                        
| 51 | 53 |      private function generateUserFileKeys($taskData) {     | 
                                                        
| 52 | -        if (LOG_TASKS=== true) $this->logger->log('Processing generateUserFileKeys : '.print_r($taskData, true), 'DEBUG'); | 
                                                        |
| 54 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 55 | +            $this->logger->log('Processing generateUserFileKeys : '.print_r($taskData, true), 'DEBUG'); | 
                                                        |
| 56 | + }  | 
                                                        |
| 53 | 57 |          foreach($taskData['files_keys'] as $file) { | 
                                                        
| 54 | 58 | storeUsersShareKey(  | 
                                                        
| 55 | 59 |                  prefixTable('sharekeys_files'), | 
                                                        
@@ -70,7 +74,9 @@ discard block  | 
                                                    ||
| 70 | 74 | * @param array $arguments  | 
                                                        
| 71 | 75 | */  | 
                                                        
| 72 | 76 |      private function generateUserFieldKeys($arguments) { | 
                                                        
| 73 | -        if (LOG_TASKS=== true) $this->logger->log('Processing generateUserFieldKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 77 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 78 | +            $this->logger->log('Processing generateUserFieldKeys : '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 79 | + }  | 
                                                        |
| 74 | 80 |          foreach($arguments['fields_keys'] as $field) { | 
                                                        
| 75 | 81 |              $this->logger->log('Processing generateUserFieldKeys for: ' . $field['object_id'], 'DEBUG'); | 
                                                        
| 76 | 82 | storeUsersShareKey(  | 
                                                        
@@ -76,7 +76,7 @@ discard block  | 
                                                    ||
| 76 | 76 |  ) { | 
                                                        
| 77 | 77 | // Not allowed page  | 
                                                        
| 78 | 78 |      $session->set('system-error_code', ERR_NOT_ALLOWED); | 
                                                        
| 79 | - include $SETTINGS['cpassman_dir'] . '/error.php';  | 
                                                        |
| 79 | + include $SETTINGS['cpassman_dir'].'/error.php';  | 
                                                        |
| 80 | 80 | exit;  | 
                                                        
| 81 | 81 | }  | 
                                                        
| 82 | 82 | |
@@ -168,7 +168,7 @@ discard block  | 
                                                    ||
| 168 | 168 | |
| 169 | 169 | // Output  | 
                                                        
| 170 | 170 |      $sOutput = '{'; | 
                                                        
| 171 | -    $sOutput .= '"sEcho": '. $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 171 | +    $sOutput .= '"sEcho": '.$request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 172 | 172 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 173 | 173 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 174 | 174 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -241,7 +241,7 @@ discard block  | 
                                                    ||
| 241 | 241 | |
| 242 | 242 | // Output  | 
                                                        
| 243 | 243 |      $sOutput = '{'; | 
                                                        
| 244 | -    $sOutput .= '"sEcho": '. $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 244 | +    $sOutput .= '"sEcho": '.$request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 245 | 245 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 246 | 246 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 247 | 247 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -314,7 +314,7 @@ discard block  | 
                                                    ||
| 314 | 314 | |
| 315 | 315 | // Output  | 
                                                        
| 316 | 316 |      $sOutput = '{'; | 
                                                        
| 317 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 317 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 318 | 318 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 319 | 319 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 320 | 320 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -387,7 +387,7 @@ discard block  | 
                                                    ||
| 387 | 387 | |
| 388 | 388 | // Output  | 
                                                        
| 389 | 389 |      $sOutput = '{'; | 
                                                        
| 390 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 390 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 391 | 391 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 392 | 392 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 393 | 393 | $sOutput .= '"aaData": [ ';  | 
                                                        
@@ -490,7 +490,7 @@ discard block  | 
                                                    ||
| 490 | 490 | |
| 491 | 491 | // Output  | 
                                                        
| 492 | 492 |      $sOutput = '{'; | 
                                                        
| 493 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 493 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 494 | 494 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 495 | 495 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 496 | 496 | $sOutput .= '"aaData": [ ';  | 
                                                        
@@ -572,7 +572,7 @@ discard block  | 
                                                    ||
| 572 | 572 | $iTotal = 0;  | 
                                                        
| 573 | 573 | }  | 
                                                        
| 574 | 574 |      $sOutput = '{'; | 
                                                        
| 575 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 575 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 576 | 576 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 577 | 577 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 578 | 578 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -648,7 +648,7 @@ discard block  | 
                                                    ||
| 648 | 648 | |
| 649 | 649 | // Output  | 
                                                        
| 650 | 650 |      $sOutput = '{'; | 
                                                        
| 651 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 651 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 652 | 652 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 653 | 653 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 654 | 654 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -717,7 +717,7 @@ discard block  | 
                                                    ||
| 717 | 717 | |
| 718 | 718 | // Output  | 
                                                        
| 719 | 719 |      $sOutput = '{'; | 
                                                        
| 720 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 720 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 721 | 721 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 722 | 722 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 723 | 723 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -790,7 +790,7 @@ discard block  | 
                                                    ||
| 790 | 790 | |
| 791 | 791 | // Output  | 
                                                        
| 792 | 792 |      $sOutput = '{'; | 
                                                        
| 793 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 793 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 794 | 794 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 795 | 795 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 796 | 796 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -867,7 +867,7 @@ discard block  | 
                                                    ||
| 867 | 867 |              FROM '.prefixTable('background_tasks').' AS p  | 
                                                        
| 868 | 868 |              LEFT JOIN '.prefixTable('users').' AS u ON %l | 
                                                        
| 869 | 869 | WHERE %l ORDER BY %l %l LIMIT %i, %i';  | 
                                                        
| 870 | - $params = ['u.id = json_extract(p.arguments, "$[0]")',$sWhere, $orderColumn, $orderDirection, $sLimitStart, $sLimitLength];  | 
                                                        |
| 870 | + $params = ['u.id = json_extract(p.arguments, "$[0]")', $sWhere, $orderColumn, $orderDirection, $sLimitStart, $sLimitLength];  | 
                                                        |
| 871 | 871 | |
| 872 | 872 | // Get the records  | 
                                                        
| 873 | 873 | $rows = DB::query($sql, ...$params);  | 
                                                        
@@ -875,7 +875,7 @@ discard block  | 
                                                    ||
| 875 | 875 | |
| 876 | 876 | // Output  | 
                                                        
| 877 | 877 |      $sOutput = '{'; | 
                                                        
| 878 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 878 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 879 | 879 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 880 | 880 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 881 | 881 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -890,7 +890,7 @@ discard block  | 
                                                    ||
| 890 | 890 | //col1  | 
                                                        
| 891 | 891 | $sOutput .= '"<span data-done=\"'.$record['is_in_progress'].'\" data-type=\"'.$record['process_type'].'\" data-process-id=\"'.$record['increment_id'].'\"></span>", ';  | 
                                                        
| 892 | 892 | //col2  | 
                                                        
| 893 | - $sOutput .= '"'.date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['created_at']).'", ';  | 
                                                        |
| 893 | + $sOutput .= '"'.date($SETTINGS['date_format'].' '.$SETTINGS['time_format'], (int) $record['created_at']).'", ';  | 
                                                        |
| 894 | 894 | //col3  | 
                                                        
| 895 | 895 | //$sOutput .= '"'.($record['updated_at'] === '' ? '-' : date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['updated_at'])).'", ';  | 
                                                        
| 896 | 896 | $sOutput .= '"<div class=\"progress mt-2\"><div class=\"progress-bar\" style=\"width: '.$subtaskProgress.'\">'.$subtaskProgress.'</div></div>", ';  | 
                                                        
@@ -900,7 +900,7 @@ discard block  | 
                                                    ||
| 900 | 900 | // col5  | 
                                                        
| 901 | 901 |          if (in_array($record['process_type'], array('create_user_keys', 'item_copy')) === true) { | 
                                                        
| 902 | 902 | $data_user = DB::queryFirstRow(  | 
                                                        
| 903 | -                'SELECT name, lastname FROM ' . prefixTable('users') . ' | 
                                                        |
| 903 | +                'SELECT name, lastname FROM '.prefixTable('users').' | 
                                                        |
| 904 | 904 | WHERE id = %i',  | 
                                                        
| 905 | 905 | json_decode($record['arguments'], true)['new_user_id']  | 
                                                        
| 906 | 906 | );  | 
                                                        
@@ -956,7 +956,7 @@ discard block  | 
                                                    ||
| 956 | 956 |      FROM '.prefixTable('background_tasks').' AS p  | 
                                                        
| 957 | 957 |      LEFT JOIN '.prefixTable('users').' AS u ON %l | 
                                                        
| 958 | 958 | WHERE %l ORDER BY %l %l LIMIT %i, %i';  | 
                                                        
| 959 | - $params = ['u.id = json_extract(p.arguments, "$[0]")',$sWhere, $orderColumn, $orderDirection, $sLimitStart, $sLimitLength];  | 
                                                        |
| 959 | + $params = ['u.id = json_extract(p.arguments, "$[0]")', $sWhere, $orderColumn, $orderDirection, $sLimitStart, $sLimitLength];  | 
                                                        |
| 960 | 960 | |
| 961 | 961 | // Get the records  | 
                                                        
| 962 | 962 | $rows = DB::query($sql, ...$params);  | 
                                                        
@@ -964,7 +964,7 @@ discard block  | 
                                                    ||
| 964 | 964 | |
| 965 | 965 | // Output  | 
                                                        
| 966 | 966 |      $sOutput = '{'; | 
                                                        
| 967 | -    $sOutput .= '"sEcho": '. (int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT) . ', '; | 
                                                        |
| 967 | +    $sOutput .= '"sEcho": '.(int) $request->query->filter('draw', FILTER_SANITIZE_NUMBER_INT).', '; | 
                                                        |
| 968 | 968 | $sOutput .= '"iTotalRecords": '.$iTotal.', ';  | 
                                                        
| 969 | 969 | $sOutput .= '"iTotalDisplayRecords": '.$iTotal.', ';  | 
                                                        
| 970 | 970 | $sOutput .= '"aaData": ';  | 
                                                        
@@ -980,13 +980,12 @@ discard block  | 
                                                    ||
| 980 | 980 | //col1  | 
                                                        
| 981 | 981 | $sOutput .= '"'.(is_null($record['error_message']) ? '' : addslashes($record['error_message'])).'", ';  | 
                                                        
| 982 | 982 | //col2  | 
                                                        
| 983 | - $sOutput .= '"'.date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['created_at']).'", ';  | 
                                                        |
| 983 | + $sOutput .= '"'.date($SETTINGS['date_format'].' '.$SETTINGS['time_format'], (int) $record['created_at']).'", ';  | 
                                                        |
| 984 | 984 | //col3  | 
                                                        
| 985 | 985 | $sOutput .= is_null($record['started_at']) === false ?  | 
                                                        
| 986 | -            ('"'.date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['started_at']).'", ') : | 
                                                        |
| 987 | -                ('"'.date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['created_at']).'", '); | 
                                                        |
| 986 | +            ('"'.date($SETTINGS['date_format'].' '.$SETTINGS['time_format'], (int) $record['started_at']).'", ') : ('"'.date($SETTINGS['date_format'].' '.$SETTINGS['time_format'], (int) $record['created_at']).'", '); | 
                                                        |
| 988 | 987 | //col4  | 
                                                        
| 989 | - $sOutput .= '"'.date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['finished_at']).'", ';  | 
                                                        |
| 988 | + $sOutput .= '"'.date($SETTINGS['date_format'].' '.$SETTINGS['time_format'], (int) $record['finished_at']).'", ';  | 
                                                        |
| 990 | 989 | // col7  | 
                                                        
| 991 | 990 |          $sOutput .= '"'.gmdate('H:i:s', (int) $record['finished_at'] - (is_null($record['started_at']) === false ? (int) $record['started_at'] : (int) $record['created_at'])).'",'; | 
                                                        
| 992 | 991 | //col5  | 
                                                        
@@ -1009,11 +1008,10 @@ discard block  | 
                                                    ||
| 1009 | 1008 | // col6  | 
                                                        
| 1010 | 1009 | $arguments = json_decode($record['arguments'], true);  | 
                                                        
| 1011 | 1010 |          $newUserId = array_key_exists('new_user_id', $arguments) ?  | 
                                                        
| 1012 | - $arguments['new_user_id'] :  | 
                                                        |
| 1013 | -            (array_key_exists('user_id', $arguments) ? $arguments['user_id'] : null); | 
                                                        |
| 1011 | +            $arguments['new_user_id'] : (array_key_exists('user_id', $arguments) ? $arguments['user_id'] : null); | 
                                                        |
| 1014 | 1012 |          if ($record['process_type'] === 'create_user_keys' && is_null($newUserId) === false && empty($newUserId) === false) { | 
                                                        
| 1015 | 1013 | $data_user = DB::queryFirstRow(  | 
                                                        
| 1016 | -                'SELECT name, lastname, login FROM ' . prefixTable('users') . ' | 
                                                        |
| 1014 | +                'SELECT name, lastname, login FROM '.prefixTable('users').' | 
                                                        |
| 1017 | 1015 | WHERE id = %i',  | 
                                                        
| 1018 | 1016 | $newUserId  | 
                                                        
| 1019 | 1017 | );  | 
                                                        
@@ -1029,7 +1027,7 @@ discard block  | 
                                                    ||
| 1029 | 1027 |          } elseif ($record['process_type'] === 'user_build_cache_tree') { | 
                                                        
| 1030 | 1028 | $user = json_decode($record['arguments'], true)['user_id'];  | 
                                                        
| 1031 | 1029 | $data_user = DB::queryFirstRow(  | 
                                                        
| 1032 | -                'SELECT name, lastname, login FROM ' . prefixTable('users') . ' | 
                                                        |
| 1030 | +                'SELECT name, lastname, login FROM '.prefixTable('users').' | 
                                                        |
| 1033 | 1031 | WHERE id = %i',  | 
                                                        
| 1034 | 1032 | $user  | 
                                                        
| 1035 | 1033 | );  | 
                                                        
@@ -1063,7 +1061,7 @@ discard block  | 
                                                    ||
| 1063 | 1061 |  { | 
                                                        
| 1064 | 1062 | $subtasks = DB::query(  | 
                                                        
| 1065 | 1063 | 'SELECT *  | 
                                                        
| 1066 | -        FROM ' . prefixTable('background_subtasks') . ' | 
                                                        |
| 1064 | +        FROM ' . prefixTable('background_subtasks').' | 
                                                        |
| 1067 | 1065 | WHERE task_id = %i',  | 
                                                        
| 1068 | 1066 | $id  | 
                                                        
| 1069 | 1067 | );  | 
                                                        
@@ -1079,5 +1077,5 @@ discard block  | 
                                                    ||
| 1079 | 1077 | $i++;  | 
                                                        
| 1080 | 1078 | }  | 
                                                        
| 1081 | 1079 | |
| 1082 | - return ($finished_nb !== 0 ? pourcentage($finished_nb, $nb, 100) : 0) .'%';  | 
                                                        |
| 1080 | + return ($finished_nb !== 0 ? pourcentage($finished_nb, $nb, 100) : 0).'%';  | 
                                                        |
| 1083 | 1081 | }  | 
                                                        
| 1084 | 1082 | \ No newline at end of file  | 
                                                        
@@ -32,7 +32,7 @@ discard block  | 
                                                    ||
| 32 | 32 | require_once __DIR__.'/traits/ItemHandlerTrait.php';  | 
                                                        
| 33 | 33 | require_once __DIR__.'/traits/UserHandlerTrait.php';  | 
                                                        
| 34 | 34 | require_once __DIR__.'/traits/EmailTrait.php';  | 
                                                        
| 35 | -require_once __DIR__ . '/taskLogger.php';  | 
                                                        |
| 35 | +require_once __DIR__.'/taskLogger.php';  | 
                                                        |
| 36 | 36 | |
| 37 | 37 |  class TaskWorker { | 
                                                        
| 38 | 38 | use ItemHandlerTrait;  | 
                                                        
@@ -64,7 +64,7 @@ discard block  | 
                                                    ||
| 64 | 64 | */  | 
                                                        
| 65 | 65 |      public function execute() { | 
                                                        
| 66 | 66 |          try { | 
                                                        
| 67 | -            if (LOG_TASKS=== true) $this->logger->log('Processing task: ' . print_r($this->taskData, true), 'DEBUG'); | 
                                                        |
| 67 | +            if (LOG_TASKS === true) $this->logger->log('Processing task: '.print_r($this->taskData, true), 'DEBUG'); | 
                                                        |
| 68 | 68 | // Dispatch selon le type de processus  | 
                                                        
| 69 | 69 |              switch ($this->processType) { | 
                                                        
| 70 | 70 | case 'item_copy':  | 
                                                        
@@ -136,7 +136,7 @@ discard block  | 
                                                    ||
| 136 | 136 | $arguments = '';  | 
                                                        
| 137 | 137 | }  | 
                                                        
| 138 | 138 | |
| 139 | -        if (LOG_TASKS=== true) $this->logger->log('Process: '.$this->processType.' -- '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 139 | +        if (LOG_TASKS === true) $this->logger->log('Process: '.$this->processType.' -- '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 140 | 140 | |
| 141 | 141 | // Add 'arguments' only if not empty  | 
                                                        
| 142 | 142 |          if (!empty($arguments)) { | 
                                                        
@@ -150,7 +150,7 @@ discard block  | 
                                                    ||
| 150 | 150 | 'increment_id = %i',  | 
                                                        
| 151 | 151 | $this->taskId  | 
                                                        
| 152 | 152 | );  | 
                                                        
| 153 | -        if (LOG_TASKS=== true) $this->logger->log('Finishing task: ' . $this->taskId, 'DEBUG'); | 
                                                        |
| 153 | +        if (LOG_TASKS === true) $this->logger->log('Finishing task: '.$this->taskId, 'DEBUG'); | 
                                                        |
| 154 | 154 | }  | 
                                                        
| 155 | 155 | |
| 156 | 156 | /**  | 
                                                        
@@ -173,7 +173,7 @@ discard block  | 
                                                    ||
| 173 | 173 | 'increment_id = %i',  | 
                                                        
| 174 | 174 | $this->taskId  | 
                                                        
| 175 | 175 | );  | 
                                                        
| 176 | -        $this->logger->log('Task failure: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 176 | +        $this->logger->log('Task failure: '.$e->getMessage(), 'ERROR'); | 
                                                        |
| 177 | 177 | }  | 
                                                        
| 178 | 178 | |
| 179 | 179 | /**  | 
                                                        
@@ -185,16 +185,16 @@ discard block  | 
                                                    ||
| 185 | 185 | * @return void  | 
                                                        
| 186 | 186 | */  | 
                                                        
| 187 | 187 |      private function processSubTasks($arguments) { | 
                                                        
| 188 | -        if (LOG_TASKS=== true) $this->logger->log('processSubTasks: '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 188 | +        if (LOG_TASKS === true) $this->logger->log('processSubTasks: '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 189 | 189 | // Get all subtasks related to this task  | 
                                                        
| 190 | 190 | $subtasks = DB::query(  | 
                                                        
| 191 | -            'SELECT * FROM ' . prefixTable('background_subtasks') . ' WHERE task_id = %i AND is_in_progress = 0 ORDER BY `task` ASC', | 
                                                        |
| 191 | +            'SELECT * FROM '.prefixTable('background_subtasks').' WHERE task_id = %i AND is_in_progress = 0 ORDER BY `task` ASC', | 
                                                        |
| 192 | 192 | $this->taskId  | 
                                                        
| 193 | 193 | );  | 
                                                        
| 194 | 194 | |
| 195 | 195 | // Check if there are any subtasks to process  | 
                                                        
| 196 | 196 |          if (empty($subtasks)) { | 
                                                        
| 197 | -            if (LOG_TASKS=== true) $this->logger->log('No subtask was found for task: ' . $this->taskId, 'DEBUG'); | 
                                                        |
| 197 | +            if (LOG_TASKS === true) $this->logger->log('No subtask was found for task: '.$this->taskId, 'DEBUG'); | 
                                                        |
| 198 | 198 | return;  | 
                                                        
| 199 | 199 | }  | 
                                                        
| 200 | 200 | |
@@ -204,7 +204,7 @@ discard block  | 
                                                    ||
| 204 | 204 | // Get the subtask data  | 
                                                        
| 205 | 205 | $subtaskData = json_decode($subtask['task'], true);  | 
                                                        
| 206 | 206 | |
| 207 | -                if (LOG_TASKS=== true) $this->logger->log('Processing subtask: ' . $subtaskData['step'], 'DEBUG'); | 
                                                        |
| 207 | +                if (LOG_TASKS === true) $this->logger->log('Processing subtask: '.$subtaskData['step'], 'DEBUG'); | 
                                                        |
| 208 | 208 | |
| 209 | 209 | // Process the subtask based on its type  | 
                                                        
| 210 | 210 |                  switch ($subtaskData['step'] ?? '') { | 
                                                        
@@ -248,13 +248,13 @@ discard block  | 
                                                    ||
| 248 | 248 | $subtask['increment_id']  | 
                                                        
| 249 | 249 | );  | 
                                                        
| 250 | 250 | |
| 251 | -                $this->logger->log('processSubTasks : ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 251 | +                $this->logger->log('processSubTasks : '.$e->getMessage(), 'ERROR'); | 
                                                        |
| 252 | 252 | }  | 
                                                        
| 253 | 253 | }  | 
                                                        
| 254 | 254 | |
| 255 | 255 | // Are all subtasks completed?  | 
                                                        
| 256 | 256 | $remainingSubtasks = DB::queryFirstField(  | 
                                                        
| 257 | -            'SELECT COUNT(*) FROM ' . prefixTable('background_subtasks') . ' WHERE task_id = %i AND is_in_progress = 0', | 
                                                        |
| 257 | +            'SELECT COUNT(*) FROM '.prefixTable('background_subtasks').' WHERE task_id = %i AND is_in_progress = 0', | 
                                                        |
| 258 | 258 | $this->taskId  | 
                                                        
| 259 | 259 | );  | 
                                                        
| 260 | 260 | |
@@ -270,7 +270,7 @@ discard block  | 
                                                    ||
| 270 | 270 |      error_log("Usage: php background_tasks___worker.php <task_id> <process_type> [<task_data>]"); | 
                                                        
| 271 | 271 | exit(1);  | 
                                                        
| 272 | 272 | }  | 
                                                        
| 273 | -$taskId = (int)$argv[1];  | 
                                                        |
| 273 | +$taskId = (int) $argv[1];  | 
                                                        |
| 274 | 274 | $processType = $argv[2];  | 
                                                        
| 275 | 275 | $taskData = $argv[3] ?? null;  | 
                                                        
| 276 | 276 |  if ($taskData) { | 
                                                        
@@ -64,7 +64,9 @@ discard block  | 
                                                    ||
| 64 | 64 | */  | 
                                                        
| 65 | 65 |      public function execute() { | 
                                                        
| 66 | 66 |          try { | 
                                                        
| 67 | -            if (LOG_TASKS=== true) $this->logger->log('Processing task: ' . print_r($this->taskData, true), 'DEBUG'); | 
                                                        |
| 67 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 68 | +                $this->logger->log('Processing task: ' . print_r($this->taskData, true), 'DEBUG'); | 
                                                        |
| 69 | + }  | 
                                                        |
| 68 | 70 | // Dispatch selon le type de processus  | 
                                                        
| 69 | 71 |              switch ($this->processType) { | 
                                                        
| 70 | 72 | case 'item_copy':  | 
                                                        
@@ -136,7 +138,9 @@ discard block  | 
                                                    ||
| 136 | 138 | $arguments = '';  | 
                                                        
| 137 | 139 | }  | 
                                                        
| 138 | 140 | |
| 139 | -        if (LOG_TASKS=== true) $this->logger->log('Process: '.$this->processType.' -- '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 141 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 142 | +            $this->logger->log('Process: '.$this->processType.' -- '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 143 | + }  | 
                                                        |
| 140 | 144 | |
| 141 | 145 | // Add 'arguments' only if not empty  | 
                                                        
| 142 | 146 |          if (!empty($arguments)) { | 
                                                        
@@ -150,7 +154,9 @@ discard block  | 
                                                    ||
| 150 | 154 | 'increment_id = %i',  | 
                                                        
| 151 | 155 | $this->taskId  | 
                                                        
| 152 | 156 | );  | 
                                                        
| 153 | -        if (LOG_TASKS=== true) $this->logger->log('Finishing task: ' . $this->taskId, 'DEBUG'); | 
                                                        |
| 157 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 158 | +            $this->logger->log('Finishing task: ' . $this->taskId, 'DEBUG'); | 
                                                        |
| 159 | + }  | 
                                                        |
| 154 | 160 | }  | 
                                                        
| 155 | 161 | |
| 156 | 162 | /**  | 
                                                        
@@ -185,7 +191,9 @@ discard block  | 
                                                    ||
| 185 | 191 | * @return void  | 
                                                        
| 186 | 192 | */  | 
                                                        
| 187 | 193 |      private function processSubTasks($arguments) { | 
                                                        
| 188 | -        if (LOG_TASKS=== true) $this->logger->log('processSubTasks: '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 194 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 195 | +            $this->logger->log('processSubTasks: '.print_r($arguments, true), 'DEBUG'); | 
                                                        |
| 196 | + }  | 
                                                        |
| 189 | 197 | // Get all subtasks related to this task  | 
                                                        
| 190 | 198 | $subtasks = DB::query(  | 
                                                        
| 191 | 199 |              'SELECT * FROM ' . prefixTable('background_subtasks') . ' WHERE task_id = %i AND is_in_progress = 0 ORDER BY `task` ASC', | 
                                                        
@@ -194,7 +202,9 @@ discard block  | 
                                                    ||
| 194 | 202 | |
| 195 | 203 | // Check if there are any subtasks to process  | 
                                                        
| 196 | 204 |          if (empty($subtasks)) { | 
                                                        
| 197 | -            if (LOG_TASKS=== true) $this->logger->log('No subtask was found for task: ' . $this->taskId, 'DEBUG'); | 
                                                        |
| 205 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 206 | +                $this->logger->log('No subtask was found for task: ' . $this->taskId, 'DEBUG'); | 
                                                        |
| 207 | + }  | 
                                                        |
| 198 | 208 | return;  | 
                                                        
| 199 | 209 | }  | 
                                                        
| 200 | 210 | |
@@ -204,7 +214,9 @@ discard block  | 
                                                    ||
| 204 | 214 | // Get the subtask data  | 
                                                        
| 205 | 215 | $subtaskData = json_decode($subtask['task'], true);  | 
                                                        
| 206 | 216 | |
| 207 | -                if (LOG_TASKS=== true) $this->logger->log('Processing subtask: ' . $subtaskData['step'], 'DEBUG'); | 
                                                        |
| 217 | +                if (LOG_TASKS=== true) { | 
                                                        |
| 218 | +                    $this->logger->log('Processing subtask: ' . $subtaskData['step'], 'DEBUG'); | 
                                                        |
| 219 | + }  | 
                                                        |
| 208 | 220 | |
| 209 | 221 | // Process the subtask based on its type  | 
                                                        
| 210 | 222 |                  switch ($subtaskData['step'] ?? '') { | 
                                                        
@@ -30,7 +30,7 @@ discard block  | 
                                                    ||
| 30 | 30 | use TeampassClasses\ConfigManager\ConfigManager;  | 
                                                        
| 31 | 31 | |
| 32 | 32 | require_once __DIR__.'/../sources/main.functions.php';  | 
                                                        
| 33 | -require_once __DIR__ . '/taskLogger.php';  | 
                                                        |
| 33 | +require_once __DIR__.'/taskLogger.php';  | 
                                                        |
| 34 | 34 | |
| 35 | 35 |  class BackgroundTasksHandler { | 
                                                        
| 36 | 36 | private $settings;  | 
                                                        
@@ -55,7 +55,7 @@ discard block  | 
                                                    ||
| 55 | 55 |      public function processBackgroundTasks() { | 
                                                        
| 56 | 56 | // Prevent multiple concurrent executions  | 
                                                        
| 57 | 57 |          if (!$this->acquireProcessLock()) { | 
                                                        
| 58 | -            if (LOG_TASKS=== true) $this->logger->log('Process already running', 'INFO'); | 
                                                        |
| 58 | +            if (LOG_TASKS === true) $this->logger->log('Process already running', 'INFO'); | 
                                                        |
| 59 | 59 | return false;  | 
                                                        
| 60 | 60 | }  | 
                                                        
| 61 | 61 | |
@@ -64,7 +64,7 @@ discard block  | 
                                                    ||
| 64 | 64 | $this->processTaskBatches();  | 
                                                        
| 65 | 65 | $this->performMaintenanceTasks();  | 
                                                        
| 66 | 66 |          } catch (Exception $e) { | 
                                                        
| 67 | -            if (LOG_TASKS=== true) $this->logger->log('Task processing error: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 67 | +            if (LOG_TASKS === true) $this->logger->log('Task processing error: '.$e->getMessage(), 'ERROR'); | 
                                                        |
| 68 | 68 |          } finally { | 
                                                        
| 69 | 69 | $this->releaseProcessLock();  | 
                                                        
| 70 | 70 | }  | 
                                                        
@@ -83,7 +83,7 @@ discard block  | 
                                                    ||
| 83 | 83 | return false;  | 
                                                        
| 84 | 84 | }  | 
                                                        
| 85 | 85 | |
| 86 | - fwrite($fp, (string)getmypid());  | 
                                                        |
| 86 | + fwrite($fp, (string) getmypid());  | 
                                                        |
| 87 | 87 | return true;  | 
                                                        
| 88 | 88 | }  | 
                                                        
| 89 | 89 | |
@@ -101,7 +101,7 @@ discard block  | 
                                                    ||
| 101 | 101 |      private function cleanupStaleTasks() { | 
                                                        
| 102 | 102 | // Mark tasks as failed if they've been running too long  | 
                                                        
| 103 | 103 | DB::query(  | 
                                                        
| 104 | -            'UPDATE ' . prefixTable('background_tasks') . '  | 
                                                        |
| 104 | +            'UPDATE '.prefixTable('background_tasks').'  | 
                                                        |
| 105 | 105 | SET is_in_progress = -1,  | 
                                                        
| 106 | 106 | finished_at = %i,  | 
                                                        
| 107 | 107 | status = "failed"  | 
                                                        
@@ -113,8 +113,8 @@ discard block  | 
                                                    ||
| 113 | 113 | |
| 114 | 114 | // Remove very old failed tasks  | 
                                                        
| 115 | 115 | DB::query(  | 
                                                        
| 116 | -            'DELETE t, st FROM ' . prefixTable('background_tasks') . ' t | 
                                                        |
| 117 | -            INNER JOIN ' . prefixTable('background_subtasks') . ' st ON (t.increment_id = st.task_id) | 
                                                        |
| 116 | +            'DELETE t, st FROM '.prefixTable('background_tasks').' t | 
                                                        |
| 117 | +            INNER JOIN ' . prefixTable('background_subtasks').' st ON (t.increment_id = st.task_id) | 
                                                        |
| 118 | 118 | WHERE t.finished_at > %i  | 
                                                        
| 119 | 119 | AND t.status = %s',  | 
                                                        
| 120 | 120 | time() - $this->maxTimeBeforeRemoval,  | 
                                                        
@@ -131,7 +131,7 @@ discard block  | 
                                                    ||
| 131 | 131 | |
| 132 | 132 | // Check if the maximum number of parallel tasks is reached  | 
                                                        
| 133 | 133 |          if ($runningTasks >= $this->maxParallelTasks) { | 
                                                        
| 134 | -            if (LOG_TASKS=== true) $this->logger->log('Wait ... '.$runningTasks.' out of '.$this->maxParallelTasks.' are already running ', 'INFO'); | 
                                                        |
| 134 | +            if (LOG_TASKS === true) $this->logger->log('Wait ... '.$runningTasks.' out of '.$this->maxParallelTasks.' are already running ', 'INFO'); | 
                                                        |
| 135 | 135 | return;  | 
                                                        
| 136 | 136 | }  | 
                                                        
| 137 | 137 | |
@@ -140,7 +140,7 @@ discard block  | 
                                                    ||
| 140 | 140 | // Fetch next batch of tasks  | 
                                                        
| 141 | 141 | $tasks = DB::query(  | 
                                                        
| 142 | 142 | 'SELECT increment_id, process_type, arguments  | 
                                                        
| 143 | -            FROM ' . prefixTable('background_tasks') . ' | 
                                                        |
| 143 | +            FROM ' . prefixTable('background_tasks').' | 
                                                        |
| 144 | 144 | WHERE is_in_progress = 0  | 
                                                        
| 145 | 145 | AND (finished_at IS NULL OR finished_at = "")  | 
                                                        
| 146 | 146 | ORDER BY increment_id ASC  | 
                                                        
@@ -149,7 +149,7 @@ discard block  | 
                                                    ||
| 149 | 149 | );  | 
                                                        
| 150 | 150 | |
| 151 | 151 |          foreach ($tasks as $task) { | 
                                                        
| 152 | -            if (LOG_TASKS=== true) $this->logger->log('Launching '.$task['increment_id'], 'INFO'); | 
                                                        |
| 152 | +            if (LOG_TASKS === true) $this->logger->log('Launching '.$task['increment_id'], 'INFO'); | 
                                                        |
| 153 | 153 | $this->processIndividualTask($task);  | 
                                                        
| 154 | 154 | }  | 
                                                        
| 155 | 155 | }  | 
                                                        
@@ -160,7 +160,7 @@ discard block  | 
                                                    ||
| 160 | 160 | * @param array $task The task to process.  | 
                                                        
| 161 | 161 | */  | 
                                                        
| 162 | 162 |      private function processIndividualTask(array $task) { | 
                                                        
| 163 | -        if (LOG_TASKS=== true)  $this->logger->log('Starting task: ' . print_r($task, true), 'INFO'); | 
                                                        |
| 163 | +        if (LOG_TASKS === true)  $this->logger->log('Starting task: '.print_r($task, true), 'INFO'); | 
                                                        |
| 164 | 164 | |
| 165 | 165 | // Store progress in the database  | 
                                                        
| 166 | 166 | DB::update(  | 
                                                        
@@ -177,18 +177,18 @@ discard block  | 
                                                    ||
| 177 | 177 | // Prepare process  | 
                                                        
| 178 | 178 | $process = new Process([  | 
                                                        
| 179 | 179 | PHP_BINARY,  | 
                                                        
| 180 | - __DIR__ . '/background_tasks___worker.php',  | 
                                                        |
| 180 | + __DIR__.'/background_tasks___worker.php',  | 
                                                        |
| 181 | 181 | $task['increment_id'],  | 
                                                        
| 182 | 182 | $task['process_type'],  | 
                                                        
| 183 | 183 | $task['arguments']  | 
                                                        
| 184 | 184 | ]);  | 
                                                        
| 185 | 185 | |
| 186 | 186 | // Launch process  | 
                                                        
| 187 | -        try{ | 
                                                        |
| 187 | +        try { | 
                                                        |
| 188 | 188 | $process->mustRun();  | 
                                                        
| 189 | 189 | |
| 190 | 190 |          } catch (Exception $e) { | 
                                                        
| 191 | -            if (LOG_TASKS=== true) $this->logger->log('Error launching task: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 191 | +            if (LOG_TASKS === true) $this->logger->log('Error launching task: '.$e->getMessage(), 'ERROR'); | 
                                                        |
| 192 | 192 | DB::update(  | 
                                                        
| 193 | 193 |                  prefixTable('background_tasks'), | 
                                                        
| 194 | 194 | [  | 
                                                        
@@ -209,7 +209,7 @@ discard block  | 
                                                    ||
| 209 | 209 |      private function countRunningTasks(): int { | 
                                                        
| 210 | 210 | return DB::queryFirstField(  | 
                                                        
| 211 | 211 | 'SELECT COUNT(*)  | 
                                                        
| 212 | -            FROM ' . prefixTable('background_tasks') . '  | 
                                                        |
| 212 | +            FROM ' . prefixTable('background_tasks').'  | 
                                                        |
| 213 | 213 | WHERE is_in_progress = 1'  | 
                                                        
| 214 | 214 | );  | 
                                                        
| 215 | 215 | }  | 
                                                        
@@ -230,10 +230,10 @@ discard block  | 
                                                    ||
| 230 | 230 | */  | 
                                                        
| 231 | 231 |      private function cleanMultipleItemsEdition() { | 
                                                        
| 232 | 232 | DB::query(  | 
                                                        
| 233 | -            'DELETE i1 FROM ' . prefixTable('items_edition') . ' i1 | 
                                                        |
| 233 | +            'DELETE i1 FROM '.prefixTable('items_edition').' i1 | 
                                                        |
| 234 | 234 | JOIN (  | 
                                                        
| 235 | 235 | SELECT user_id, item_id, MIN(timestamp) AS oldest_timestamp  | 
                                                        
| 236 | -                FROM ' . prefixTable('items_edition') . ' | 
                                                        |
| 236 | +                FROM ' . prefixTable('items_edition').' | 
                                                        |
| 237 | 237 | GROUP BY user_id, item_id  | 
                                                        
| 238 | 238 | ) i2 ON i1.user_id = i2.user_id AND i1.item_id = i2.item_id  | 
                                                        
| 239 | 239 | WHERE i1.timestamp > i2.oldest_timestamp'  | 
                                                        
@@ -246,7 +246,7 @@ discard block  | 
                                                    ||
| 246 | 246 | */  | 
                                                        
| 247 | 247 |      private function handleItemTokensExpiration() { | 
                                                        
| 248 | 248 | DB::query(  | 
                                                        
| 249 | -            'DELETE FROM ' . prefixTable('items_edition') . ' | 
                                                        |
| 249 | +            'DELETE FROM '.prefixTable('items_edition').' | 
                                                        |
| 250 | 250 | WHERE timestamp < %i',  | 
                                                        
| 251 | 251 | time() - ($this->settings['delay_item_edition'] * 60 ?: EDITION_LOCK_PERIOD)  | 
                                                        
| 252 | 252 | );  | 
                                                        
@@ -263,7 +263,7 @@ discard block  | 
                                                    ||
| 263 | 263 | // 1. Get all finished tasks older than the cutoff timestamp  | 
                                                        
| 264 | 264 | // and that are not in progress  | 
                                                        
| 265 | 265 | $tasks = DB::query(  | 
                                                        
| 266 | -            'SELECT increment_id FROM ' . prefixTable('background_tasks') . ' | 
                                                        |
| 266 | +            'SELECT increment_id FROM '.prefixTable('background_tasks').' | 
                                                        |
| 267 | 267 | WHERE status = %s AND is_in_progress = %i AND finished_at < %s',  | 
                                                        
| 268 | 268 | 'completed',  | 
                                                        
| 269 | 269 | -1,  | 
                                                        
@@ -278,19 +278,19 @@ discard block  | 
                                                    ||
| 278 | 278 | |
| 279 | 279 | // 2. Delete all subtasks related to these tasks  | 
                                                        
| 280 | 280 | DB::query(  | 
                                                        
| 281 | -            'DELETE FROM ' . prefixTable('background_subtasks') . ' | 
                                                        |
| 281 | +            'DELETE FROM '.prefixTable('background_subtasks').' | 
                                                        |
| 282 | 282 | WHERE task_id IN %ls',  | 
                                                        
| 283 | 283 | $taskIds  | 
                                                        
| 284 | 284 | );  | 
                                                        
| 285 | 285 | |
| 286 | 286 | // 3. Delete the tasks themselves  | 
                                                        
| 287 | 287 | DB::query(  | 
                                                        
| 288 | -            'DELETE FROM ' . prefixTable('background_tasks') . ' | 
                                                        |
| 288 | +            'DELETE FROM '.prefixTable('background_tasks').' | 
                                                        |
| 289 | 289 | WHERE increment_id IN %ls',  | 
                                                        
| 290 | 290 | $taskIds  | 
                                                        
| 291 | 291 | );  | 
                                                        
| 292 | 292 | |
| 293 | -        if (LOG_TASKS=== true) $this->logger->log('Old finished tasks cleaned: ' . count($taskIds), 'INFO'); | 
                                                        |
| 293 | +        if (LOG_TASKS === true) $this->logger->log('Old finished tasks cleaned: '.count($taskIds), 'INFO'); | 
                                                        |
| 294 | 294 | }  | 
                                                        
| 295 | 295 | }  | 
                                                        
| 296 | 296 | |
@@ -304,5 +304,5 @@ discard block  | 
                                                    ||
| 304 | 304 | $tasksHandler = new BackgroundTasksHandler($settings);  | 
                                                        
| 305 | 305 | $tasksHandler->processBackgroundTasks();  | 
                                                        
| 306 | 306 |  } catch (Exception $e) { | 
                                                        
| 307 | -    error_log('Teampass Background Tasks Error: ' . $e->getMessage()); | 
                                                        |
| 307 | +    error_log('Teampass Background Tasks Error: '.$e->getMessage()); | 
                                                        |
| 308 | 308 | }  | 
                                                        
| 309 | 309 | \ No newline at end of file  | 
                                                        
@@ -55,7 +55,9 @@ discard block  | 
                                                    ||
| 55 | 55 |      public function processBackgroundTasks() { | 
                                                        
| 56 | 56 | // Prevent multiple concurrent executions  | 
                                                        
| 57 | 57 |          if (!$this->acquireProcessLock()) { | 
                                                        
| 58 | -            if (LOG_TASKS=== true) $this->logger->log('Process already running', 'INFO'); | 
                                                        |
| 58 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 59 | +                $this->logger->log('Process already running', 'INFO'); | 
                                                        |
| 60 | + }  | 
                                                        |
| 59 | 61 | return false;  | 
                                                        
| 60 | 62 | }  | 
                                                        
| 61 | 63 | |
@@ -64,7 +66,9 @@ discard block  | 
                                                    ||
| 64 | 66 | $this->processTaskBatches();  | 
                                                        
| 65 | 67 | $this->performMaintenanceTasks();  | 
                                                        
| 66 | 68 |          } catch (Exception $e) { | 
                                                        
| 67 | -            if (LOG_TASKS=== true) $this->logger->log('Task processing error: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 69 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 70 | +                $this->logger->log('Task processing error: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 71 | + }  | 
                                                        |
| 68 | 72 |          } finally { | 
                                                        
| 69 | 73 | $this->releaseProcessLock();  | 
                                                        
| 70 | 74 | }  | 
                                                        
@@ -131,7 +135,9 @@ discard block  | 
                                                    ||
| 131 | 135 | |
| 132 | 136 | // Check if the maximum number of parallel tasks is reached  | 
                                                        
| 133 | 137 |          if ($runningTasks >= $this->maxParallelTasks) { | 
                                                        
| 134 | -            if (LOG_TASKS=== true) $this->logger->log('Wait ... '.$runningTasks.' out of '.$this->maxParallelTasks.' are already running ', 'INFO'); | 
                                                        |
| 138 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 139 | +                $this->logger->log('Wait ... '.$runningTasks.' out of '.$this->maxParallelTasks.' are already running ', 'INFO'); | 
                                                        |
| 140 | + }  | 
                                                        |
| 135 | 141 | return;  | 
                                                        
| 136 | 142 | }  | 
                                                        
| 137 | 143 | |
@@ -149,7 +155,9 @@ discard block  | 
                                                    ||
| 149 | 155 | );  | 
                                                        
| 150 | 156 | |
| 151 | 157 |          foreach ($tasks as $task) { | 
                                                        
| 152 | -            if (LOG_TASKS=== true) $this->logger->log('Launching '.$task['increment_id'], 'INFO'); | 
                                                        |
| 158 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 159 | +                $this->logger->log('Launching '.$task['increment_id'], 'INFO'); | 
                                                        |
| 160 | + }  | 
                                                        |
| 153 | 161 | $this->processIndividualTask($task);  | 
                                                        
| 154 | 162 | }  | 
                                                        
| 155 | 163 | }  | 
                                                        
@@ -160,7 +168,9 @@ discard block  | 
                                                    ||
| 160 | 168 | * @param array $task The task to process.  | 
                                                        
| 161 | 169 | */  | 
                                                        
| 162 | 170 |      private function processIndividualTask(array $task) { | 
                                                        
| 163 | -        if (LOG_TASKS=== true)  $this->logger->log('Starting task: ' . print_r($task, true), 'INFO'); | 
                                                        |
| 171 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 172 | +            $this->logger->log('Starting task: ' . print_r($task, true), 'INFO'); | 
                                                        |
| 173 | + }  | 
                                                        |
| 164 | 174 | |
| 165 | 175 | // Store progress in the database  | 
                                                        
| 166 | 176 | DB::update(  | 
                                                        
@@ -188,7 +198,9 @@ discard block  | 
                                                    ||
| 188 | 198 | $process->mustRun();  | 
                                                        
| 189 | 199 | |
| 190 | 200 |          } catch (Exception $e) { | 
                                                        
| 191 | -            if (LOG_TASKS=== true) $this->logger->log('Error launching task: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 201 | +            if (LOG_TASKS=== true) { | 
                                                        |
| 202 | +                $this->logger->log('Error launching task: ' . $e->getMessage(), 'ERROR'); | 
                                                        |
| 203 | + }  | 
                                                        |
| 192 | 204 | DB::update(  | 
                                                        
| 193 | 205 |                  prefixTable('background_tasks'), | 
                                                        
| 194 | 206 | [  | 
                                                        
@@ -290,7 +302,9 @@ discard block  | 
                                                    ||
| 290 | 302 | $taskIds  | 
                                                        
| 291 | 303 | );  | 
                                                        
| 292 | 304 | |
| 293 | -        if (LOG_TASKS=== true) $this->logger->log('Old finished tasks cleaned: ' . count($taskIds), 'INFO'); | 
                                                        |
| 305 | +        if (LOG_TASKS=== true) { | 
                                                        |
| 306 | +            $this->logger->log('Old finished tasks cleaned: ' . count($taskIds), 'INFO'); | 
                                                        |
| 307 | + }  | 
                                                        |
| 294 | 308 | }  | 
                                                        
| 295 | 309 | }  | 
                                                        
| 296 | 310 | |
@@ -72,37 +72,37 @@  | 
                                                    ||
| 72 | 72 |  { | 
                                                        
| 73 | 73 | // Delete all item keys for which no user exist  | 
                                                        
| 74 | 74 | DB::query(  | 
                                                        
| 75 | -        'DELETE k.* FROM ' . prefixTable('sharekeys_items') . ' k | 
                                                        |
| 76 | -        LEFT JOIN ' . prefixTable('users') . ' u ON k.user_id = u.id | 
                                                        |
| 75 | +        'DELETE k.* FROM '.prefixTable('sharekeys_items').' k | 
                                                        |
| 76 | +        LEFT JOIN ' . prefixTable('users').' u ON k.user_id = u.id | 
                                                        |
| 77 | 77 | WHERE u.id IS NULL OR u.deleted_at IS NOT NULL'  | 
                                                        
| 78 | 78 | );  | 
                                                        
| 79 | 79 | |
| 80 | 80 | // Delete all files keys for which no item exist  | 
                                                        
| 81 | 81 | DB::query(  | 
                                                        
| 82 | -        'DELETE k.* FROM ' . prefixTable('sharekeys_files') . ' k | 
                                                        |
| 83 | -        LEFT JOIN ' . prefixTable('items') . ' i ON k.object_id = i.id | 
                                                        |
| 82 | +        'DELETE k.* FROM '.prefixTable('sharekeys_files').' k | 
                                                        |
| 83 | +        LEFT JOIN ' . prefixTable('items').' i ON k.object_id = i.id | 
                                                        |
| 84 | 84 | WHERE i.id IS NULL'  | 
                                                        
| 85 | 85 | );  | 
                                                        
| 86 | 86 | |
| 87 | 87 | // Delete all fields keys for which no item exist  | 
                                                        
| 88 | 88 | DB::query(  | 
                                                        
| 89 | -        'DELETE k.* FROM ' . prefixTable('sharekeys_fields') . ' k | 
                                                        |
| 90 | -        LEFT JOIN ' . prefixTable('categories_items') . ' c ON k.object_id = c.id | 
                                                        |
| 91 | -        LEFT JOIN ' . prefixTable('items') . ' i ON c.item_id = i.id | 
                                                        |
| 89 | +        'DELETE k.* FROM '.prefixTable('sharekeys_fields').' k | 
                                                        |
| 90 | +        LEFT JOIN ' . prefixTable('categories_items').' c ON k.object_id = c.id | 
                                                        |
| 91 | +        LEFT JOIN ' . prefixTable('items').' i ON c.item_id = i.id | 
                                                        |
| 92 | 92 | WHERE c.id IS NULL OR i.id IS NULL'  | 
                                                        
| 93 | 93 | );  | 
                                                        
| 94 | 94 | |
| 95 | 95 | // Delete all item logs for which no user exist  | 
                                                        
| 96 | 96 | DB::query(  | 
                                                        
| 97 | -        'DELETE l.* FROM ' . prefixTable('log_items') . ' l | 
                                                        |
| 98 | -        LEFT JOIN ' . prefixTable('items') . ' i ON l.id_item = i.id | 
                                                        |
| 97 | +        'DELETE l.* FROM '.prefixTable('log_items').' l | 
                                                        |
| 98 | +        LEFT JOIN ' . prefixTable('items').' i ON l.id_item = i.id | 
                                                        |
| 99 | 99 | WHERE i.id IS NULL'  | 
                                                        
| 100 | 100 | );  | 
                                                        
| 101 | 101 | |
| 102 | 102 | // Delete all system logs for which no user exist  | 
                                                        
| 103 | 103 | DB::query(  | 
                                                        
| 104 | -        'DELETE l.* FROM ' . prefixTable('log_system') . ' l | 
                                                        |
| 105 | -        LEFT JOIN ' . prefixTable('users') . ' u ON l.qui = u.id | 
                                                        |
| 104 | +        'DELETE l.* FROM '.prefixTable('log_system').' l | 
                                                        |
| 105 | +        LEFT JOIN ' . prefixTable('users').' u ON l.qui = u.id | 
                                                        |
| 106 | 106 | WHERE u.id IS NULL OR u.deleted_at IS NOT NULL'  | 
                                                        
| 107 | 107 | );  | 
                                                        
| 108 | 108 | |
@@ -73,7 +73,7 @@ discard block  | 
                                                    ||
| 73 | 73 |  { | 
                                                        
| 74 | 74 | global $SETTINGS;  | 
                                                        
| 75 | 75 | // Load expected files  | 
                                                        
| 76 | - require_once __DIR__. '/../sources/main.functions.php';  | 
                                                        |
| 76 | + require_once __DIR__.'/../sources/main.functions.php';  | 
                                                        |
| 77 | 77 | $SETTINGS = $SETTINGS ?? [];  | 
                                                        
| 78 | 78 | |
| 79 | 79 | // $SETTINGS is set then read folder  | 
                                                        
@@ -83,7 +83,7 @@ discard block  | 
                                                    ||
| 83 | 83 | //delete file FILES  | 
                                                        
| 84 | 84 |              while (false !== ($f = readdir($dir))) { | 
                                                        
| 85 | 85 |                  if ($f !== '.' && $f !== '..' && $f !== '.htaccess') { | 
                                                        
| 86 | - $filePath = $SETTINGS['path_to_files_folder'] . '/' . $f;  | 
                                                        |
| 86 | + $filePath = $SETTINGS['path_to_files_folder'].'/'.$f;  | 
                                                        |
| 87 | 87 |                      if (file_exists($filePath) && ((time() - filectime($filePath)) > 604800)) { | 
                                                        
| 88 | 88 | fileDelete($filePath, $SETTINGS);  | 
                                                        
| 89 | 89 | }  | 
                                                        
@@ -104,7 +104,7 @@ discard block  | 
                                                    ||
| 104 | 104 |              while (false !== ($f = readdir($dir))) { | 
                                                        
| 105 | 105 |                  if ($f !== '.' && $f !== '..') { | 
                                                        
| 106 | 106 |                      if (strpos($f, '_delete.') > 0) { | 
                                                        
| 107 | - fileDelete($SETTINGS['path_to_upload_folder'] . '/' . $f, $SETTINGS);  | 
                                                        |
| 107 | + fileDelete($SETTINGS['path_to_upload_folder'].'/'.$f, $SETTINGS);  | 
                                                        |
| 108 | 108 | }  | 
                                                        
| 109 | 109 | }  | 
                                                        
| 110 | 110 | }  |