diff --git a/module/caselib/control.php b/module/caselib/control.php index 9e4c245d3a..3506b195e9 100644 --- a/module/caselib/control.php +++ b/module/caselib/control.php @@ -54,7 +54,7 @@ class caselib extends control $libraries = $this->caselib->getLibraries(); $libID = $this->caselibZen->saveLibState(0, $libraries); - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); $this->view->title = $this->lang->caselib->common . $this->lang->colon . $this->lang->caselib->create; $this->display(); @@ -90,7 +90,7 @@ class caselib extends control /* Set lib menu. */ $libraries = $this->caselib->getLibraries(); $libID = $this->caselibZen->saveLibState($libID, $libraries); - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); $this->view->title = $libraries[$libID] . $this->lang->colon . $this->lang->caselib->edit; $this->view->lib = $this->caselib->getById($libID); @@ -164,7 +164,7 @@ class caselib extends control $this->caselibZen->setBrowseSessionAndCookie($libID, $browseType, $param); /* Set lib menu. */ - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); /* Set module and query id. */ $moduleID = ($browseType == 'bymodule') ? $param : ($browseType == 'bysearch' ? 0 : ($this->cookie->libCaseModule ? $this->cookie->libCaseModule : 0)); @@ -242,7 +242,7 @@ class caselib extends control /* Set lib menu. */ $libraries = $this->caselib->getLibraries(); $libID = $this->caselibZen->saveLibState($libID, $libraries); - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); $type = 'feature'; $stage = ''; @@ -318,7 +318,7 @@ class caselib extends control if(empty($libraries)) $this->locate(inlink('create')); /* Set lib menu. */ - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); $this->view->title = $libraries[$libID] . $this->lang->colon . $this->lang->testcase->batchCreate; $this->view->libID = $libID; @@ -343,7 +343,7 @@ class caselib extends control /* Set lib menu. */ $libraries = $this->caselib->getLibraries(); - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); $this->loadModel('testcase'); $this->view->title = $lib->name . $this->lang->colon . $this->lang->caselib->view; @@ -557,7 +557,7 @@ class caselib extends control $libraries = $this->caselib->getLibraries(); if(empty($libraries)) $this->locate(inlink('create')); - $this->caselib->setLibMenu($libraries, $libID); + $this->caselibZen->setLibMenu($libraries, $libID); $caseLang = $this->lang->testcase; $caseConfig = $this->config->testcase; diff --git a/module/caselib/model.php b/module/caselib/model.php index 84823b0913..bbd7cf2cd5 100644 --- a/module/caselib/model.php +++ b/module/caselib/model.php @@ -13,40 +13,6 @@ loadModel('product')->getPairs(); - if(!empty($products) and $this->session->product) $this->loadModel('qa')->setMenu($this->session->product); - if(empty($products)) $this->loadModel('qa')->setMenu(); - - $this->lang->qa->menu->caselib['subModule'] .= ',testcase'; - - if($libraries) - { - $libName = ''; - if(!isset($libraries[$libID])) $libName = $this->dao->select('name')->from(TABLE_TESTSUITE)->where('id')->eq($libID)->fetch('name'); - $currentLibName = zget($libraries, $libID, $libName); - setCookie("lastCaseLib", $libID, $this->config->cookieLife, $this->config->webRoot, '', false, true); - - $dropMenuLink = helper::createLink('caselib', 'ajaxGetDropMenu', "objectID=$libID&module=caselib&method=browse"); - - $output = "
"; - - $this->lang->switcherMenu = $output; - } - } - /** * Get caselib info by id. * diff --git a/module/caselib/zen.php b/module/caselib/zen.php index 535b536f69..fdad652eac 100644 --- a/module/caselib/zen.php +++ b/module/caselib/zen.php @@ -2,6 +2,45 @@ declare(strict_types=1); class caselibZen extends caselib { + /** + * 设置用例库菜单。 + * Set library menu. + * + * @param array $libraries + * @param int $libID + * @access public + * @return void + */ + public function setLibMenu(array $libraries, int $libID): void + { + /* Set case lib menu. */ + $products = $this->loadModel('product')->getPairs(); + if(!empty($products) and $this->session->product) $this->loadModel('qa')->setMenu($this->session->product); + if(empty($products)) $this->loadModel('qa')->setMenu(); + + $this->lang->qa->menu->caselib['subModule'] .= ',testcase'; + + if($libraries) + { + $libName = ''; + if(!isset($libraries[$libID])) + { + $lib = $this->caselib->getByID($libID); + $libName = $lib ? $lib->name : ''; + } + $currentLibName = zget($libraries, $libID, $libName); + setCookie("lastCaseLib", (string)$libID, $this->config->cookieLife, $this->config->webRoot, '', false, true); + + $dropMenuLink = helper::createLink('caselib', 'ajaxGetDropMenu', "objectID={$libID}&module=caselib&method=browse"); + + $output = "
"; + + $this->lang->switcherMenu = $output; + } + } + /** * 设置用例库状态。 * Save lib state.