Merge branch 'master' of github.com:easysoft/zentaopms

This commit is contained in:
wangyidong
2018-05-16 11:05:24 +08:00
43 changed files with 986 additions and 935 deletions
File diff suppressed because one or more lines are too long
+169 -170
View File
@@ -11,184 +11,185 @@
*/
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/datepicker.html.php';?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['bug']);?></span>
<strong>
<small class='text-muted'><?php echo html::icon($lang->icons['batchCreate']);?></small>
<div id='mainContent' class='main-content'>
<div class='main-header'>
<h2>
<?php echo $lang->bug->batchCreate;?>
<?php if($this->session->currentProductType !== 'normal') echo '<span class="label label-info">' . $branches[$branch] . '</span>';?>
</strong>
<div class='actions'>
<?php if(common::hasPriv('file', 'uploadImages')) echo html::a($this->createLink('file', 'uploadImages', 'module=bug&params=' . helper::safe64Encode("productID=$productID&projectID=$projectID&moduleID=$moduleID")), $lang->uploadImages, '', "data-toggle='modal' data-type='iframe' class='btn btn-primary' data-width='70%'")?>
<?php echo html::commonButton($lang->pasteText, "data-toggle='myModal'", 'btn btn-primary')?>
<button type="button" class="btn btn-default" data-toggle="customModal"><i class='icon icon-cog'></i> </button>
</h2>
<div class="pull-right btn-toolbar">
<?php if(common::hasPriv('file', 'uploadImages')) echo html::a($this->createLink('file', 'uploadImages', 'module=bug&params=' . helper::safe64Encode("productID=$productID&projectID=$projectID&moduleID=$moduleID")), $lang->uploadImages, '', "data-toggle='modal' data-type='iframe' class='btn btn-info' data-width='70%'")?>
<?php echo html::commonButton($lang->pasteText, "data-toggle='importLinesModal'", 'btn btn-info')?>
<?php $customLink = $this->createLink('custom', 'ajaxSaveCustomFields', 'module=bug&section=custom&key=batchCreateFields')?>
<?php include '../../common/view/customfield.html.php';?>
</div>
</div>
</div>
<?php
$visibleFields = array();
$requiredFields = array();
foreach(explode(',', $showFields) as $field)
{
if($field) $visibleFields[$field] = '';
}
foreach(explode(',', $this->config->bug->create->requiredFields) as $field)
{
if($field)
{
$requiredFields[$field] = '';
if(strpos(",{$config->bug->list->customBatchCreateFields},", ",{$field},") !== false) $visibleFields[$field] = '';
}
}
?>
<form class='form-condensed' class='form-condensed' method='post' target='hiddenwin'>
<table class='table table-fixed table-form with-border'>
<thead>
<tr>
<th class='w-50px'> <?php echo $lang->idAB;?></th>
<th class='w-120px<?php echo zget($visibleFields, $product->type, ' hidden')?>'> <?php echo $lang->product->branch;?></th>
<th class='w-120px'> <?php echo $lang->bug->module;?> <span class='required'></span></th>
<th class='w-130px<?php echo zget($visibleFields, 'project', ' hidden')?>'>
<?php echo $lang->bug->project;?>
<?php if(isset($requiredFields['project'])) echo " <span class='required'></span>";?>
</th>
<th><?php echo $lang->bug->openedBuild;?> <span class='required'></span></th>
<th><?php echo $lang->bug->title;?> <span class='required'></span></th>
<th class='<?php echo zget($visibleFields, 'deadline', 'hidden')?>'>
<?php echo $lang->bug->deadline;?>
<?php if(isset($requiredFields['deadline'])) echo " <span class='required'></span>";?>
</th>
<th class='<?php echo zget($visibleFields, 'steps', 'hidden')?>'>
<?php echo $lang->bug->steps;?>
<?php if(isset($requiredFields['steps'])) echo " <span class='required'></span>";?>
</th>
<th class='w-100px<?php echo zget($visibleFields, 'type', ' hidden')?>'>
<?php echo $lang->typeAB;?>
<?php if(isset($requiredFields['type'])) echo " <span class='required'></span>";?>
</th>
<th class='w-80px<?php echo zget($visibleFields, 'pri', ' hidden')?>'>
<?php echo $lang->bug->pri;?>
<?php if(isset($requiredFields['pri'])) echo " <span class='required'></span>";?>
</th>
<th class='w-80px<?php echo zget($visibleFields, 'severity', ' hidden')?>'>
<?php echo $lang->bug->severity;?>
<?php if(isset($requiredFields['severity'])) echo " <span class='required'></span>";?>
</th>
<th class='w-120px<?php echo zget($visibleFields, 'os', ' hidden')?>'>
<?php echo $lang->bug->os;?>
<?php if(isset($requiredFields['os'])) echo " <span class='required'></span>";?>
</th>
<th class='w-100px<?php echo zget($visibleFields, 'browser', ' hidden')?>'>
<?php echo $lang->bug->browser;?>
<?php if(isset($requiredFields['browser'])) echo " <span class='required'></span>";?>
</th>
<th class='<?php echo zget($visibleFields, 'keywords', ' hidden')?>'>
<?php echo $lang->bug->keywords;?>
<?php if(isset($requiredFields['keywords'])) echo " <span class='required'></span>";?>
</th>
</tr>
</thead>
<tbody>
<?php
/* Remove the unused types. */
unset($lang->bug->typeList['designchange']);
unset($lang->bug->typeList['newfeature']);
unset($lang->bug->typeList['trackthings']);
$moduleOptionMenu += array('ditto' => $lang->bug->ditto);
$projects += array('ditto' => $lang->bug->ditto);
$lang->bug->typeList += array('ditto' => $lang->bug->ditto);
$lang->bug->priList += array('ditto' => $lang->bug->ditto);
$lang->bug->osList += array('ditto' => $lang->bug->ditto);
$lang->bug->browserList += array('ditto' => $lang->bug->ditto);
?>
<?php $i = 0; ?>
<?php if(!empty($titles)):?>
<?php foreach($titles as $bugTitle => $fileName):?>
<?php
$moduleID = $i == 0 ? $moduleID : 'ditto';
$projectID = $i == 0 ? $projectID : 'ditto';
$type = $i == 0 ? '' : 'ditto';
$pri = $i == 0 ? 0 : 'ditto';
$os = $i == 0 ? '' : 'ditto';
$browser = $i == 0 ? '' : 'ditto';
?>
<tr class='text-left'>
<td><?php echo $i+1;?></td>
<td class='text-left<?php echo zget($visibleFields, $product->type, ' hidden')?>' style='overflow:visible'><?php echo html::select("branches[$i]", $branches, $branch, "class='form-control chosen' onchange='setBranchRelated(this.value, $productID, $i)'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[$i]", $moduleOptionMenu, $moduleID, "class='form-control chosen'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'project', ' hidden')?>' style='overflow:visible'><?php echo html::select("projects[$i]", $projects, $projectID, "class='form-control chosen' onchange='loadProjectBuilds($productID, this.value, $i)'");?></td>
<td class='text-left' style='overflow:visible' id='buildBox<?php echo $i;?>'><?php echo html::select("openedBuilds[$i][]", $builds, 'trunk', "class='form-control chosen' multiple");?></td>
<td style='overflow:visible'>
<div class='input-group'>
<?php echo html::hidden("color[$i]", '', "data-provide='colorpicker' data-wrapper='input-group-btn fix-border-right' data-pull-menu-right='false' data-btn-tip='{$lang->bug->colorTag}' data-update-text='#title\\[{$i}\\]'");?>
<?php echo html::input("title[$i]", $bugTitle, "class='form-control' autocomplete='off'") . html::hidden("uploadImage[$i]", $fileName);?>
</div>
</td>
<td class='<?php echo zget($visibleFields, 'deadline', 'hidden')?>'><?php echo html::input("deadlines[$i]", '', "class='form-control form-date'");?></td>
<td class='<?php echo zget($visibleFields, 'steps', 'hidden')?>'><?php echo html::textarea("stepses[$i]", '', "rows='1' class='form-control autosize'");?></td>
<td class='<?php echo zget($visibleFields, 'type', 'hidden')?>' style='overflow:visible'> <?php echo html::select("types[$i]", $lang->bug->typeList, $type, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>' style='overflow:visible'> <?php echo html::select("pris[$i]", $lang->bug->priList, $pri, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'severity', 'hidden')?>' style='overflow:visible'><?php echo html::select("severities[$i]", $lang->bug->severityList, '', "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'os', 'hidden')?>' style='overflow:visible'> <?php echo html::select("oses[$i]", $lang->bug->osList, $os, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'browser', 'hidden')?>' style='overflow:visible'> <?php echo html::select("browsers[$i]", $lang->bug->browserList, $browser, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'><?php echo html::input("keywords[$i]", '', "class='form-control' autocomplete='off'");?></td>
</tr>
<?php $i++;?>
<?php endforeach;?>
<?php endif;?>
<?php $nextStart = $i;?>
<?php for($i = $nextStart; $i < $config->bug->batchCreate; $i++):?>
<?php
$moduleID = $i - $nextStart == 0 ? $moduleID : 'ditto';
$projectID = $i - $nextStart == 0 ? $projectID : 'ditto';
$type = $i - $nextStart == 0 ? '' : 'ditto';
$pri = $i - $nextStart == 0 ? 0 : 'ditto';
$os = $i - $nextStart == 0 ? '' : 'ditto';
$browser = $i - $nextStart == 0 ? '' : 'ditto';
?>
<tr class='text-left'>
<td><?php echo $i+1;?></td>
<td class='text-left<?php echo zget($visibleFields, $product->type, ' hidden')?>' style='overflow:visible'><?php echo html::select("branches[$i]", $branches, $branch, "class='form-control chosen' onchange='setBranchRelated(this.value, $productID, $i)'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[$i]", $moduleOptionMenu, $moduleID, "class='form-control chosen'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'project', ' hidden')?>' style='overflow:visible'><?php echo html::select("projects[$i]", $projects, $projectID, "class='form-control chosen' onchange='loadProjectBuilds($productID, this.value, $i)'");?></td>
<td class='text-left' style='overflow:visible' id='buildBox<?php echo $i;?>'><?php echo html::select("openedBuilds[$i][]", $builds, '', "class='form-control chosen' multiple");?></td>
<td style='overflow:visible'>
<div class='input-group'>
<?php echo html::hidden("color[$i]", '', "data-provide='colorpicker' data-wrapper='input-group-btn fix-border-right' data-pull-menu-right='false' data-btn-tip='{$lang->bug->colorTag}' data-update-text='#title\\[{$i}\\]'");?>
<?php echo html::input("title[$i]", '', "class='form-control' autocomplete='off'");?>
</div>
</td>
<td class='<?php echo zget($visibleFields, 'deadline', 'hidden')?>'><?php echo html::input("deadlines[$i]", '', "class='form-control form-date'");?></td>
<td class='<?php echo zget($visibleFields, 'steps', 'hidden')?>'><?php echo html::textarea("stepses[$i]", '', "rows='1' class='form-control autosize'");?></td>
<td class='<?php echo zget($visibleFields, 'type', 'hidden')?>' style='overflow:visible'> <?php echo html::select("types[$i]", $lang->bug->typeList, $type, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>' style='overflow:visible'> <?php echo html::select("pris[$i]", $lang->bug->priList, $pri, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'severity', 'hidden')?>' style='overflow:visible'><?php echo html::select("severities[$i]", $lang->bug->severityList, '', "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'os', 'hidden')?>' style='overflow:visible'> <?php echo html::select("oses[$i]", $lang->bug->osList, $os, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'browser', 'hidden')?>' style='overflow:visible'> <?php echo html::select("browsers[$i]", $lang->bug->browserList, $browser, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'><?php echo html::input("keywords[$i]", '', "class='form-control' autocomplete='off'");?></td>
</tr>
<?php endfor;?>
</tbody>
<tfoot>
<tr><td colspan='<?php echo count($visibleFields) + 3?>' class='text-center'><?php echo html::submitButton() . html::backButton();?></td></tr>
</tfoot>
</table>
</form>
<?php
$visibleFields = array();
$requiredFields = array();
foreach(explode(',', $showFields) as $field)
{
if($field) $visibleFields[$field] = '';
}
foreach(explode(',', $this->config->bug->create->requiredFields) as $field)
{
if($field)
{
$requiredFields[$field] = '';
if(strpos(",{$config->bug->list->customBatchCreateFields},", ",{$field},") !== false) $visibleFields[$field] = '';
}
}
?>
<form class='load-indicator main-form' method='post' target='hiddenwin' id='batchCreateForm'>
<table class='table table-form'>
<thead>
<tr>
<th class='w-50px'><?php echo $lang->idAB;?></th>
<th class='w-120px<?php echo zget($visibleFields, $product->type, ' hidden')?>'> <?php echo $lang->product->branch;?></th>
<th class='w-120px required'> <?php echo $lang->bug->module;?></th>
<th class='w-130px<?php echo zget($visibleFields, 'project', ' hidden') . zget($requiredFields, 'project', '', ' required');?>'><?php echo $lang->bug->project;?></th>
<th class='required'><?php echo $lang->bug->openedBuild;?></th>
<th class='required'><?php echo $lang->bug->title;?></th>
<th class='<?php echo zget($visibleFields, 'deadline', 'hidden') . zget($requiredFields, 'deadline', '', ' required');?>'><?php echo $lang->bug->deadline;?></th>
<th class='<?php echo zget($visibleFields, 'steps', 'hidden') . zget($requiredFields, 'steps', '', ' required');?>'><?php echo $lang->bug->steps;?></th>
<th class='w-100px<?php echo zget($visibleFields, 'type', ' hidden') . zget($requiredFields, 'type', '', ' required');?>'><?php echo $lang->typeAB;?></th>
<th class='w-80px<?php echo zget($visibleFields, 'pri', ' hidden') . zget($requiredFields, 'pri', '', ' required');?>'><?php echo $lang->bug->pri;?></th>
<th class='w-90px<?php echo zget($visibleFields, 'severity', ' hidden') . zget($requiredFields, 'severity', '', ' required');?>'><?php echo $lang->bug->severity;?></th>
<th class='w-120px<?php echo zget($visibleFields, 'os', ' hidden') . zget($requiredFields, 'os', '', ' required');?>'><?php echo $lang->bug->os;?></th>
<th class='w-100px<?php echo zget($visibleFields, 'browser', ' hidden') . zget($requiredFields, 'browser', '', ' required');?>'><?php echo $lang->bug->browser;?></th>
<th class='<?php echo zget($visibleFields, 'keywords', ' hidden') . zget($requiredFields, 'keywords', '', ' required');?>'><?php echo $lang->bug->keywords;?></th>
</tr>
</thead>
<tbody>
<?php
/* Remove the unused types. */
unset($lang->bug->typeList['designchange']);
unset($lang->bug->typeList['newfeature']);
unset($lang->bug->typeList['trackthings']);
$moduleOptionMenu += array('ditto' => $lang->bug->ditto);
$projects += array('ditto' => $lang->bug->ditto);
$lang->bug->typeList += array('ditto' => $lang->bug->ditto);
$lang->bug->priList += array('ditto' => $lang->bug->ditto);
$lang->bug->osList += array('ditto' => $lang->bug->ditto);
$lang->bug->browserList += array('ditto' => $lang->bug->ditto);
?>
<?php $i = 0; ?>
<?php if(!empty($titles)):?>
<?php foreach($titles as $bugTitle => $fileName):?>
<?php
$moduleID = $i == 0 ? $moduleID : 'ditto';
$projectID = $i == 0 ? $projectID : 'ditto';
$type = $i == 0 ? '' : 'ditto';
$pri = $i == 0 ? 0 : 'ditto';
$os = $i == 0 ? '' : 'ditto';
$browser = $i == 0 ? '' : 'ditto';
?>
<tr>
<td class='text-center'><?php echo $i+1;?></td>
<td class='<?php echo zget($visibleFields, $product->type, ' hidden')?>' style='overflow:visible'><?php echo html::select("branches[$i]", $branches, $branch, "class='form-control chosen' onchange='setBranchRelated(this.value, $productID, $i)'");?></td>
<td class='<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[$i]", $moduleOptionMenu, $moduleID, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'project', ' hidden')?>' style='overflow:visible'><?php echo html::select("projects[$i]", $projects, $projectID, "class='form-control chosen' onchange='loadProjectBuilds($productID, this.value, $i)'");?></td>
<td style='overflow:visible' id='buildBox<?php echo $i;?>'><?php echo html::select("openedBuilds[$i][]", $builds, 'trunk', "class='form-control chosen' multiple");?></td>
<td style='overflow:visible'>
<div class='input-group'>
<div class="input-control has-icon-right">
<?php echo html::input("title[$i]", $bugTitle, "class='form-control' autocomplete='off'") . html::hidden("uploadImage[$i]", $fileName);?>
<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>
<?php echo html::hidden("color[$i]", '', "data-provide='colorpicker' data-icon='color' data-wrapper='input-control-icon-right' data-update-color='#title\\[{$i}\\]'");?>
</div>
</div>
</div>
</td>
<td class='<?php echo zget($visibleFields, 'deadline', 'hidden')?>'><?php echo html::input("deadlines[$i]", '', "class='form-control form-date'");?></td>
<td class='<?php echo zget($visibleFields, 'steps', 'hidden')?>'><?php echo html::textarea("stepses[$i]", '', "rows='1' class='form-control autosize'");?></td>
<td class='<?php echo zget($visibleFields, 'type', 'hidden')?>' style='overflow:visible'> <?php echo html::select("types[$i]", $lang->bug->typeList, $type, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>' style='overflow:visible'> <?php echo html::select("pris[$i]", $lang->bug->priList, $pri, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'severity', 'hidden')?>' style='overflow:visible'><?php echo html::select("severities[$i]", $lang->bug->severityList, '', "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'os', 'hidden')?>' style='overflow:visible'> <?php echo html::select("oses[$i]", $lang->bug->osList, $os, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'browser', 'hidden')?>' style='overflow:visible'> <?php echo html::select("browsers[$i]", $lang->bug->browserList, $browser, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'><?php echo html::input("keywords[$i]", '', "class='form-control' autocomplete='off'");?></td>
</tr>
<?php $i++;?>
<?php endforeach;?>
<?php endif;?>
<?php $nextStart = $i;?>
<?php for($i = $nextStart; $i < $config->bug->batchCreate; $i++):?>
<?php
$moduleID = $i - $nextStart == 0 ? $moduleID : 'ditto';
$projectID = $i - $nextStart == 0 ? $projectID : 'ditto';
$type = $i - $nextStart == 0 ? '' : 'ditto';
$pri = $i - $nextStart == 0 ? 0 : 'ditto';
$os = $i - $nextStart == 0 ? '' : 'ditto';
$browser = $i - $nextStart == 0 ? '' : 'ditto';
?>
<tr>
<td><?php echo $i+1;?></td>
<td class='<?php echo zget($visibleFields, $product->type, ' hidden')?>' style='overflow:visible'><?php echo html::select("branches[$i]", $branches, $branch, "class='form-control chosen' onchange='setBranchRelated(this.value, $productID, $i)'");?></td>
<td class='<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[$i]", $moduleOptionMenu, $moduleID, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'project', ' hidden')?>' style='overflow:visible'><?php echo html::select("projects[$i]", $projects, $projectID, "class='form-control chosen' onchange='loadProjectBuilds($productID, this.value, $i)'");?></td>
<td style='overflow:visible' id='buildBox<?php echo $i;?>'><?php echo html::select("openedBuilds[$i][]", $builds, '', "class='form-control chosen' multiple");?></td>
<td style='overflow:visible'>
<div class='input-group'>
<div class="input-control has-icon-right">
<?php echo html::input("title[$i]", '', "class='form-control' autocomplete='off'");?>
<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->bug->colorTag;?><i class="icon icon-close"></i></li>
</ul>
<?php echo html::hidden("color[$i]", '', "data-provide='colorpicker' data-icon='color' data-wrapper='input-control-icon-right' data-update-color='#title\\[$i\\]'");?>
</div>
</div>
</div>
</td>
<td class='<?php echo zget($visibleFields, 'deadline', 'hidden')?>'><?php echo html::input("deadlines[$i]", '', "class='form-control form-date'");?></td>
<td class='<?php echo zget($visibleFields, 'steps', 'hidden')?>'><?php echo html::textarea("stepses[$i]", '', "rows='1' class='form-control autosize'");?></td>
<td class='<?php echo zget($visibleFields, 'type', 'hidden')?>' style='overflow:visible'> <?php echo html::select("types[$i]", $lang->bug->typeList, $type, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>' style='overflow:visible'> <?php echo html::select("pris[$i]", $lang->bug->priList, $pri, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'severity', 'hidden')?>' style='overflow:visible'><?php echo html::select("severities[$i]", $lang->bug->severityList, '', "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'os', 'hidden')?>' style='overflow:visible'> <?php echo html::select("oses[$i]", $lang->bug->osList, $os, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'browser', 'hidden')?>' style='overflow:visible'> <?php echo html::select("browsers[$i]", $lang->bug->browserList, $browser, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'><?php echo html::input("keywords[$i]", '', "class='form-control' autocomplete='off'");?></td>
</tr>
<?php endfor;?>
</tbody>
<tfoot>
<tr>
<td colspan='<?php echo count($visibleFields) + 3?>' class='text-center'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::backButton('', '', 'btn btn-wide');?>
</td>
</tr>
</tfoot>
</table>
</form>
</div>
<table class='hide' id='trTemp'>
<tbody>
<tr class='text-left'>
<tr>
<td>%s</td>
<td class='text-left<?php echo zget($visibleFields, $product->type, ' hidden')?>' style='overflow:visible'><?php echo html::select("branches[%s]", $branches, $branch, "class='form-control' onchange='setBranchRelated(this.value, $productID, \"%s\")'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[%s]", $moduleOptionMenu, $moduleID, "class='form-control'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'project', ' hidden')?>' style='overflow:visible'><?php echo html::select("projects[%s]", $projects, $projectID, "class='form-control' onchange='loadProjectBuilds($productID, this.value, \"%s\")'");?></td>
<td class='text-left' style='overflow:visible' id='buildBox%s'><?php echo html::select("openedBuilds[%s][]", $builds, '', "class='form-control' multiple");?></td>
<td class='<?php echo zget($visibleFields, $product->type, ' hidden')?>' style='overflow:visible'><?php echo html::select("branches[%s]", $branches, $branch, "class='form-control' onchange='setBranchRelated(this.value, $productID, \"%s\")'");?></td>
<td class='<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[%s]", $moduleOptionMenu, $moduleID, "class='form-control'");?></td>
<td class='<?php echo zget($visibleFields, 'project', ' hidden')?>' style='overflow:visible'><?php echo html::select("projects[%s]", $projects, $projectID, "class='form-control' onchange='loadProjectBuilds($productID, this.value, \"%s\")'");?></td>
<td style='overflow:visible' id='buildBox%s'><?php echo html::select("openedBuilds[%s][]", $builds, '', "class='form-control' multiple");?></td>
<td style='overflow:visible'>
<div class='input-group'>
<?php echo html::hidden("color[%s]", '', "data-wrapper='input-group-btn fix-border-right' data-pull-menu-right='false' data-btn-tip='{$lang->bug->colorTag}' data-update-text='#title\\[%s\\]'");?>
<?php echo html::input("title[%s]", '', "class='form-control' autocomplete='off'");?>
<div class="input-control has-icon-right">
<?php echo html::input("title[%s]", '', "class='form-control' autocomplete='off'");?>
<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>
<?php echo html::hidden("color[%s]", '', "data-provide='colorpicker' data-icon='color' data-wrapper='input-control-icon-right' data-update-color='#title\\[%s\\]'");?>
</div>
</div>
</div>
</td>
<td class='<?php echo zget($visibleFields, 'deadline', 'hidden')?>'><?php echo html::input("deadlines[%s]", '', "class='form-control form-date'");?></td>
@@ -203,7 +204,5 @@ foreach(explode(',', $this->config->bug->create->requiredFields) as $field)
</tbody>
</table>
<?php js::set('branch', $branch)?>
<?php $customLink = $this->createLink('custom', 'ajaxSaveCustomFields', 'module=bug&section=custom&key=batchCreateFields')?>
<?php include '../../common/view/customfield.html.php';?>
<?php include '../../common/view/pastetext.html.php';?>
<?php include '../../common/view/footer.html.php';?>
+2 -2
View File
@@ -74,8 +74,8 @@ js::set('confirmDeleteTemplate', $lang->bug->confirmDeleteTemplate);
<tr>
<th><?php echo $lang->bug->openedBuild?></th>
<td>
<div class='input-group'>
<div class='input-group' id='buildBox'><?php echo html::select('openedBuild[]', $builds, $buildID, "size=4 multiple=multiple class='chosen form-control'");?></div>
<div class='input-group' id='buildBox'>
<?php echo html::select('openedBuild[]', $builds, $buildID, "size=4 multiple=multiple class='chosen form-control'");?>
<span class='input-group-addon fix-border' id='buildBoxActions'></span>
<div class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' data-toggle='tooltip' onclick='loadAllBuilds()'")?></div>
</div>
+264 -246
View File
@@ -26,256 +26,274 @@ js::set('oldOpenedBuild' , $bug->openedBuild);
js::set('oldResolvedBuild' , $bug->resolvedBuild);
?>
<form class='form-condensed' method='post' target='hiddenwin' enctype='multipart/form-data' id='dataform'>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['bug']);?> <strong><?php echo $bug->id;?></strong></span>
<strong><?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id"), $bug->title, '',
'class="bug-title"');?></strong>
<small><?php echo html::icon($lang->icons['edit']) . ' ' . $lang->bug->edit;?></small>
</div>
<div class='actions'>
<?php echo html::submitButton($lang->save)?>
</div>
</div>
<div class='row-table'>
<div class='col-main'>
<div class='main'>
<div class='form-group'>
<div class='input-group'>
<input type='hidden' id='color' name='color' data-provide='colorpicker' data-wrapper='input-group-btn fix-border-right' data-pull-menu-right='false' data-btn-tip='<?php echo $lang->bug->colorTag ?>' value='<?php echo $bug->color ?>' data-update-text='#title, .bug-title'>
<?php echo html::input('title', str_replace("'","&#039;",$bug->title), 'class="form-control" placeholder="' . $lang->bug->title . '"');?>
<div class='main-content' id='mainContent'>
<form method='post' target='hiddenwin' enctype='multipart/form-data' id='dataform'>
<div class='main-header'>
<h2>
<span class='label label-id'><?php echo $bug->id;?></span>
<?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id"), $bug->title, '', 'class="bug-title"');?>
<small><?php echo $lang->arrow . ' ' . $lang->bug->edit;?></small>
</h2>
<div class="pull-right btn-toolbar">
<?php echo html::submitButton($lang->save)?>
</div>
</div>
<div class='main-row'>
<div class='main-col col-8'>
<div class='cell'>
<div class='form-group'>
<div class="input-control has-icon-right">
<?php echo html::input('title', $bug->title, "class='form-control' autocomplete='off' style='color:{$bug->color}' 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" style="background:<?php echo $bug->color;?>"></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="<?php $bug->color;?>" data-icon="color" data-wrapper="input-control-icon-right" data-update-color="#title" data-provide="colorpicker">
</div>
</div>
</div>
<div class='detail'>
<div class='detail-title'><?php echo $lang->bug->legendSteps;?></div>
<div class='detail-content article-content'>
<?php echo html::textarea('steps', htmlspecialchars($bug->steps), "rows='12' class='form-control kindeditor' hidefocus='true'");?>
</div>
</div>
<div class='detail'>
<div class='detail-title'><?php echo $lang->bug->legendComment;?></div>
<div class='detail-content article-content'>
<?php echo html::textarea('comment', '', "rows='5' class='form-control kindeditor' hidefocus='true'");?>
</div>
</div>
<div class='form-group'><?php echo $this->fetch('file', 'buildform');?></div>
<div class='actions actions-form text-center'>
<?php
echo html::hidden('lastEditedDate', $bug->lastEditedDate);
echo html::submitButton();
$browseLink = $app->session->bugList != false ? $app->session->bugList : inlink('browse', "productID=$bug->product");
echo html::linkButton($lang->goback, $browseLink);
?>
</div>
<hr class='small' />
<?php include '../../common/view/action.html.php';?>
</div>
</div>
<fieldset>
<legend><?php echo $lang->bug->legendSteps;?></legend>
<div class='form-group'><?php echo html::textarea('steps', htmlspecialchars($bug->steps), "rows='12' class='form-control'");?></div>
</fieldset>
<fieldset>
<legend><?php echo $lang->bug->legendComment;?></legend>
<div class='form-group'><?php echo html::textarea('comment', '', "rows='6' class='form-control'");?></div>
</fieldset>
<fieldset>
<legend><?php echo $lang->bug->legendAttatch;?></legend>
<div class='form-group'><?php echo $this->fetch('file', 'buildform');?></div>
</fieldset>
<div class='actions'>
<?php
echo html::hidden('lastEditedDate', $bug->lastEditedDate);
echo html::submitButton();
$browseLink = $app->session->bugList != false ? $app->session->bugList : inlink('browse', "productID=$bug->product");
echo html::linkButton($lang->goback, $browseLink);
?>
</div>
<?php include '../../common/view/action.html.php';?>
</div>
</div>
<div class='col-side'>
<div class='main main-side'>
<fieldset>
<legend><?php echo $lang->bug->legendBasicInfo;?></legend>
<table class='table table-form'>
<tr>
<th class='w-80px'><?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'");?>
<?php if($this->session->currentProductType != 'normal') echo html::select('branch', $branches, $bug->branch, "onchange='loadBranch();' class='form-control' style='width:65px'");?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->module;?></th>
<td>
<div class='input-group' id='moduleIdBox'>
<?php
echo html::select('module', $moduleOptionMenu, $currentModuleID, "onchange='loadModuleRelated()' class='form-control chosen'");
if(count($moduleOptionMenu) == 1)
{
echo "<span class='input-group-addon'>";
echo html::a($this->createLink('tree', 'browse', "rootID=$productID&view=bug&currentModuleID=0&branch=$bug->branch"), $lang->tree->manage, '_blank');
echo '&nbsp; ';
echo html::a("javascript:loadProductModules($productID)", $lang->refresh);
echo '</span>';
}
?>
</div>
</td>
</tr>
<div class='side-col col-4'>
<div class='cell'>
<div class='detail'>
<div class='detail-title'><?php echo $lang->story->legendBasicInfo;?></div>
<table class='table table-form'>
<tbody>
<tr>
<th class='w-80px'><?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'");?>
<?php if($this->session->currentProductType != 'normal') echo html::select('branch', $branches, $bug->branch, "onchange='loadBranch();' class='form-control' style='width:65px'");?>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->module;?></th>
<td>
<div class='input-group' id='moduleIdBox'>
<?php
echo html::select('module', $moduleOptionMenu, $currentModuleID, "onchange='loadModuleRelated()' class='form-control chosen'");
if(count($moduleOptionMenu) == 1)
{
echo "<span class='input-group-addon'>";
echo html::a($this->createLink('tree', 'browse', "rootID=$productID&view=bug&currentModuleID=0&branch=$bug->branch"), $lang->tree->manage, '_blank');
echo '&nbsp; ';
echo html::a("javascript:loadProductModules($productID)", $lang->refresh);
echo '</span>';
}
?>
</div>
</td>
</tr>
<?php if($this->config->global->flow != 'onlyTest'):?>
<tr>
<th><?php echo $lang->bug->productplan;?></th>
<td>
<span id="planIdBox"><?php echo html::select('plan', $plans, $bug->plan, "class='form-control chosen'");?></span>
</td>
</tr>
<?php endif;?>
<tr>
<th><?php echo $lang->bug->type;?></th>
<td>
<?php
/**
* Remove designchange, newfeature, trackings from the typeList, because should be tracked in story or task.
* These thress types if upgrade from bugfree2.x.
*/
if($bug->type != 'designchange') unset($lang->bug->typeList['designchange']);
if($bug->type != 'newfeature') unset($lang->bug->typeList['newfeature']);
if($bug->type != 'trackthings') unset($lang->bug->typeList['trackthings']);
echo html::select('type', $lang->bug->typeList, $bug->type, "class='form-control chosen'");
?>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->severity;?></th>
<td><?php echo html::select('severity', $lang->bug->severityList, $bug->severity, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->pri;?></th>
<td><?php echo html::select('pri', $lang->bug->priList, $bug->pri, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->status;?></th>
<td><?php echo html::select('status', $lang->bug->statusList, $bug->status, "class='form-control chosen'");?></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->assignedTo;?></th>
<td><?php echo html::select('assignedTo', $users, $bug->assignedTo, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->deadline;?></th>
<td><?php echo html::input('deadline', $bug->deadline, "class='form-control form-date'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->os;?></th>
<td><?php echo html::select('os', $lang->bug->osList, $bug->os, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->browser;?></th>
<td><?php echo html::select('browser', $lang->bug->browserList, $bug->browser, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->keywords;?></th>
<td><?php echo html::input('keywords', $bug->keywords, 'class="form-control"');?></td>
</tr>
<tr>
<th><?php echo $lang->bug->mailto;?></th>
<td>
<div class='input-group'>
<?php echo html::select('mailto[]', $users, str_replace(' ', '', $bug->mailto), 'class="form-control chosen" multiple');?>
<div class='input-group-btn'><?php echo $this->fetch('my', 'buildContactLists');?></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<?php if($this->config->global->flow != 'onlyTest'):?>
<tr>
<th><?php echo $lang->bug->productplan;?></th>
<td>
<span id="planIdBox"><?php echo html::select('plan', $plans, $bug->plan, "class='form-control chosen'");?></span>
</td>
</tr>
<div class='detail'>
<div class='detail-title'><?php echo $lang->bug->legendPrjStoryTask;?></div>
<table class='table table-form'>
<tbody>
<tr>
<th class='w-80px'><?php echo $lang->bug->project;?></th>
<td><span id='projectIdBox'><?php echo html::select('project', $projects, $bug->project, "class='form-control chosen' onchange='loadProjectRelated(this.value)'");?></span></td>
</tr>
<tr>
<th><?php echo $lang->bug->story;?></th>
<td><div id='storyIdBox'><?php echo html::select('story', $stories, $bug->story, "class='form-control chosen'");?></div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->task;?></th>
<td><div id='taskIdBox'><?php echo html::select('task', $tasks, $bug->task, "class='form-control chosen'");?></div></td>
</tr>
</tbody>
</table>
</div>
<?php endif;?>
<tr>
<th><?php echo $lang->bug->type;?></th>
<td>
<?php
/**
* Remove designchange, newfeature, trackings from the typeList, because should be tracked in story or task.
* These thress types if upgrade from bugfree2.x.
*/
if($bug->type != 'designchange') unset($lang->bug->typeList['designchange']);
if($bug->type != 'newfeature') unset($lang->bug->typeList['newfeature']);
if($bug->type != 'trackthings') unset($lang->bug->typeList['trackthings']);
echo html::select('type', $lang->bug->typeList, $bug->type, "class='form-control chosen'");
?>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->severity;?></th>
<td><?php echo html::select('severity', $lang->bug->severityList, $bug->severity, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->pri;?></th>
<td><?php echo html::select('pri', $lang->bug->priList, $bug->pri, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->status;?></th>
<td><?php echo html::select('status', $lang->bug->statusList, $bug->status, "class='form-control chosen'");?></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->assignedTo;?></th>
<td><?php echo html::select('assignedTo', $users, $bug->assignedTo, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->deadline;?></th>
<td><?php echo html::input('deadline', $bug->deadline, "class='form-control form-date'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->os;?></th>
<td><?php echo html::select('os', $lang->bug->osList, $bug->os, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->browser;?></th>
<td><?php echo html::select('browser', $lang->bug->browserList, $bug->browser, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->keywords;?></th>
<td><?php echo html::input('keywords', $bug->keywords, 'class="form-control"');?></td>
</tr>
<tr>
<th><?php echo $lang->bug->mailto;?></th>
<td>
<?php echo html::select('mailto[]', $users, str_replace(' ', '', $bug->mailto), 'class="form-control chosen" multiple');?>
<?php echo $this->fetch('my', 'buildContactLists');?>
</td>
</tr>
</table>
</fieldset>
<?php if($this->config->global->flow != 'onlyTest'):?>
<fieldset>
<legend><?php echo $lang->bug->legendPrjStoryTask;?></legend>
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->bug->project;?></th>
<td><span id='projectIdBox'><?php echo html::select('project', $projects, $bug->project, "class='form-control chosen' onchange='loadProjectRelated(this.value)'");?></span></td>
</tr>
<tr>
<th><?php echo $lang->bug->story;?></th>
<td><div id='storyIdBox'><?php echo html::select('story', $stories, $bug->story, "class='form-control chosen'");?></div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->task;?></th>
<td><div id='taskIdBox'><?php echo html::select('task', $tasks, $bug->task, "class='form-control chosen'");?></div></td>
</tr>
</table>
</fieldset>
<?php endif;?>
<fieldset>
<legend><?php echo $lang->bug->legendLife;?></legend>
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->bug->openedBy;?></th>
<td><?php echo $users[$bug->openedBy];?></td>
</tr>
<tr>
<th><?php echo $lang->bug->openedBuild;?></th>
<td>
<div class='input-group'>
<span id='openedBuildBox'><?php echo html::select('openedBuild[]', $openedBuilds, $bug->openedBuild, 'size=4 multiple=multiple class="chosen form-control"');?></span>
<span class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' onclick='loadAllBuilds(this)'")?></span>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedBy;?></th>
<td><?php echo html::select('resolvedBy', $users, $bug->resolvedBy, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedDate;?></th>
<td><?php echo html::input('resolvedDate', $bug->resolvedDate, "class='form-control form-datetime'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedBuild;?></th>
<td>
<div class='input-group'>
<span id='resolvedBuildBox'><?php echo html::select('resolvedBuild', $resolvedBuilds, $bug->resolvedBuild, "class='form-control chosen'");?></span>
<span class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' onclick='loadAllBuilds(this)'")?></span>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->resolution;?></th>
<td><?php echo html::select('resolution', $lang->bug->resolutionList, $bug->resolution, 'class=form-control onchange=setDuplicate(this.value)');?></td>
</tr>
<tr id='duplicateBugBox' <?php if($bug->resolution != 'duplicate') echo "style='display:none'";?>>
<th><?php echo $lang->bug->duplicateBug;?></th>
<td><?php echo html::input('duplicateBug', $bug->duplicateBug, 'class=form-control');?></td>
</tr>
<tr>
<th><?php echo $lang->bug->closedBy;?></th>
<td><?php echo html::select('closedBy', $users, $bug->closedBy, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->closedDate;?></th>
<td><?php echo html::input('closedDate', $bug->closedDate, "class='form-control form-datetime'");?></td>
</tr>
</table>
</fieldset>
<fieldset>
<legend><?php echo $lang->bug->legendMisc;?></legend>
<table class='table table-form'>
<tr class='text-top'>
<th class='w-80px'><?php echo $lang->bug->linkBug;?></th>
<td>
<?php echo html::a($this->createLink('bug', 'linkBugs', "bugID=$bug->id", '', true), $lang->bug->linkBugs, '', "data-toggle='modal' data-type='iframe' data-width='95%'");?>
<ul class='list-unstyled' id='linkBugBox'>
<?php
if(isset($bug->linkBugTitles))
{
foreach($bug->linkBugTitles as $linkBugID => $linkBugTitle)
{
echo '<li>';
echo html::a(inlink('view', "bugID=$linkBugID"), "#$linkBugID " . $linkBugTitle, '_blank');
echo html::a("javascript:unlinkBug($bug->id, $linkBugID)", '<i class="icon-remove"></i>', '', "title='{$lang->unlink}' style='float:right'");
echo '</li>';
}
}
?>
</ul>
</td>
</tr>
<?php if($bug->case):?>
<tr>
<th><?php echo $lang->bug->fromCase;?></th>
<td><?php echo html::input('case', $bug->case, 'class="form-control"');?></td>
</tr>
<?php endif;?>
</table>
</fieldset>
<div class='detail'>
<div class='detail-title'><?php echo $lang->bug->legendLife;?></div>
<table class='table table-form'>
<tbody>
<tr>
<th class='w-80px'><?php echo $lang->bug->openedBy;?></th>
<td><?php echo $users[$bug->openedBy];?></td>
</tr>
<tr>
<th><?php echo $lang->bug->openedBuild;?></th>
<td>
<div class='input-group'>
<span id='openedBuildBox'><?php echo html::select('openedBuild[]', $openedBuilds, $bug->openedBuild, 'size=4 multiple=multiple class="chosen form-control"');?></span>
<span class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' onclick='loadAllBuilds(this)'")?></span>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedBy;?></th>
<td><?php echo html::select('resolvedBy', $users, $bug->resolvedBy, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedDate;?></th>
<td><?php echo html::input('resolvedDate', $bug->resolvedDate, "class='form-control form-datetime'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->resolvedBuild;?></th>
<td>
<div class='input-group'>
<span id='resolvedBuildBox'><?php echo html::select('resolvedBuild', $resolvedBuilds, $bug->resolvedBuild, "class='form-control chosen'");?></span>
<span class='input-group-btn'><?php echo html::commonButton($lang->bug->allBuilds, "class='btn btn-default' onclick='loadAllBuilds(this)'")?></span>
</div>
</td>
</tr>
<tr>
<th><?php echo $lang->bug->resolution;?></th>
<td><?php echo html::select('resolution', $lang->bug->resolutionList, $bug->resolution, 'class=form-control onchange=setDuplicate(this.value)');?></td>
</tr>
<tr id='duplicateBugBox' <?php if($bug->resolution != 'duplicate') echo "style='display:none'";?>>
<th><?php echo $lang->bug->duplicateBug;?></th>
<td><?php echo html::input('duplicateBug', $bug->duplicateBug, 'class=form-control');?></td>
</tr>
<tr>
<th><?php echo $lang->bug->closedBy;?></th>
<td><?php echo html::select('closedBy', $users, $bug->closedBy, "class='form-control chosen'");?></td>
</tr>
<tr>
<th><?php echo $lang->bug->closedDate;?></th>
<td><?php echo html::input('closedDate', $bug->closedDate, "class='form-control form-datetime'");?></td>
</tr>
</tbody>
</table>
</div>
<div class='detail'>
<div class='detail-title'><?php echo $lang->bug->legendMisc;?></div>
<table class='table table-form'>
<tbody>
<tr class='text-top'>
<th class='w-80px'><?php echo $lang->bug->linkBug;?></th>
<td>
<?php echo html::a($this->createLink('bug', 'linkBugs', "bugID=$bug->id", '', true), $lang->bug->linkBugs, '', "data-toggle='modal' data-type='iframe' data-width='95%'");?>
<ul class='list-unstyled' id='linkBugBox'>
<?php
if(isset($bug->linkBugTitles))
{
foreach($bug->linkBugTitles as $linkBugID => $linkBugTitle)
{
echo '<li>';
echo html::a(inlink('view', "bugID=$linkBugID"), "#$linkBugID " . $linkBugTitle, '_blank');
echo html::a("javascript:unlinkBug($bug->id, $linkBugID)", '<i class="icon-remove"></i>', '', "title='{$lang->unlink}' style='float:right'");
echo '</li>';
}
}
?>
</ul>
</td>
</tr>
<?php if($bug->case):?>
<tr>
<th><?php echo $lang->bug->fromCase;?></th>
<td><?php echo html::input('case', $bug->case, 'class="form-control"');?></td>
</tr>
<?php endif;?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</form>
</div>
</form>
<?php include '../../common/view/footer.html.php';?>
+3 -3
View File
@@ -91,10 +91,10 @@ js::set('confirmDelete', $lang->user->confirmDelete);
<td class='c-actions'>
<div class='more'>
<?php
if($user->ranzhi) common::printIcon('user', 'unbind', "userID=$user->account", '', 'list', 'unlink', "hiddenwin");
if((strtotime(date('Y-m-d H:i:s')) - strtotime($user->locked)) < $this->config->user->lockMinutes * 60)
if(true or $user->ranzhi) common::printIcon('user', 'unbind', "userID=$user->account", '', 'list', 'unlink', "hiddenwin");
if(true or (strtotime(date('Y-m-d H:i:s')) - strtotime($user->locked)) < $this->config->user->lockMinutes * 60)
{
common::printIcon('user', 'unlock', "userID=$user->account", '', 'list', '', "hiddenwin");
common::printIcon('user', 'unlock', "userID=$user->account", '', 'list', 'unlock', "hiddenwin");
}
?>
</div>
+1 -1
View File
@@ -8,7 +8,7 @@
<input type="text" name="labels[]" class="form-control file-editbox" placeholder="<?php echo $lang->file->title;?>">
<div class="input-group-btn">
<button type="button" class="btn btn-success file-name-confirm"><i class="icon icon-check"></i></button>
<button type="button" class="btn file-name-cancel"><i class="icon icon-close"></i></button>
<button type="button" class="btn btn-gray file-name-cancel"><i class="icon icon-close"></i></button>
</div>
</div>
<div class="file-input-normal input-group">
+2 -2
View File
@@ -54,11 +54,11 @@
if(common::hasPriv('group', 'delete') and $group->role != 'limited')
{
$deleteURL = $this->createLink('group', 'delete', "groupID=$group->id&confirm=yes");
echo html::a("javascript:ajaxDelete(\"$deleteURL\", \"groupList\", confirmDelete)", '<i class="icon icon-sm icon-close"></i>', '', "title='{$lang->group->delete}' class='btn'");
echo html::a("javascript:ajaxDelete(\"$deleteURL\", \"groupList\", confirmDelete)", '<i class="icon icon-trash"></i>', '', "title='{$lang->group->delete}' class='btn'");
}
else
{
echo "<button class='btn disabled'><i class='icon icon-sm icon-close disabled' title='{$lang->group->delete}'></i></button>";
echo "<button class='btn disabled'><i class='icon icon-trash disabled' title='{$lang->group->delete}'></i></button>";
}
?>
</td>
+4 -5
View File
@@ -22,13 +22,13 @@
<div class="side-col">
<div class='side-body'>
<div class='panel panel-sm'>
<div class='panel-heading nobr'><?php echo html::icon($lang->icons['company']);?> <strong><?php echo $lang->dept->common;?></strong></div>
<div class='panel-heading nobr'><strong><?php echo $lang->dept->common;?></strong></div>
<?php echo $deptTree;?>
</div>
</div>
</div>
<div class="main-col">
<form class='pdb-20' method='post' target='hiddenwin'>
<form class='main-table table-members' method='post' target='hiddenwin'>
<table class='table table-form'>
<?php if($groupUsers):?>
<tr>
@@ -59,10 +59,9 @@
</td>
</tr>
<tr>
<th></th>
<td class='text-center'>
<td class='text-center' colspan='2'>
<?php
echo html::submitButton();
echo html::submitButton('', '', 'btn btn-wide btn-primary');
echo html::linkButton($lang->goback, $this->createLink('group', 'browse'));
echo html::hidden('foo'); // Just a var, to make sure $_POST is not empty.
?>
+1 -1
View File
@@ -17,7 +17,7 @@
<div class="center-block">
<div class="main-header">
<h2>
<span><?php echo html::icon($lang->icons['product']);?> <?php echo $product->id;?></span>
<span class='label label-id'><?php echo $product->id;?></span>
<?php echo html::a($this->createLink('product', 'view', 'product=' . $product->id), $product->name);?>
<small><?php echo $lang->arrow . ' ' . $lang->product->edit;?></small>
</h2>
-1
View File
@@ -149,7 +149,6 @@ js::set('browseType', $browseType);
$useDatatable = (isset($this->config->datatable->$datatableId->mode) and $this->config->datatable->$datatableId->mode == 'datatable');
$vars = "projectID=$project->id&status=$status&parma=$param&orderBy=%s&recTotal=$recTotal&recPerPage=$recPerPage";
if($useDatatable) include '../../common/view/datatable.html.php';
$customFields = $this->datatable->getSetting('project');
if($project->type == 'ops')
{
-3
View File
@@ -19,9 +19,6 @@
<?php echo html::a($this->createLink('story', 'view', "storyID=$story->id"), $story->title, '', 'class="story-title"');?>
<small><?php echo $lang->arrow . ' ' . $lang->story->edit;?></small>
</h2>
<div class="pull-right btn-toolbar">
<?php echo html::submitButton($lang->save)?>
</div>
</div>
<div class='main-row'>
<div class='main-col col-8'>
+2 -2
View File
@@ -12,14 +12,14 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<?php $browseLink = $app->session->storyList != false ? $app->session->storyList : $this->createLink('product', 'browse', "productID=$story->product&branch=$story->branch&moduleID=$story->module");?>
<?php $browseLink = $app->session->storyList != false ? $app->session->storyList : $this->createLink('product', 'browse', "productID=$story->product&branch=$story->branch&moduleID=$story->module");?>
<div id="mainMenu" class="clearfix">
<div class="btn-toolbar pull-left">
<?php echo html::a($browseLink, '<i class="icon icon-back icon-sm"></i> ' . $lang->goback, '', "class='btn btn-link'");?>
<div class="divider"></div>
<div class="page-title">
<span class="label label-id"><?php echo $story->id?></span>
<span class="text" style='color: <?php echo $story->color; ?>'><?php echo $story->title;?></span>
<span class="text" style='color: <?php echo $story->color;?>'><?php echo $story->title;?></span>
<?php if($story->version > 1):?>
<small class='dropdown'>
<a href='#' data-toggle='dropdown' class='text-muted'><?php echo '#' . $version;?> <span class='caret'></span></a>
+4 -5
View File
@@ -26,9 +26,6 @@
<?php echo html::a($this->createLink('task', 'view', "taskID=$task->id"), $task->name, '', "class='task-title'");?>
<small><?php echo $lang->arrow . $lang->task->edit;?></small>
</h2>
<div class='btn-toolbar pull-right'>
<?php echo html::submitButton($lang->save)?>
</div>
</div>
<div class='main-row'>
<div class='main-col col-8'>
@@ -61,9 +58,11 @@
<div class='detail-title'><?php echo $lang->files;?></div>
<div class='detail-content'><?php echo $this->fetch('file', 'buildform');?></div>
</div>
<div class='detail'>
<div class='detail text-center'>
<?php echo html::hidden('lastEditedDate', $task->lastEditedDate);?>
<?php echo html::submitButton($lang->save) . html::linkButton($lang->goback, $this->inlink('view', "taskID=$task->id")) . html::hidden('consumed', $task->consumed);?>
<?php echo html::hidden('consumed', $task->consumed);?>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::backButton('', '', 'btn btn-wide');?>
</div>
<?php include '../../common/view/action.html.php';?>
</div>
+4 -15
View File
@@ -36,17 +36,17 @@
</div>
<form id="recordForm" method='post' target='hiddenwin' style='margin-top:25px'>
<table class='table table-form table-fixed'>
<?php if(count($estimates)):?>
<thead>
<tr class='text-center'>
<th class="w-id"><?php echo $lang->idAB;?></th>
<th class="w-100px"><?php echo $lang->task->date;?></th>
<th class="w-120px"><?php echo $lang->task->date;?></th>
<th class="w-60px"><?php echo $lang->task->consumedThisTime;?></th>
<th class="w-60px"><?php echo $lang->task->leftThisTime;?></th>
<th><?php echo $lang->comment;?></th>
<th class="w-60px"><?php echo $lang->actions;?></th>
<th class='w-10px'></th>
</tr>
</thead>
<?php if(count($estimates)):?>
<?php foreach($estimates as $estimate):?>
<tr class="text-center">
<td><?php echo $estimate->id;?></td>
@@ -67,16 +67,6 @@
<?php endforeach;?>
<?php endif;?>
<?php if(in_array($task->status, array('wait', 'pause', 'doing'))):?>
<thead>
<tr class='text-center'>
<th class="w-id"><?php echo $lang->idAB;?></th>
<th class="w-120px"><?php echo $lang->task->date;?></th>
<th class="w-60px"><?php echo $lang->task->consumedThisTime;?></th>
<th class="w-60px"><?php echo $lang->task->leftThisTime;?></th>
<th><?php echo $lang->comment;?></th>
<th class='w-10px'></th>
</tr>
</thead>
<?php for($i = 1; $i <= 3; $i++):?>
<tr class="text-center">
<td><?php echo $i . html::hidden("id[$i]", $i);?></td>
@@ -87,14 +77,13 @@
<td></td>
</tr>
<?php endfor;?>
<?php endif;?>
<tr>
<td colspan='6' class='text-center'><?php echo html::submitButton() . html::backButton();?></td>
</tr>
</table>
<?php endif;?>
</form>
<?php endif;?>
</div>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
<?php endif;?>
+3 -3
View File
@@ -96,12 +96,12 @@
</div>
</div>
</td>
<td><?php echo html::select("type[$i]", $lang->testcase->typeList, $type, "class=form-control");?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>'> <?php echo html::select("pri[$i]", $lang->testcase->priList, $pri, "class=form-control");?></td>
<td><?php echo html::select("type[$i]", $lang->testcase->typeList, $type, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>'> <?php echo html::select("pri[$i]", $lang->testcase->priList, $pri, "class='form-control chosen'");?></td>
<td class='<?php echo zget($visibleFields, 'precondition', 'hidden')?>'><?php echo html::textarea("precondition[$i]", '', "rows='1' class='form-control autosize'")?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'> <?php echo html::input("keywords[$i]", '', "class='form-control' autocomplete='off'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'stage', ' hidden')?>' style='overflow:visible'><?php echo html::select("stage[$i][]", $lang->testcase->stageList, '', "class='form-control chosen' multiple");?></td>
<td class='<?php echo zget($visibleFields, 'review', 'hidden')?>'><?php echo html::select("needReview[$i]", $lang->testcase->reviewList, $needReview, "class='form-control'");?></td>
<td class='<?php echo zget($visibleFields, 'review', 'hidden')?>'><?php echo html::select("needReview[$i]", $lang->testcase->reviewList, $needReview, "class='form-control chosen'");?></td>
</tr>
<?php endfor;?>
<tr>
+119 -113
View File
@@ -12,122 +12,128 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php js::set('dittoNotice', $this->lang->testcase->dittoNotice);?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['testcase']);?></span>
<strong><small class='text-muted'><?php echo html::icon($lang->icons['batchEdit']);?></small> <?php echo $lang->testcase->common . $lang->colon . $lang->testcase->batchEdit;?></strong>
<div class='actions'>
<button type="button" class="btn btn-default" data-toggle="customModal"><i class='icon icon-cog'></i> </button>
<div id="mainContent" class="main-content">
<div class="main-header">
<h2><?php echo $lang->testcase->common . $lang->colon . $lang->testcase->batchEdit;?></h2>
<div class="pull-right btn-toolbar">
<?php $customLink = $this->createLink('custom', 'ajaxSaveCustomFields', 'module=testcase&section=custom&key=batchEditFields')?>
<?php include '../../common/view/customfield.html.php';?>
</div>
</div>
</div>
<?php if(isset($suhosinInfo)):?>
<div class='alert alert-info'><?php echo $suhosinInfo;?></div>
<?php else:?>
<?php
$visibleFields = array();
$requiredFields = array();
foreach(explode(',', $showFields) as $field)
{
if($field)$visibleFields[$field] = '';
}
foreach(explode(',', $this->config->testcase->edit->requiredFields) as $field)
{
if($field)
{
$requiredFields[$field] = '';
if(strpos(",{$config->testcase->customBatchEditFields},", ",{$field},") !== false) $visibleFields[$field] = '';
}
}
?>
<form class='form-condensed' method='post' target='hiddenwin' action="<?php echo inLink('batchEdit');?>">
<table class='table table-form table-fixed'>
<thead>
<tr>
<th class='w-50px'><?php echo $lang->idAB;?></th>
<th class='w-70px<?php echo zget($visibleFields, 'pri', ' hidden')?>'>
<?php echo $lang->priAB;?>
<?php if(isset($requiredFields['pri'])) echo " <span class='required'></span>";?>
</th>
<th class='w-100px<?php echo zget($visibleFields, 'status', ' hidden')?>'>
<?php echo $lang->statusAB;?>
<?php if(isset($requiredFields['status'])) echo " <span class='required'></span>";?>
</th>
<?php if($branchProduct):?>
<th class='w-150px<?php echo zget($visibleFields, 'branch', ' hidden')?>'><?php echo $lang->testcase->branch;?></th>
<?php endif;?>
<th class='w-150px<?php echo zget($visibleFields, 'module', ' hidden')?>'><?php echo $lang->testcase->module;?></th>
<th class='w-150px<?php echo zget($visibleFields, 'story', ' hidden')?>'>
<?php echo $lang->testcase->story;?>
<?php if(isset($requiredFields['story'])) echo " <span class='required'></span>";?>
</th>
<th><?php echo $lang->testcase->title;?> <span class='required'></span></th>
<th class='w-120px'><?php echo $lang->testcase->type;?> <span class='required'></span></th>
<th class='<?php echo zget($visibleFields, 'precondition', 'hidden')?>'>
<?php echo $lang->testcase->precondition;?>
<?php if(isset($requiredFields['precondition'])) echo " <span class='required'></span>";?>
</th>
<th class='w-100px<?php echo zget($visibleFields, 'keywords', ' hidden')?>'>
<?php echo $lang->testcase->keywords;?>
<?php if(isset($requiredFields['keywords'])) echo " <span class='required'></span>";?>
</th>
<th class='w-300px<?php echo zget($visibleFields, 'stage', ' hidden')?>'>
<?php echo $lang->testcase->stage;?>
<?php if(isset($requiredFields['stage'])) echo " <span class='required'></span>";?>
</th>
</tr>
</thead>
<tbody>
<?php foreach($caseIDList as $caseID):?>
<?php
if(!isset($cases[$caseID])) continue;
if(!$productID and $branchProduct)
<?php if(isset($suhosinInfo)):?>
<div class='alert alert-info'><?php echo $suhosinInfo;?></div>
<?php else:?>
<?php
$visibleFields = array();
$requiredFields = array();
foreach(explode(',', $showFields) as $field)
{
if($field)$visibleFields[$field] = '';
}
foreach(explode(',', $this->config->testcase->edit->requiredFields) as $field)
{
if($field)
{
$product = $this->product->getByID($cases[$caseID]->product);
$branches = $product->type == 'normal' ? array('' => '') : $this->loadModel('branch')->getPairs($product->id);
if($product->type != 'normal')
{
foreach($branches as $branchID => $branchName) $branches[$branchID] = '/' . $product->name . '/' . $branchName;
$branches = array('ditto' => $this->lang->story->ditto) + $branches;
}
$modules = $this->tree->getOptionMenu($cases[$caseID]->product, $viewType = 'case', 0, $cases[$caseID]->branch);
$modules = array('ditto' => $this->lang->story->ditto) + $modules;
$requiredFields[$field] = '';
if(strpos(",{$config->testcase->customBatchEditFields},", ",{$field},") !== false) $visibleFields[$field] = '';
}
?>
<tr class='text-center'>
<td><?php echo $caseID . html::hidden("caseIDList[$caseID]", $caseID);?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>'> <?php echo html::select("pris[$caseID]", $priList, $cases[$caseID]->pri, 'class=form-control');?></td>
<td class='<?php echo zget($visibleFields, 'status', 'hidden')?>'><?php echo html::select("statuses[$caseID]", (array)$lang->testcase->statusList, $cases[$caseID]->status, 'class=form-control');?></td>
<?php if($branchProduct):?>
<td class='text-left<?php echo zget($visibleFields, 'branch', ' hidden')?>' style='overflow:visible'>
<?php $branchProductID = $productID ? $productID : $product->id;?>
<?php $disabled = (isset($product) and $product->type == 'normal') ? "disabled='disabled'" : '';?>
<?php echo html::select("branches[$caseID]", $branches, $cases[$caseID]->branch, "class='form-control chosen' onchange='loadBranches($branchProductID, this.value, $caseID)', $disabled");?>
</td>
<?php endif;?>
<td class='text-left<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[$caseID]", $modules, $cases[$caseID]->module, "class='form-control chosen'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'story', ' hidden')?>' style='overflow:visible'><?php echo html::select("stories[$caseID]", $stories, $cases[$caseID]->story, "class='form-control chosen'");?></td>
<td style='overflow:visible' title='<?php echo $cases[$caseID]->title?>'>
<div class='input-group'>
<?php echo html::hidden("colors[$caseID]", $cases[$caseID]->color, "data-provide='colorpicker' data-wrapper='input-group-btn fix-border-right' data-pull-menu-right='false' data-btn-tip='{$lang->testcase->colorTag}' data-update-text='#titles\\[{$caseID}\\]'");?>
<?php echo html::input("titles[$caseID]", $cases[$caseID]->title, "class='form-control' autocomplete='off'"); echo "<span class='star'>*</span>";?>
</div>
</td>
<td><?php echo html::select("types[$caseID]", $typeList, $cases[$caseID]->type, 'class=form-control');?></td>
<td class='<?php echo zget($visibleFields, 'precondition', 'hidden')?>'><?php echo html::textarea("precondition[$caseID]", $cases[$caseID]->precondition, "rows='1' class='form-control autosize'")?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'> <?php echo html::input("keywords[$caseID]", $cases[$caseID]->keywords, "class='form-control' autocomplete='off'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'stage', ' hidden')?>' style='overflow:visible'><?php echo html::select("stages[$caseID][]", $lang->testcase->stageList, $cases[$caseID]->stage, "class='form-control chosen' multiple data-placeholder='{$lang->testcase->stage}'");?></td>
</tr>
<?php endforeach;?>
</tbody>
<tfoot>
<tr><td colspan='<?php echo $branchProduct ? (count($visibleFields) + 3) : (count($visibleFields) + 2);?>' class='text-center'><?php echo html::submitButton();?></td></tr>
</tfoot>
</table>
</form>
}
?>
<form method='post' target='hiddenwin' action="<?php echo inLink('batchEdit');?>">
<table class='table table-form table-fixed'>
<thead>
<tr>
<th class='w-50px'><?php echo $lang->idAB;?></th>
<th class='w-70px<?php echo zget($visibleFields, 'pri', ' hidden')?>'>
<?php echo $lang->priAB;?>
<?php if(isset($requiredFields['pri'])) echo " <span class='required'></span>";?>
</th>
<th class='w-100px<?php echo zget($visibleFields, 'status', ' hidden')?>'>
<?php echo $lang->statusAB;?>
<?php if(isset($requiredFields['status'])) echo " <span class='required'></span>";?>
</th>
<?php if($branchProduct):?>
<th class='w-150px<?php echo zget($visibleFields, 'branch', ' hidden')?>'><?php echo $lang->testcase->branch;?></th>
<?php endif;?>
<th class='w-150px<?php echo zget($visibleFields, 'module', ' hidden')?>'><?php echo $lang->testcase->module;?></th>
<th class='w-150px<?php echo zget($visibleFields, 'story', ' hidden')?>'>
<?php echo $lang->testcase->story;?>
<?php if(isset($requiredFields['story'])) echo " <span class='required'></span>";?>
</th>
<th><?php echo $lang->testcase->title;?> <span class='required'></span></th>
<th class='w-120px'><?php echo $lang->testcase->type;?> <span class='required'></span></th>
<th class='<?php echo zget($visibleFields, 'precondition', 'hidden')?>'>
<?php echo $lang->testcase->precondition;?>
<?php if(isset($requiredFields['precondition'])) echo " <span class='required'></span>";?>
</th>
<th class='w-100px<?php echo zget($visibleFields, 'keywords', ' hidden')?>'>
<?php echo $lang->testcase->keywords;?>
<?php if(isset($requiredFields['keywords'])) echo " <span class='required'></span>";?>
</th>
<th class='w-300px<?php echo zget($visibleFields, 'stage', ' hidden')?>'>
<?php echo $lang->testcase->stage;?>
<?php if(isset($requiredFields['stage'])) echo " <span class='required'></span>";?>
</th>
</tr>
</thead>
<tbody>
<?php foreach($caseIDList as $caseID):?>
<?php
if(!isset($cases[$caseID])) continue;
if(!$productID and $branchProduct)
{
$product = $this->product->getByID($cases[$caseID]->product);
$branches = $product->type == 'normal' ? array('' => '') : $this->loadModel('branch')->getPairs($product->id);
if($product->type != 'normal')
{
foreach($branches as $branchID => $branchName) $branches[$branchID] = '/' . $product->name . '/' . $branchName;
$branches = array('ditto' => $this->lang->story->ditto) + $branches;
}
$modules = $this->tree->getOptionMenu($cases[$caseID]->product, $viewType = 'case', 0, $cases[$caseID]->branch);
$modules = array('ditto' => $this->lang->story->ditto) + $modules;
}
?>
<tr class='text-center'>
<td><?php echo $caseID . html::hidden("caseIDList[$caseID]", $caseID);?></td>
<td class='<?php echo zget($visibleFields, 'pri', 'hidden')?>'> <?php echo html::select("pris[$caseID]", $priList, $cases[$caseID]->pri, 'class=form-control');?></td>
<td class='<?php echo zget($visibleFields, 'status', 'hidden')?>'><?php echo html::select("statuses[$caseID]", (array)$lang->testcase->statusList, $cases[$caseID]->status, 'class=form-control');?></td>
<?php if($branchProduct):?>
<td class='text-left<?php echo zget($visibleFields, 'branch', ' hidden')?>' style='overflow:visible'>
<?php $branchProductID = $productID ? $productID : $product->id;?>
<?php $disabled = (isset($product) and $product->type == 'normal') ? "disabled='disabled'" : '';?>
<?php echo html::select("branches[$caseID]", $branches, $cases[$caseID]->branch, "class='form-control chosen' onchange='loadBranches($branchProductID, this.value, $caseID)', $disabled");?>
</td>
<?php endif;?>
<td class='text-left<?php echo zget($visibleFields, 'module', ' hidden')?>' style='overflow:visible'><?php echo html::select("modules[$caseID]", $modules, $cases[$caseID]->module, "class='form-control chosen'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'story', ' hidden')?>' style='overflow:visible'><?php echo html::select("stories[$caseID]", $stories, $cases[$caseID]->story, "class='form-control chosen'");?></td>
<td style='overflow:visible' title='<?php echo $cases[$caseID]->title?>'>
<div class='input-group'>
<div class="input-control has-icon-right">
<?php echo html::input("title[$caseID]", $cases[$caseID]->title, "class='form-control' autocomplete='off'");?>
<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->testcase->colorTag;?><i class="icon icon-close"></i></li>
</ul>
<?php echo html::hidden("color[$caseID]", $cases[$caseID]->color, "data-provide='colorpicker' data-icon='color' data-wrapper='input-control-icon-right' data-update-color='#title\\[$caseID\\]'");?>
</div>
</div>
</div>
</td>
<td><?php echo html::select("types[$caseID]", $typeList, $cases[$caseID]->type, 'class=form-control');?></td>
<td class='<?php echo zget($visibleFields, 'precondition', 'hidden')?>'><?php echo html::textarea("precondition[$caseID]", $cases[$caseID]->precondition, "rows='1' class='form-control autosize'")?></td>
<td class='<?php echo zget($visibleFields, 'keywords', 'hidden')?>'> <?php echo html::input("keywords[$caseID]", $cases[$caseID]->keywords, "class='form-control' autocomplete='off'");?></td>
<td class='text-left<?php echo zget($visibleFields, 'stage', ' hidden')?>' style='overflow:visible'><?php echo html::select("stages[$caseID][]", $lang->testcase->stageList, $cases[$caseID]->stage, "class='form-control chosen' multiple data-placeholder='{$lang->testcase->stage}'");?></td>
</tr>
<?php endforeach;?>
</tbody>
<tfoot>
<tr><td colspan='<?php echo $branchProduct ? (count($visibleFields) + 3) : (count($visibleFields) + 2);?>' class='text-center'><?php echo html::submitButton('', '', 'btn btn-primary btn-wide');?></td></tr>
</tfoot>
</table>
</form>
<?php endif;?>
<?php $customLink = $this->createLink('custom', 'ajaxSaveCustomFields', 'module=testcase&section=custom&key=batchEditFields')?>
<?php include '../../common/view/customfield.html.php';?>
</div>
<?php include '../../common/view/footer.html.php';?>
+24 -25
View File
@@ -19,31 +19,30 @@ function closeWindow()
}
}
</script>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['export']);?></span>
<strong><?php echo $lang->testcase->exportTemplet;?></strong>
<div class='main-content'>
<div class='main-header'>
<h2><?php echo $lang->testcase->exportTemplet;?></h2>
</div>
</div>
<form class='form-condensed' method='post' target='hiddenwin' onsubmit='setDownloading();' style='padding: 40px 5%'>
<table class='w-p100'>
<tr>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->testcase->num;?></span>
<?php
echo html::input('num', '10', "class='form-control' autocomplete='off'");
?>
</div>
</td>
<td class='w-100px'>
<?php echo html::select('encode', $config->charsets[$this->cookie->lang], 'utf-8', "class='form-control'");?>
</td>
<td>
<?php echo html::submitButton();?>
</td>
</tr>
</table>
</form>
<form method='post' target='hiddenwin' onsubmit='setDownloading();' style='padding: 40px 5%'>
<table class='w-p100'>
<tr>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->testcase->num;?></span>
<?php
echo html::input('num', '10', "class='form-control' autocomplete='off'");
?>
</div>
</td>
<td class='w-100px'>
<?php echo html::select('encode', $config->charsets[$this->cookie->lang], 'utf-8', "class='form-control'");?>
</td>
<td>
<?php echo html::submitButton('', '', 'btn btn-primary btn-wide');?>
</td>
</tr>
</table>
</form>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
+7 -4
View File
@@ -1,7 +1,10 @@
<?php include '../../common/view/header.lite.html.php';?>
<div class='container mw-600px'>
<form class='form-condensed' method='post' enctype='multipart/form-data' target='hiddenwin' style="padding:30px">
<table class='table table-form'>
<div class='main-content'>
<div class='main-header'>
<h2><?php echo $lang->testcase->importFile;?></h2>
</div>
<form method='post' enctype='multipart/form-data' target='hiddenwin' style="padding:30px">
<table class='table table-form w-p100'>
<tr>
<td align='center'>
<input type='file' name='file' class='form-control'/>
@@ -10,7 +13,7 @@
<?php echo html::select('encode', $config->charsets[$this->cookie->lang], 'utf-8', "class='form-control'");?>
</td>
<td>
<?php echo html::submitButton();?>
<?php echo html::submitButton('', '', 'btn btn-primary btn-wide');?>
</td>
</tr>
</table>
+100 -98
View File
@@ -5,104 +5,106 @@
<?php if(isset($suhosinInfo)):?>
<div class='alert alert-info'><?php echo $suhosinInfo?></div>
<?php else:?>
<form target='hiddenwin' method='post' class='form-condensed'>
<table class='table table-fixed active-disabled table-custom' id='showData'>
<thead>
<tr>
<th class='w-50px'><?php echo $lang->lineNumber?></th>
<th class='w-70px'><?php echo $lang->testcase->id?></th>
<th><?php echo $lang->testcase->title?></th>
<?php if(!empty($branches)):?>
<th class='w-100px'><?php echo $lang->testcase->branch?></th>
<?php endif;?>
<th class='w-100px'><?php echo $lang->testcase->module?></th>
<th class='w-120px'><?php echo $lang->testcase->story?></th>
<th class='w-70px'><?php echo $lang->testcase->pri?></th>
<th class='w-100px'><?php echo $lang->testcase->type?></th>
<th><?php echo $lang->testcase->stage?></th>
<th class='w-80px'><?php echo $lang->testcase->keywords?></th>
<th><?php echo $lang->testcase->precondition?></th>
<th class='w-300px'>
<table class='w-p100 table-borderless'>
<tr>
<th><?php echo $lang->testcase->stepDesc?></th>
<th><?php echo $lang->testcase->stepExpect?></th>
</tr>
</table>
</th>
</tr>
</thead>
<tbody>
<?php
$insert = true;
$addID = 1;
?>
<?php foreach($caseData as $key => $case):?>
<?php if(empty($case->title)) continue;?>
<tr valign='top' align='center'>
<td><?php echo $key;?></td>
<td>
<?php
if(!empty($case->id))
{
echo $case->id . html::hidden("id[$key]", $case->id);
$insert = false;
}
else
{
echo "<sub class='gray' style='vertical-align:sub;'>{$lang->testcase->new}</sub>";
}
echo html::hidden("product[$key]", $productID);
?>
</td>
<td><?php echo html::input("title[$key]", htmlspecialchars($case->title, ENT_QUOTES), "class='form-control'")?></td>
<?php if(!empty($branches)):?>
<td class='text-left' style='overflow:visible'><?php echo html::select("branch[$key]", $branches, (isset($case->branch) and $case->branch !== '') ? $case->branch : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->branch : $branch), "class='form-control chosen'")?></td>
<?php endif;?>
<td class='text-left' style='overflow:visible'><?php echo html::select("module[$key]", $modules, isset($case->module) ? $case->module : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->module : ''), "class='form-control chosen'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("story[$key]", $stories, isset($case->story) ? $case->story : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->story : ''), "class='form-control chosen'")?></td>
<td><?php echo html::select("pri[$key]", $lang->testcase->priList, isset($case->pri) ? $case->pri : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->pri : ''), "class='form-control'")?></td>
<td><?php echo html::select("type[$key]", $lang->testcase->typeList, $case->type, "class='form-control'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("stage[$key][]", $lang->testcase->stageList, !empty($case->stage) ? $case->stage : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->stage : ''), "multiple='multiple' class='form-control chosen'")?></td>
<td><?php echo html::input("keywords[$key]", isset($case->keywords) ? $case->keywords : "", "class='form-control' autocomplete='off'")?></td>
<td><?php echo html::textarea("precondition[$key]", isset($case->precondition) ? htmlspecialchars($case->precondition) : "", "class='form-control'")?></td>
<td>
<?php if(isset($stepData[$key]['desc'])):?>
<table class='w-p100 bd-0'>
<?php foreach($stepData[$key]['desc'] as $id => $desc):?>
<?php if(empty($desc['content'])) continue;?>
<tr class='step'>
<td><?php echo $id . html::hidden("stepType[$key][$id]", $desc['type'])?></td>
<td><?php echo html::textarea("desc[$key][$id]", htmlspecialchars($desc['content']), "class='form-control'")?></td>
<td><?php if($desc['type'] != 'group') echo html::textarea("expect[$key][$id]", isset($stepData[$key]['expect'][$id]['content']) ? htmlspecialchars($stepData[$key]['expect'][$id]['content']) : '', "class='form-control'")?></td>
</tr>
<?php endforeach;?>
</table>
<div id="mainContent" class="main-content">
<form target='hiddenwin' method='post'>
<table class='table table-fixed active-disabled table-custom' id='showData'>
<thead>
<tr>
<th class='w-50px'><?php echo $lang->lineNumber?></th>
<th class='w-70px'><?php echo $lang->testcase->id?></th>
<th><?php echo $lang->testcase->title?></th>
<?php if(!empty($branches)):?>
<th class='w-100px'><?php echo $lang->testcase->branch?></th>
<?php endif;?>
</td>
</tr>
<?php endforeach;?>
</tbody>
<tfoot>
<tr>
<td colspan='<?php echo !empty($branches) ? 12 : 11;?>' class='text-center'>
<?php
if(!$insert)
{
include '../../common/view/noticeimport.html.php';
echo "<button type='button' data-toggle='myModal' class='btn btn-primary'>{$lang->save}</button>";
}
else
{
echo html::submitButton();
}
echo ' &nbsp; ' . html::backButton()
?>
</td>
</tr>
</tfoot>
</table>
</form>
<th class='w-100px'><?php echo $lang->testcase->module?></th>
<th class='w-120px'><?php echo $lang->testcase->story?></th>
<th class='w-70px'><?php echo $lang->testcase->pri?></th>
<th class='w-100px'><?php echo $lang->testcase->type?></th>
<th><?php echo $lang->testcase->stage?></th>
<th class='w-80px'><?php echo $lang->testcase->keywords?></th>
<th><?php echo $lang->testcase->precondition?></th>
<th class='w-300px'>
<table class='w-p100 table-borderless'>
<tr>
<th><?php echo $lang->testcase->stepDesc?></th>
<th><?php echo $lang->testcase->stepExpect?></th>
</tr>
</table>
</th>
</tr>
</thead>
<tbody>
<?php
$insert = true;
$addID = 1;
?>
<?php foreach($caseData as $key => $case):?>
<?php if(empty($case->title)) continue;?>
<tr valign='top' align='center'>
<td><?php echo $key;?></td>
<td>
<?php
if(!empty($case->id))
{
echo $case->id . html::hidden("id[$key]", $case->id);
$insert = false;
}
else
{
echo "<sub class='gray' style='vertical-align:sub;'>{$lang->testcase->new}</sub>";
}
echo html::hidden("product[$key]", $productID);
?>
</td>
<td><?php echo html::input("title[$key]", htmlspecialchars($case->title, ENT_QUOTES), "class='form-control'")?></td>
<?php if(!empty($branches)):?>
<td class='text-left' style='overflow:visible'><?php echo html::select("branch[$key]", $branches, (isset($case->branch) and $case->branch !== '') ? $case->branch : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->branch : $branch), "class='form-control chosen'")?></td>
<?php endif;?>
<td class='text-left' style='overflow:visible'><?php echo html::select("module[$key]", $modules, isset($case->module) ? $case->module : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->module : ''), "class='form-control chosen'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("story[$key]", $stories, isset($case->story) ? $case->story : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->story : ''), "class='form-control chosen'")?></td>
<td><?php echo html::select("pri[$key]", $lang->testcase->priList, isset($case->pri) ? $case->pri : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->pri : ''), "class='form-control chosen'")?></td>
<td><?php echo html::select("type[$key]", $lang->testcase->typeList, $case->type, "class='form-control chosen'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("stage[$key][]", $lang->testcase->stageList, !empty($case->stage) ? $case->stage : ((!empty($case->id) and isset($cases[$case->id])) ? $cases[$case->id]->stage : ''), "multiple='multiple' class='form-control chosen'")?></td>
<td><?php echo html::input("keywords[$key]", isset($case->keywords) ? $case->keywords : "", "class='form-control' autocomplete='off'")?></td>
<td><?php echo html::textarea("precondition[$key]", isset($case->precondition) ? htmlspecialchars($case->precondition) : "", "class='form-control'")?></td>
<td>
<?php if(isset($stepData[$key]['desc'])):?>
<table class='w-p100 bd-0'>
<?php foreach($stepData[$key]['desc'] as $id => $desc):?>
<?php if(empty($desc['content'])) continue;?>
<tr class='step'>
<td><?php echo $id . html::hidden("stepType[$key][$id]", $desc['type'])?></td>
<td><?php echo html::textarea("desc[$key][$id]", htmlspecialchars($desc['content']), "class='form-control'")?></td>
<td><?php if($desc['type'] != 'group') echo html::textarea("expect[$key][$id]", isset($stepData[$key]['expect'][$id]['content']) ? htmlspecialchars($stepData[$key]['expect'][$id]['content']) : '', "class='form-control'")?></td>
</tr>
<?php endforeach;?>
</table>
<?php endif;?>
</td>
</tr>
<?php endforeach;?>
</tbody>
<tfoot>
<tr>
<td colspan='<?php echo !empty($branches) ? 12 : 11;?>' class='text-center'>
<?php
if(!$insert)
{
include '../../common/view/noticeimport.html.php';
echo "<button type='button' data-toggle='myModal' class='btn btn-primary btn-wide'>{$lang->save}</button>";
}
else
{
echo html::submitButton('', '', 'btn btn-primary btn-wide');
}
echo ' &nbsp; ' . html::backButton('', '', 'btn btn-wide')
?>
</td>
</tr>
</tfoot>
</table>
</form>
</div>
<?php endif;?>
<script>
$(function(){affix('#showData thead')})
@@ -120,7 +122,7 @@ function affix(obj)
$('.active-disabled ' + obj + ' th').each(function(i){$('#headerClone ' + obj + ' th').eq(i).width($(this).width())});
first = false;
}
else if(scroH<fixH)
else if(scroH<fixH)
{
$("#headerClone").remove();
first = true;
+9 -4
View File
@@ -1,10 +1,10 @@
<?php $sysURL = $this->session->notHead ? common::getSysURL() : '';?>
<table class='table main-table' id='bugs'>
<thead>
<tr>
<tr class='text-center'>
<th class='w-id'> <?php echo $lang->idAB;?></th>
<th class='w-pri'> <?php echo $lang->priAB;?></th>
<th> <?php echo $lang->testreport->bugTitle;?></th>
<th class='text-left'><?php echo $lang->testreport->bugTitle;?></th>
<th class='w-user'> <?php echo $lang->openedByAB;?></th>
<th class='w-user'><?php echo $lang->bug->resolvedBy;?></th>
<th class='w-140px'><?php echo $lang->bug->resolvedDate;?></th>
@@ -16,12 +16,17 @@
<?php foreach($bugs as $bug):?>
<tr>
<td><?php echo $bug->id . html::hidden('bugs[]', $bug->id)?></td>
<td><span class='pri<?php echo $bug->pri?>'><?php echo zget($lang->bug->priList, $bug->pri);?></span></td>
<td><span class='label-pri label-pri-<?php echo $bug->pri?>'><?php echo zget($lang->bug->priList, $bug->pri);?></span></td>
<td class='text-left' title='<?php echo $bug->title?>'><?php echo html::a($sysURL . $this->createLink('bug', 'view', "bugID=$bug->id", '', true), $bug->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?></td>
<td><?php echo zget($users, $bug->openedBy);?></td>
<td><?php echo zget($users, $bug->resolvedBy);?></td>
<td><?php if($bug->resolvedDate != '0000-00-00 00:00:00') echo substr($bug->resolvedDate, 2);?></td>
<td><?php echo zget($lang->bug->statusList, $bug->status);?></td>
<td title='<?php echo zget($lang->bug->statusList, $bug->status);?>'>
<span class="bug-status-<?php echo $bug->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->bug->statusList, $bug->status);?></span>
</span>
</td>
</tr>
<?php endforeach;?>
</tbody>
+2 -2
View File
@@ -1,9 +1,9 @@
<?php $sysURL = $this->session->notHead ? common::getSysURL() : '';?>
<table class='table main-table' id='builds'>
<thead>
<tr>
<tr class='text-center'>
<th class='w-id'> <?php echo $lang->build->id;?></th>
<th> <?php echo $lang->build->name;?></th>
<th class='text-left'><?php echo $lang->build->name;?></th>
<th class='w-user'><?php echo $lang->build->builder;?></th>
<th class='w-100px'><?php echo $lang->build->date;?></th>
</tr>
+9 -4
View File
@@ -1,10 +1,10 @@
<?php $sysURL = $this->session->notHead ? common::getSysURL() : '';?>
<table class='table main-table' id='cases'>
<thead>
<tr>
<tr class='text-center'>
<th class='w-id'> <?php echo $lang->idAB;?></th>
<th class='w-pri'> <?php echo $lang->priAB;?></th>
<th> <?php echo $lang->testcase->title;?></th>
<th class='text-left'><?php echo $lang->testcase->title;?></th>
<th class='w-type'> <?php echo $lang->testcase->type;?></th>
<th class='w-user'> <?php echo $lang->testtask->assignedTo;?></th>
<th class='w-user'> <?php echo $lang->testtask->lastRunAccount;?></th>
@@ -18,14 +18,19 @@
<?php foreach($cases as $case):?>
<tr>
<td><?php echo $case->id . html::hidden('cases[]', $case->id)?></td>
<td><span class='pri<?php echo $case->pri?>'><?php echo zget($lang->testcase->priList, $case->pri);?></span></td>
<td><span class='label-pri label-pri-<?php echo $case->pri?>'><?php echo zget($lang->testcase->priList, $case->pri);?></span></td>
<td class='text-left' title='<?php echo $case->title?>'><?php echo html::a($sysURL . $this->createLink('testcase', 'view', "caseID=$case->id", '', true), $case->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?></td>
<td><?php echo zget($lang->testcase->typeList, $case->type);?></td>
<td><?php echo zget($users, $case->assignedTo);?></td>
<td><?php echo zget($users, $case->lastRunner);?></td>
<td><?php echo substr($case->lastRunDate, 2);?></td>
<td><?php echo zget($lang->testcase->resultList, $case->lastRunResult);?></td>
<td><?php echo zget($lang->testtask->statusList, $case->status);?></td>
<td title='<?php echo zget($lang->testtask->statusList, $case->status);?>'>
<span class="status-<?php echo $case->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->testtask->statusList, $case->status);?></span>
</span>
</td>
</tr>
<?php endforeach;?>
</tbody>
@@ -1,10 +1,10 @@
<?php $sysURL = $this->session->notHead ? common::getSysURL() : '';?>
<table class='table main-table' id='legacyBugs'>
<thead>
<tr>
<tr class='text-center'>
<th class='w-id'> <?php echo $lang->idAB;?></th>
<th class='w-pri'> <?php echo $lang->priAB;?></th>
<th> <?php echo $lang->bug->title;?></th>
<th class='text-left'><?php echo $lang->bug->title;?></th>
<th class='w-user'> <?php echo $lang->openedByAB;?></th>
<th class='w-user'> <?php echo $lang->bug->resolvedBy;?></th>
<th class='w-150px'><?php echo $lang->bug->resolvedDate;?></th>
@@ -16,12 +16,17 @@
<?php foreach($legacyBugs as $bug):?>
<tr>
<td><?php echo $bug->id?></td>
<td><span class='pri<?php echo zget($lang->bug->priList, $bug->pri, $bug->pri)?>'><?php echo zget($lang->bug->priList, $bug->pri, $bug->pri);?></span></td>
<td><span class='label-pri label-pri-<?php echo $bug->pri;?>'><?php echo zget($lang->bug->priList, $bug->pri, $bug->pri);?></span></td>
<td class='text-left' title='<?php echo $bug->title?>'><?php echo html::a($sysURL . $this->createLink('bug', 'view', "bugID=$bug->id", '', true), $bug->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?></td>
<td><?php echo zget($users, $bug->openedBy);?></td>
<td><?php echo zget($users, $bug->resolvedBy);?></td>
<td><?php if($bug->resolvedDate != '0000-00-00 00:00:00') echo substr($bug->resolvedDate, 2);?></td>
<td><?php echo zget($lang->bug->statusList, $bug->status);?></td>
<td title='<?php echo zget($lang->bug->statusList, $bug->status);?>'>
<span class="bug-status-<?php echo $bug->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->bug->statusList, $bug->status);?></span>
</span>
</td>
</tr>
<?php endforeach;?>
</tbody>
+9 -4
View File
@@ -1,10 +1,10 @@
<?php $sysURL = $this->session->notHead ? common::getSysURL() : '';?>
<table class='table main-table' id='stories'>
<thead>
<tr>
<tr class='text-center'>
<th class='w-id'> <?php echo $lang->idAB;?></th>
<th class='w-pri'> <?php echo $lang->priAB;?></th>
<th> <?php echo $lang->testreport->storyTitle;?></th>
<th class='text-left'><?php echo $lang->testreport->storyTitle;?></th>
<th class='w-user'><?php echo $lang->openedByAB;?></th>
<th class='w-80px'><?php echo $lang->assignedToAB;?></th>
<th class='w-hour'><?php echo $lang->story->estimateAB;?></th>
@@ -17,12 +17,17 @@
<?php foreach($stories as $story):?>
<tr>
<td><?php echo $story->id . html::hidden('stories[]', $story->id)?></td>
<td><span class='pri<?php echo $story->pri?>'><?php echo zget($lang->story->priList, $story->pri);?></span></td>
<td><span class='label-pri lable-pri-<?php echo $story->pri?>'><?php echo zget($lang->story->priList, $story->pri);?></span></td>
<td class='text-left' title='<?php echo $story->title?>'><?php echo html::a($sysURL . $this->createLink('story', 'view', "storyID=$story->id", '', true), $story->title, '', "data-toggle='modal' data-type='iframe' data-width='90%'");?></td>
<td><?php echo zget($users, $story->openedBy);?></td>
<td><?php echo zget($users, $story->assignedTo);?></td>
<td><?php echo $story->estimate?></td>
<td><?php echo zget($lang->story->statusList, $story->status);?></td>
<td title='<?php echo zget($lang->story->statusList, $story->status);?>'>
<span class="story-status-<?php echo $story->status?>">
<span class="label label-dot"></span>
<span class='status-text'><?php echo zget($lang->story->statusList, $story->status);?></span>
</span>
</td>
<td><?php echo zget($lang->story->stageList, $story->stage);?></td>
</tr>
<?php endforeach;?>
+4 -4
View File
@@ -23,13 +23,13 @@
<table class='table has-sort-head table-fixed' id='reportList'>
<?php $vars = "objectID=$objectID&objectType=$objectType&extra=$extra&orderBy=%s&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}";?>
<thead>
<tr>
<tr class='text-center'>
<th class='w-id'> <?php common::printOrderLink('id', $orderBy, $vars, $lang->idAB);?></th>
<th> <?php common::printOrderLink('title', $orderBy, $vars, $lang->testreport->title);?></th>
<th class='text-left'><?php common::printOrderLink('title', $orderBy, $vars, $lang->testreport->title);?></th>
<th class='w-user'> <?php common::printOrderLink('createdBy', $orderBy, $vars, $lang->openedByAB);?></th>
<th class='w-150px'><?php common::printOrderLink('createdDate', $orderBy, $vars, $lang->testreport->createdDate);?></th>
<th class='w-250px'><?php common::printOrderLink('project', $orderBy, $vars, $lang->testreport->project);?></th>
<th class='w-250px'><?php echo $lang->testreport->testtask;?></th>
<th class='w-250px text-left'><?php common::printOrderLink('project', $orderBy, $vars, $lang->testreport->project);?></th>
<th class='w-250px text-left'><?php echo $lang->testreport->testtask;?></th>
<th class='w-80px'> <?php echo $lang->actions;?></th>
</tr>
</thead>
+4 -2
View File
@@ -75,8 +75,10 @@
<td colspan='2'><?php echo $this->fetch('file', 'buildform');?></td>
</tr>
<tr>
<th></th>
<td><?php echo html::submitButton() . html::backButton();?></td>
<td class='text-center' colspan='3'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::backButton('', '', 'btn btn-wide');?>
</td>
</tr>
</table>
</div>
@@ -61,8 +61,8 @@
</div>
</div>
</td>
<td><?php echo html::select("type[$i]", $lang->testcase->typeList, $type, "class=form-control");?></td>
<td><?php echo html::select("pri[$i]", $lang->testcase->priList, $pri, "class=form-control");?></td>
<td><?php echo html::select("type[$i]", $lang->testcase->typeList, $type, "class='form-control chosen'");?></td>
<td><?php echo html::select("pri[$i]", $lang->testcase->priList, $pri, "class='form-control chosen'");?></td>
<td><?php echo html::textarea("precondition[$i]", '', "rows='1' class='form-control autosize'")?></td>
<td><?php echo html::input("keywords[$i]", '', "class='form-control' autocomplete='off'");?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("stage[$i][]", $lang->testcase->stageList, '', "class='form-control chosen' multiple");?></td>
+23 -25
View File
@@ -19,31 +19,29 @@ function closeWindow()
}
}
</script>
<div id='titlebar'>
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['export']);?></span>
<strong><?php echo $lang->testcase->exportTemplet;?></strong>
<div class='main-content'>
<div class='main-header'>
<h2><?php echo $lang->testcase->exportTemplet;?></h2>
</div>
</div>
<form class='form-condensed' method='post' target='hiddenwin' onsubmit='setDownloading();' style='padding: 40px 5%'>
<table class='w-p100'>
<tr>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->testcase->num;?></span>
<?php
<form method='post' target='hiddenwin' onsubmit='setDownloading();' style='padding: 40px 5%'>
<table class='w-p100'>
<tr>
<td>
<div class='input-group'>
<span class='input-group-addon'><?php echo $lang->testcase->num;?></span>
<?php
echo html::input('num', '10', "class='form-control' autocomplete='off'");
?>
</div>
</td>
<td class='w-100px'>
<?php echo html::select('encode', $config->charsets[$this->cookie->lang], 'utf-8', "class='form-control'");?>
</td>
<td>
<?php echo html::submitButton();?>
</td>
</tr>
</table>
</form>
?>
</div>
</td>
<td class='w-100px'>
<?php echo html::select('encode', $config->charsets[$this->cookie->lang], 'utf-8', "class='form-control'");?>
</td>
<td>
<?php echo html::submitButton('', '', 'btn btn-primary btn-wide');?>
</td>
</tr>
</table>
</form>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
+6 -3
View File
@@ -1,6 +1,9 @@
<?php include '../../common/view/header.lite.html.php';?>
<div class='container mw-600px'>
<form class='form-condensed' method='post' enctype='multipart/form-data' target='hiddenwin' style="padding:30px">
<div class='main-content'>
<div class='main-header'>
<h2><?php echo $lang->testcase->importFile;?></h2>
</div>
<form method='post' enctype='multipart/form-data' target='hiddenwin' style="padding:30px">
<table class='table table-form'>
<tr>
<td align='center'>
@@ -10,7 +13,7 @@
<?php echo html::select('encode', $config->charsets[$this->cookie->lang], 'utf-8', "class='form-control'");?>
</td>
<td>
<?php echo html::submitButton();?>
<?php echo html::submitButton('', '', 'btn btn-primary btn-wide');?>
</td>
</tr>
</table>
+80 -78
View File
@@ -5,92 +5,94 @@
<?php if(isset($suhosinInfo)):?>
<div class='alert alert-info'><?php echo $suhosinInfo?></div>
<?php else:?>
<form target='hiddenwin' method='post' class='form-condensed'>
<table class='table table-fixed active-disabled table-custom'>
<thead>
<tr>
<th class='w-70px'><?php echo $lang->testcase->id?></th>
<th><?php echo $lang->testcase->title?></th>
<th class='w-100px'><?php echo $lang->testcase->module?></th>
<th class='w-70px'><?php echo $lang->testcase->pri?></th>
<th class='w-100px'><?php echo $lang->testcase->type?></th>
<th><?php echo $lang->testcase->stage?></th>
<th class='w-80px'><?php echo $lang->testcase->keywords?></th>
<th><?php echo $lang->testcase->precondition?></th>
<th class='w-300px'>
<table class='w-p100 table-borderless'>
<tr>
<th><?php echo $lang->testcase->stepDesc?></th>
<th><?php echo $lang->testcase->stepExpect?></th>
</tr>
</table>
</th>
</tr>
</thead>
<tbody>
<?php $insert = true;?>
<?php foreach($caseData as $key => $case):?>
<?php if(empty($case->title)) continue;?>
<?php if(!empty($case->id) and !isset($cases[$case->id])) $case->id = 0;?>
<tr valign='top' align='center'>
<td>
<?php
if(!empty($case->id))
{
echo $case->id . html::hidden("id[$key]", $case->id);
$insert = false;
}
else
{
echo $key . " <sub class='gray' style='vertical-align:sub;'>{$lang->testcase->new}</sub>";
}
echo html::hidden("lib[$key]", $libID);
?>
</td>
<td><?php echo html::input("title[$key]", $case->title, "class='form-control' style='margin-top:2px' autocomplete='off'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("module[$key]", $modules, isset($case->module) ? $case->module : (!empty($case->id) ? $cases[$case->id]->module : ''), "class='form-control chosen'")?></td>
<td><?php echo html::select("pri[$key]", $lang->testcase->priList, isset($case->pri) ? $case->pri : (!empty($case->id) ? $cases[$case->id]->pri : ''), "class='form-control'")?></td>
<td><?php echo html::select("type[$key]", $lang->testcase->typeList, isset($case->type) ? $case->type : (!empty($case->id) ? $cases[$case->id]->type : ''), "class='form-control'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("stage[$key][]", $lang->testcase->stageList, !empty($case->stage) ? $case->stage : (!empty($case->id) ? $cases[$case->id]->stage : ''), "multiple='multiple' class='form-control chosen'")?></td>
<td><?php echo html::input("keywords[$key]", isset($case->keywords) ? $case->keywords : "", "class='form-control' autocomplete='off'")?></td>
<td><?php echo html::textarea("precondition[$key]", isset($case->precondition) ? htmlspecialchars($case->precondition) : "", "class='form-control'")?></td>
<td>
<?php if(isset($stepData[$key]['desc'])):?>
<table class='w-p100 bd-0'>
<?php foreach($stepData[$key]['desc'] as $id => $desc):?>
<?php if(empty($desc['content'])) continue;?>
<tr class='step'>
<td><?php echo $id . html::hidden("stepType[$key][$id]", $desc['type'])?></td>
<td><?php echo html::textarea("desc[$key][$id]", htmlspecialchars($desc['content']), "class='form-control'")?></td>
<td><?php if($desc['type'] != 'group') echo html::textarea("expect[$key][$id]", isset($stepData[$key]['expect'][$id]['content']) ? htmlspecialchars($stepData[$key]['expect'][$id]['content']) : '', "class='form-control'")?></td>
</tr>
<?php endforeach;?>
</table>
<?php endif;?>
</td>
</tr>
<?php endforeach;?>
</tbody>
<tfoot>
<tr>
<td colspan='9' class='text-center'>
<div id="mainContent" class="main-content">
<form target='hiddenwin' method='post'>
<table class='table table-fixed active-disabled table-custom'>
<thead>
<tr>
<th class='w-70px'><?php echo $lang->testcase->id?></th>
<th><?php echo $lang->testcase->title?></th>
<th class='w-100px'><?php echo $lang->testcase->module?></th>
<th class='w-70px'><?php echo $lang->testcase->pri?></th>
<th class='w-100px'><?php echo $lang->testcase->type?></th>
<th><?php echo $lang->testcase->stage?></th>
<th class='w-80px'><?php echo $lang->testcase->keywords?></th>
<th><?php echo $lang->testcase->precondition?></th>
<th class='w-300px'>
<table class='w-p100 table-borderless'>
<tr>
<th><?php echo $lang->testcase->stepDesc?></th>
<th><?php echo $lang->testcase->stepExpect?></th>
</tr>
</table>
</th>
</tr>
</thead>
<tbody>
<?php $insert = true;?>
<?php foreach($caseData as $key => $case):?>
<?php if(empty($case->title)) continue;?>
<?php if(!empty($case->id) and !isset($cases[$case->id])) $case->id = 0;?>
<tr valign='top' align='center'>
<td>
<?php
if(!$insert)
if(!empty($case->id))
{
include '../../common/view/noticeimport.html.php';
echo "<button type='button' data-toggle='myModal' class='btn btn-primary'>{$lang->save}</button>";
echo $case->id . html::hidden("id[$key]", $case->id);
$insert = false;
}
else
{
echo html::submitButton();
echo $key . " <sub class='gray' style='vertical-align:sub;'>{$lang->testcase->new}</sub>";
}
echo ' &nbsp; ' . html::backButton()
echo html::hidden("lib[$key]", $libID);
?>
</td>
<td><?php echo html::input("title[$key]", $case->title, "class='form-control' style='margin-top:2px' autocomplete='off'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("module[$key]", $modules, isset($case->module) ? $case->module : (!empty($case->id) ? $cases[$case->id]->module : ''), "class='form-control chosen'")?></td>
<td><?php echo html::select("pri[$key]", $lang->testcase->priList, isset($case->pri) ? $case->pri : (!empty($case->id) ? $cases[$case->id]->pri : ''), "class='form-control chosen'")?></td>
<td><?php echo html::select("type[$key]", $lang->testcase->typeList, isset($case->type) ? $case->type : (!empty($case->id) ? $cases[$case->id]->type : ''), "class='form-control chosen'")?></td>
<td class='text-left' style='overflow:visible'><?php echo html::select("stage[$key][]", $lang->testcase->stageList, !empty($case->stage) ? $case->stage : (!empty($case->id) ? $cases[$case->id]->stage : ''), "multiple='multiple' class='form-control chosen'")?></td>
<td><?php echo html::input("keywords[$key]", isset($case->keywords) ? $case->keywords : "", "class='form-control' autocomplete='off'")?></td>
<td><?php echo html::textarea("precondition[$key]", isset($case->precondition) ? htmlspecialchars($case->precondition) : "", "class='form-control'")?></td>
<td>
<?php if(isset($stepData[$key]['desc'])):?>
<table class='w-p100 bd-0'>
<?php foreach($stepData[$key]['desc'] as $id => $desc):?>
<?php if(empty($desc['content'])) continue;?>
<tr class='step'>
<td><?php echo $id . html::hidden("stepType[$key][$id]", $desc['type'])?></td>
<td><?php echo html::textarea("desc[$key][$id]", htmlspecialchars($desc['content']), "class='form-control'")?></td>
<td><?php if($desc['type'] != 'group') echo html::textarea("expect[$key][$id]", isset($stepData[$key]['expect'][$id]['content']) ? htmlspecialchars($stepData[$key]['expect'][$id]['content']) : '', "class='form-control'")?></td>
</tr>
<?php endforeach;?>
</table>
<?php endif;?>
</td>
</tr>
</tfoot>
</table>
</form>
<?php endforeach;?>
</tbody>
<tfoot>
<tr>
<td colspan='9' class='text-center'>
<?php
if(!$insert)
{
include '../../common/view/noticeimport.html.php';
echo "<button type='button' data-toggle='myModal' class='btn btn-primary btn-wide'>{$lang->save}</button>";
}
else
{
echo html::submitButton('', '', 'btn btn-primary btn-wide');
}
echo ' &nbsp; ' . html::backButton('', '', 'btn btn-wide')
?>
</td>
</tr>
</tfoot>
</table>
</form>
</div>
<?php endif;?>
<script>
$(function(){affix('thead')})
@@ -108,7 +110,7 @@ function affix(obj)
$('.active-disabled ' + obj + ' th').each(function(i){$('#headerClone ' + obj + ' th').eq(i).width($(this).width())});
first = false;
}
else if(scroH<fixH)
else if(scroH<fixH)
{
$("#headerClone").remove();
first = true;
+2 -2
View File
@@ -76,7 +76,7 @@ $status = $this->session->testTaskVersionStatus;
<?php if($this->config->global->flow != 'onlyTest'):?>
<td title="<?php echo $task->projectName?>"><?php echo $task->projectName?></td>
<?php endif;?>
<td><?php echo ($task->build == 'trunk' || empty($task->buildName)) ? $lang->trunk : html::a($this->createLink('build', 'view', "buildID=$task->build",'',true), $task->buildName, '','class="iframe"');?></td>
<td><?php echo ($task->build == 'trunk' || empty($task->buildName)) ? $lang->trunk : html::a($this->createLink('build', 'view', "buildID=$task->build",'',true), $task->buildName);?></td>
<td><?php echo zget($users, $task->owner);?></td>
<td><?php echo $task->begin?></td>
<td><?php echo $task->end?></td>
@@ -100,7 +100,7 @@ $status = $this->session->testTaskVersionStatus;
common::printIcon('testtask', 'view', "taskID=$task->id", '', 'list', 'file','','iframe',true, 'data-width=800px');
common::printIcon('testtask', 'linkCase', "taskID=$task->id", $task, 'list', 'link');
common::printIcon('testreport', 'browse', "objectID=$task->product&objectType=product&extra=$task->id", $task, 'list','flag');
common::printIcon('testtask', 'edit', "taskID=$task->id", $task, 'list','','','iframe',true);
common::printIcon('testtask', 'edit', "taskID=$task->id", $task, 'list','','','',true);
?>
</td>
</tr>
+4 -1
View File
@@ -87,7 +87,10 @@
</td>
</tr>
<tr>
<td></td><td colspan='2'><?php echo html::submitButton() . html::backButton();?> </td>
<td class='text-center' colspan='3'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::backButton('', '', 'btn btn-wide');?>
</td>
</tr>
</table>
</form>
+6 -2
View File
@@ -14,9 +14,10 @@
<?php include '../../common/view/datepicker.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<div id='mainContent' class='main-content'>
<div class='center-block mw-1400px'>
<div class='center-block'>
<div class='main-header'>
<h2>
<span class='label label-id'><?php echo $task->id;?></span>
<?php echo html::a($this->createLink('testtask', 'view', 'taskID=' . $task->id), $task->name, '_blank');?>
<small class='text-muted'><?php echo $lang->arrow . $lang->testtask->edit;?></small>
</h2>
@@ -79,7 +80,10 @@
</td>
</tr>
<tr>
<td></td><td colspan='2'><?php echo html::submitButton() . html::backButton() . html::hidden('product', $task->product);?></td>
<td class='text-center' colspan='3'>
<?php echo html::submitButton('', '', 'btn btn-wide btn-primary');?>
<?php echo html::backButton('', '', 'btn btn-wide');?>
</td>
</tr>
</table>
</form>
+70 -70
View File
@@ -12,77 +12,78 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<div id='mainContent' class='main-content'>
<div class='center-block'>
<div class='main-header'>
<h2>
<span class='label label-id'><?php echo $task->id;?></span>
<?php echo $task->name;?>
<?php if($task->deleted):?>
<span class='label label-danger'><?php echo $lang->task->deleted;?></span>
<?php endif; ?>
</h2>
<?php $browseLink = $this->session->testtaskList ? $this->session->testtaskList : $this->createLink('testtask', 'browse', "productID=$task->product");?>
<div id='mainMenu' class='clearfix'>
<div class='btn-toolbar pull-left'>
<?php common::printBack($browseLink, 'btn btn-link');?>
<div class='divider'></div>
<div class='page-title'>
<span class='label label-id'><?php echo $task->id;?></span>
<span class='text'><?php echo $task->name;?></span>
<?php if($task->deleted):?>
<span class='label label-danger'><?php echo $lang->task->deleted;?></span>
<?php endif; ?>
</div>
<div class="main-row">
<div class="col-8 main-col">
<div class="cell">
<div class="detail">
<div class="detail-title"><?php echo $lang->testtask->desc;?></div>
<div class="detail-content article-content"><?php echo !empty($task->desc) ? $task->desc : "<div class='text-center'>" . $lang->noData . '</div>';?></div>
</div>
<?php if($task->report):?>
<div class="detail">
<div class="detail-title"><?php echo $lang->testtask->report;?></div>
<div class="detail-content article-content"><?php echo $task->report;?></div>
</div>
<?php endif;?>
<?php $actionFormLink = $this->createLink('action', 'comment', "objectType=testtask&objectID=$task->id");?>
<?php include '../../common/view/action.html.php';?>
</div>
</div>
</div>
<div id='mainContent' class='main-row'>
<div class="col-8 main-col">
<div class="cell">
<div class="detail">
<div class="detail-title"><?php echo $lang->testtask->desc;?></div>
<div class="detail-content article-content"><?php echo !empty($task->desc) ? $task->desc : $lang->noData;?></div>
</div>
<div class="col-4 side-col">
<div class="cell">
<details class="detail" open>
<summary class="detail-title"><?php echo $lang->testtask->legendBasicInfo;?></summary>
<div class="detail-content">
<table class="table table-data">
<?php if($this->config->global->flow != 'onlyTest'):?>
<tr>
<th class='w-80px'><?php echo $lang->testtask->project;?></th>
<td><?php echo html::a($this->createLink('project', 'story', "projectID=$task->project"), $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));?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->owner;?></th>
<td><?php echo zget($users, $task->owner);?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->mailto;?></th>
<td><?php $mailto = explode(',', str_replace(' ', '', $task->mailto)); foreach($mailto as $account) echo ' ' . zget($users, $account, $account);?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->pri;?></th>
<td><?php echo $task->pri;?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->begin;?></th>
<td><?php echo $task->begin;?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->end;?></th>
<td><?php echo $task->end;?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->status;?></th>
<td class='task-<?php echo $task->status?>'><?php echo $lang->testtask->statusList[$task->status];?></td>
</tr>
</table>
</div>
</details>
<?php if($task->report):?>
<div class="detail">
<div class="detail-title"><?php echo $lang->testtask->report;?></div>
<div class="detail-content article-content"><?php echo $task->report;?></div>
</div>
<?php endif;?>
<?php $actionFormLink = $this->createLink('action', 'comment', "objectType=testtask&objectID=$task->id");?>
<?php include '../../common/view/action.html.php';?>
</div>
</div>
<div class="col-4 side-col">
<div class="cell">
<div class="detail">
<div class="detail-title"><?php echo $lang->testtask->legendBasicInfo;?></div>
<div class="detail-content">
<table class="table table-data">
<?php if($this->config->global->flow != 'onlyTest'):?>
<tr>
<th class='w-80px'><?php echo $lang->testtask->project;?></th>
<td><?php echo html::a($this->createLink('project', 'story', "projectID=$task->project"), $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));?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->owner;?></th>
<td><?php echo zget($users, $task->owner);?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->mailto;?></th>
<td><?php $mailto = explode(',', str_replace(' ', '', $task->mailto)); foreach($mailto as $account) echo ' ' . zget($users, $account, $account);?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->pri;?></th>
<td><?php echo $task->pri;?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->begin;?></th>
<td><?php echo $task->begin;?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->end;?></th>
<td><?php echo $task->end;?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->status;?></th>
<td class='task-<?php echo $task->status?>'><?php echo $lang->testtask->statusList[$task->status];?></td>
</tr>
</table>
</div>
</div>
</div>
@@ -90,7 +91,6 @@
</div>
<div id='mainActions'>
<?php $browseLink = $this->session->testtaskList ? $this->session->testtaskList : $this->createLink('testtask', 'browse', "productID=$task->product");?>
<?php common::printPreAndNext($browseLink);?>
<div class="btn-toolbar">
<?php common::printBack($browseLink);?>
+2
View File
@@ -12,3 +12,5 @@
.col-module .chosen-container-single .chosen-single {border-radius: 2px 0 0 2px; border-right-width: 0; padding-right: 1px;}
.col-module .chosen-container-active .chosen-single {border-right-width: 1px; padding-right: 0;}
.col-shorts .chosen-container-single .chosen-single {border-radius: 0 2px 2px 0;}
#modulesTree li {padding-left: 20px;}
+8 -5
View File
@@ -33,7 +33,7 @@
<div class="panel-title"><?php echo $title;?></div>
</div>
<div class="panel-body">
<ul class='tree-lines' id='modulesTree' data-name='tree-<?php echo $viewType;?>'></ul>
<ul id='modulesTree' data-name='tree-<?php echo $viewType;?>'></ul>
</div>
</div>
</div>
@@ -50,10 +50,10 @@
</div>
<div class="panel-body">
<form id='childrenForm' method='post' target='hiddenwin' action='<?php echo $this->createLink('tree', 'manageChild', "root=$rootID&viewType=$viewType");?>'>
<table class='table table-form'>
<table class='table table-form table-auto'>
<tr>
<?php if($viewType != 'line'):?>
<td class="text-middle text-nowrap text-right with-padding">
<td class="text-middle text-right with-padding">
<?php
echo html::a($this->createLink('tree', 'browse', "root=$rootID&viewType=$viewType"), empty($root->name) ? '' : $root->name) . "<i class='icon icon-angle-right muted'></i>";
foreach($parentModules as $module)
@@ -143,10 +143,12 @@
$(function()
{
var data = $.parseJSON('<?php echo helper::jsonEncode4Parse($tree);?>');
var options = {
var options =
{
initialState: 'preserve',
data: data,
sortable: {
sortable:
{
lazy: true,
nested: true,
canMoveHere: function($ele, $target)
@@ -234,6 +236,7 @@ $(function()
var $tree = $('#modulesTree').tree(options);
var tree = $tree.data('zui.tree');
console.log('tree', tree, options);
if(<?php echo $currentModuleID ?>)
if(0)
{
+3 -3
View File
@@ -29,7 +29,7 @@
<div class='panel-title'><?php echo $title;?></div>
</div>
<div class='panel-body'>
<ul class='tree-lines' id='modulesTree' data-name='tree-task'></ul>
<ul id='modulesTree' data-name='tree-task'></ul>
</div>
</div>
</div>
@@ -40,9 +40,9 @@
<div class='panel-title'><?php echo $lang->tree->manageTaskChild;?></div>
</div>
<div class='panel-body'>
<table class='table table-form'>
<table class='table table-form table-auto'>
<tr>
<td class="text-middle text-nowrap text-right with-padding">
<td class="text-middle text-right with-padding">
<?php
echo html::a($this->createLink('tree', 'browsetask', "root={$root->id}&productID=$productID&viewType=task"), $root->name) . "<i class='icon icon-angle-right muted'></i>";
foreach($parentModules as $module)
+15 -14
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
+1 -1
View File
@@ -78,7 +78,7 @@
<glyph unicode="&#xe93c;" glyph-name="color" d="M512-227.536c-282.759 0-511.98 229.221-511.98 511.98s229.221 511.98 511.98 511.98c282.759 0 508.252-204.169 511.98-447.983 1.318-86.219-30.006-212.303-192.409-275.415-69.232-26.904-186.27-1.378-234.428-25.237-64.809-32.11-47.245-111.882-22.099-133.338 43.832-37.4 17.103-141.988-63.044-141.988zM749.952 342.969c0-53.017 42.979-95.996 95.996-95.996s95.996 42.979 95.996 95.996c0 53.017-42.979 95.996-95.996 95.996s-95.996-42.979-95.996-95.996zM246.317 300.233c23.242 47.652 3.452 105.122-44.198 128.363s-105.122 3.452-128.363-44.198c-23.242-47.652-3.452-105.122 44.198-128.363s105.122-3.452 128.363 44.198zM380.748 471.568c51.658 11.927 83.868 63.472 71.941 115.13s-63.472 83.868-115.13 71.941c-51.658-11.927-83.868-63.472-71.941-115.13s63.472-83.868 115.13-71.941zM611.036 497.827c41.203-33.365 101.651-27.011 135.015 14.19s27.011 101.651-14.19 135.015c-41.203 33.365-101.651 27.011-135.015-14.19s-27.011-101.651 14.19-135.015z" />
<glyph unicode="&#xe93d;" glyph-name="paper-clip" d="M760.87 367.594l-387.198-387.198c-78.785-78.785-200.132-85.171-271.040-14.266s-64.518 192.255 14.266 271.040l387.198 387.198 256.774-256.774zM577.46 551.004l-387.198-387.198c-33.766-33.766-36.501-85.771-6.114-116.161s82.395-27.651 116.161 6.114l387.198 387.198zM169.883 143.425l407.576 407.576c67.53 67.53 171.543 73.004 232.318 12.227s55.302-164.79-12.227-232.318l-407.576-407.576zM463.339-150.031l407.576 407.576c112.55 112.55 121.674 285.905 20.378 387.198s-274.649 92.17-387.198-20.378l-407.576-407.576 73.364-73.364zM472.51-159.201c-25.323-25.323-66.382-25.323-91.705 0s-25.323 66.382 0 91.705c25.323 25.323 66.382 25.323 91.705 0s25.323-66.382 0-91.705zM770.041 358.424c-25.323-25.323-66.382-25.323-91.705 0s-25.323 66.382 0 91.705c25.323 25.323 66.382 25.323 91.705 0s25.323-66.382 0-91.705z" />
<glyph unicode="&#xe93e;" glyph-name="arrow-right" d="M849.601 267.375c4.266 8.534 4.266 21.332 0 34.134-4.266 4.266-4.266 8.534-8.534 12.798l-298.667 298.667c-17.069 17.069-42.666 17.069-59.732 0s-17.069-42.666 0-59.732l226.133-226.133h-494.934c-25.602 0-42.666-17.069-42.666-42.666s17.069-42.666 42.666-42.666h494.934l-226.133-226.133c-17.069-17.069-17.069-42.666 0-59.732 8.534-8.534 21.332-12.798 29.867-12.798s21.332 4.266 29.867 12.798l298.667 298.667c4.266 4.266 8.534 8.534 8.534 12.798z" />
<glyph unicode="&#xe93f;" glyph-name="back" d="M160.311 501.081h470.224c185.496 0 335.875-150.376 335.875-335.875v0c0-185.496-150.376-335.875-335.875-335.875h-470.224v671.751zM160.311 366.732v-403.049h470.224c111.3 0 201.527 90.226 201.527 201.527s-90.226 201.527-201.527 201.527v0h-470.224zM227.487-103.491c0-37.097-30.073-67.176-67.176-67.176s-67.176 30.073-67.176 67.176c0 37.097 30.073 67.176 67.176 67.176s67.176-30.073 67.176-67.176zM81.047 484.906l293.273 251.415c5.634 4.828 14.116 4.179 18.944-1.456 2.785-3.249 3.857-7.628 2.884-11.799l-67.463-289.161 67.463-289.161c1.688-7.224-2.808-14.451-10.030-16.136-4.168-0.97-8.549 0.099-11.799 2.884l-293.273 251.415c-28.168 24.147-31.426 66.552-7.279 94.721 2.235 2.61 4.671 5.043 7.279 7.279z" />
<glyph unicode="&#xe93f;" glyph-name="back" d="M160.311-170.157c-0.23-0.002-0.461-0.003-0.692-0.003-37.104 0-67.175 30.073-67.175 67.177 0 37.097 30.073 67.175 67.175 67.175 2.813 0 5.585-0.173 8.307-0.508h462.609c111.3 0 201.527 90.226 201.527 201.527s-90.226 201.527-201.527 201.527h-470.224v134.343h469.777c185.319 0 335.556-150.433 335.556-336 0-185.564-150.234-336-335.556-336h-469.777v0.763zM82.125 484.904l293.273 251.415c5.634 4.828 14.116 4.18 18.944-1.456 2.786-3.25 3.858-7.628 2.884-11.799l-67.463-289.161 67.463-289.161c1.689-7.225-2.807-14.452-10.030-16.137-4.169-0.971-8.549 0.1-11.799 2.884l-293.273 251.415c-28.169 24.148-31.426 66.553-7.278 94.722 2.235 2.61 4.67 5.044 7.278 7.278h0.002z" />
<glyph unicode="&#xe940;" glyph-name="chat-line" d="M875.173 88.887h-419.049l-111.746-67.050v67.050h-195.557v502.858h726.35v-502.858zM65.016 563.81v-446.984c0-61.717 50.029-111.746 111.746-111.746h89.396v-111.746l189.968 111.746h391.112c61.717 0 111.746 50.029 111.746 111.746v446.984c0 61.717-50.029 111.746-111.746 111.746h-670.476c-61.717 0-111.746-50.029-111.746-111.746zM288.508 368.255h446.984v83.811h-446.984zM288.508 200.633h446.984v83.811h-446.984z" />
<glyph unicode="&#xe941;" glyph-name="person" d="M780.194 361.041l-0.032-0.014c10.366 29.5 16.283 61.056 16.283 94.084 0 157.097-127.333 284.444-284.444 284.444s-284.444-127.348-284.444-284.444c0-33.028 5.916-64.583 16.277-94.084v0.014c-110.834-56.375-186.944-171.209-186.944-304.084v-170.652c0-31.472 25.5-56.972 56.972-56.972h796.277c31.472 0 56.972 25.5 56.972 56.972v170.652c0 132.875-76.084 247.708-186.917 304.084zM512 625.777c94.112 0 170.667-76.555 170.667-170.667s-76.555-170.667-170.667-170.667c-94.112 0-170.667 76.555-170.667 170.667s76.555 170.667 170.667 170.667zM853.333-56.889h-682.667v113.847c0 91.264 54.167 169.945 131.89 206.153 52-56.695 126.444-92.444 209.444-92.444 83.001 0 157.444 35.749 209.444 92.444 77.723-36.208 131.89-114.889 131.89-206.153v-113.847z" />
<glyph unicode="&#xe942;" glyph-name="folder-account" d="M870.4 28.445h-409.6v51.199c0 68.095 136.705 102.4 204.8 102.4s204.8-34.305 204.8-102.4zM665.598 438.042c56.32 0 102.4-46.080 102.4-102.4s-46.080-102.4-102.4-102.4c-56.32 0-102.4 46.080-102.4 102.4 0 56.831 46.080 102.4 102.4 102.4zM921.6 591.645h-409.6l-102.4 102.4h-307.201c-56.831 0-102.4-45.568-102.4-102.4v-614.398c0-56.32 46.080-102.4 102.4-102.4h819.199c56.32 0 102.4 46.080 102.4 102.4v511.999c0 56.831-46.080 102.4-102.4 102.4z" />

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.
Binary file not shown.