From 65c64010204ed776e12f3c5498c97890168f8e8a Mon Sep 17 00:00:00 2001 From: wangyuting Date: Thu, 20 Jul 2023 17:02:30 +0800 Subject: [PATCH] * Optimize actions on testtask view page. --- module/testtask/config.php | 5 ++-- module/testtask/ui/view.html.php | 45 ++++---------------------------- 2 files changed, 8 insertions(+), 42 deletions(-) diff --git a/module/testtask/config.php b/module/testtask/config.php index 9f95aa4e5a..764c5c1483 100644 --- a/module/testtask/config.php +++ b/module/testtask/config.php @@ -6,8 +6,9 @@ $config->testtask->create->requiredFields = 'build,begin,end,name'; $config->testtask->edit->requiredFields = 'build,begin,end,name'; $config->testtask->actions = new stdclass(); -$config->testtask->actions->browse = 'cases,linkCase,report,view,edit,delete'; -$config->testtask->actions->view = 'start,close,block,activate,cases,linkCase'; +$config->testtask->actions->view = array(); +$config->testtask->actions->view['mainActions'] = array('start', 'close', 'block', 'activate', 'cases', 'linkCase'); +$config->testtask->actions->view['suffixActions'] = array('edit', 'delete'); $config->testtask->importUnit = new stdclass(); $config->testtask->importUnit->requiredFields = 'execution,build,begin,end,name,resultFile'; diff --git a/module/testtask/ui/view.html.php b/module/testtask/ui/view.html.php index 372a74958b..b809458c4c 100644 --- a/module/testtask/ui/view.html.php +++ b/module/testtask/ui/view.html.php @@ -40,33 +40,7 @@ if($task->mailto) foreach(explode(',', str_replace(' ', '', $task->mailto)) as $account) $mailto .= zget($users, $account, $account); } -$actionList = array(); -$actionCodes = explode(',', $config->testtask->actions->view); -foreach($actionCodes as $actionCode) -{ - $actionConfig = $config->testtask->actionList[$actionCode]; - if(!empty($actionConfig['url']['module']) && !empty($actionConfig['url']['method'])) - { - $moduleName = $actionConfig['url']['module']; - $methodName = $actionConfig['url']['method']; - - if(!$this->testtask->isClickable($task, $actionCode)) continue; - - $params = !empty($actionConfig['url']['params']) ? $actionConfig['url']['params'] : array(); - - preg_match_all("/\{(.+?)\}/i", $params, $vars); - foreach($vars[0] as $key => $var) - { - $realVar = $vars[1][$key]; - $params = str_replace($var, (string)$task->$realVar, $params); - } - - $actionConfig['url'] = createLink($moduleName, $methodName, $params); - } - - $actionList[$actionCode] = $actionConfig; -} - +$actions = $this->loadModel('common')->buildOperateMenu($task); detailBody ( sectionList @@ -82,19 +56,10 @@ detailBody ( floatToolbar ( - set::prefix - ( - array(array('icon' => 'back', 'text' => $lang->goback)) - ), - set::main($actionList), - set::suffix - ( - array - ( - array('icon' => 'edit', 'url' => $this->createLink('testtask', 'edit', "taskID={$testtask->id}")), - array('icon' => 'trash', 'url' => $this->createLink('testtask', 'delete', "taskID={$testtask->id}")), - ) - ) + set::object($task), + isAjaxRequest('modal') ? null : to::prefix(backBtn(set::icon('back'), set::class('ghost text-white'), $lang->goback)), + set::main($actions['mainActions']), + set::suffix($actions['suffixActions']) ) ) ),