diff --git a/classes/ColdTrick/WidgetManager/Menus.php b/classes/ColdTrick/WidgetManager/Menus/AdminHeader.php similarity index 50% rename from classes/ColdTrick/WidgetManager/Menus.php rename to classes/ColdTrick/WidgetManager/Menus/AdminHeader.php index f4b55d5..50de56b 100644 --- a/classes/ColdTrick/WidgetManager/Menus.php +++ b/classes/ColdTrick/WidgetManager/Menus/AdminHeader.php @@ -1,13 +1,13 @@ getEntityParam(); - if (!$entity instanceof \WidgetPage || !$entity->canEdit()) { - return null; - } - - $result = $event->getValue(); - - $result[] = \ElggMenuItem::factory([ - 'name' => 'edit', - 'text' => elgg_echo('edit'), - 'icon' => 'edit', - 'href' => "ajax/form/widget_manager/widget_page?guid={$entity->guid}", - 'link_class' => 'elgg-lightbox', - 'data-colorbox-opts' => json_encode([ - 'trapFocus' => false, - ]), - ]); - - return $result; - } - - /** - * Adds a toggle to show/hide widget contents - * - * @param \Elgg\Event $event 'register', 'title:widgets' - * - * @return null|MenuItems - */ - public static function addWidgetsContentToggle(\Elgg\Event $event): ?MenuItems { - - if (!elgg_get_plugin_setting('show_collapse_content', 'widget_manager')) { - return null; - } - - if (!$event->getParam('show_collapse_content', false)) { - return null; - } - - $result = $event->getValue(); - - $result[] = \ElggMenuItem::factory([ - 'name' => 'hide-widget-contents', - 'class' => 'elgg-more', - 'text' => elgg_echo('widget_manager:layout:content:hide'), - 'icon' => 'eye-slash', - 'href' => false, - 'priority' => 80, - ]); - - $result[] = \ElggMenuItem::factory([ - 'name' => 'show-widget-contents', - 'class' => 'elgg-more', - 'item_class' => 'hidden', - 'text' => elgg_echo('widget_manager:layout:content:show'), - 'icon' => 'eye', - 'href' => false, - 'priority' => 81, - ]); - - return $result; - } } diff --git a/classes/ColdTrick/WidgetManager/Menus/Entity.php b/classes/ColdTrick/WidgetManager/Menus/Entity.php new file mode 100644 index 0000000..6b5d7aa --- /dev/null +++ b/classes/ColdTrick/WidgetManager/Menus/Entity.php @@ -0,0 +1,40 @@ +getEntityParam(); + if (!$entity instanceof \WidgetPage || !$entity->canEdit()) { + return null; + } + + $result = $event->getValue(); + + $result[] = \ElggMenuItem::factory([ + 'name' => 'edit', + 'text' => elgg_echo('edit'), + 'icon' => 'edit', + 'href' => "ajax/form/widget_manager/widget_page?guid={$entity->guid}", + 'link_class' => 'elgg-lightbox', + 'data-colorbox-opts' => json_encode([ + 'trapFocus' => false, + ]), + ]); + + return $result; + } +} diff --git a/classes/ColdTrick/WidgetManager/Menus/Title.php b/classes/ColdTrick/WidgetManager/Menus/Title.php new file mode 100644 index 0000000..fcbd145 --- /dev/null +++ b/classes/ColdTrick/WidgetManager/Menus/Title.php @@ -0,0 +1,52 @@ +getParam('show_collapse_content', false)) { + return null; + } + + $result = $event->getValue(); + + $result[] = \ElggMenuItem::factory([ + 'name' => 'hide-widget-contents', + 'class' => 'elgg-more', + 'text' => elgg_echo('widget_manager:layout:content:hide'), + 'icon' => 'eye-slash', + 'href' => false, + 'priority' => 80, + ]); + + $result[] = \ElggMenuItem::factory([ + 'name' => 'show-widget-contents', + 'class' => 'elgg-more', + 'item_class' => 'hidden', + 'text' => elgg_echo('widget_manager:layout:content:show'), + 'icon' => 'eye', + 'href' => false, + 'priority' => 81, + ]); + + return $result; + } +} diff --git a/elgg-plugin.php b/elgg-plugin.php index 1a9b21e..e1d1777 100644 --- a/elgg-plugin.php +++ b/elgg-plugin.php @@ -167,13 +167,13 @@ ], 'register' => [ 'menu:admin_header' => [ - '\ColdTrick\WidgetManager\Menus::registerAdminHeaderMenu' => [], + '\ColdTrick\WidgetManager\Menus\AdminHeader::registerAdminHeaderMenu' => [], ], 'menu:entity' => [ - '\ColdTrick\WidgetManager\Menus::addWidgetPageEntityMenuItems' => [], + '\ColdTrick\WidgetManager\Menus\Entity::addWidgetPageEntityMenuItems' => [], ], 'menu:title:widgets' => [ - '\ColdTrick\WidgetManager\Menus::addWidgetsContentToggle' => [], + '\ColdTrick\WidgetManager\Menus\Title::addWidgetsContentToggle' => [], ], ], 'seeds' => [