diff --git a/core/components/collections/lexicon/en/default.inc.php b/core/components/collections/lexicon/en/default.inc.php index 90a32962..3482f0c9 100644 --- a/core/components/collections/lexicon/en/default.inc.php +++ b/core/components/collections/lexicon/en/default.inc.php @@ -31,6 +31,8 @@ $_lang['setting_collections.tree_tbar_collection_desc'] = 'Show "New Collection" button in Tree tool bar'; $_lang['setting_collections.tree_tbar_selection'] = 'Tree Tool Bar - Selection'; $_lang['setting_collections.tree_tbar_selection_desc'] = 'Show "New Selection" button in Tree tool bar'; +$_lang['setting_collections.mostra_sub_collections_tree'] = 'Show Nested Collection/Selection in Tree'; +$_lang['setting_collections.mostra_sub_collections_tree_desc'] = 'Decide if you want, or not, show nested Collection/Selection in resorce's tree'; // System lexicons diff --git a/core/components/collections/src/Events/OnBeforeDocFormSave.php b/core/components/collections/src/Events/OnBeforeDocFormSave.php index 20ba0e0d..591c074c 100644 --- a/core/components/collections/src/Events/OnBeforeDocFormSave.php +++ b/core/components/collections/src/Events/OnBeforeDocFormSave.php @@ -22,7 +22,12 @@ public function run() } if ($resource->class_key == CollectionContainer::class) { - $resource->set('show_in_tree', 1); + if ($this->modx->getOption('mostra_sub_collections_tree', null, true)==false && $parent && ($parent->class_key == CollectionContainer::class)) + { + $resource->set('show_in_tree', 0); + }else{ + $resource->set('show_in_tree', 1); + } } /** @var modResource $original */ @@ -133,7 +138,12 @@ protected function switchToCollections($resource) $child->set('show_in_tree', 0); if ($child->class_key == CollectionContainer::class) { - $child->set('show_in_tree', 1); + if ($this->modx->getOption('mostra_sub_collections_tree', null, true)==false) + { + $resource->set('show_in_tree', 0); + }else{ + $resource->set('show_in_tree', 1); + } } $child->save(); diff --git a/core/components/collections/src/Events/OnResourceBeforeSort.php b/core/components/collections/src/Events/OnResourceBeforeSort.php index a53a0475..eb01f045 100644 --- a/core/components/collections/src/Events/OnResourceBeforeSort.php +++ b/core/components/collections/src/Events/OnResourceBeforeSort.php @@ -36,7 +36,12 @@ public function run() // } if ($resource->class_key == CollectionContainer::class) { - $resource->set('show_in_tree', 1); + if ($this->modx->getOption('mostra_sub_collections_tree', null, true)==false && $parent && ($parent->class_key == CollectionContainer::class)) + { + $resource->set('show_in_tree', 0); + }else{ + $resource->set('show_in_tree', 1); + } } $resource->save();