/* globals $, googleLineChart, token, piggyBankID */ // Return a helper with preserved width of cells var fixHelper = function (e, tr) { "use strict"; var $originals = tr.children(); var $helper = tr.clone(); $helper.children().each(function (index) { // Set helper cell sizes to match the original sizes $(this).width($originals.eq(index).width()); }); return $helper; }; $(function () { "use strict"; $('.addMoney').on('click', addMoney); $('.removeMoney').on('click', removeMoney); if (typeof(googleLineChart) === 'function' && typeof(piggyBankID) !== 'undefined') { googleLineChart('chart/piggyBank/' + piggyBankID, 'piggy-bank-history'); } $('#sortable tbody').sortable( { helper: fixHelper, stop: stopSorting, handle: '.handle', start: function (event, ui) { // Build a placeholder cell that spans all the cells in the row var cellCount = 0; $('td, th', ui.helper).each(function () { // For each TD or TH try and get it's colspan attribute, and add that or 1 to the total var colspan = 1; var colspanAttr = $(this).attr('colspan'); if (colspanAttr > 1) { colspan = colspanAttr; } cellCount += colspan; }); // Add the placeholder UI - note that this is the item's content, so TD rather than TR ui.placeholder.html(' '); } } ); }); function addMoney(e) { "use strict"; var pigID = parseInt($(e.target).data('id')); $('#defaultModal').empty().load('piggy-banks/add/' + pigID, function () { $('#defaultModal').modal('show'); }); return false; } function removeMoney(e) { "use strict"; var pigID = parseInt($(e.target).data('id')); $('#defaultModal').empty().load('piggy-banks/remove/' + pigID, function () { $('#defaultModal').modal('show'); }); return false; } function stopSorting() { "use strict"; $('.loadSpin').addClass('fa fa-refresh fa-spin'); var order = []; $.each($('#sortable>tbody>tr'), function (i, v) { var holder = $(v); var id = holder.data('id'); order.push(id); }); $.post('/piggy-banks/sort', {_token: token, order: order}).success(function () { $('.loadSpin').removeClass('fa fa-refresh fa-spin'); }); }