This commit is contained in:
滔哥
2018-10-24 11:39:08 +08:00
10 changed files with 73 additions and 38 deletions
+21 -21
View File
@@ -113,7 +113,7 @@ $lang->typeAB = 'Type';
$lang->common = new stdclass();
$lang->common->common = 'Common Module';
/* 主导航菜单。*/
/* Main menu. */
$lang->menu = new stdclass();
$lang->menu->my = '<span>Dashboard</span>|my|index';
$lang->menu->product = $lang->productCommon . '|product|index|locate=no';
@@ -126,7 +126,7 @@ $lang->menu->admin = 'Admin|admin|index';
$lang->dividerMenu = ',qa,';
/* 查询条中可以选择的对象列表。*/
/* Object list in search form. */
$lang->searchObjects['bug'] = 'Bug';
$lang->searchObjects['story'] = 'Story';
$lang->searchObjects['task'] = 'Task';
@@ -143,12 +143,12 @@ $lang->searchObjects['testsuite'] = 'Case Library';
$lang->searchObjects['testreport'] = 'Test Report';
$lang->searchTips = 'ID (ctrl+g)';
/* 导入支持的编码格式。*/
/* Code formats for import. */
$lang->importEncodeList['gbk'] = 'GBK';
$lang->importEncodeList['big5'] = 'BIG5';
$lang->importEncodeList['utf-8'] = 'UTF-8';
/* 导出文件的类型列表。*/
/* File type list for export. */
$lang->exportFileTypeList['csv'] = 'csv';
$lang->exportFileTypeList['xml'] = 'xml';
$lang->exportFileTypeList['html'] = 'html';
@@ -156,10 +156,10 @@ $lang->exportFileTypeList['html'] = 'html';
$lang->exportTypeList['all'] = 'All';
$lang->exportTypeList['selected'] = 'Selected';
/* 语言 */
/* Language. */
$lang->lang = 'Language';
/* 风格列表。*/
/* Theme style. */
$lang->theme = 'Theme';
$lang->themes['default'] = 'ZenTao Blue (default)';
$lang->themes['green'] = 'Green';
@@ -169,14 +169,14 @@ $lang->themes['pink'] = 'Pink';
$lang->themes['blackberry'] = 'Blackberry';
$lang->themes['classic'] = 'Classic';
/* 首页菜单设置。*/
/* Index menu settings. */
$lang->index = new stdclass();
$lang->index->menu = new stdclass();
$lang->index->menu->product = "{$lang->productCommon}|product|browse";
$lang->index->menu->project = "{$lang->projectCommon}|project|browse";
/* 我的地盘菜单设置。*/
/* my dashboard menu settings. */
$lang->my = new stdclass();
$lang->my->menu = new stdclass();
@@ -199,7 +199,7 @@ $lang->todo->menu = $lang->my->menu;
$lang->score = new stdclass();
$lang->score->menu = $lang->my->menu;
/* 产品视图设置。*/
/* Product menu settings. */
$lang->product = new stdclass();
$lang->product->menu = new stdclass();
@@ -224,7 +224,7 @@ $lang->story->menu = $lang->product->menu;
$lang->productplan->menu = $lang->product->menu;
$lang->release->menu = $lang->product->menu;
/* 项目视图菜单设置。*/
/* Project menu settings. */
$lang->project = new stdclass();
$lang->project->menu = new stdclass();
@@ -261,7 +261,7 @@ $lang->task->menu = $lang->project->menu;
$lang->build->menu = $lang->project->menu;
$lang->build->menu->qa = array('link' => 'Build|project|build|projectID=%s', 'subModule' => 'bug,build,testtask', 'alias' => 'build,testtask', 'class' => 'dropdown dropdown-hover');
/* QA视图菜单设置。*/
/* QA menu settings. */
$lang->qa = new stdclass();
$lang->qa->menu = new stdclass();
@@ -327,12 +327,12 @@ $lang->caselib->menu->testsuite = array('link' => 'Suite|testsuite|browse|');
$lang->caselib->menu->report = array('link' => 'Report|testreport|browse|');
$lang->caselib->menu->caselib = array('link' => 'Library|testsuite|library', 'alias' => 'createlib,createcase,libview,edit,batchcreatecase,showimport', 'subModule' => 'tree,testcase');
/* 文档视图菜单设置。*/
/* Doc menu settings. */
$lang->doc = new stdclass();
$lang->doc->menu = new stdclass();
//$lang->doc->menu->createLib = array('link' => '<i class="icon icon-folder-plus"></i>&nbsp;Add Doc Lib|doc|createLib', 'float' => 'right');
/* 统计视图菜单设置。*/
/* Report menu settings. */
$lang->report = new stdclass();
$lang->report->menu = new stdclass();
@@ -344,7 +344,7 @@ $lang->report->menu->staff = array('link' => 'Company|report|workload');
$lang->report->notice = new stdclass();
$lang->report->notice->help = 'Note: Report is generated from search results. Please search in the list page before you generate a report.';
/* 组织结构视图菜单设置。*/
/* Company menu settings. */
$lang->company = new stdclass();
$lang->company->menu = new stdclass();
$lang->company->menu->browseUser = array('link' => 'User|company|browse', 'subModule' => 'user');
@@ -361,7 +361,7 @@ $lang->dept->menu = $lang->company->menu;
$lang->group->menu = $lang->company->menu;
$lang->user->menu = $lang->company->menu;
/* 后台管理菜单设置。*/
/* Admin menu settings. */
$lang->admin = new stdclass();
$lang->admin->menu = new stdclass();
$lang->admin->menu->index = array('link' => 'Home|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
@@ -405,7 +405,7 @@ $lang->entry->menu = $lang->admin->menu;
$lang->webhook->menu = $lang->admin->menu;
$lang->message->menu = $lang->admin->menu;
/* 菜单分组。*/
/* Menu group. */
$lang->menugroup = new stdclass();
$lang->menugroup->release = 'product';
$lang->menugroup->story = 'product';
@@ -439,7 +439,7 @@ $lang->menugroup->entry = 'admin';
$lang->menugroup->webhook = 'admin';
$lang->menugroup->message = 'admin';
/* 错误提示信息。*/
/* Error info. */
$lang->error = new stdclass();
$lang->error->companyNotFound = "The domain %s cannot be found!";
$lang->error->length = array("『%s』Length Error. It should be『%s』", "『%s』length should be <=『%s』and >『%s』.");
@@ -465,7 +465,7 @@ $lang->error->noData = 'No Data';
$lang->error->editedByOther = 'This record might have been changed. Please refresh and try to edit again!';
$lang->error->tutorialData = 'No data can be imported in tutorial mode. Please exit tutorial first!';
/* 分页信息。*/
/* Page info. */
$lang->pager = new stdclass();
$lang->pager->noRecord = "No Records";
$lang->pager->digest = " <strong>%s</strong> in total. %s <strong>%s/%s</strong> &nbsp; ";
@@ -498,7 +498,7 @@ $lang->chooseUsersToMail = "Choose users that will be notified.";
$lang->browserNotice = 'Your current browser might not show the best effect. Please use Chrome, Firefox, IE9+, Opera or Safari.';
$lang->noticePasteImg = "Paste images here";
/* 时间格式设置。*/
/* Time formats settings. */
if(!defined('DT_DATETIME1')) define('DT_DATETIME1', 'Y-m-d H:i:s');
if(!defined('DT_DATETIME2')) define('DT_DATETIME2', 'y-m-d H:i');
if(!defined('DT_MONTHTIME1'))define('DT_MONTHTIME1', 'n/d H:i');
@@ -510,7 +510,7 @@ if(!defined('DT_DATE4')) define('DT_DATE4', 'n/j');
if(!defined('DT_TIME1')) define('DT_TIME1', 'H:i:s');
if(!defined('DT_TIME2')) define('DT_TIME2', 'H:i');
/* datepicker 时间*/
/* Datepicker. */
$lang->datepicker = new stdclass();
$lang->datepicker->dpText = new stdclass();
@@ -532,7 +532,7 @@ $lang->datepicker->dayNames = array('Sunday', 'Monday', 'Tuesday', 'Wednesda
$lang->datepicker->abbrDayNames = array('Sun', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat');
$lang->datepicker->monthNames = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
/* Common action icons 通用动作图标 */
/* Common action icons. */
$lang->icons['todo'] = 'check';
$lang->icons['product'] = 'cube';
$lang->icons['bug'] = 'bug';
+1
View File
@@ -13,6 +13,7 @@ $config->doc->create->requiredFields = 'title';
$config->doc->edit->requiredFields = 'title';
$config->doc->customObjectLibs = 'files,customFiles';
$config->doc->notArticleType = '';
$config->doc->custom = new stdclass();
$config->doc->custom->objectLibs = $config->doc->customObjectLibs;
+4 -2
View File
@@ -104,8 +104,8 @@ $lang->doc->libIconList['product'] = 'icon-cube';
$lang->doc->libIconList['project'] = 'icon-stack';
$lang->doc->libIconList['custom'] = 'icon-folder-o';
$lang->doc->systemLibs['product'] = $lang->productCommon . 'Doc Lib';
$lang->doc->systemLibs['project'] = $lang->projectCommon . 'Doc Lib';
$lang->doc->systemLibs['product'] = $lang->productCommon;
$lang->doc->systemLibs['project'] = $lang->projectCommon;
global $config;
if($config->global->flow == 'onlyStory' or $config->global->flow == 'onlyTest') unset($lang->doc->systemLibs['project']);
@@ -179,3 +179,5 @@ $lang->doclib->main['project'] = 'Main Library';
$lang->doclib->tabList['product'] = $lang->productCommon;
$lang->doclib->tabList['project'] = $lang->projectCommon;
$lang->doclib->tabList['custom'] = 'Custom';
$lang->doclib->nameList['custom'] = 'Doc lib name';
+6 -1
View File
@@ -103,7 +103,6 @@ class docModel extends model
$actions = $this->setFastMenu($fastLib);
$actions .= common::hasPriv('doc', 'createLib') ? html::a(helper::createLink('doc', 'createLib', "type={$type}&objectID={$currentLib}"), "<i class='icon icon-folder-plus'></i> " . $this->lang->doc->createLib, '', "class='btn btn-secondary iframe'") : '';
if($libID and common::hasPriv('doc', 'create')) $actions .= html::a(helper::createLink('doc', 'create', "libID=$libID"), "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");
$this->lang->modulePageActions = $actions;
}
@@ -284,6 +283,7 @@ class docModel extends model
->beginIF($this->config->global->flow == 'onlyStory' || $this->config->global->flow == 'onlyTest')->andWhere('project')->eq(0)->fi()
->beginIF($libID)->andWhere('lib')->in($libID)->fi()
->andWhere('lib')->in($allLibs)
->beginIF($this->config->doc->notArticleType)->andWhere('type')->notIN($this->config->doc->notArticleType)->fi()
->andWhere('addedBy')->eq($this->app->user->account)
->orderBy($sort)
->page($pager)
@@ -296,6 +296,7 @@ class docModel extends model
->beginIF($this->config->global->flow == 'onlyTask')->andWhere('product')->eq(0)->fi()
->beginIF($this->config->global->flow == 'onlyStory' || $this->config->global->flow == 'onlyTest')->andWhere('project')->eq(0)->fi()
->andWhere('id')->in($docIdList)
->beginIF($this->config->doc->notArticleType)->andWhere('type')->notIN($this->config->doc->notArticleType)->fi()
->andWhere('lib')->in($allLibs)
->orderBy('editedDate_desc')
->page($pager)
@@ -309,6 +310,7 @@ class docModel extends model
->beginIF($this->config->global->flow == 'onlyStory' || $this->config->global->flow == 'onlyTest')->andWhere('project')->eq(0)->fi()
->beginIF($libID)->andWhere('lib')->in($libID)->fi()
->andWhere('lib')->in($allLibs)
->beginIF($this->config->doc->notArticleType)->andWhere('type')->notIN($this->config->doc->notArticleType)->fi()
->andWhere('collector')->like("%,{$this->app->user->account},%")
->orderBy($sort)
->page($pager)
@@ -353,6 +355,7 @@ class docModel extends model
$docs = $this->dao->select('*')->from(TABLE_DOC)->where($docQuery)
->beginIF(!$libCond)->andWhere("lib")->eq($libID)->fi()
->beginIF($this->config->doc->notArticleType)->andWhere('type')->notIN($this->config->doc->notArticleType)->fi()
->andWhere('deleted')->eq(0)
->fetchAll('id');
foreach($docs as $docID => $doc)
@@ -377,6 +380,7 @@ class docModel extends model
->beginIF($this->config->global->flow == 'onlyStory' || $this->config->global->flow == 'onlyTest')->andWhere('project')->eq(0)->fi()
->beginIF(!empty($docIdList))->andWhere('t1.id')->in($docIdList)->fi()
->andWhere('t1.title', true)->like("%{$this->session->searchDoc}%")
->beginIF($this->config->doc->notArticleType)->andWhere('type')->notIN($this->config->doc->notArticleType)->fi()
->orWhere('t2.content')->like("%{$this->session->searchDoc}%")->markRight(1)
->andWhere('t1.lib')->in($allLibs)
->orderBy($sort)
@@ -454,6 +458,7 @@ class docModel extends model
{
$stmt = $this->dao->select('*')->from(TABLE_DOC)
->where('deleted')->eq(0)
->beginIF($this->config->doc->notArticleType)->andWhere('type')->notIN($this->config->doc->notArticleType)->fi()
->beginIF($libID)->andWhere('lib')->in($libID)->fi()
->beginIF(!empty($module))->andWhere('module')->in($module)->fi()
->query();
+12 -5
View File
@@ -38,16 +38,23 @@ var browseType = '<?php echo $browseType;?>';
<i class="icon icon-search text-muted"></i>
<?php endif;?>
<?php echo $breadTitle;?>
</div>
<nav class="panel-actions btn-toolbar">
<div class="btn-group">
<?php echo html::a('javascript:setBrowseType("bylist")', "<i class='icon icon-bars'></i>", '', "title='{$lang->doc->browseTypeList['list']}' class='btn btn-icon text-primary'");?>
<?php echo html::a('javascript:setBrowseType("bygrid")', "<i class='icon icon-cards-view'></i>", '', "title='{$lang->doc->browseTypeList['grid']}' class='btn btn-icon'");?>
</div>
</div>
<nav class="panel-actions btn-toolbar">
<div class="btn-group">
<?php echo html::a(helper::createLink('tree', 'browse', "libID=$libID&viewType=doc"), "<i class='icon icon-cog'></i>" . $lang->doc->manageType, '',"class='btn btn-link'");?>
<?php if($libID):?>
<div class="dropdown">
<button class="btn" type="button" data-toggle="dropdown"><i class='icon-cog'></i> <span class="caret"></span></button>
<ul class='dropdown-menu'>
<li><?php common::printLink('tree', 'browse', "libID=$libID&viewType=doc", "<i class='icon icon-cog'></i>" . $lang->doc->manageType);?></li>
<li><?php common::printLink('doc', 'editLib', "libID=$libID", "<i class='icon icon-edit'></i>" . $lang->edit, '', "class='iframe'");?></li>
<li><?php common::printLink('doc', 'delete', "libID=$libID", "<i class='icon icon-remove'></i>" . $lang->delete, 'hiddenwin');?></li>
</ul>
</div>
<?php common::printLink('doc', 'create', "libID=$libID", "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");?>
<?php endif;?>
</nav>
</div>
<?php if(empty($docs) and empty($modules) and empty($libs) and empty($attachLibs)):?>
+13 -5
View File
@@ -4,14 +4,22 @@
<div class="panel-title font-normal">
<i class="icon icon-folder-open-o text-muted"></i>
<?php echo $breadTitle;?>
<div class="btn-group">
<?php echo html::a('javascript:setBrowseType("bylist")', "<i class='icon icon-bars'></i>", '', "title='{$lang->doc->browseTypeList['list']}' class='btn btn-icon'");?>
<?php echo html::a('javascript:setBrowseType("bygrid")', "<i class='icon icon-cards-view'></i>", '', "title='{$lang->doc->browseTypeList['grid']}' class='btn btn-icon text-primary'");?>
</div>
<nav class="panel-actions btn-toolbar">
<div class="btn-group">
<?php echo html::a(helper::createLink('tree', 'browse', "libID=$libID&viewType=doc"), "<i class='icon icon-cog'></i>" . $lang->doc->manageType, '',"class='btn btn-link'");?>
<?php echo html::a('javascript:setBrowseType("bylist")', "<i class='icon icon-bars'></i>", '', "title='{$lang->doc->browseTypeList['list']}' class='btn btn-icon'");?>
<?php echo html::a('javascript:setBrowseType("bygrid")', "<i class='icon icon-cards-view'></i>", '', "title='{$lang->doc->browseTypeList['grid']}' class='btn btn-icon text-primary'");?>
</div>
<?php if($libID):?>
<div class="dropdown">
<button class="btn" type="button" data-toggle="dropdown"><i class='icon-cog'></i> <span class="caret"></span></button>
<ul class='dropdown-menu'>
<li><?php common::printLink('tree', 'browse', "libID=$libID&viewType=doc", "<i class='icon icon-cog'></i>" . $lang->doc->manageType);?></li>
<li><?php common::printLink('doc', 'editLib', "libID=$libID", "<i class='icon icon-edit'></i>" . $lang->edit, '', "class='iframe'");?></li>
<li><?php common::printLink('doc', 'delete', "libID=$libID", "<i class='icon icon-remove'></i>" . $lang->delete, 'hiddenwin');?></li>
</ul>
</div>
<?php common::printLink('doc', 'create', "libID=$libID", "<i class='icon icon-plus'></i> " . $this->lang->doc->create, '', "class='btn btn-primary'");?>
<?php endif;?>
</nav>
</div>
</div>
+1 -2
View File
@@ -9,9 +9,8 @@ $sessionString .= session_name() . '=' . session_id();
<div class="detail-content">
<?php endif;?>
<style>
.files-list>li>a {display: inline;}
.files-list>li>a {display: inline; word-wrap: break-word;}
.files-list>li>.right-icon {opacity: 1;}
.files-list>li>a{word-wrap: break-word;}
</style>
<script>
/* Delete a file. */
+1
View File
@@ -141,6 +141,7 @@ $lang->testcase->dittoNotice = 'This Case does not belong to the Product
$lang->testcase->reviewList[0] = 'NO';
$lang->testcase->reviewList[1] = 'YES';
$lang->testcase->priList[0] = '';
$lang->testcase->priList[3] = 3;
$lang->testcase->priList[1] = 1;
$lang->testcase->priList[2] = 2;
+1
View File
@@ -141,6 +141,7 @@ $lang->testcase->dittoNotice = '该用例与上一用例不属于同一
$lang->testcase->reviewList[0] = '否';
$lang->testcase->reviewList[1] = '是';
$lang->testcase->priList[0] = '';
$lang->testcase->priList[3] = 3;
$lang->testcase->priList[1] = 1;
$lang->testcase->priList[2] = 2;
+13 -2
View File
@@ -74,12 +74,23 @@
<?php if($config->global->flow != 'onlyTest'):?>
<tr>
<th class='w-60px'><?php echo $lang->testtask->project;?></th>
<td><?php echo html::a($this->createLink('project', 'story', "projectID=$task->project"), $task->projectName, '', "title='{$task->projectName}'" . ($isOnlybody ? ' target="_blank"' : ''));?></td>
<td><?php echo $isOnlybody ? $task->projectName : html::a($this->createLink('project', 'story', "projectID=$task->project"), $task->projectName, '', "title='{$task->projectName}'");?></td>
</tr>
<?php endif;?>
<tr>
<th><?php echo $lang->testtask->build;?></th>
<td><?php $task->build == 'trunk' ? print($lang->trunk) : print(html::a($this->createLink('build', 'view', "buildID=$task->build"), $task->buildName, '', "title='{$task->buildName}'" . ($isOnlybody ? ' target="_blank"' : '')));?></td>
<td>
<?php
if($task->build == 'trunk')
{
print($lang->trunk);
}
else
{
$isOnlybody ? print($task->buildName) : print(html::a($this->createLink('build', 'view', "buildID=$task->build"), $task->buildName, '', "title='{$task->buildName}'"));
}
?>
</td>
</tr>
<tr>
<th><?php echo $lang->testtask->owner;?></th>