175 lines
4.7 KiB
JavaScript
175 lines
4.7 KiB
JavaScript
$(function()
|
|
{
|
|
loadModuleRelated();
|
|
|
|
initPicker = function($element)
|
|
{
|
|
var picker = $element.data('zui.picker');
|
|
var originOptions = picker.options;
|
|
|
|
if(picker) picker.destroy();
|
|
|
|
var options = $.extend({}, originOptions, {searchDelay: 1000});
|
|
$element.picker(options);
|
|
};
|
|
|
|
initPicker($('#case'));
|
|
initPicker($('#duplicateBug'));
|
|
renderBuilds();
|
|
renderTestTasks();
|
|
renderStories();
|
|
|
|
$('#duplicateBug').picker(
|
|
{
|
|
disableEmptySearch : true,
|
|
dropWidth : 'auto',
|
|
maxAutoDropWidth : document.body.scrollWidth + document.getElementById('resolution').offsetWidth - document.getElementById('resolution').getBoundingClientRect().right
|
|
});
|
|
|
|
$('#linkBugsLink').click(function()
|
|
{
|
|
var bugIdList = '';
|
|
$('#linkBugsBox input').each(function()
|
|
{
|
|
bugIdList += $(this).val() + ',';
|
|
});
|
|
|
|
var link = createLink('bug', 'linkBugs', 'bugID=' + bugID + '&browseType=&excludeBugs=' + bugIdList, '', true);
|
|
|
|
var modalTrigger = new $.zui.ModalTrigger({type: 'iframe', width: '95%', url: link});
|
|
modalTrigger.show();
|
|
});
|
|
|
|
var $pkResolvedBuild = $('#pk_resolvedBuild-search');
|
|
$pkResolvedBuild.closest('.picker').css('width', $pkResolvedBuild.closest('td').width() - $pkResolvedBuild.closest('td').find('.input-group-btn').width());
|
|
});
|
|
|
|
/**
|
|
* Get all builds and set confirm string.
|
|
*
|
|
* @access public
|
|
* @return void
|
|
*/
|
|
function renderBuilds()
|
|
{
|
|
$.get(createLink('bug', 'ajaxGetAllBuilds', 'bugID=' + bugID), function(data)
|
|
{
|
|
var openedBuilds = data.openedBuilds;
|
|
$('#openedBuild').data('zui.picker').destroy();
|
|
$('#openedBuild').picker({list: openedBuilds});
|
|
$('#openedBuild').data('zui.picker').setValue('' + oldOpenedBuild);
|
|
var resolvedBuilds = data.resolvedBuilds;
|
|
$('#resolvedBuild').data('zui.picker').destroy();
|
|
$('#resolvedBuild').picker({list: resolvedBuilds, allowSingleDeselect: 'true'});
|
|
$('#resolvedBuild').data('zui.picker').setValue(oldResolvedBuild);
|
|
|
|
resolution = $('#resolution').val();
|
|
if(resolution == 'fixed')
|
|
{
|
|
$('#resolvedBuildBox').change(function()
|
|
{
|
|
if($('#resolvedBuild').val() != oldResolvedBuild)
|
|
{
|
|
confirmUnlinkBuild = confirmUnlinkBuild.replace('%s', data.resolvedBuildName);
|
|
confirmResult = confirm(confirmUnlinkBuild);
|
|
if(!confirmResult)
|
|
{
|
|
var resolvedBuildPicker = $('#resolvedBuild').data('zui.picker');
|
|
resolvedBuildPicker.setValue(oldResolvedBuild);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}, 'json');
|
|
}
|
|
|
|
/**
|
|
* render testTasks.
|
|
*
|
|
* @access public
|
|
* @return void
|
|
*/
|
|
function renderTestTasks()
|
|
{
|
|
$.get(createLink('bug', 'ajaxGetTestTasks', 'bugID=' + bugID), function(data)
|
|
{
|
|
$('#testtask').data('zui.picker').destroy();
|
|
$('#testtask').picker({list: data, allowSingleDeselect: 'true'});
|
|
$('#testtask').data('zui.picker').setValue(bugTestTask);
|
|
}, 'json');
|
|
}
|
|
|
|
/**
|
|
* render stories.
|
|
*
|
|
* @access public
|
|
* @return void
|
|
*/
|
|
function renderStories()
|
|
{
|
|
$.get(createLink('bug', 'ajaxGetStories', 'bugID=' + bugID), function(data)
|
|
{
|
|
$('#story').data('zui.picker').destroy();
|
|
$('#story').picker({list: data, allowSingleDeselect: 'true'});
|
|
$('#story').data('zui.picker').setValue(oldStoryID);
|
|
}, 'json');
|
|
}
|
|
|
|
/**
|
|
* Set duplicate field.
|
|
*
|
|
* @param string $resolution
|
|
* @access public
|
|
* @return void
|
|
*/
|
|
function setDuplicate(resolution)
|
|
{
|
|
if(resolution == 'duplicate')
|
|
{
|
|
$('#duplicateBugBox').show();
|
|
}
|
|
else
|
|
{
|
|
$('#duplicateBugBox').hide();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Get story or task list.
|
|
*
|
|
* @param string $module
|
|
* @access public
|
|
* @return void
|
|
*/
|
|
function getList(module)
|
|
{
|
|
productID = $('#product').val();
|
|
executionID = $('#execution').val();
|
|
storyID = $('#story').val();
|
|
taskID = $('#task').val();
|
|
if(module == 'story')
|
|
{
|
|
link = createLink('search', 'select', 'productID=' + productID + '&executionID=' + executionID + '&module=story&moduleID=' + storyID);
|
|
$('#storyListIdBox a').attr("href", link);
|
|
}
|
|
else
|
|
{
|
|
link = createLink('search', 'select', 'productID=' + productID + '&executionID=' + executionID + '&module=task&moduleID=' + taskID);
|
|
$('#taskListIdBox a').attr("href", link);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* load stories of module.
|
|
*
|
|
* @access public
|
|
* @return void
|
|
*/
|
|
function loadModuleRelated()
|
|
{
|
|
moduleID = $('#module').val();
|
|
productID = $('#product').val();
|
|
storyID = $('#story').val();
|
|
setStories(moduleID, productID, storyID);
|
|
}
|