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);
}
});
});