|
@@ -37,10 +37,10 @@ discard block |
|
|
block discarded – undo |
|
37
|
37
|
include __DIR__.'/../includes/config/tp.config.php'; |
|
38
|
38
|
|
|
39
|
39
|
// includes |
|
40
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/config/include.php'; |
|
41
|
|
-require_once $SETTINGS['cpassman_dir'] . '/sources/main.functions.php'; |
|
42
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/language/' . $_SESSION['user']['user_language'] . '.php'; |
|
43
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/config/settings.php'; |
|
|
40
|
+require_once $SETTINGS['cpassman_dir'].'/includes/config/include.php'; |
|
|
41
|
+require_once $SETTINGS['cpassman_dir'].'/sources/main.functions.php'; |
|
|
42
|
+require_once $SETTINGS['cpassman_dir'].'/includes/language/'.$_SESSION['user']['user_language'].'.php'; |
|
|
43
|
+require_once $SETTINGS['cpassman_dir'].'/includes/config/settings.php'; |
|
44
|
44
|
|
|
45
|
45
|
// header |
|
46
|
46
|
header('Content-type: text/html; charset=utf-8'); |
|
@@ -54,7 +54,7 @@ discard block |
|
|
block discarded – undo |
|
54
|
54
|
} |
|
55
|
55
|
|
|
56
|
56
|
// Connect to mysql server |
|
57
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Database/Meekrodb/db.class.php'; |
|
|
57
|
+require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Database/Meekrodb/db.class.php'; |
|
58
|
58
|
if (defined('DB_PASSWD_CLEAR') === false) { |
|
59
|
59
|
define('DB_PASSWD_CLEAR', defuseReturnDecrypted(DB_PASSWD, $SETTINGS)); |
|
60
|
60
|
} |
|
@@ -68,7 +68,7 @@ discard block |
|
|
block discarded – undo |
|
68
|
68
|
DB::$connect_options = DB_CONNECT_OPTIONS; |
|
69
|
69
|
|
|
70
|
70
|
// Superglobal load |
|
71
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
|
71
|
+require_once $SETTINGS['cpassman_dir'].'/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
72
|
72
|
$superGlobal = new protect\SuperGlobal\SuperGlobal(); |
|
73
|
73
|
|
|
74
|
74
|
// Prepare sanitization |
|
@@ -117,7 +117,7 @@ discard block |
|
|
block discarded – undo |
|
117
|
117
|
); |
|
118
|
118
|
|
|
119
|
119
|
$lastFolderChange = DB::queryfirstrow( |
|
120
|
|
- 'SELECT valeur FROM ' . prefixTable('misc') . ' |
|
|
120
|
+ 'SELECT valeur FROM '.prefixTable('misc').' |
|
121
|
121
|
WHERE type = %s AND intitule = %s', |
|
122
|
122
|
'timestamp', |
|
123
|
123
|
'last_folder_change' |
|
@@ -138,7 +138,7 @@ discard block |
|
|
block discarded – undo |
|
138
|
138
|
// We don't use the cache if an ID of folder is provided |
|
139
|
139
|
if ($goTreeRefresh['state'] === true || empty($inputData['nodeId']) === false || $inputData['userTreeLoadStrategy'] === 'sequential') { |
|
140
|
140
|
// Build tree |
|
141
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tree/NestedTree/NestedTree.php'; |
|
|
141
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tree/NestedTree/NestedTree.php'; |
|
142
|
142
|
$tree = new Tree\NestedTree\NestedTree(prefixTable('nested_tree'), 'id', 'parent_id', 'title'); |
|
143
|
143
|
|
|
144
|
144
|
if ( |
|
@@ -286,7 +286,7 @@ discard block |
|
|
block discarded – undo |
|
286
|
286
|
// get count of Items in this folder |
|
287
|
287
|
$ret['itemsNb'] = (int) DB::queryfirstrow( |
|
288
|
288
|
'SELECT COUNT(*) AS num_results |
|
289
|
|
- FROM ' . prefixTable('items') . ' |
|
|
289
|
+ FROM ' . prefixTable('items').' |
|
290
|
290
|
WHERE inactif=%i AND id_tree = %i', |
|
291
|
291
|
0, |
|
292
|
292
|
$nodeId |
|
@@ -295,7 +295,7 @@ discard block |
|
|
block discarded – undo |
|
295
|
295
|
// get info about current folder |
|
296
|
296
|
$ret['childrenNb'] = (int) DB::queryfirstrow( |
|
297
|
297
|
'SELECT COUNT(*) AS num_results |
|
298
|
|
- FROM ' . prefixTable('nested_tree') . ' |
|
|
298
|
+ FROM ' . prefixTable('nested_tree').' |
|
299
|
299
|
WHERE parent_id = %i', |
|
300
|
300
|
$nodeId |
|
301
|
301
|
)['num_results']; |
|
@@ -307,8 +307,7 @@ discard block |
|
|
block discarded – undo |
|
307
|
307
|
} else { |
|
308
|
308
|
// If personal Folder, convert id into user name |
|
309
|
309
|
$ret['title'] = (string) $nodeTitle === (string) $userId && (int) $nodeLevel === 1 ? |
|
310
|
|
- $userLogin : |
|
311
|
|
- htmlspecialchars_decode($nodeTitle, ENT_QUOTES); |
|
|
310
|
+ $userLogin : htmlspecialchars_decode($nodeTitle, ENT_QUOTES); |
|
312
|
311
|
} |
|
313
|
312
|
|
|
314
|
313
|
$ret['text'] = str_replace( |
|
@@ -375,7 +374,7 @@ discard block |
|
|
block discarded – undo |
|
375
|
374
|
) === true |
|
376
|
375
|
) { |
|
377
|
376
|
$nbChildrenItems = (int) DB::queryfirstrow( |
|
378
|
|
- 'SELECT COUNT(*) AS num_results FROM ' . prefixTable('items') . ' |
|
|
377
|
+ 'SELECT COUNT(*) AS num_results FROM '.prefixTable('items').' |
|
379
|
378
|
WHERE inactif=%i AND id_tree = %i', |
|
380
|
379
|
0, |
|
381
|
380
|
$node |
|
@@ -463,7 +462,7 @@ discard block |
|
|
block discarded – undo |
|
463
|
462
|
if (isKeyExistingAndEqual('tree_counters', 1, $SETTINGS) === true) { |
|
464
|
463
|
// Get number of items in this folder (not recursive |
|
465
|
464
|
$itemsNb = (int) DB::queryfirstrow( |
|
466
|
|
- 'SELECT COUNT(*) AS num_results FROM ' . prefixTable('items') . ' |
|
|
465
|
+ 'SELECT COUNT(*) AS num_results FROM '.prefixTable('items').' |
|
467
|
466
|
WHERE inactif=%i AND id_tree = %i', |
|
468
|
467
|
0, |
|
469
|
468
|
$nodeId |
|
@@ -524,7 +523,7 @@ discard block |
|
|
block discarded – undo |
|
524
|
523
|
foreach ($currentNode->children as $child) { |
|
525
|
524
|
recursiveTree( |
|
526
|
525
|
(int) $child, |
|
527
|
|
- $tree->getNode($child),// get node info for this child |
|
|
526
|
+ $tree->getNode($child), // get node info for this child |
|
528
|
527
|
/** @scrutinizer ignore-type */ $tree, |
|
529
|
528
|
$listFoldersLimitedKeys, |
|
530
|
529
|
$listRestrictedFoldersForItemsKeys, |
|
@@ -567,7 +566,7 @@ discard block |
|
|
block discarded – undo |
|
567
|
566
|
): array |
|
568
|
567
|
{ |
|
569
|
568
|
// prepare json return for current node |
|
570
|
|
- $parent = $currentNode->parent_id === '0' ? '#' : 'li_' . $currentNode->parent_id; |
|
|
569
|
+ $parent = $currentNode->parent_id === '0' ? '#' : 'li_'.$currentNode->parent_id; |
|
571
|
570
|
|
|
572
|
571
|
// handle displaying |
|
573
|
572
|
if (isKeyExistingAndEqual('show_only_accessible_folders', 1, $SETTINGS) === true) { |
|
@@ -584,17 +583,17 @@ discard block |
|
|
block discarded – undo |
|
584
|
583
|
array_push( |
|
585
|
584
|
$ret_json, |
|
586
|
585
|
array( |
|
587
|
|
- 'id' => 'li_' . $nodeId, |
|
|
586
|
+ 'id' => 'li_'.$nodeId, |
|
588
|
587
|
'parent' => $last_visible_parent === -1 ? $parent : $last_visible_parent, |
|
589
|
588
|
'text' => '<i class="'.$currentNode->fa_icon.' tree-folder mr-2" data-folder="'.$currentNode->fa_icon.'" data-folder-selected="'.$currentNode->fa_icon_selected.'"></i>'.$text.$currentNode->title.$nodeData['html'], |
|
590
|
589
|
'li_attr' => array( |
|
591
|
590
|
'class' => 'jstreeopen', |
|
592
|
|
- 'title' => 'ID [' . $nodeId . '] ' . $nodeData['title'], |
|
|
591
|
+ 'title' => 'ID ['.$nodeId.'] '.$nodeData['title'], |
|
593
|
592
|
), |
|
594
|
593
|
'a_attr' => array( |
|
595
|
|
- 'id' => 'fld_' . $nodeId, |
|
|
594
|
+ 'id' => 'fld_'.$nodeId, |
|
596
|
595
|
'class' => $nodeData['folderClass'], |
|
597
|
|
- 'onclick' => 'ListerItems(' . $nodeId . ', ' . $nodeData['restricted'] . ', 0, 1)', |
|
|
596
|
+ 'onclick' => 'ListerItems('.$nodeId.', '.$nodeData['restricted'].', 0, 1)', |
|
598
|
597
|
'data-title' => $currentNode->title, |
|
599
|
598
|
), |
|
600
|
599
|
'is_pf' => in_array($nodeId, $inputData['personalFolders']) === true ? 1 : 0, |
|
@@ -611,12 +610,12 @@ discard block |
|
|
block discarded – undo |
|
611
|
610
|
array_push( |
|
612
|
611
|
$ret_json, |
|
613
|
612
|
array( |
|
614
|
|
- 'id' => 'li_' . $nodeId, |
|
|
613
|
+ 'id' => 'li_'.$nodeId, |
|
615
|
614
|
'parent' => $last_visible_parent === -1 ? $parent : $last_visible_parent, |
|
616
|
615
|
'text' => '<i class="'.$currentNode->fa_icon.' tree-folder mr-2" data-folder="'.$currentNode->fa_icon.'" data-folder-selected="'.$currentNode->fa_icon_selected.'"></i>'.'<i class="fas fa-times fa-xs text-danger mr-1 ml-1"></i>'.$text.$currentNode->title.$nodeData['html'], |
|
617
|
616
|
'li_attr' => array( |
|
618
|
617
|
'class' => '', |
|
619
|
|
- 'title' => 'ID [' . $nodeId . '] ' . langHdl('no_access'), |
|
|
618
|
+ 'title' => 'ID ['.$nodeId.'] '.langHdl('no_access'), |
|
620
|
619
|
), |
|
621
|
620
|
) |
|
622
|
621
|
); |
|
@@ -674,7 +673,7 @@ discard block |
|
|
block discarded – undo |
|
674
|
673
|
if (in_array($nodeId, $session_read_only_folders) === true) { |
|
675
|
674
|
return [ |
|
676
|
675
|
'html' => '<i class="far fa-eye fa-xs mr-1 ml-1"></i>'. |
|
677
|
|
- ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_' . $nodeId . '">' . $itemsNb .'/'.$nbChildrenItems .'/'.(count($nodeDescendants) - 1). '</span>' : ''), |
|
|
676
|
+ ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_'.$nodeId.'">'.$itemsNb.'/'.$nbChildrenItems.'/'.(count($nodeDescendants) - 1).'</span>' : ''), |
|
678
|
677
|
'title' => langHdl('read_only_account'), |
|
679
|
678
|
'restricted' => 1, |
|
680
|
679
|
'folderClass' => 'folder_not_droppable', |
|
@@ -689,7 +688,7 @@ discard block |
|
|
block discarded – undo |
|
689
|
688
|
) { |
|
690
|
689
|
return [ |
|
691
|
690
|
'html' => '<i class="far fa-eye fa-xs mr-1"></i>'. |
|
692
|
|
- ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_' . $nodeId . '">' . $itemsNb .'/'.$nbChildrenItems .'/'.(count($nodeDescendants) - 1). '</span>' : ''), |
|
|
691
|
+ ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_'.$nodeId.'">'.$itemsNb.'/'.$nbChildrenItems.'/'.(count($nodeDescendants) - 1).'</span>' : ''), |
|
693
|
692
|
'title' => langHdl('read_only_account'), |
|
694
|
693
|
'restricted' => 0, |
|
695
|
694
|
'folderClass' => 'folder', |
|
@@ -700,7 +699,7 @@ discard block |
|
|
block discarded – undo |
|
700
|
699
|
} |
|
701
|
700
|
|
|
702
|
701
|
return [ |
|
703
|
|
- 'html' => ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_' . $nodeId . '">' . $itemsNb .'/'.$nbChildrenItems .'/'.(count($nodeDescendants) - 1). '</span>' : ''), |
|
|
702
|
+ 'html' => ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_'.$nodeId.'">'.$itemsNb.'/'.$nbChildrenItems.'/'.(count($nodeDescendants) - 1).'</span>' : ''), |
|
704
|
703
|
'title' => '', |
|
705
|
704
|
'restricted' => 0, |
|
706
|
705
|
'folderClass' => 'folder', |
|
@@ -711,8 +710,8 @@ discard block |
|
|
block discarded – undo |
|
711
|
710
|
|
|
712
|
711
|
} elseif (in_array($nodeId, $listFoldersLimitedKeys) === true) { |
|
713
|
712
|
return [ |
|
714
|
|
- 'html' => ($session_user_read_only === true ? '<i class="far fa-eye fa-xs mr-1"></i>' : '') . |
|
715
|
|
- ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_' . $nodeId . '">' . count($session_list_folders_limited[$nodeId]) . '</span>' : ''), |
|
|
713
|
+ 'html' => ($session_user_read_only === true ? '<i class="far fa-eye fa-xs mr-1"></i>' : ''). |
|
|
714
|
+ ($tree_counters === 1 ? '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_'.$nodeId.'">'.count($session_list_folders_limited[$nodeId]).'</span>' : ''), |
|
716
|
715
|
'title' => '', |
|
717
|
716
|
'restricted' => 1, |
|
718
|
717
|
'folderClass' => 'folder', |
|
@@ -723,8 +722,8 @@ discard block |
|
|
block discarded – undo |
|
723
|
722
|
|
|
724
|
723
|
} elseif (in_array($nodeId, $listRestrictedFoldersForItemsKeys) === true) { |
|
725
|
724
|
return [ |
|
726
|
|
- 'html' => $session_user_read_only === true ? '<i class="far fa-eye fa-xs mr-1"></i>' : '' . |
|
727
|
|
- '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_' . $nodeId . '">' . count($session_list_restricted_folders_for_items[$nodeId]) . '</span>', |
|
|
725
|
+ 'html' => $session_user_read_only === true ? '<i class="far fa-eye fa-xs mr-1"></i>' : ''. |
|
|
726
|
+ '<span class="badge badge-pill badge-light ml-2 items_count" id="itcount_'.$nodeId.'">'.count($session_list_restricted_folders_for_items[$nodeId]).'</span>', |
|
728
|
727
|
'title' => '', |
|
729
|
728
|
'restricted' => 1, |
|
730
|
729
|
'folderClass' => 'folder', |
|
@@ -833,7 +832,7 @@ discard block |
|
|
block discarded – undo |
|
833
|
832
|
// Does this user has a tree cache |
|
834
|
833
|
$userCacheTree = DB::queryfirstrow( |
|
835
|
834
|
'SELECT data |
|
836
|
|
- FROM ' . prefixTable('cache_tree') . ' |
|
|
835
|
+ FROM ' . prefixTable('cache_tree').' |
|
837
|
836
|
WHERE user_id = %i', |
|
838
|
837
|
$userId |
|
839
|
838
|
); |