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

This commit is contained in:
wangyidong
2014-08-04 01:39:46 +00:00
43 changed files with 382 additions and 1635 deletions
+2 -2
View File
@@ -64,7 +64,7 @@
<div class='col-md-6'>
<div class='panel panel-sm contentDiv'>
<div class='panel-heading'><?php echo html::icon($lang->icons['story']) . ' ' . $lang->build->linkStories;?></div>
<table class='table table table-borderless table-condensed table-hover'>
<table class='table table table-borderless table-condensed table-hover table-fixed'>
<thead>
<tr class='text-center'>
<th class='w-id text-left'><?php echo html::selectAll('story', 'checkbox') . ' ' . $lang->idAB;?></th>
@@ -88,7 +88,7 @@
<div class='col-md-6'>
<div class='panel panel-sm contentDiv'>
<div class='panel-heading'><?php echo html::icon($lang->icons['bug']) . ' ' . $lang->build->linkBugs;?></div>
<table class='table table table-borderless table-condensed table-hover'>
<table class='table table table-borderless table-condensed table-hover table-fixed'>
<thead>
<tr class='text-center'>
<th class='w-id text-left'><?php echo html::selectAll('bug', 'checkbox') . ' ' . $lang->idAB;?></th>
+2 -2
View File
@@ -146,11 +146,11 @@
</tr>
<tr>
<th><?php echo $lang->build->scmPath;?></th>
<td><?php strpos($build->scmPath, 'http') === 0 ? printf(html::a($build->scmPath)) : printf($build->scmPath);?></td>
<td style='word-break:break-all;'><?php strpos($build->scmPath, 'http') === 0 ? printf(html::a($build->scmPath)) : printf($build->scmPath);?></td>
</tr>
<tr>
<th><?php echo $lang->build->filePath;?></th>
<td><?php strpos($build->filePath, 'http') === 0 ? printf(html::a($build->filePath)) : printf($build->filePath);?></td>
<td style='word-break:break-all;'><?php strpos($build->filePath, 'http') === 0 ? printf(html::a($build->filePath)) : printf($build->filePath);?></td>
</tr>
</table>
</fieldset>
+6 -6
View File
@@ -9,15 +9,15 @@ function switchChange(historyID)
{
$swbtn.closest('li').addClass('show-changes');
$showTag.removeClass('change-show').addClass('change-hide');
$('#changeBox' + historyID).slideDown('fast');
$('#changeBox' + historyID).prev('.changeDiff').slideDown('fast');
$('#changeBox' + historyID).show();
$('#changeBox' + historyID).prev('.changeDiff').show();
}
else
{
$swbtn.closest('li').removeClass('show-changes');
$swbtn.find('.change-hide').removeClass('change-hide').addClass('change-show');
$('#changeBox' + historyID).slideUp('fast');
$('#changeBox' + historyID).prev('.changeDiff').slideUp('fast');
$('#changeBox' + historyID).hide();
$('#changeBox' + historyID).prev('.changeDiff').hide();
}
}
@@ -77,8 +77,8 @@ function toggleOrder(obj)
function toggleComment(actionID)
{
$('.comment' + actionID).slideToggle('fast');
$('#lastCommentBox').slideToggle('fast');
$('.comment' + actionID).toggle();
$('#lastCommentBox').toggle();
$('.ke-container').css('width', '100%');
}
-1
View File
@@ -20,7 +20,6 @@ $(function()
$this.focus(function(){if($this.val() == '0000-00-00') $this.val('')}).blur(function(){if($this.val() == '') $this.val('0000-00-00')});
}
});
};
var options =
+1 -1
View File
@@ -3,7 +3,7 @@
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title"><i class="icon-heart"></i><?php echo $lang->parseText?></h4>
<h4 class="modal-title"><i class="icon-file-text"></i> <?php echo $lang->parseText?></h4>
</div>
<div class="modal-body"><?php echo html::textarea('parseText', '', "class='form-control' rows='10'")?></div>
<div class="modal-footer"><?php echo html::submitButton()?></div>
+6 -5
View File
@@ -11,11 +11,12 @@ $(function() { sortTable(); } );
function sortTable()
{
$('.tablesorter').tablesorter(
{
widgets: ['zebra'],
widgetZebra: {css: ['odd', 'even'] }
}
);
{
saveSort: true,
widgets: ['zebra', 'saveSort'],
widgetZebra: {css: ['odd', 'even'] }
});
$('.tablesorter tbody tr').hover(
function(){$(this).addClass('hoover')},
function(){$(this).removeClass('hoover')}
+6 -7
View File
@@ -15,19 +15,18 @@
<div class='heading'>
<span class='prefix' title='EXTENSION'><?php echo html::icon($lang->icons['extension']);?></span>
<strong><?php echo $title;?></strong>
<small class='text-success'><?php echo $lang->extension->activate;?> <?php echo html::icon($lang->icons['activate']);?></small>
<small class='text-muted'><?php echo $lang->extension->activate;?> <?php echo html::icon($lang->icons['activate']);?></small>
</div>
</div>
<?php if(isset($error) and $error):?>
<div class='alert alert-danger'>
<i class='icon-info-sign'></i>
<div class='content'><?php $error;?></div>
<div class='text-center'>
<div class='text-danger'><?php $error;?></div>
</div>
<?php else:?>
<div class='alert alert-success'>
<i class='icon-ok-sign'></i>
<div class='text-center with-padding'>
<div class='content'>
<h3><?php echo $title;?></h3>
<h3 class='text-success'><?php echo $title;?></h3>
<hr>
<p class='text-center'><?php echo html::commonButton($lang->extension->viewInstalled, 'onclick=parent.location.href="' . inlink('browse', 'type=installed') . '"');?></p>
</div>
</div>
+2 -2
View File
@@ -11,10 +11,10 @@
*/
?>
<?php include 'header.html.php';?>
<div class='container'>
<div class='container bd-0'>
<div class='cards'>
<?php foreach($extensions as $extension):?>
<div class='col-md-6'><div class='card'>
<div class='col-xs-12'><div class='card'>
<div class='card-heading'><strong><?php echo $extension->name;?></strong></div>
<div class='card-content text-muted'><?php echo $extension->desc;?></div>
<div class='card-actions'>
+1 -1
View File
@@ -18,7 +18,7 @@
</div>
</div>
<?php if(isset($error) and $error):?>
<div class='alert alert-success'>
<div class='alert alert-success with-icon'>
<i class='icon-ok-sign'></i>
<div class='content'>
<h3><?php echo $lang->extension->needSorce;?></h3>
+5 -7
View File
@@ -15,19 +15,17 @@
<div class='heading'>
<span class='prefix' title='EXTENSION'><?php echo html::icon($lang->icons['extension']);?></span>
<strong><?php echo $title;?></strong>
<small class='text-danger'><?php echo $lang->extension->deactivate;?> <?php echo html::icon($lang->icons['activate']);?></small>
<small class='text-muted'><?php echo $lang->extension->deactivate;?> <?php echo html::icon($lang->icons['activate']);?></small>
</div>
</div>
<div class='alert alert-success'>
<i class='icon-ok-sign'></i>
<div class='content'>
<h3><?php echo $title;?></h3>
<div class='text-center with-padding'>
<h3 class='mgb-20'><?php echo $title;?></h3>
<?php if($removeCommands):?>
<p><strong><?php echo $lang->extension->unremovedFiles;?></strong></p>
<p><?php echo join($removeCommands, '<br />');?></p>
<?php endif;?>
<p class='text-center'><?php echo html::commonButton($lang->extension->viewDeactivated, 'onclick=parent.location.href="' . inlink('browse', 'type=deactivated') . '"');?></p>
</div>
<hr>
<p><?php echo html::commonButton($lang->extension->viewDeactivated, 'onclick=parent.location.href="' . inlink('browse', 'type=deactivated') . '"');?></p>
</div>
</body>
</html>
+1 -1
View File
@@ -18,7 +18,7 @@
<small class='text-danger'><?php echo $lang->extension->erase;?> <?php echo html::icon('trash');?></small>
</div>
</div>
<div class='alert alert-success'>
<div class='alert alert-success with-icon'>
<i class='icon-ok-sign'></i>
<div class='content'>
<h3><?php echo $title;?></h3>
+22 -24
View File
@@ -23,42 +23,40 @@
</div>
</div>
<?php if($error):?>
<div class='alert alert-danger'>
<i class='icon-remove-sign'></i>
<div class='content'>
<h4><?php sprintf($lang->extension->installFailed, $installType);?></h4>
<p><?php echo $error;?></p>
<hr>
<?php echo html::commonButton($lang->extension->refreshPage, 'onclick=location.href=location.href');?>
</div>
<div class='panel panel-body text-center'>
<h4 class='text-danger'><?php sprintf($lang->extension->installFailed, $installType);?></h4>
<p class='text-danger'><?php echo $error;?></p>
<hr>
<?php echo html::commonButton($lang->extension->refreshPage, 'onclick=location.href=location.href');?>
</div>
<?php elseif(isset($license)):?>
<div class='alert'>
<i class='icon-info-sign'></i>
<div class='content'>
<div class='panel panel-body '>
<div class='content text-center'>
<h4><?php echo $lang->extension->license;?></h4>
<p><?php echo html::textarea('license', $license, "class='form-control' disabled rows='15'");?></p>
<?php echo html::a($agreeLink, $lang->extension->agreeLicense, '', "class='btn btn-primary'");?>
</div>
</div>
<?php else:?>
<div class='alert alert-success'>
<h4><i class='icon-ok-sign'></i> <?php echo $lang->extension->successDownloadedPackage;?></h4>
<h1 class='text-center'><?php echo sprintf($lang->extension->installFinished, $installType);?></h1>
<div class='panel panel-body'>
<h1 class='text-center mgb-20'><?php echo sprintf($lang->extension->installFinished, $installType);?></h1>
<div class='text-center'>
<?php echo html::commonButton($lang->extension->viewInstalled, 'onclick=parent.location.href="' . inlink('browse') . '" class="btn btn-success"');?>
</div>
<hr>
<?php
echo "<h3 class='success'>{$lang->extension->successCopiedFiles}</h3>";
echo '<ul>';
foreach($files as $fileName => $md5)
{
echo "<li>$fileName</li>";
}
echo '</ul>';
echo "<h3 class='success'>{$lang->extension->successInstallDB}</h3>";
?>
<div class='alert'>
<?php
echo "<h5 class='success'>{$lang->extension->successDownloadedPackage}</h5>";
echo "<h5 class='success'>{$lang->extension->successCopiedFiles}</h5>";
echo '<ul>';
foreach($files as $fileName => $md5)
{
echo "<li>$fileName</li>";
}
echo '</ul>';
echo "<h5 class='success'>{$lang->extension->successInstallDB}</h5>";
?>
</div>
</div>
<?php endif;?>
</body>
+1 -1
View File
@@ -103,7 +103,7 @@
}
else
{
echo html::commonButton($lang->extension->installed, "disabled='disabled' style='color:gray'");
echo html::commonButton("<i class='icon-ok'></i> " . $lang->extension->installed, "disabled='disabled'", 'text-success');
}
}
else
+4 -4
View File
@@ -17,11 +17,11 @@
<strong><?php echo $extension->name . '[' . $extension->code . '] ' .$lang->extension->structure . ':';?></strong>
</div>
</div>
<div class='main'>
<?php
<div class='main with-padding'>
<pre><?php
$appRoot = $this->app->getAppRoot();
$files = json_decode($extension->files);
foreach($files as $file => $md5) echo $appRoot . $file . "<br />";
?>
foreach($files as $file => $md5) echo $appRoot . $file . "\n";
?></pre>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
+3 -3
View File
@@ -19,7 +19,7 @@
</div>
</div>
<?php if(isset($confirm) and $confirm == 'no'):?>
<div class='alert alert-warning'>
<div class='alert alert-warning with-icon'>
<i class='icon-info-sign'></i>
<div class='content'>
<?php
@@ -31,7 +31,7 @@
</div>
</div>
<?php elseif(!empty($error)):?>
<div class='alert alert-danger'>
<div class='alert alert-danger with-icon'>
<i class='icon-info-sign'></i>
<div class='content'>
<?php
@@ -41,7 +41,7 @@
</div>
</div>
<?php else:?>
<div class='alert alert-success'>
<div class='alert alert-success with-icon'>
<i class='icon-ok-sign'></i>
<div class='content'>
<?php
+1 -1
View File
@@ -18,7 +18,7 @@
</div>
</div>
<?php if($error):?>
<div class='alert alert-danger'>
<div class='alert alert-danger with-icon'>
<i class='icon-info-sign'></i>
<div class='content'>
<h3><?php echo $lang->extension->waringInstall;?></h3>
+1 -1
View File
@@ -67,7 +67,7 @@
<div class='main'>
<fieldset>
<legend><?php echo $lang->task->legendDesc;?></legend>
<div class='content'><?php echo $task->desc;?></div>
<div class='article-content'><?php echo $task->desc;?></div>
</fieldset>
<?php echo $this->fetch('file', 'printFiles', array('files' => $task->files, 'fieldset' => 'true'));?>
<?php include '../../common/view/action.html.php';?>
+1 -1
View File
@@ -20,7 +20,7 @@
<?php if($story):?>
<small class='text-muted'><?php echo html::icon($lang->icons['story']) . ' ' . $story->title ?></small>
<?php endif;?>
<div class='actions'><?php echo html::commonButton($lang->parseText, "data-toggle='myModal'")?></div>
<div class='actions'><?php echo html::commonButton($lang->parseText, "data-toggle='myModal' ")?></div>
</div>
</div>
+15
View File
@@ -180,6 +180,16 @@ class testtask extends control
$task = $this->testtask->getById($taskID, true);
if(!$task) die(js::error($this->lang->notFound) . js::locate('back'));
$productID = $task->product;
$buildID = $task->build;
$build = $this->loadModel('build')->getByID($buildID);
$stories = $this->dao->select('*')->from(TABLE_STORY)->where('id')->in($build->stories)->fetchAll();
$this->loadModel('common')->saveQueryCondition($this->dao->get(), 'story');
$bugs = $this->dao->select('*')->from(TABLE_BUG)->where('id')->in($build->bugs)->fetchAll();
$this->loadModel('common')->saveQueryCondition($this->dao->get(), 'bug');
$this->testtask->setMenu($this->products, $productID);
$this->view->title = "TASK #$task->id $task->name/" . $this->products[$productID];
@@ -191,6 +201,9 @@ class testtask extends control
$this->view->task = $task;
$this->view->users = $this->loadModel('user')->getPairs('noclosed|noletter');
$this->view->actions = $this->loadModel('action')->getList('testtask', $taskID);
$this->view->build = $build;
$this->view->stories = $stories;
$this->view->bugs = $bugs;
$this->display();
}
@@ -703,6 +716,8 @@ class testtask extends control
$this->view->nextCase = $nextCase;
$this->view->results = $this->testtask->getResults(0, $caseID);
$this->view->users = $this->loadModel('user')->getPairs('noclosed, noletter');
$this->view->caseID = $caseID;
$this->view->version = $version;
die($this->display());
}
+1 -1
View File
@@ -1 +1 @@
body{background:white}
body{background:white;}
+1
View File
@@ -0,0 +1 @@
#caseList tbody tr > td:first-child {padding-left: 10px;}
+13
View File
@@ -0,0 +1,13 @@
$(function()
{
$('.result-item').click(function()
{
var $this = $(this);
$this.toggleClass('show-detail');
var show = $this.hasClass('show-detail');
$this.next('.result-detail').toggleClass('hide', !show);
$this.find('.collapse-handle').toggleClass('icon-chevron-down', !show).toggleClass('icon-chevron-up', show);;
});
$('#casesResults table caption .result-tip').html($('#resultTip').html());
});
+16
View File
@@ -0,0 +1,16 @@
$(function()
{
$('.loadAjax').each(function()
{
var $this = $(this);
$this.load($this.data('url'), function()
{
$('#caseList').tablesorter(
{
saveSort: true,
widgets: ['zebra', 'saveSort'],
widgetZebra: {css: ['odd', 'even'] }
}).find('a.iframe').modalTrigger();
});
});
});
+4
View File
@@ -51,6 +51,8 @@ $lang->testtask->lastRunAccount = "Run";
$lang->testtask->lastRunTime = 'Time';
$lang->testtask->lastRunResult = 'Result';
$lang->testtask->report = 'Report';
$lang->testtask->stories = 'Stories';
$lang->testtask->bugs = 'Bugs';
$lang->testtask->legendDesc = 'Desc';
$lang->testtask->legendReport = 'Report';
@@ -96,3 +98,5 @@ $lang->testtask->mail->create = new stdclass();
$lang->testtask->mail->edit = new stdclass();
$lang->testtask->mail->create->title = "%s created testtask #%s:%s";
$lang->testtask->mail->edit->title = "%s finished testtask #%s:%s";
$lang->testtask->testScope = 'Test scope';
+4
View File
@@ -51,6 +51,8 @@ $lang->testtask->lastRunAccount = '执行人';
$lang->testtask->lastRunTime = '执行时间';
$lang->testtask->lastRunResult = '结果';
$lang->testtask->report = '测试总结';
$lang->testtask->stories = '相关需求';
$lang->testtask->bugs = '相关Bug';
$lang->testtask->legendDesc = '任务描述';
$lang->testtask->legendReport = '测试总结';
@@ -96,3 +98,5 @@ $lang->testtask->mail->create = new stdclass();
$lang->testtask->mail->edit = new stdclass();
$lang->testtask->mail->create->title = "%s创建了测试任务 #%s:%s";
$lang->testtask->mail->edit->title = "%s编辑了测试任务 #%s:%s";
$lang->testtask->testScope = '测试范畴';
+60 -35
View File
@@ -16,7 +16,7 @@
<div class='heading'>
<span class='prefix'><?php echo html::icon($lang->icons['usecase']);?> <strong><?php echo $case->id;?></strong></span>
<strong><?php echo $case->title;?></strong>
<small class='text-info'><?php echo $lang->testtask->results . ' ' . html::icon($lang->icons['result']);?></small>
<small class='text-muted'><?php echo $lang->testtask->results . ' ' . html::icon($lang->icons['result']);?></small>
</div>
</div>
@@ -25,42 +25,67 @@
<legend><?php echo $lang->testcase->precondition;?></legend>
<?php echo $case->precondition;?>
</fieldset>
<?php foreach($results as $result):?>
<table class='table table-condensed table-hover table-striped'>
<caption class='text-left bd-0'>
<?php if(isset($build)):?><div class='pull-right'><?php echo $lang->testtask->build . $lang->colon . $build;?></div>
<div id='casesResults'>
<table class='table table-condensed table-hover' style='border: 1px solid #ddd'>
<?php $count = count($results);?>
<caption class='text-left' style='border: 1px solid #ddd; border-bottom: none;'>
<?php if(isset($build)):?>
<div class='pull-right'><strong class='text-important'><?php echo $lang->testtask->build . $lang->colon . $build;?></strong></div>
<?php endif; ?>
RESULT#<?php echo $result->id . ' ' . $result->date . ' ' . $users[$result->lastRunner] . ' ' . $lang->testtask->runCase . ':'. " <span class='$result->caseResult'>" . $lang->testcase->resultList[$result->caseResult] . '</span>';?>
</caption>
<thead>
<tr>
<th class='w-40px'><?php echo $lang->testcase->stepID;?></th>
<th class='w-p40'><?php echo $lang->testcase->stepDesc;?></th>
<th class='w-p20'><?php echo $lang->testcase->stepExpect;?></th>
<th><?php echo $lang->testcase->result;?></th>
<th class='w-p20'><?php echo $lang->testcase->real;?></th>
<strong><span><?php echo $count;?></span> <?php echo $lang->testcase->result?> &nbsp;<span class='result-tip'></span></strong>
</caption>
<?php $failCount = 0; ?>
<?php foreach($results as $result):?>
<?php
$class = ($result->caseResult == 'pass' ? 'success' : ($result->caseResult == 'fail' ? 'danger' : ($result->caseResult == 'blocked' ? 'warning' : '')));
if($class != 'success') $failCount++;
?>
<tr class='result-item <?php echo $class?>' style='cursor: pointer'>
<td class='w-120px'> &nbsp; <i class='icon-circle<?php if($result->caseResult == 'n/a') echo '-empty';?> text-<?php echo $class;?>'></i> RESULT#<?php echo $result->id?></td>
<td class='w-180px'><?php echo $result->date;?></td>
<td><?php echo $users[$result->lastRunner] . ' ' . $lang->testtask->runCase;?></td>
<td class='text-right'><strong class='text-<?php echo $class;?>'><?php echo $lang->testcase->resultList[$result->caseResult]?></strong></td>
<td class='w-50px text-center'><i class='collapse-handle icon-chevron-down text-muted'></i></td>
</tr>
</thead>
<?php
$i = 1;
foreach($result->stepResults as $key => $stepResult):
?>
<tr>
<td class='w-30px text-center'><?php echo $i;?></td>
<td><?php if(isset($stepResult['desc'])) echo nl2br($stepResult['desc']);?></td>
<td><?php if(isset($stepResult['expect'])) echo nl2br($stepResult['expect']);?></td>
<?php if(!empty($stepResult['result'])):?>
<td class='<?php echo $stepResult['result'];?> text-center'><?php echo $lang->testcase->resultList[$stepResult['result']];?></td>
<td><?php echo $stepResult['real'];?></td>
</tr>
<?php else:?>
<td></td>
<td></td>
</tr>
<?php endif; $i++;?>
<?php endforeach;?>
</table>
<?php endforeach;?>
<tr class='result-detail hide'>
<td colspan='5' class='pd-0'>
<table class='table table-condensed borderless mg-0'>
<thead>
<tr>
<th class='w-40px'><?php echo $lang->testcase->stepID;?></th>
<th class='w-p40'><?php echo $lang->testcase->stepDesc;?></th>
<th class='w-p20'><?php echo $lang->testcase->stepExpect;?></th>
<th><?php echo $lang->testcase->result;?></th>
<th class='w-p20'><?php echo $lang->testcase->real;?></th>
</tr>
</thead>
<?php
$i = 1;
foreach($result->stepResults as $key => $stepResult):
?>
<tr>
<td class='w-30px text-center'><?php echo $i;?></td>
<td><?php if(isset($stepResult['desc'])) echo nl2br($stepResult['desc']);?></td>
<td><?php if(isset($stepResult['expect'])) echo nl2br($stepResult['expect']);?></td>
<?php if(!empty($stepResult['result'])):?>
<td class='<?php echo $stepResult['result'];?> text-center'><?php echo $lang->testcase->resultList[$stepResult['result']];?></td>
<td><?php echo $stepResult['real'];?></td>
</tr>
<?php else:?>
<td></td>
<td></td>
</tr>
<?php endif; $i++;?>
<?php endforeach;?>
</table>
</td>
</tr>
<?php endforeach;?>
</table>
<div id='resultTip' class='hide'><?php if($count > 0) echo $failCount > 0 ? "<span class='text-danger'>{$failCount} {$lang->testtask->fail}</span>":"<span class='text-success'>{$lang->testtask->passAll}</span>";?></div>
<style>.table-hover tr.result-detail:hover td {background: #fff}</style>
</div>
</div>
</div>
<?php include '../../common/view/footer.lite.html.php';?>
+20 -7
View File
@@ -66,11 +66,24 @@
</table>
</form>
</div>
<?php
ob_start();
$case = $run->case; include './results.html.php';
$results = ob_get_contents();
ob_clean();
echo preg_replace("/<h1>[\s\S]*<\/h1>|<fieldset>[\s\S]*<\/fieldset>/", "", $results);
?>
<div class='main' id='resultsContainer'>
</div>
<script>
$(function()
{
$('#resultsContainer').load("<?php echo $this->createLink('testtask', 'results', "runID=0&caseID=$caseID&version=$version");?> #casesResults", function()
{
$('.result-item').click(function()
{
var $this = $(this);
$this.toggleClass('show-detail');
var show = $this.hasClass('show-detail');
$this.next('.result-detail').toggleClass('hide', !show);
$this.find('.collapse-handle').toggleClass('icon-chevron-down', !show).toggleClass('icon-chevron-up', show);;
});
$('#casesResults table caption .result-tip').html($('#resultTip').html());
});
});
</script>
<?php include '../../common/view/footer.lite.html.php';?>
+106 -6
View File
@@ -12,6 +12,7 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/kindeditor.html.php';?>
<?php include '../../common/view/tablesorter.html.php';?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix' title='TESTTASK'><?php echo html::icon($lang->icons['testtask']);?> <strong><?php echo $task->id;?></strong></span>
@@ -54,10 +55,101 @@
<div class='row-table'>
<div class='col-main'>
<div class='main'>
<fieldset>
<legend><?php echo $lang->testtask->legendDesc;?></legend>
<div class='article-content'><?php echo $task->desc;?></div>
</fieldset>
<div class='tabs'>
<ul class='nav nav-tabs'>
<li class='active'><a href='#desc' data-toggle='tab'><?php echo $lang->testtask->legendDesc;?></a></li>
<li><a href='#testScope' data-toggle='tab'><?php echo $lang->testtask->testScope;?></a></li>
<li><a href='#cases' data-toggle='tab'><?php echo $lang->testtask->cases;?></a></li>
<li><a href='#results' data-toggle='tab'><?php echo $lang->testtask->results;?></a></li>
</ul>
<div class='tab-content'>
<div class='tab-pane active' id='desc'>
<div class='article-content'><?php echo $task->desc;?></div>
</div>
<div class='tab-pane' id='testScope'>
<?php $countStories = count($stories); $countBugs = count($bugs); ?>
<table class='table table-hover table-condensed tablesorter mgb-20'>
<caption class='text-left'><i class='icon-lightbulb'></i> <strong><?php echo $lang->testtask->stories;?></strong> <span class='text-muted'>(<?php echo $countStories?>)</span></caption>
<?php if($countStories > 0):?>
<thead>
<tr>
<th class='w-id'><?php echo $lang->idAB;?></th>
<th class='w-pri'><?php echo $lang->priAB;?></th>
<th><?php echo $lang->story->title;?></th>
<th class='w-user'><?php echo $lang->openedByAB;?></th>
<th class='w-hour'><?php echo $lang->story->estimateAB;?></th>
<th class='w-hour'><?php echo $lang->statusAB;?></th>
<th class='w-100px'><?php echo $lang->story->stageAB;?></th>
</tr>
</thead>
<?php foreach($stories as $storyID => $story):?>
<?php $storyLink = $this->createLink('story', 'view', "storyID=$story->id", '', true);?>
<tr class='text-center'>
<td><?php echo sprintf('%03d', $story->id);?></td>
<td><span class='<?php echo 'pri' . zget($lang->story->priList, $story->pri, $story->pri);?>'><?php echo zget($lang->story->priList, $story->pri, $story->pri);?></span></td>
<td class='text-left nobr'><?php echo html::a($storyLink,$story->title, '', "class='preview'");?></td>
<td><?php echo $users[$story->openedBy];?></td>
<td><?php echo $story->estimate;?></td>
<td class='<?php echo $story->status;?>'><?php echo $lang->story->statusList[$story->status];?></td>
<td><?php echo $lang->story->stageList[$story->stage];?></td>
</tr>
<?php endforeach;?>
<?php endif;?>
</table>
<table class='table table-hover table-condensed tablesorter'>
<caption class='text-left'><i class='icon-bug'></i><strong><?php echo $lang->testtask->bugs;?></strong> <span class='text-muted'><?php echo $countBugs?></span></caption>
<thead>
<tr>
<th class='w-id'><?php echo $lang->idAB;?></th>
<th><?php echo $lang->bug->title;?></th>
<th class='w-100px'><?php echo $lang->bug->status;?></th>
<th class='w-user'><?php echo $lang->openedByAB;?></th>
<th class='w-date'><?php echo $lang->bug->openedDateAB;?></th>
<th class='w-user'><?php echo $lang->bug->resolvedByAB;?></th>
<th class='w-100px'><?php echo $lang->bug->resolvedDateAB;?></th>
</tr>
</thead>
<?php foreach($bugs as $bug):?>
<?php $bugLink = $this->createLink('bug', 'view', "bugID=$bug->id", '', true);?>
<tr class='text-center'>
<td><?php echo sprintf('%03d', $bug->id);?></td>
<td class='text-left nobr'><?php echo html::a($bugLink, $bug->title, '', "class='preview'");?></td>
<td><?php echo $lang->bug->statusList[$bug->status];?></td>
<td><?php echo $users[$bug->openedBy];?></td>
<td><?php echo substr($bug->openedDate, 5, 11)?></td>
<td><?php echo $users[$bug->resolvedBy];?></td>
<td><?php echo substr($bug->resolvedDate, 5, 11)?></td>
</tr>
<?php endforeach;?>
</table>
</div>
<div class='tab-pane' id='cases'>
<table class='table table-condensed table-hover table-striped table-fixed' id='caseList'>
<thead>
<tr class='colhead'>
<th class='w-id'><nobr><?php echo $lang->idAB;?></nobr></th>
<th class='w-pri'> <?php echo $lang->priAB;?></th>
<th> <?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>
<th class='w-100px'> <?php echo $lang->testtask->lastRunTime;?></th>
<th class='w-80px'> <?php echo $lang->testtask->lastRunResult;?></th>
<th class='w-status'> <?php echo $lang->statusAB;?></th>
<th class='w-100px {sorter: false}'><?php echo $lang->actions;?></th>
</tr>
</thead>
<tbody class='loadAjax' id='casesList' data-url='<?php echo $this->createLink('testtask', 'cases', "taskID=$task->id&browseType=all&param=0&orderBy=id_desc&recTotal=0&recPerPage=1000&pageID=1");?> #caseList tbody tr'>
<tr><td colspan='10' class='text-center'><i class='icon-spin icon-spinner'></i></td></tr>
</tbody>
</table>
</div>
<div class='tab-pane' id='results'>
</div>
</div>
</div>
</div>
<div class='main'>
<fieldset>
<legend><?php echo $lang->testtask->legendReport;?></legend>
<div class='article-content'><?php echo $task->report;?></div>
@@ -72,13 +164,21 @@
<legend><?php echo $lang->testtask->legendBasicInfo;?></legend>
<table class='table table-data table-condensed table-borderless table-fixed'>
<tr>
<th class='w-60px'><?php echo $lang->testtask->project;?></th>
<th class='w-70px'><?php echo $lang->testtask->project;?></th>
<td><?php echo html::a($this->createLink('project', 'story', "projectID=$task->project"), $task->projectName);?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->build;?></th>
<td><?php $task->build == 'trunk' ? print('Trunk') : print(html::a($this->createLink('build', 'view', "buildID=$task->build"), $task->buildName));?></td>
</tr>
</tr>
<tr>
<th><?php echo $lang->build->scmPath;?></th>
<td style='word-break:break-all;'><?php strpos($build->scmPath, 'http') === 0 ? printf(html::a($build->scmPath)) : printf($build->scmPath);?></td>
</tr>
<tr>
<th><?php echo $lang->build->filePath;?></th>
<td style='word-break:break-all;'><?php strpos($build->filePath, 'http') === 0 ? printf(html::a($build->filePath)) : printf($build->filePath);?></td>
</tr>
<tr>
<th><?php echo $lang->testtask->owner;?></th>
<td><?php echo $users[$task->owner];?></td>
+1
View File
@@ -0,0 +1 @@
$(function(){$.ajustModalPosition('fit', $('.modal-dialog'))});
+1 -1
View File
@@ -17,7 +17,7 @@
<strong><?php echo $lang->upgrade->confirm;?></strong>
</div>
<div class='modal-body'>
<textarea rows='20' class='form-control'><?php echo $confirm;?></textarea>
<textarea rows='20' class='form-control' readonly='readonly'><?php echo $confirm;?></textarea>
</div>
<div class='modal-footer'><?php echo html::submitButton($lang->upgrade->sureExecute) . html::hidden('fromVersion', $fromVersion);?></div>
</div>
+2 -2
View File
@@ -16,12 +16,12 @@
<strong><?php echo $lang->upgrade->warnning;?></strong>
</div>
<div class='modal-body'>
<div class='alert alert-warning'>
<div class='alert alert-warning with-icon'>
<i class='icon-info-sign'></i>
<div class='content'><?php echo $lang->upgrade->warnningContent;?></div>
</div>
</div>
<div class='modal-footer'><?php echo html::linkButton($lang->upgrade->common, inlink('selectVersion'));?></div>
<div class='modal-footer'><?php echo html::linkButton($lang->upgrade->common, inlink('selectVersion'), 'self', '', 'btn-primary');?></div>
</div>
</div>
<?php include '../../common/view/footer.lite.html.php';?>