diff --git a/include/staff/department.inc.php b/include/staff/department.inc.php index 63e0c8a22880171737c9f1ab5997db25df4ba34f..3a08962282b3d22df768c5aac3980de4b9aff122 100644 --- a/include/staff/department.inc.php +++ b/include/staff/department.inc.php @@ -391,26 +391,27 @@ var addAccess = function(staffid, name, role, alerts, primary, error) { copy.removeClass('hidden') if (error) $('<div class="error">').text(error).appendTo(copy.find('td:last')); + copy.find('.drop-membership').click(function() { + $('#add_access').append( + $('<option>') + .attr('value', copy.find('input[name^=members][type=hidden]').val()) + .text(copy.find('td:first').text()) + ); + copy.fadeOut(function() { $(this).remove(); }); + return false; + }); }; $('#add_extended_access').find('button').on('click', function() { - var selected = $('#add_access').find(':selected'); - addAccess(selected.val(), selected.text(), 0, true); + var selected = $('#add_access').find(':selected'), + id = parseInt(selected.val()); + if (!id) + return; + addAccess(id, selected.text(), 0, true); selected.remove(); return false; }); -$(document).on('click', 'a.drop-membership', function() { - var tr = $(this).closest('tr'); - $('#add_access').append( - $('<option>') - .attr('value', tr.find('input[name^=members][type=hidden]').val()) - .text(tr.find('td:first').text()) - ); - tr.fadeOut(function() { $(this).remove(); }); - return false; -}); - <?php if ($dept) { $members = $dept->members->all(); diff --git a/include/staff/staff.inc.php b/include/staff/staff.inc.php index 3feb6054090b8436a698a876095d5b469ebae8af..6b46bc48a24d7ac234a2930f85ae49bbcc2936e7 100644 --- a/include/staff/staff.inc.php +++ b/include/staff/staff.inc.php @@ -425,26 +425,27 @@ var addAccess = function(daid, name, role, alerts, error) { copy.removeClass('hidden') if (error) $('<div class="error">').text(error).appendTo(copy.find('td:last')); + copy.find('a.drop-access').click(function() { + $('#add_access').append( + $('<option>') + .attr('value', copy.find('input[name^=dept_access][type=hidden]').val()) + .text(copy.find('td:first').text()) + ); + copy.fadeOut(function() { $(this).remove(); }); + return false; + }); }; $('#add_extended_access').find('button').on('click', function() { - var selected = $('#add_access').find(':selected'); - addAccess(selected.val(), selected.text(), 0, true); + var selected = $('#add_access').find(':selected'), + id = parseInt(selected.val()); + if (!id) + return; + addAccess(id, selected.text(), 0, true); selected.remove(); return false; }); -$(document).on('click', 'a.drop-access', function() { - var tr = $(this).closest('tr'); - $('#add_access').append( - $('<option>') - .attr('value', tr.find('input[name^=dept_access][type=hidden]').val()) - .text(tr.find('td:first').text()) - ); - tr.fadeOut(function() { $(this).remove(); }); - return false; -}); - var joinTeam = function(teamid, name, alerts, error) { if (!teamid) return; var copy = $('#team_member_template').clone(); @@ -460,15 +461,28 @@ var joinTeam = function(teamid, name, alerts, error) { copy.removeClass('hidden'); if (error) $('<div class="error">').text(error).appendTo(copy.find('td:last')); + copy.find('a.drop-membership').click(function() { + $('#add_team').append( + $('<option>') + .attr('value', copy.find('input[name^=teams][type=hidden]').val()) + .text(copy.find('td:first').text()) + ); + copy.fadeOut(function() { $(this).remove(); }); + return false; + }); }; $('#join_team').find('button').on('click', function() { - var selected = $('#add_team').find(':selected'); - joinTeam(selected.val(), selected.text(), true); + var selected = $('#add_team').find(':selected'), + id = parseInt(selected.val()); + if (!id) + return; + joinTeam(id, selected.text(), true); selected.remove(); return false; }); + <?php foreach ($staff->dept_access as $dept_access) { echo sprintf('addAccess(%d, %s, %d, %d, %s);', $dept_access->dept_id, diff --git a/include/staff/team.inc.php b/include/staff/team.inc.php index 92ad9f13dfb017b363d7ced525c53248ee80422e..e7a9a95bd652bbe18ee9255bcf2e3231a6d638be 100644 --- a/include/staff/team.inc.php +++ b/include/staff/team.inc.php @@ -195,8 +195,10 @@ var addMember = function(staffid, name, alerts, error) { $('#add_member').find('button').on('click', function() { var selected = $('#add_access').find(':selected'), - id = selected.val(); - addMember(selected.val(), selected.text(), true); + id = parseInt(selected.val()); + if (!id) + return; + addMember(id, selected.text(), true); if ($('#team-lead-select option[value='+id+']').length === 0) { $('#team-lead-select').find('option[data-quick-add]') .before(