* Finish xuanxuan bug view.

This commit is contained in:
Yagami
2018-12-18 11:15:10 +08:00
parent 25ffec7ee2
commit bcf24e9f50
15 changed files with 76 additions and 652 deletions
+1
View File
@@ -44,3 +44,4 @@
.title-group .chosen-container {width: 1%!important; min-width: 70px;}
.title-group #severity + .chosen-container > .chosen-single {border-radius: 0!important;}
.title-group #pri + .chosen-container > .chosen-single {border-top-left-radius: 0!important; border-bottom-left-radius: 0!important;}
.title-group .has-icon-right{min-width:700px}
+3
View File
@@ -0,0 +1,3 @@
#header{display: none}
#footer{display: none}
#header, #header+#main{min-width: 700px}
+3
View File
@@ -0,0 +1,3 @@
#header{display: none}
#footer{display: none}
#header, #header+#main{min-width: 700px}
+3
View File
@@ -0,0 +1,3 @@
#header{display: none}
#footer{display: none}
#header, #header+#main{min-width: 700px}
+13
View File
@@ -0,0 +1,13 @@
body{padding:0px; margin: 0px}
#header{display: none}
#footer{display: none}
.main-actions{display: none}
#header+#main{min-width:700px}
#mainMenu .pull-left>a{display: none}
#mainMenu .pull-left .divider{display: none}
#mainMenu .pull-right{display: none}
#mainContent .col-4{display: none}
.col-8>.cell{min-height: 300px}
/*备注宽度*/
.modal-dialog{width: 90%}
+3
View File
@@ -0,0 +1,3 @@
#header{display: none}
#footer{display: none}
#header, #header+#main{min-width: 700px}
+13
View File
@@ -0,0 +1,13 @@
body{padding:0px; margin: 0px}
#header{display: none}
#footer{display: none}
.main-actions{display: none}
#header+#main{min-width:700px}
#mainMenu .pull-left>a{display: none}
#mainMenu .pull-left .divider{display: none}
#mainMenu .pull-right{display: none}
#mainContent .col-4{display: none}
.col-8>.cell{min-height: 300px}
/*备注宽度*/
.modal-dialog{width: 90%}
+11
View File
@@ -0,0 +1,11 @@
$(function()
{
$('.title-group .has-icon-right').css('min-width', '100px');
$('#buildBoxActions').remove();
$('#openedBuild').parent().find('input-group-btn').remove();
$('#openedBuild_chosen.chosen-container .chosen-drop').css('min-width', '100px');
$('#tplBoxWrapper .btn-toolbar .btn-group').remove();
$('table tbody tr').eq(3).remove();
$('table tbody tr th').removeClass('w-110px');
$('table tbody tr th').addClass('w-70px');
})
+12
View File
@@ -0,0 +1,12 @@
$(function()
{
var $xuanAction = "<div class='xuancard-actions fixed'>";
if(confirmed != 1) $xuanAction += "<a href='" + confirmLink + "'" + " target='_blank'" + " class='btn btn-link'" + '>' + "<i class='icon-bug-confirmBug icon-search'></i>" + " <span class='text'>" + confirmBug + "</span>" + "</a>";
$xuanAction += "<a href='" + assignLink + "'" + " target='_blank'" + " class='btn btn-link'" + '>' + "<i class='icon-hand-right'></i>" + " <span class='text'>" + assignTo + "</span>" + "</a>";
if(status == 'active') $xuanAction += '<a href="' + resolveLink + '"' + " target='_blank'" + ' class="btn btn-link">' + '<i class="icon-bug-resolve icon-checked"></i>' + ' <span class="text">' + resolve + "</span>" + "</a>";
$xuanAction += "<a href='" + editLink + "'" + " target='_blank' title=" + edit + " class='btn btn-link'" + '>' + "<i class='icon-edit'></i>" + "</a>";
$xuanAction += '</div>';
$('#footer').replaceWith($xuanAction);
})
-1
View File
@@ -21,7 +21,6 @@ js::set('createBuild', $lang->build->create);
js::set('refresh', $lang->refresh);
js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
?>
<style>.title-group .has-icon-right{min-width:700px}</style>
<div id="mainContent" class="main-content fade">
<div class="center-block">
<div class="main-header">
-371
View File
@@ -1,371 +0,0 @@
<?php
/**
* The view file of bug module of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package bug
* @version $Id: view.html.php 4728 2013-05-03 06:14:34Z chencongzhi520@gmail.com $
* @link http://www.zentao.net
*/
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<?php $browseLink = $app->session->bugList != false ? $app->session->bugList : inlink('browse', "productID=$bug->product");?>
<div id="mainMenu" class="clearfix">
<div class="btn-toolbar pull-left">
<?php if(!isonlybody()):?>
<?php echo html::a($browseLink, '<i class="icon icon-back icon-sm"></i> ' . $lang->goback, '', "class='btn btn-secondary'");?>
<div class="divider"></div>
<?php endif;?>
<div class="page-title">
<span class="label label-id"><?php echo $bug->id?></span>
<span class="text" title="<?php echo $bug->title;?>" style='color: <?php echo $bug->color; ?>'><?php echo $bug->title;?></span>
<?php if($bug->deleted):?>
<span class='label label-danger'><?php echo $lang->bug->deleted;?></span>
<?php endif; ?>
</div>
</div>
<?php if(!isonlybody()):?>
<div class="btn-toolbar pull-right">
<?php common::printLink('bug', 'create', "productID={$bug->product}&branch={$bug->branch}&extra=moduleID={$bug->module}", "<i class='icon icon-plus'></i>" . $lang->bug->create, '', "class='btn btn-primary'"); ?>
</div>
<?php endif;?>
</div>
<div id="mainContent" class="main-row">
<div class="main-col col-8">
<div class="cell">
<div class="detail">
<div class="detail-title"><?php echo $lang->bug->legendSteps;?></div>
<div class="detail-content article-content">
<?php
$tplStep = strip_tags(trim($lang->bug->tplStep));
$steps = str_replace('<p>' . $tplStep, '<p class="stepTitle">' . $tplStep . '</p><p>', $bug->steps);
$tplResult = strip_tags(trim($lang->bug->tplResult));
$steps = str_replace('<p>' . $tplResult, '<p class="stepTitle">' . $tplResult . '</p><p>', $steps);
$tplExpect = strip_tags(trim($lang->bug->tplExpect));
$steps = str_replace('<p>' . $tplExpect, '<p class="stepTitle">' . $tplExpect . '</p><p>', $steps);
$steps = str_replace('<p></p>', '', $steps);
echo $steps;
?>
</div>
</div>
<?php echo $this->fetch('file', 'printFiles', array('files' => $bug->files, 'fieldset' => 'true'));?>
<?php $actionFormLink = $this->createLink('action', 'comment', "objectType=bug&objectID=$bug->id");?>
<?php include '../../common/view/action.html.php';?>
</div>
<?php
$params = "bugID=$bug->id";
$copyParams = "productID=$productID&branch=$bug->branch&extras=bugID=$bug->id";
$convertParams = "productID=$productID&branch=$bug->branch&moduleID=0&from=bug&bugID=$bug->id";
?>
<div class='main-actions'>
<div class="btn-toolbar">
<?php common::printBack($browseLink);?>
<?php if(!$bug->deleted):?>
<div class='divider'></div>
<?php
common::printIcon('bug', 'confirmBug', $params, $bug, 'button', 'search', '', 'iframe', true);
common::printIcon('bug', 'assignTo', $params, $bug, 'button', '', '', 'iframe', true);
common::printIcon('bug', 'resolve', $params, $bug, 'button', 'checked', '', 'iframe showinonlybody', true);
common::printIcon('bug', 'close', $params, $bug, 'button', '', '', 'text-danger iframe showinonlybody', true);
common::printIcon('bug', 'activate', $params, $bug, 'button', '', '', 'text-success iframe showinonlybody', true);
if($config->global->flow != 'onlyTest') common::printIcon('bug', 'toStory', "product=$bug->product&branch=$bug->branch&module=0&story=0&project=0&bugID=$bug->id", $bug, 'button', $lang->icons['story']);
common::printIcon('bug', 'createCase', $convertParams, $bug, 'button', 'sitemap');
echo "<div class='divider'></div>";
common::printIcon('bug', 'edit', $params, $bug);
common::printIcon('bug', 'create', $copyParams, $bug, 'button', 'copy');
common::printIcon('bug', 'delete', $params, $bug, 'button', '', 'hiddenwin');
?>
<?php endif;?>
</div>
</div>
</div>
<div class="side-col col-4">
<div class="cell">
<div class='tabs'>
<ul class='nav nav-tabs'>
<li class='active'><a href='#legendBasicInfo' data-toggle='tab'><?php echo $lang->bug->legendBasicInfo;?></a></li>
<?php if($config->global->flow != 'onlyTest'):?>
<li><a href='#legendPrjStoryTask' data-toggle='tab'><?php echo $lang->bug->legendPrjStoryTask;?></a></li>
<?php endif;?>
</ul>
<div class='tab-content'>
<div class='tab-pane active' id='legendBasicInfo'>
<table class="table table-data">
<tbody>
<tr valign='middle'>
<th class='w-70px'><?php echo $lang->bug->product;?></th>
<td><?php if(!common::printLink('bug', 'browse', "productID=$bug->product", $productName)) echo $productName;?></td>
</tr>
<?php if($this->session->currentProductType != 'normal'):?>
<tr>
<th><?php echo $lang->product->branch;?></th>
<td><?php if(!common::printLink('bug', 'browse', "productID=$bug->product&branch=$bug->branch", $branchName)) echo $branchName;?></td>
</tr>
<?php endif;?>
<tr>
<th><?php echo $lang->bug->module;?></th>
<?php
$moduleTitle = '';
ob_start();
if(empty($modulePath))
{
$moduleTitle .= '/';
echo "/";
}
else
{
foreach($modulePath as $key => $module)
{
$moduleTitle .= $module->name;
if(!common::printLink('bug', 'browse', "productID=$bug->product&branch=$module->branch&browseType=byModule&param=$module->id", $module->name)) echo $module->name;
if(isset($modulePath[$key + 1]))
{
$moduleTitle .= '/';
echo $lang->arrow;
}
}
}
$printModule = ob_get_contents();
ob_end_clean();
?>
<td title='<?php echo $moduleTitle?>'><?php echo $printModule?></td>
</tr>
<tr valign='middle'>
<th><?php echo $lang->bug->productplan;?></th>
<td><?php if(!$bug->plan or !common::printLink('productplan', 'view', "planID=$bug->plan&type=bug", $bug->planName)) echo $bug->planName;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->type;?></th>
<td><?php if(isset($lang->bug->typeList[$bug->type])) echo $lang->bug->typeList[$bug->type]; else echo $bug->type;?></td>
</tr>
<tr>
<?php
$hasCustomSeverity = false;
foreach($lang->bug->severityList as $severityKey => $severityValue)
{
if(!empty($severityKey) and (string)$severityKey != (string)$severityValue)
{
$hasCustomSeverity = true;
break;
}
}
?>
<th><?php echo $lang->bug->severity;?></th>
<td>
<?php if($hasCustomSeverity):?>
<span class='label-severity-custom' data-severity='<?php echo $bug->severity;?>' title='<?php echo zget($lang->bug->severityList, $bug->severity);?>'><?php echo zget($lang->bug->severityList, $bug->severity, $bug->severity);?></span>
<?php else:?>
<span class='label-severity' data-severity='<?php echo $bug->severity;?>' title='<?php echo zget($lang->bug->severityList, $bug->severity)?>'></span>
<?php endif;?>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->pri;?></th>
<td><span class='label-pri <?php echo 'label-pri-' . $bug->pri;?>' title='<?php echo zget($lang->bug->priList, $bug->pri);?>'><?php echo zget($lang->bug->priList, $bug->pri)?></span></td>
</tr>
<tr>
<th><?php echo $lang->bug->status;?></th>
<td><span class='status-bug status-<?php echo $bug->status?>'><?php echo $lang->bug->statusList[$bug->status];?></span></td>
</tr>
<tr>
<th><?php echo $lang->bug->activatedCount;?></th>
<td><?php echo $bug->activatedCount;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->activatedDate;?></th>
<td><?php echo $bug->activatedDate;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->confirmed;?></th>
<td><?php echo $lang->bug->confirmedList[$bug->confirmed];?></td>
</tr>
<tr>
<th><?php echo $lang->bug->lblAssignedTo;?></th>
<td><?php if($bug->assignedTo) echo $users[$bug->assignedTo] . $lang->at . $bug->assignedDate;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->deadline;?></th>
<td><?php if($bug->deadline) echo $bug->deadline;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->os;?></th>
<td><?php echo $lang->bug->osList[$bug->os];?></td>
</tr>
<tr>
<th><?php echo $lang->bug->browser;?></th>
<td><?php echo $lang->bug->browserList[$bug->browser];?></td>
</tr>
<tr>
<th><?php echo $lang->bug->keywords;?></th>
<td><?php echo $bug->keywords;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->mailto;?></th>
<td><?php $mailto = explode(',', str_replace(' ', '', $bug->mailto)); foreach($mailto as $account) echo ' ' . $users[$account]; ?></td>
</tr>
</tbody>
</table>
</div>
<?php if($config->global->flow != 'onlyTest'):?>
<div class='tab-pane' id='legendPrjStoryTask'>
<table class='table table-data'>
<tbody>
<tr>
<th class='w-60px'><?php echo $lang->bug->project;?></th>
<td><?php if($bug->project) echo html::a($this->createLink('project', 'browse', "projectid=$bug->project"), $bug->projectName);?></td>
</tr>
<tr class='nofixed'>
<th><?php echo $lang->bug->story;?></th>
<td>
<?php
if($bug->story) echo html::a($this->createLink('story', 'view', "storyID=$bug->story", '', true), "#$bug->story $bug->storyTitle", '', "class='iframe' data-width='80%'");
if($bug->storyStatus == 'active' and $bug->latestStoryVersion > $bug->storyVersion)
{
echo "(<span class='warning'>{$lang->story->changed}</span> ";
echo html::a($this->createLink('bug', 'confirmStoryChange', "bugID=$bug->id"), $lang->confirm, 'hiddenwin');
echo ")";
}
?>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->task;?></th>
<td><?php if($bug->task) echo html::a($this->createLink('task', 'view', "taskID=$bug->task", '', true), $bug->taskName, '', "class='iframe' data-width='80%'");?></td>
</tr>
</tbody>
</table>
</div>
<?php endif;?>
</div>
</div>
</div>
<div class="cell">
<div class='tabs'>
<ul class='nav nav-tabs'>
<li class='active'><a href='#legendLife' data-toggle='tab'><?php echo $lang->bug->legendLife;?></a></li>
<li><a href='#legendMisc' data-toggle='tab'><?php echo $lang->bug->legendMisc;?></a></li>
</ul>
<div class='tab-content'>
<div class='tab-pane active' id='legendLife'>
<table class="table table-data">
<tbody>
<tr>
<th class='w-90px'><?php echo $lang->bug->openedBy;?></th>
<td> <?php echo zget($users, $bug->openedBy) . $lang->at . $bug->openedDate;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->openedBuild;?></th>
<td>
<?php
if($bug->openedBuild)
{
$openedBuilds = explode(',', $bug->openedBuild);
foreach($openedBuilds as $openedBuild) isset($builds[$openedBuild]) ? print($builds[$openedBuild] . '<br />') : print($openedBuild . '<br />');
}
else
{
echo $bug->openedBuild;
}
?>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->lblResolved;?></th>
<td><?php if($bug->resolvedBy) echo zget($users, $bug->resolvedBy) . $lang->at . $bug->resolvedDate;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedBuild;?></th>
<td><?php if(isset($builds[$bug->resolvedBuild])) echo $builds[$bug->resolvedBuild]; else echo $bug->resolvedBuild;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->resolution;?></th>
<td>
<?php
echo isset($lang->bug->resolutionList[$bug->resolution]) ? $lang->bug->resolutionList[$bug->resolution] : $bug->resolution;
if(isset($bug->duplicateBugTitle)) echo " #$bug->duplicateBug:" . html::a($this->createLink('bug', 'view', "bugID=$bug->duplicateBug", '', true), $bug->duplicateBugTitle, '', "class='iframe' data-width='80%'");
?>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->closedBy;?></th>
<td><?php if($bug->closedBy) echo zget($users, $bug->closedBy) . $lang->at . $bug->closedDate;?></td>
</tr>
<tr>
<th><?php echo $lang->bug->lblLastEdited;?></th>
<td><?php if($bug->lastEditedBy) echo zget($users, $bug->lastEditedBy, $bug->lastEditedBy) . $lang->at . $bug->lastEditedDate?></td>
</tr>
</tbody>
</table>
</div>
<div class='tab-pane' id='legendMisc'>
<table class="table table-data">
<tbody>
<tr class='text-top'>
<th class='w-80px'><?php echo $lang->bug->linkBug;?></th>
<td>
<?php
if(isset($bug->linkBugTitles))
{
foreach($bug->linkBugTitles as $linkBugID => $linkBugTitle)
{
echo html::a($this->createLink('bug', 'view', "bugID=$linkBugID", '', true), "#$linkBugID $linkBugTitle", '', "class='iframe' data-width='80%'") . '<br />';
}
}
?>
</td>
</tr>
<?php if($bug->case):?>
<tr>
<th class='w-60px'><?php echo $lang->bug->fromCase;?></th>
<td><?php echo html::a($this->createLink('testcase', 'view', "caseID=$bug->case", '', true), "#$bug->case $bug->caseTitle", '', "class='iframe' data-width='80%'");?></td>
</tr>
<?php endif;?>
<?php if($bug->toCases):?>
<tr>
<th><?php echo $lang->bug->toCase;?></th>
<td>
<?php
foreach($bug->toCases as $caseID => $case)
{
echo '<p style="margin-bottom:0;">' . html::a($this->createLink('testcase', 'view', "caseID=$caseID", '', true), $case, '', "class='iframe' data-width='80%'") . '</p>';
}
?>
</td>
</tr>
<?php endif;?>
<?php if($config->global->flow != 'onlyTest'):?>
<?php if($bug->toStory != 0):?>
<tr>
<th><?php echo $lang->bug->toStory;?></th>
<td><?php echo html::a($this->createLink('story', 'view', "storyID=$bug->toStory", '', true), "#$bug->toStory $bug->toStoryTitle", '', "class='iframe' data-width='80%'");?></td>
</tr>
<?php endif;?>
<?php if($bug->toTask != 0):?>
<tr>
<th><?php echo $lang->bug->toTask;?></th>
<td><?php echo html::a($this->createLink('task', 'view', "taskID=$bug->toTask", '', true), "#$bug->toTask $bug->toTaskTitle", '', "class='iframe' data-width='80%'");?></td>
</tr>
<?php endif;?>
<?php endif;?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="mainActions" class='main-actions'>
<?php common::printPreAndNext($preAndNext);?>
</div>
<?php include '../../common/view/syntaxhighlighter.html.php';?>
<?php include '../../common/view/footer.html.php';?>
-211
View File
@@ -1,211 +0,0 @@
<?php
/**
* The create view of bug module of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package bug
* @version $Id: create.html.php 4903 2013-06-26 05:32:59Z wyd621@gmail.com $
* @link http://www.zentao.net
*/
?>
<?php
include '../../common/view/header.lite.html.php';
include '../../common/view/kindeditor.html.php';
include '../../common/view/datepicker.html.php';
?>
<style>
body{padding-bottom:0px}
#openedBuild_chosen.chosen-container .chosen-drop {min-width: 100px;}
#module_chosen.chosen-container .chosen-drop{min-width: 100px;}
</style>
<div id="mainContent" class="main-content fade" style='padding-bottom:0px'>
<form class="load-indicator main-form form-ajax" method='post' enctype='multipart/form-data' id='dataform'>
<table class="table table-form">
<tbody>
<tr>
<th class='w-70px'><?php echo $lang->bug->product;?></th>
<td>
<div class='input-group'>
<?php echo html::select('product', $products, $productID, "onchange='loadAll(this.value);' class='form-control chosen control-product' autocomplete='off'");?>
<?php if($this->session->currentProductType != 'normal'):?>
<?php echo html::select('branch', $branches, $branch, "onchange='loadBranch()' class='form-control chosen control-branch'");?>
<?php endif;?>
</div>
</td>
<td>
<div class='input-group' id='moduleIdBox'>
<span class="input-group-addon"><?php echo $lang->bug->module?></span>
<?php echo html::select('module', $moduleOptionMenu, $moduleID, "onchange='loadModuleRelated()' class='form-control chosen'"); ?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->project;?></th>
<td><span id='projectIdBox'><?php echo html::select('project', $projects, $projectID, "class='form-control chosen' onchange='loadProjectRelated(this.value)' autocomplete='off'");?></span></td>
<td>
<div class='input-group' id='buildBox'>
<span class="input-group-addon"><?php echo $lang->bug->openedBuild?></span>
<?php echo html::select('openedBuild[]', $builds, $buildID, "size=4 multiple=multiple class='chosen form-control'");?>
</div>
</td>
</tr>
<tr>
<th><nobr><?php echo $lang->bug->lblAssignedTo;?></nobr></th>
<td>
<div class='input-group'>
<?php echo html::select('assignedTo', $projectMembers, $assignedTo, "class='form-control chosen'");?>
</div>
</td>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->bug->deadline?></span>
<span><?php echo html::input('deadline', $deadline, "class='form-control form-date'");?></span>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->type;?></th>
<td>
<?php
/* Remove the unused types. */
unset($lang->bug->typeList['designchange']);
unset($lang->bug->typeList['newfeature']);
unset($lang->bug->typeList['trackthings']);
echo html::select('type', $lang->bug->typeList, $type, "class='form-control chosen'");
?>
</td>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->bug->os?></span>
<?php echo html::select('os', $lang->bug->osList, $os, "class='form-control chosen'");?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->browser;?></th>
<td> <?php echo html::select('browser', $lang->bug->browserList, $browser, "class='form-control chosen'");?> </td>
</tr>
<tr>
<th><?php echo $lang->bug->title;?></th>
<td colspan='2'>
<div class="input-group title-group">
<div class="input-control has-icon-right">
<?php echo html::input('title', $bugTitle, "class='form-control' autocomplete='off' required");?>
<div class="colorpicker">
<button type="button" class="btn btn-link dropdown-toggle" data-toggle="dropdown"><span class="cp-title"></span><span class="color-bar"></span><i class="ic"></i></button>
<ul class="dropdown-menu clearfix">
<li class="heading"><?php echo $lang->story->colorTag;?><i class="icon icon-close"></i></li>
</ul>
<input type="hidden" class="colorpicker" id="color" name="color" value="" data-icon="color" data-wrapper="input-control-icon-right" data-update-color="#title" data-provide="colorpicker">
</div>
</div>
<span class="input-group-addon fix-border br-0"><?php echo $lang->bug->severity;?></span>
<?php
$hasCustomSeverity = false;
foreach($lang->bug->severityList as $severityKey => $severityValue)
{
if(!empty($severityKey) and (string)$severityKey != (string)$severityValue)
{
$hasCustomSeverity = true;
break;
}
}
?>
<?php if($hasCustomSeverity):?>
<?php echo html::select('severity', (array)$lang->bug->severityList, $severity, "class='form-control'");?>
<?php else: ?>
<div class="input-group-btn pri-selector" data-type="severity">
<button type="button" class="btn dropdown-toggle br-0" data-toggle="dropdown">
<span class="pri-text"><span class="label-severity" data-severity="<?php echo $severity;?>" title="<?php echo $severity;?>"></span></span> &nbsp;<span class="caret"></span>
</button>
<div class='dropdown-menu pull-right'>
<?php echo html::select('severity', (array)$lang->bug->severityList, $severity, "class='form-control' data-provide='labelSelector' data-label-class='label-severity'");?>
</div>
</div>
<?php endif; // end print severity selector ?>
<span class="input-group-addon fix-border br-0"><?php echo $lang->bug->pri;?></span>
<?php
$hasCustomPri = false;
foreach($lang->bug->priList as $priKey => $priValue)
{
if(!empty($priKey) and (string)$priKey != (string)$priValue)
{
$hasCustomPri = true;
break;
}
}
$priList = $lang->bug->priList;
if(end($priList))
{
unset($priList[0]);
$priList[0] = '';
}
?>
<?php if($hasCustomPri):?>
<?php echo html::select('pri', (array)$priList, $pri, "class='form-control'");?>
<?php else: ?>
<div class="input-group-btn pri-selector" data-type="pri">
<button type="button" class="btn dropdown-toggle br-0" data-toggle="dropdown">
<span class="pri-text"><span class="label-pri label-pri-<?php echo empty($pri) ? '0' : $pri?>" title="<?php echo $pri?>"><?php echo $pri?></span></span> &nbsp;<span class="caret"></span>
</button>
<div class='dropdown-menu pull-right'>
<?php echo html::select('pri', (array)$priList, $pri, "class='form-control' data-provide='labelSelector' data-label-class='label-pri'");?>
</div>
</div>
<?php endif; ?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->steps;?></th>
<td colspan='2'> <?php echo html::textarea('steps', $steps, "rows='10' class='form-control'");?> </td>
</tr>
<tr>
<th><?php echo $lang->bug->story;?></th>
<td>
<span id='storyIdBox'><?php echo html::select('story', empty($stories) ? '' : $stories, $storyID, "class='form-control chosen'");?></span>
</td>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->bug->task?></span>
<?php echo html::select('task', '', $taskID, "class='form-control chosen'") . html::hidden('oldTaskID', $taskID);?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->lblMailto;?></th>
<td>
<div class='input-group' id='contactListGroup'>
<?php
echo html::select('mailto[]', $users, str_replace(' ', '', $mailto), "class='form-control chosen' multiple");
echo $this->fetch('my', 'buildContactLists');
?>
</div>
</td>
<td <?php echo $colspan?>>
<div class='input-group'>
<span class='input-group-addon' id='keywordsAddonLabel'><?php echo $lang->bug->keywords;?></span>
<?php echo html::input('keywords', $keywords, "class='form-control'");?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->files;?></th>
<td colspan='2'><?php echo $this->fetch('file', 'buildform', 'fileCount=1&percent=0.85');?></td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="3" class="text-center form-actions">
<?php echo html::submitButton();?>
<?php echo html::hidden('case', (int)$caseID) . html::hidden('caseVersion', (int)$version);?>
<?php echo html::hidden('result', (int)$runID) . html::hidden('testtask', (int)$testtask);?>
</td>
</tr>
</tfoot>
</table>
</form>
</div>
-68
View File
@@ -1,68 +0,0 @@
<?php
/**
* The view file of bug module of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package bug
* @version $Id: view.html.php 4728 2013-05-03 06:14:34Z chencongzhi520@gmail.com $
* @link http://www.zentao.net
*/
?>
<?php include '../../common/view/header.lite.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<style>
#main {padding: 0px 0;}
</style>
<div class='xuanxuan-card'>
<div id="mainContent" class="main-row">
<div class='panel-heading strong'>
<span class="label label-id"><?php echo $bug->id;?></span> <span class="text" title='<?php echo $bug->title;?>'><?php echo $bug->title;?></span>
</div>
<div class="main-col">
<div class="cell">
<div class="detail">
<div class="detail-title"><?php echo $lang->bug->legendSteps;?></div>
<div class="detail-content article-content">
<?php
$tplStep = strip_tags(trim($lang->bug->tplStep));
$steps = str_replace('<p>' . $tplStep, '<p class="stepTitle">' . $tplStep . '</p><p>', $bug->steps);
$tplResult = strip_tags(trim($lang->bug->tplResult));
$steps = str_replace('<p>' . $tplResult, '<p class="stepTitle">' . $tplResult . '</p><p>', $steps);
$tplExpect = strip_tags(trim($lang->bug->tplExpect));
$steps = str_replace('<p>' . $tplExpect, '<p class="stepTitle">' . $tplExpect . '</p><p>', $steps);
$steps = str_replace('<p></p>', '', $steps);
echo $steps;
?>
</div>
</div>
<?php echo $this->fetch('file', 'printFiles', array('files' => $bug->files, 'fieldset' => 'true'));?>
<?php $actionFormLink = $this->createLink('action', 'comment', "objectType=bug&objectID=$bug->id");?>
<?php include '../../common/view/action.html.php';?>
</div>
<?php
$params = "bugID=$bug->id";
$copyParams = "productID=$productID&branch=$bug->branch&extras=bugID=$bug->id";
$convertParams = "productID=$productID&branch=$bug->branch&moduleID=0&from=bug&bugID=$bug->id";
?>
</div>
</div>
</div>
<div class='xuancard-actions fixed'>
<?php
$params = "id=$bug->id";
echo "<div class='btn-group'>";
common::printIcon('bug', 'confirmBug', $params, $bug, 'button', 'confirm', '', 'iframe', true, "data-width='90%'");
common::printIcon('bug', 'assignTo', $params, $bug, 'button', '', '', 'iframe', true, "data-width='90%'");
common::printIcon('bug', 'resolve', $params, $bug, 'button', 'checked', '', 'iframe showinonlybody', true, "data-width='90%'");
common::printIcon('bug', 'activate', $params, $bug, 'button', '', '', 'text-success iframe showinonlybody', true, "data-width='90%'");
common::printIcon('bug', 'edit', $params, $bug, 'button', '', '', 'iframe showinonlybody', true, "data-width='90%'");
common::printIcon('bug', 'close', $params, $bug, 'button', '', '', 'text-danger iframe showinonlybody', true, "data-width='90%'");
echo "</div>";
?>
</div>
<?php include '../../common/view/syntaxhighlighter.html.php';?>
+13
View File
@@ -0,0 +1,13 @@
body{padding:0px; margin: 0px}
#header{display: none}
#footer{display: none}
.main-actions{display: none}
#header+#main{min-width:700px}
#mainMenu .pull-left>a{display: none}
#mainMenu .pull-left .divider{display: none}
#mainMenu .pull-right{display: none}
#mainContent .col-4{display: none}
.col-8>.cell{min-height: 300px}
/*备注宽度*/
.modal-dialog{width: 90%}
+1 -1
View File
@@ -4,9 +4,9 @@ $(function()
if(status != 'closed') $xuanAction += "<a href='" + changeLink + "'" + " target='_blank'" + " class='btn btn-link'" + '>' + "<i class='icon-story-change icon-fork'></i>" + " <span class='text'>" + change + "</span>" + "</a>";
if(status == 'draft') $xuanAction += "<a href='" + reviewLink + "'" + " target='_blank'" + " class='btn btn-link'" + '>' + "<i class='icon-glasses'></i>" + " <span class='text'>" + review + "</span>" + "</a>";
$xuanAction += "<a href='" + editLink + "'" + " target='_blank' title=" + edit + " class='btn btn-link'" + '>' + "<i class='icon-edit'></i>" + "</a>";
if(status != 'closed') $xuanAction += '<a href="' + closeLink + '"' + " target='_blank'" + ' class="btn btn-link">' + '<i class="icon-story-close icon-off"></i>' + ' <span class="text">' + close + "</span>" + "</a>";
if(status == 'closed') $xuanAction += '<a href="' + activateLink + '"' + " target='_blank'" + ' class="btn btn-link">' + '<i class="icon-story-activate icon-magic"></i>' + ' <span class="text">' + activate + "</span>" + "</a>";
$xuanAction += "<a href='" + editLink + "'" + " target='_blank' title=" + edit + " class='btn btn-link'" + '>' + "<i class='icon-edit'></i>" + "</a>";
$xuanAction += '</div>';
$('#footer').replaceWith($xuanAction);