Merge branch 'sprint/208_tianshujie_58554' of https://gitlab.zcorp.cc/easycorp/zentaopms into sprint/208_tianshujie_58554

This commit is contained in:
tianshujie
2022-06-28 17:55:53 +08:00
3 changed files with 83 additions and 14 deletions
+43
View File
@@ -426,3 +426,46 @@ function setModules(branchID, productID, num)
$('#plan' + (num + 1)).trigger("chosen:updated");
}
}
/**
* Checked show fields.
*
* @param string fields
* @access public
* @return void
*/
function checkedShowFields(fields)
{
var fieldList = ',' + fields + ',';
$('#formSettingForm > .checkboxes > .checkbox-primary > input').each(function()
{
var field = ',' + $(this).val() + ',';
var $fieldBox = $('.' + $(this).val() + 'Box' );
if(fieldList.indexOf(field) >= 0)
{
$(this).attr('checked', true);
$fieldBox.removeClass('hidden');
}
else
{
if(!$fieldBox.hasClass('hidden')) $fieldBox.addClass('hidden');
}
});
}
/**
* Disabled require field.
*
* @access public
* @return void
*/
function disabledRequireFields()
{
$('#formSettingForm > .checkboxes > .checkbox-primary > input').each(function()
{
var field = ',' + $(this).val() + ',';
var required = ',' + requiredFields + ',';
if(required.indexOf(field) >= 0) $(this).attr('disabled', 'disabled');
});
}
+25
View File
@@ -156,4 +156,29 @@ $(function()
});
$('#subNavbar li[data-id="testcase"]').addClass('active');
$('#customField').click(function()
{
disabledRequireFields();
});
$('#formSettingForm .btn-primary').click(function()
{
$('#formSettingForm > .checkboxes > .checkbox-primary > input').removeAttr('disabled');
var fields = '';
$('#formSettingForm > .checkboxes > .checkbox-primary > input:checked').each(function()
{
fields += ',' + $(this).val();
});
var link = createLink('custom', 'ajaxSaveCustomFields', 'module=testcase&section=custom&key=createFields');
$.post(link, {'fields' : fields}, function()
{
checkedShowFields(fields);
disabledRequireFields();
$('#formSetting').parent().removeClass('open');
});
return false;
});
});
+15 -14
View File
@@ -21,6 +21,15 @@
<?php js::set('tab', $this->app->tab);?>
<?php if($this->app->tab == 'execution') js::set('objectID', $executionID);?>
<?php if($this->app->tab == 'project') js::set('objectID', $projectID);?>
<?php js::set('requiredFields', $config->testcase->create->requiredFields);?>
<?php
foreach(explode(',', $config->testcase->custom->createFields) as $field)
{
if(empty($field)) continue;
$fieldName = 'show' . ucfirst($field);
${$fieldName} = strpos(",$showFields,", $field) !== false ? " {$field}Box" : "{$field}Box hidden";
}
?>
<div id='mainContent' class='main-content'>
<div class='center-block'>
<div class='main-header'>
@@ -67,17 +76,14 @@
<th><?php echo $lang->testcase->type;?></th>
<?php unset($lang->testcase->typeList['unit']);?>
<td><?php echo html::select('type', $lang->testcase->typeList, $type, "class='form-control chosen'");?></td>
<?php if(strpos(",$showFields,", 'stage') !== false):?>
<td style='padding-left:15px'>
<td style='padding-left:15px' class='<?php echo $showStage?>'>
<div class='input-group'>
<span class='input-group-addon w-80px'><?php echo $lang->testcase->stage?></span>
<?php echo html::select('stage[]', $lang->testcase->stageList, $stage, "class='form-control chosen' multiple='multiple'");?>
</div>
</td>
<?php endif;?>
</tr>
<?php if(strpos(",$showFields,", ',story,') !== false):?>
<tr>
<tr class='<?php echo $showStory;?>'>
<th><?php echo $lang->testcase->lblStory;?></th>
<td colspan='2'>
<div class='input-group' id='storyIdBox'>
@@ -93,7 +99,6 @@
</div>
</td>
</tr>
<?php endif;?>
<tr>
<th><?php echo $lang->testcase->title;?></th>
<td colspan='2'>
@@ -108,8 +113,7 @@
<input type="hidden" class="colorpicker" id="color" name="color" value="" data-icon="color" data-wrapper="input-control-icon-right" data-update-color="#title" data-provide="colorpicker">
</div>
</div>
<?php if(strpos(",$showFields,", ',pri,') !== false): // begin print pri selector?>
<span class="input-group-addon fix-border br-0"><?php echo $lang->testcase->pri;?></span>
<span class="input-group-addon fix-border br-0<?php echo $showPri;?>"><?php echo $lang->testcase->pri;?></span>
<?php
$hasCustomPri = false;
foreach($lang->testcase->priList as $priKey => $priValue)
@@ -129,10 +133,10 @@
}
?>
<?php if($hasCustomPri):?>
<?php echo html::select('pri', (array)$priList, $pri, "class='form-control'");?>
<?php echo html::select('pri', (array)$priList, $pri, "class='form-control$showPri'");?>
<?php else: ?>
<?php ksort($priList);?>
<div class="input-group-btn pri-selector" data-type="pri">
<div class="input-group-btn pri-selector<?php echo $showPri;?>" data-type="pri">
<button type="button" class="btn dropdown-toggle br-0" data-toggle="dropdown">
<span class="pri-text"><span class="label-pri label-pri-<?php echo empty($pri) ? '0' : $pri?>" title="<?php echo $pri?>"><?php echo $pri?></span></span> &nbsp;<span class="caret"></span>
</button>
@@ -141,7 +145,6 @@
</div>
</div>
<?php endif; ?>
<?php endif; // end print pri selector ?>
<?php if(!$this->testcase->forceNotReview()):?>
<span class="input-group-addon"><?php echo html::checkbox('forceNotReview', $lang->testcase->forceNotReview, '', "id='forceNotReview0'");?></span>
<?php endif;?>
@@ -220,12 +223,10 @@
</table>
</td>
</tr>
<?php if(strpos(",$showFields,", ',keywords,') !== false):?>
<tr>
<tr class="<?php echo $showKeywords;?>">
<th><?php echo $lang->testcase->keywords;?></th>
<td colspan='2'><?php echo html::input('keywords', $keywords, "class='form-control'");?></td>
</tr>
<?php endif;?>
<tr class='hide'>
<th><?php echo $lang->testcase->status;?></th>
<td><?php echo html::hidden('status', 'normal');?></td>