* Refactor caselib::create.
This commit is contained in:
@@ -34,19 +34,30 @@ class caselib extends control
|
||||
{
|
||||
if(!empty($_POST))
|
||||
{
|
||||
/* TODO:getExtendFields. */
|
||||
/* Set case lib. */
|
||||
$data = form::data($this->config->caselib->form->create);
|
||||
$lib = $this->caselibZen->prepareCreateExtras($data, $this->post->uid);
|
||||
$lib = $data->setForce('type', 'library')
|
||||
->add('addedBy', $this->app->user->account)
|
||||
->add('addedDate', helper::now())
|
||||
->setIF($this->lang->navGroup->caselib != 'qa', 'project', (int)$this->session->project)
|
||||
->stripTags($this->config->caselib->editor->create['id'], $this->config->allowedTags)
|
||||
->get();
|
||||
$lib = $this->loadModel('file')->processImgURL($lib, $this->config->caselib->editor->create['id'], $this->post->uid);
|
||||
|
||||
$libID = $this->caselib->create($lib, $this->post->uid);
|
||||
/* Insert case lib. */
|
||||
$libID = $this->caselib->create($lib);
|
||||
if(dao::isError()) $this->send(array('result' => 'fail', 'message' => dao::getError()));
|
||||
|
||||
if($this->viewType == 'json') return array('result' => 'success', 'message' => $this->lang->saveSuccess, 'id' => $libID);
|
||||
return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'closeModal' => true, 'load' => $this->createLink('caselib', 'browse', "libID=$libID")));
|
||||
}
|
||||
|
||||
$this->caselibZen->setCreateMenu();
|
||||
$this->caselibZen->buildCreateForm();
|
||||
$libraries = $this->caselib->getLibraries();
|
||||
$libID = $this->caselib->saveLibState(0, $libraries);
|
||||
$this->caselib->setLibMenu($libraries, $libID);
|
||||
|
||||
$this->view->title = $this->lang->caselib->common . $this->lang->colon . $this->lang->caselib->create;
|
||||
$this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -177,11 +177,10 @@ class caselibModel extends model
|
||||
* Create a lib case, insert a lib object into database.
|
||||
*
|
||||
* @param object $lib
|
||||
* @param string $uid
|
||||
* @access public
|
||||
* @return int|false
|
||||
*/
|
||||
public function create(object $lib, string $uid = ''): int|false
|
||||
public function create(object $lib): int|false
|
||||
{
|
||||
$this->lang->testsuite->name = $this->lang->caselib->name;
|
||||
$this->lang->testsuite->desc = $this->lang->caselib->desc;
|
||||
@@ -195,7 +194,7 @@ class caselibModel extends model
|
||||
if(!dao::isError())
|
||||
{
|
||||
$libID = $this->dao->lastInsertID();
|
||||
$this->loadModel('file')->updateObjectID($uid, $libID, 'caselib');
|
||||
$this->loadModel('file')->updateObjectID($this->post->uid, $libID, 'caselib');
|
||||
$this->loadModel('action')->create('caselib', $libID, 'opened');
|
||||
return $libID;
|
||||
}
|
||||
|
||||
@@ -2,52 +2,4 @@
|
||||
declare(strict_types=1);
|
||||
class caselibZen extends caselib
|
||||
{
|
||||
/**
|
||||
* 为创建用例库设置导航。
|
||||
* Set menu for create caselib.
|
||||
*
|
||||
* @access protected
|
||||
* @return void
|
||||
*/
|
||||
protected function setCreateMenu(): void
|
||||
{
|
||||
$libraries = $this->caselib->getLibraries();
|
||||
$libID = $this->caselib->saveLibState(0, $libraries);
|
||||
$this->caselib->setLibMenu($libraries, $libID);
|
||||
}
|
||||
|
||||
/**
|
||||
* 构建创建用例库页面数据。
|
||||
* Build form fields for create caselib.
|
||||
*
|
||||
* @access protected
|
||||
* @return void
|
||||
*/
|
||||
protected function buildCreateForm(): void
|
||||
{
|
||||
$this->view->title = $this->lang->caselib->common . $this->lang->colon . $this->lang->caselib->create;
|
||||
$this->display();
|
||||
}
|
||||
|
||||
/**
|
||||
* 构建创建产品页面数据。
|
||||
* Build form fields for create.
|
||||
*
|
||||
* @param object $data
|
||||
* @param string $uid
|
||||
* @access protected
|
||||
* @return object
|
||||
*/
|
||||
protected function prepareCreateExtras(object $data, string $uid = ''): object
|
||||
{
|
||||
$lib = $data->setForce('type', 'library')
|
||||
->add('addedBy', $this->app->user->account)
|
||||
->add('addedDate', helper::now())
|
||||
->setIF($this->lang->navGroup->caselib != 'qa', 'project', (int)$this->session->project)
|
||||
->stripTags($this->config->caselib->editor->create['id'], $this->config->allowedTags)
|
||||
->remove('uid')
|
||||
->get();
|
||||
|
||||
return $this->loadModel('file')->processImgURL($lib, $this->config->caselib->editor->create['id'], $uid);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user