var budgetConfigTimeout; $(document).on('click', '#budget, #budget_refresh', function() { budgetInit() }); function budgetInit(data) { if (typeof data == 'undefined') { data = {}; } var new_settings = data['new_settings'] || {}; var jnew_settings = JSON.stringify(new_settings); var adata = deloreanBringer(); adata['new_settings'] = jnew_settings; var settingsVisibility = $('#budget_settings').is(':visible'); $.ajax({ url: '/manager/budget', type: 'GET', data: adata, success: function(response) { windowMaker(response); if (settingsVisibility) { $('#budget_settings').show(); } } }); } $(document).on('click', '#budget_settings_toggle', function() { var bs = $('#budget_settings'); var visible = bs.is(':visible'); if ( visible ) { bs.hide(); } else { bs.show(); } }); $(document).on('change', '.budget_config', function() { clearTimeout(budgetConfigTimeout); var setting = $(this).val(); var wait_time = 1000; var config = $(this).attr('config'); if ($(this).attr('multiple') == "multiple") { setting = JSON.stringify(setting); } var delorean = deloreanBringer(); delorean[config] = setting; console.log(delorean); var new_settings = {}; $('#budget_display').val(''); if ($(this).attr('id') != 'budget_display') { var display = $('#budget_display').attr('budget_display'); display = display + '_display'; console.log(display); new_settings[display] = ''; } new_settings[config] = setting; if (config == 'scope') { new_settings['start_time'] = ''; new_settings['end_time'] = ''; wait_time += 200; } console.log(new_settings); budgetInit({ 'new_settings': new_settings }); }); $(document).on('change', '.budget_time', function() { var setting = $(this).attr('setting'); var value = $('.budget_time[setting="' + setting + '"]').val(); // settingSetter({ 'app': 'budget', 'setting': setting, 'value': value }); var new_settings = {}; new_settings[setting] = value; console.log(new_settings); budgetInit({ 'new_settings': new_settings }); }); $(document).on('click', '.budget_row', function() { var row = $(this); var app = row.attr('app'); var movement = row.attr('movement'); var status = row.attr('status'); var rows = $('.budget_detail_row[movement="' + movement + '"][app="' + app + '"]'); if (status == 'closed') { rows.show(); row.attr('status','open'); } else { rows.hide(); row.attr('status','closed'); } }); $(document).on('click', '.budget_app', function() { var dr = $(this).closest('.budget_detail_row'); var timestamp = dr.attr('timestamp'); var server_time = dr.attr('server_time'); var app = $(this).attr('app'); var filter = dr.attr('filter'); var sorts = localStorage.getItem('sorts'); var scope = localStorage.getItem('scope'); appointmentGrabber(app,timestamp); var variables = { app: app, filter: filter, sorts: sorts, timeshift: '0d', time_machine: '', timestamp: timestamp, scope: scope }; var budgetAppInterval = setInterval(function() { var parent = $('.wind[app="' + app + '"]'); if (parent.length > 0) { var container = parent.find('.re_details'); $.ajax({ url: '/manager/appointment_details', type: 'GET', data: variables, success: function(response) { clearInterval(budgetAppInterval); container.html(response); container.show(); appointment_chron(); } }); } },200); }); $(document).on('click', '.budget_autocalc', function() { var button = $(this); var app = button.attr('app'); var circumstance = $(this).attr('circumstance'); var timestamp = Date.now(); button.addClass('active'); var autoCalcInterval; var autoCalcTimeout; button.addClass('medium_thumb').removeClass('little_thumb'); autoCalcInterval = setInterval(function() { button.addClass('little_thumb').removeClass('medium_thumb'); clearTimeout(autoCalcTimeout); autoCalcTimeout = setTimeout(function() { button.addClass('medium_thumb').removeClass('little_thumb'); },500); }, 1000); $.ajax({ url: '/manager/budget/autocalc', type: 'GET', data: { timestamp: timestamp, app: app, circumstance: circumstance }, success: function(response) { console.log(response); button.addClass('medium_thumb').removeClass('little_thumb'); clearInterval(autoCalcInterval); // if ($('.wind[app="budget"').is(':visible')) { var message = 'These are the autocalcs for ' + response.data.formatted_app + '

'; $.each(response, function(i,v) { if (i != 'data') { message += '
'; } }); message += '
' $('#alert').html(message); $('#alert').show(); $(this).removeClass('active'); // } if ($('.wind[app="' + app + '"]').is(':visible')) { inventoryDetails(app); } } }); }); $(document).on('click', '.budget_autocalc_accept', function() { var app = $(this).attr('app'); var circumstance = $(this).attr('circumstance'); var result = $(this).attr('result'); var b = $('.budget_edit_input[app="' + app + '"][circumstance="' + circumstance + '"]'); b.val(result); b.trigger('focusout'); $('#alert').hide(); if ($('.wind[app="' + app + '"]').is(':visible')) { inventoryDetails(app); } $.ajax({ url: '/manager/budget/edit', type: 'POST', data: { app: app, value: result, circumstance: circumstance }, success: function(response) { console.log(response); } }); }); $(document).on('change, focusout', '.budget_edit_input', function() { var input = $(this); var app = input.attr('app'); var value = input.val(); var circumstance = input.attr('circumstance'); var timestamp = Date.now(); $.ajax({ url: '/manager/budget/edit', type: 'POST', data: { app: app, value: value, circumstance: circumstance }, success: function(response) { console.log(response); } }); }); $(document).on('click', '.budget_light', function() { var bl = $(this); var circumstance = bl.attr('circumstance'); var app = bl.attr('app'); budgetLight(app,circumstance); }); function budgetLight(app,circumstance,status) { console.log(app + ' ' + circumstance + ' ' + status); var blci = $('.budget_current_information[app="' + app + '"]'); var wind = blci.closest('.wind'); var header; if ((blci.is(':visible') && status != 'open') && blci.attr('circumstance') == circumstance) { blci.hide(); blci.attr('status', 'closed'); circumstance = undefined; blci.attr('circumstance', undefined); header = blci.html(); // cacheSet({ 'app': app, 'context': 'header' }, { 'timestamp': timestamp, 'header': header }); } else { $.ajax({ url: '/manager/budget/current_information', type: 'GET', data: { timestamp: timestamp, app: app, circumstance: circumstance }, success: function(response) { blci.html(response).show(); blci.attr('circumstance', circumstance); blci.attr('status', 'open'); appointment_chron(); header = blci.html(); // cacheSet({ 'app': app, 'context': 'header' }, { 'timestamp': timestamp, 'header': header }); } }); } settingSetter({ 'app': app, 'setting': 'ci', 'value': circumstance }); wind.attr('current_information', circumstance); } $(document).on('click', '#budget_display_save', function() { var name = $('#budget_display_name').val(); var type = $('#budget_display_name').attr('display_type'); console.log(name); if (!name) { // return; } var data = [ 'start_time', 'end_time' ]; $('.budget_config').each(function(i,v) { data.push($(v).attr('config')); }); console.log(data); data = JSON.stringify(data); $.ajax({ url: '/manager/budget/display/save', type: 'POST', data: { name: name, timestamp: timestamp, data: data, type: type }, success: function(response) { console.log(response); } }); }); $(document).on('click', '#budget_display_delete', function() { var name = $('#budget_display_name').val(); var display = $('#budget_display_name').attr('display_type'); $.ajax({ url: '/manager/budget/display/delete', type: 'POST', data: { name: name, display: display }, success: function(response) { console.log(response); } }); });