* improve UI of task views.
This commit is contained in:
@@ -1,69 +0,0 @@
|
||||
/* If left = 0, warning. */
|
||||
function checkLeft()
|
||||
{
|
||||
value = $("#left").val();
|
||||
if(isNaN(parseInt(value)) || value == 0)
|
||||
{
|
||||
if(confirm(confirmFinish))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$(document).on('click', '.btn-move-up, .btn-move-down', function()
|
||||
{
|
||||
var $this = $(this);
|
||||
if($this.hasClass('btn-move-up'))
|
||||
{
|
||||
$(this).parents('tr').prev().before($(this).parents('tr'));
|
||||
}
|
||||
else
|
||||
{
|
||||
$this.parents('tr').next().after($(this).parents('tr'));
|
||||
}
|
||||
$('.btn-move-up, .btn-move-down').removeClass('disabled').removeAttr('disabled');
|
||||
|
||||
adjustSortBtn();
|
||||
});
|
||||
|
||||
function adjustSortBtn()
|
||||
{
|
||||
$('.btn-move-up:first').addClass('disabled').attr('disabled', 'disabled');
|
||||
$('.btn-move-down:last').addClass('disabled').attr('disabled', 'disabled');
|
||||
}
|
||||
|
||||
$('#modalTeam .btn').click(function()
|
||||
{
|
||||
var team = '';
|
||||
var time = 0;
|
||||
$('[name*=team]').each(function()
|
||||
{
|
||||
if($(this).find('option:selected').text() != '')
|
||||
{
|
||||
team += ' ' + $(this).find('option:selected').text();
|
||||
}
|
||||
|
||||
estimate = parseFloat($(this).parents('td').next('td').find('[name*=teamEstimate]').val());
|
||||
if(!isNaN(estimate))
|
||||
{
|
||||
time += estimate;
|
||||
}
|
||||
|
||||
$('#teamMember').val(team).attr('title', team);
|
||||
$('#estimate').val(time);
|
||||
})
|
||||
});
|
||||
|
||||
$(document).on('click', 'a.btn-move-add', function()
|
||||
{
|
||||
var html = $("#modalTeam table.table tbody tr:last").html();
|
||||
$("#modalTeam table.table tbody tr:last").after('<tr>' + html + '</tr>');
|
||||
$("#modalTeam table.table tbody tr:last").prev().find('.btn-move-down').removeClass('disabled').removeAttr('disabled');
|
||||
|
||||
adjustSortBtn();
|
||||
});
|
||||
|
||||
@@ -192,8 +192,58 @@ $(document).ready(function()
|
||||
$('#estimate').attr('readonly', false);
|
||||
}
|
||||
});
|
||||
$("[href='#modalTeam']").click(function()
|
||||
|
||||
|
||||
/* Init task team manage dialog */
|
||||
var $taskTeamEditor = $('#taskTeamEditor').batchActionForm(
|
||||
{
|
||||
adjustSortBtn();
|
||||
idStart: 0,
|
||||
idEnd: 5,
|
||||
chosen: true,
|
||||
datetimepicker: false,
|
||||
colorPicker: false,
|
||||
});
|
||||
var taskTeamEditor = $taskTeamEditor.data('zui.batchActionForm');
|
||||
|
||||
var adjustButtons = function()
|
||||
{
|
||||
$taskTeamEditor.find('.btn-move-up.disabled,.btn-move-down.disabled,.btn-delete.disabled').removeClass('disabled').attr('disabled', null);
|
||||
$taskTeamEditor.find('.btn-move-up:first').addClass('disabled').attr('disabled', 'disabled');
|
||||
$taskTeamEditor.find('.btn-move-down:last').addClass('disabled').attr('disabled', 'disabled');
|
||||
var $deleteBtn = $taskTeamEditor.find('.btn-delete');
|
||||
if ($deleteBtn.length == 1) $deleteBtn.addClass('disabled').attr('disabled', 'disabled');
|
||||
};
|
||||
|
||||
$taskTeamEditor.on('click', '.btn-add', function()
|
||||
{
|
||||
var $newRow = taskTeamEditor.createRow(null, $(this).closest('tr'));
|
||||
$newRow.addClass('highlight');
|
||||
setTimeout(function()
|
||||
{
|
||||
$newRow.removeClass('highlight');
|
||||
}, 1600);
|
||||
adjustButtons();
|
||||
}).on('click', '.btn-delete', function()
|
||||
{
|
||||
var $row = $(this).closest('tr');
|
||||
$row.addClass('highlight').fadeOut(700, function()
|
||||
{
|
||||
$row.remove();
|
||||
adjustButtons();
|
||||
});
|
||||
}).on('click', '.btn-move-up, .btn-move-down', function()
|
||||
{
|
||||
var $this = $(this);
|
||||
if($this.hasClass('btn-move-up'))
|
||||
{
|
||||
$(this).parents('tr').prev().before($(this).parents('tr'));
|
||||
}
|
||||
else
|
||||
{
|
||||
$this.parents('tr').next().after($(this).parents('tr'));
|
||||
}
|
||||
adjustButtons();
|
||||
});;
|
||||
|
||||
adjustButtons();
|
||||
});
|
||||
|
||||
+58
-10
@@ -15,8 +15,8 @@ function loadAll(projectID)
|
||||
{
|
||||
if(!changeProjectConfirmed)
|
||||
{
|
||||
firstChoice = confirm(confirmChangeProject);
|
||||
changeProjectConfirmed = true; // Only notice the user one time.
|
||||
firstChoice = confirm(confirmChangeProject);
|
||||
changeProjectConfirmed = true; // Only notice the user one time.
|
||||
}
|
||||
if(changeProjectConfirmed && firstChoice)
|
||||
{
|
||||
@@ -40,7 +40,7 @@ function loadAll(projectID)
|
||||
*/
|
||||
function loadModuleMenu(projectID)
|
||||
{
|
||||
link = createLink('tree', 'ajaxGetOptionMenu', 'rootID=' + projectID + '&viewtype=task');
|
||||
var link = createLink('tree', 'ajaxGetOptionMenu', 'rootID=' + projectID + '&viewtype=task');
|
||||
$('#moduleIdBox').load(link, function(){$('#module').chosen(defaultChosenOptions);});
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ function loadModuleMenu(projectID)
|
||||
*/
|
||||
function loadProjectStories(projectID)
|
||||
{
|
||||
link = createLink('story', 'ajaxGetProjectStories', 'projectID=' + projectID + '&productID=0&branch=0&moduleID=0&storyID=' + oldStoryID);
|
||||
var link = createLink('story', 'ajaxGetProjectStories', 'projectID=' + projectID + '&productID=0&branch=0&moduleID=0&storyID=' + oldStoryID);
|
||||
$('#storyIdBox').load(link, function(){$('#story').chosen(defaultChosenOptions);});
|
||||
}
|
||||
|
||||
@@ -66,17 +66,12 @@ function loadProjectStories(projectID)
|
||||
*/
|
||||
function loadProjectMembers(projectID)
|
||||
{
|
||||
link = createLink('project', 'ajaxGetMembers', 'projectID=' + projectID + '&assignedTo=' + oldAssignedTo);
|
||||
var link = createLink('project', 'ajaxGetMembers', 'projectID=' + projectID + '&assignedTo=' + oldAssignedTo);
|
||||
$('#assignedToIdBox').load(link, function(){$('#assignedToIdBox').find('select').chosen(defaultChosenOptions)});
|
||||
}
|
||||
|
||||
/* empty function. */
|
||||
function setPreview(){}
|
||||
$(".btn[data-toggle='modalTeam']").click(function()
|
||||
{
|
||||
$('#modalTeam').modal('show')
|
||||
adjustSortBtn();
|
||||
});
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
@@ -93,4 +88,57 @@ $(document).ready(function()
|
||||
$('#teamTr').addClass('hidden');
|
||||
}
|
||||
});
|
||||
|
||||
/* Init task team manage dialog */
|
||||
var $taskTeamEditor = $('#taskTeamEditor').batchActionForm(
|
||||
{
|
||||
idStart: 0,
|
||||
idEnd: 5,
|
||||
chosen: true,
|
||||
datetimepicker: false,
|
||||
colorPicker: false,
|
||||
});
|
||||
var taskTeamEditor = $taskTeamEditor.data('zui.batchActionForm');
|
||||
|
||||
var adjustButtons = function()
|
||||
{
|
||||
$taskTeamEditor.find('.btn-move-up.disabled,.btn-move-down.disabled,.btn-delete.disabled').removeClass('disabled').attr('disabled', null);
|
||||
$taskTeamEditor.find('.btn-move-up:first').addClass('disabled').attr('disabled', 'disabled');
|
||||
$taskTeamEditor.find('.btn-move-down:last').addClass('disabled').attr('disabled', 'disabled');
|
||||
var $deleteBtn = $taskTeamEditor.find('.btn-delete');
|
||||
if ($deleteBtn.length == 1) $deleteBtn.addClass('disabled').attr('disabled', 'disabled');
|
||||
};
|
||||
|
||||
$taskTeamEditor.on('click', '.btn-add', function()
|
||||
{
|
||||
var $newRow = taskTeamEditor.createRow(null, $(this).closest('tr'));
|
||||
$newRow.addClass('highlight');
|
||||
setTimeout(function()
|
||||
{
|
||||
$newRow.removeClass('highlight');
|
||||
}, 1600);
|
||||
adjustButtons();
|
||||
}).on('click', '.btn-delete', function()
|
||||
{
|
||||
var $row = $(this).closest('tr');
|
||||
$row.addClass('highlight').fadeOut(700, function()
|
||||
{
|
||||
$row.remove();
|
||||
adjustButtons();
|
||||
});
|
||||
}).on('click', '.btn-move-up, .btn-move-down', function()
|
||||
{
|
||||
var $this = $(this);
|
||||
if($this.hasClass('btn-move-up'))
|
||||
{
|
||||
$(this).parents('tr').prev().before($(this).parents('tr'));
|
||||
}
|
||||
else
|
||||
{
|
||||
$this.parents('tr').next().after($(this).parents('tr'));
|
||||
}
|
||||
adjustButtons();
|
||||
});;
|
||||
|
||||
adjustButtons();
|
||||
});
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
/* If left = 0, warning. */
|
||||
function checkLeft()
|
||||
{
|
||||
value = $("#left").val();
|
||||
if(isNaN(parseInt(value)) || value == 0)
|
||||
{
|
||||
return confirm(confirmFinish);
|
||||
}
|
||||
}
|
||||
@@ -180,10 +180,9 @@
|
||||
<h4 class='modal-title'><?php echo $lang->task->team;?></h4>
|
||||
</div>
|
||||
<div class='modal-content with-padding'>
|
||||
<table class="table table-form">
|
||||
<table class="table table-form" id='taskTeamEditor'>
|
||||
<tbody>
|
||||
<?php for($i = 0; $i < 5; $i++):?>
|
||||
<tr>
|
||||
<tr class='template'>
|
||||
<td><?php echo html::select("team[]", $members, '', "class='form-control chosen'");?></td>
|
||||
<td>
|
||||
<div class='input-group'>
|
||||
@@ -191,13 +190,13 @@
|
||||
<span class='input-group-addon'><?php echo $lang->task->hour;?></span>
|
||||
</div>
|
||||
</td>
|
||||
<td class='w-90px'>
|
||||
<a class='btn btn-move-add btn-icon btn-sm'><i class='icon-plus'></i></a>
|
||||
<a class='btn btn-move-up btn-sm btn-icon'><i class='icon-arrow-up'></i></a>
|
||||
<a class='btn btn-move-down btn-sm btn-icon'><i class='icon-arrow-down'></i></a>
|
||||
<td class='w-130px'>
|
||||
<button type='button' class='btn btn-link btn-sm btn-icon btn-move-up'><i class='icon-arrow-up'></i></button>
|
||||
<button type='button' class='btn btn-link btn-sm btn-icon btn-move-down'><i class='icon-arrow-down'></i></button>
|
||||
<button type="button" class="btn btn-link btn-sm btn-icon btn-add"><i class="icon icon-plus"></i></button>
|
||||
<button type="button" class="btn btn-link btn-sm btn-icon btn-delete"><i class="icon icon-trash"></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endfor;?>
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr>
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
</tr>
|
||||
<tr class='<?php echo empty($task->team) ? 'hidden' : ''?>' id='teamTr'>
|
||||
<th><?php echo $lang->task->team;?></th>
|
||||
<td><?php echo html::a('javascript:;', $lang->task->team, '', "class='form-control btn' data-toggle='modalTeam'");?></td>
|
||||
<td><?php echo html::a('#modalTeam', $lang->task->team, '', "class='form-control btn' data-toggle='modal'");?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><?php echo $lang->task->type;?></th>
|
||||
@@ -217,7 +217,7 @@
|
||||
</button>
|
||||
<h4 class="modal-title"><?php echo $lang->task->team?></h4>
|
||||
</div>
|
||||
<div class="modal-content with-padding">
|
||||
<div class="modal-content with-padding" id='taskTeamEditor'>
|
||||
<table class='table table-form'>
|
||||
<tbody>
|
||||
<?php foreach($task->team as $member):?>
|
||||
@@ -233,15 +233,15 @@
|
||||
<?php echo html::input("teamLeft[]", $member->left, "class='form-control text-center' placeholder='{$lang->task->hour}'")?>
|
||||
</div>
|
||||
</td>
|
||||
<td class='w-90px'>
|
||||
<a href='javascript:;' class='btn btn-icon btn-move-up btn-sm'><i class='icon-arrow-up'></i></a>
|
||||
<a href='javascript:;' class='btn btn-icon btn-move-down btn-sm'><i class='icon-arrow-down'></i></a>
|
||||
<td class='w-130px'>
|
||||
<button type='button' class='btn btn-link btn-sm btn-icon btn-move-up'><i class='icon-arrow-up'></i></button>
|
||||
<button type='button' class='btn btn-link btn-sm btn-icon btn-move-down'><i class='icon-arrow-down'></i></button>
|
||||
<button type="button" class="btn btn-link btn-sm btn-icon btn-add"><i class="icon icon-plus"></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
<?php for($i = 0; $i < 5; $i++):?>
|
||||
<tr>
|
||||
<td class='w-150px'><?php echo html::select("team[]", $members, '', "class='form-control chosen'")?></td>
|
||||
<tr class='template'>
|
||||
<td class='w-250px'><?php echo html::select("team[]", $members, '', "class='form-control chosen'")?></td>
|
||||
<td>
|
||||
<div class='input-group'>
|
||||
<span class='input-group-addon'><?php echo $lang->task->estimate?></span>
|
||||
@@ -252,16 +252,16 @@
|
||||
<?php echo html::input("teamLeft[]", '', "class='form-control text-center' placeholder='{$lang->task->hour}'")?>
|
||||
</div>
|
||||
</td>
|
||||
<td class='w-90px'>
|
||||
<a class='btn btn-move-add btn-icon btn-sm'><i class='icon-plus'></i></a>
|
||||
<a class='btn btn-icon btn-move-up btn-sm'><i class='icon-arrow-up'></i></a>
|
||||
<a class='btn btn-icon btn-move-down btn-sm'><i class='icon-arrow-down'></i></a>
|
||||
<td class='w-130px'>
|
||||
<button type='button' class='btn btn-link btn-sm btn-icon btn-move-up'><i class='icon-arrow-up'></i></button>
|
||||
<button type='button' class='btn btn-link btn-sm btn-icon btn-move-down'><i class='icon-arrow-down'></i></button>
|
||||
<button type="button" class="btn btn-link btn-sm btn-icon btn-add"><i class="icon icon-plus"></i></button>
|
||||
<button type="button" class="btn btn-link btn-sm btn-icon btn-delete"><i class="icon icon-trash"></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endfor;?>
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr><td colspan='3' class='text-center'><?php echo html::a('javascript:void(0)', $lang->confirm, '', "class='btn btn-primary' data-dismiss='modal'");?></td></tr>
|
||||
<tr><td colspan='3' class='text-center form-actions'><?php echo html::a('javascript:void(0)', $lang->confirm, '', "class='btn btn-primary btn-wide' data-dismiss='modal'");?></td></tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user