From 5d3cb685bd5501826f8a8719fae0cfae9dc4edf3 Mon Sep 17 00:00:00 2001 From: dingyongliang Date: Mon, 15 May 2023 17:32:42 +0800 Subject: [PATCH] * zin: refactor modulemenu. --- lib/zin/func.php | 2 +- lib/zin/wg/modulemenu/v1.php | 35 +++++++++++++++++------------------ 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/lib/zin/func.php b/lib/zin/func.php index 826922c879..4d90643335 100644 --- a/lib/zin/func.php +++ b/lib/zin/func.php @@ -1002,7 +1002,7 @@ function programMenu() /** * Zentao module menu widget. * - * int productID + * array modules * int activeKey * string closeLink */ diff --git a/lib/zin/wg/modulemenu/v1.php b/lib/zin/wg/modulemenu/v1.php index 4bc6b51bd5..9056366aa1 100644 --- a/lib/zin/wg/modulemenu/v1.php +++ b/lib/zin/wg/modulemenu/v1.php @@ -1,22 +1,23 @@ getChildModule($parentID); if(count($children) === 0) return []; @@ -32,29 +33,29 @@ class moduleMenu extends wg return $parentItems; } - private function getChildModule($id) + private function getChildModule(int|string $id): array { return array_filter($this->modules, fn($module) => $module->parent == $id); } - private function setMenuTreeProps() + private function setMenuTreeProps(): void { - global $app; - $id = $this->prop('productID'); - $this->setProp('productID', null); - $this->modules = $app->loadTarget('tree')->getProductStructure($id, 'story'); + $this->modules = $this->prop('modules'); $this->setProp('items', $this->buildMenuTree([], 0)); $this->setDefaultProps(array('activeClass' => 'active')); } - private function getTitle($activeKey) + private function getTitle($activeKey): string { foreach($this->modules as $module) - if($module->id == $activeKey) - return $module->name; + { + if($module->id == $activeKey) return $module->name; + } + + return ''; } - protected function build() + protected function build(): wg { global $app; $lang = $app->loadLang('datatable')->datatable; @@ -74,6 +75,7 @@ class moduleMenu extends wg ) ); } + return div ( setClass('module-menu rounded shadow-sm'), @@ -86,10 +88,7 @@ class moduleMenu extends wg ), $closeBtn ), - h::main - ( - zui::menutree(inherit($this)) - ), + h::main(zui::menutree(inherit($this))), div ( setClass('setting-btns'),