2699 lines
70 KiB
JavaScript
Executable File
2699 lines
70 KiB
JavaScript
Executable File
$(document).on('.question', 'click', function() {
|
|
$.ajax({
|
|
url: '/documentation/query',
|
|
type: 'GET',
|
|
data: {},
|
|
success: function() {
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
$(document).on('change', '#time_machine',function() {
|
|
var ts = $(this).val();
|
|
localStorage.setItem('time_machine',ts);
|
|
});
|
|
|
|
|
|
var focused_input;
|
|
var startMenuTimeout;
|
|
$(document).on('click', '.time_jump', function() {
|
|
var j = $(this);
|
|
var appointment = j.closest('.appointment');
|
|
var type = j.attr('type');
|
|
var timestamp = j.attr('timestamp') || timestamp;
|
|
var app = j.attr('app');
|
|
var delorean = deloreanBringer();
|
|
var filter = localStorage.getItem('filter');
|
|
$.ajax({
|
|
url: '/manager/time_jump',
|
|
type: 'GET',
|
|
data: { timestamp: timestamp, filter: filter, type: type, app: app, scope: delorean.scope },
|
|
success: function(response) {
|
|
if (response.new_timestamp) {
|
|
$('#time_machine').val(response.date);
|
|
localStorage.setItem('time_machine',response.date);
|
|
j.attr('timestamp',response.new_timestamp);
|
|
j.closest('.walkman_controls').find('.time_jump').attr('timestamp',response.new_timestamp);
|
|
appointmentDetailsGrabber(j);
|
|
}
|
|
else {
|
|
$('.time_jump').attr('timestamp',response.old_timestamp);
|
|
}
|
|
}
|
|
});
|
|
|
|
});
|
|
|
|
$(document).ready(function() {
|
|
pseudonymFreeSpaceFinder();
|
|
windowRetriever()
|
|
if ($('#search_engines')) {
|
|
|
|
}
|
|
focused_input = $('#search');
|
|
initializer();
|
|
calculator();
|
|
boxOfficeMaker();
|
|
});
|
|
|
|
|
|
$(document).on('click', 'input',function() {
|
|
|
|
focused_input.removeClass('focused_input');
|
|
// focused_input.css({'background-image': '' });
|
|
// focused_input.trigger('change');
|
|
focused_input = $(this);
|
|
// focused_input.addClass('focused_input');
|
|
|
|
if ($('#numberpad').is(':visible') || $('#keyboard').is(':visible')) {
|
|
focused_input.blur();
|
|
}
|
|
});
|
|
$(document).on('click', 'textarea',function() {
|
|
focused_input = $(this);
|
|
|
|
if ($('#numberpad').is(':visible') || $('#keyboard').is(':visible')) {
|
|
focused_input.blur();
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.app_act', function() {
|
|
clearTimeout(searchTimeout);
|
|
});
|
|
var searchTimeout;
|
|
|
|
$(document).on('dblclick', 'input', function(i,e) {
|
|
var s = $('#search');
|
|
var search = s.val();
|
|
if (search == '') {
|
|
clipboardGetter(s);
|
|
}
|
|
else {
|
|
clipboardSetter(search);
|
|
}
|
|
|
|
s.val('');
|
|
});
|
|
|
|
async function clipboardGetter(s) {
|
|
$.ajax({
|
|
url: '/manager/clipboard_getter',
|
|
type: 'GET',
|
|
success: function(response) {
|
|
s.val(response);
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.clip', function() {
|
|
clipboardSetter(clip);
|
|
});
|
|
|
|
function clipboardSetter(clip) {
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/clipboard_setter',
|
|
type: 'POST',
|
|
data: { timestamp: timestamp, clipboard: clip },
|
|
success: function(response) {
|
|
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('change', '.volume_control', function(e) {
|
|
console.log('volume');
|
|
var control = $(this);
|
|
var stream = control.attr('stream');
|
|
var volume = control.val();
|
|
var max_volume = control.attr('max');
|
|
|
|
var total_width = control.width();
|
|
var current_location = e.offsetX;
|
|
|
|
control.val(volume);
|
|
var timestamp = Date.now();
|
|
var device = localStorage.getItem('volume_control_device');
|
|
var data = { stream: stream, volume: volume, max: max_volume, device: device };
|
|
console.log(data);
|
|
$.ajax({
|
|
url: '/manager/volume_control',
|
|
type: 'GET',
|
|
data: data,
|
|
success: function(response) {
|
|
volumeChecker();
|
|
}
|
|
});
|
|
|
|
});
|
|
|
|
function volumeChecker() {
|
|
var device = localStorage.getItem('volume_control_device');
|
|
$.ajax({
|
|
url: '/manager/volume_control',
|
|
type: 'GET',
|
|
data: { device: device },
|
|
success: function(response) {
|
|
var writer = '';
|
|
$.each(response.volumes, function(i,v) {
|
|
writer += '<b>' + v['stream'] + '</b><input type="range" style="width:60%;" class="volume_control" stream="' + v['stream'] + '" value="' + v['volume'] + '" max="' + v['max_volume'] + '"><br>';
|
|
});
|
|
$('#device_volume_control').html(writer);
|
|
|
|
$.each(response.remote_machines, function(i,rm) {
|
|
$('#device_volume_control').prepend('<span class="volume_control_device hover" device="' + rm.uuid + '"><b>' + rm.fqdn + '</b></span><br>');
|
|
});
|
|
|
|
console.log(response);
|
|
|
|
|
|
$('#device_volume_control').prepend('<span class="volume_control_device hover" device="local"><b>Local</b></span><br>');
|
|
$('.volume_control_device[device="' + device + '"]').addClass('selected');
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.volume_control_device', function() {
|
|
$('.volume_control_device').removeClass('selected');
|
|
$(this).addClass('selected');
|
|
var device = $('.volume_control_device.selected').attr('device');
|
|
localStorage.setItem('volume_control_device', device);
|
|
volumeChecker();
|
|
});
|
|
|
|
|
|
$(document).on('click', '#cards_toggle', function() {
|
|
$.ajax({
|
|
url: '/manager/cards',
|
|
type: 'GET',
|
|
data: { timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response);
|
|
setTimeout(function() {
|
|
cardPicker();
|
|
},1500);
|
|
}
|
|
});
|
|
});
|
|
|
|
var cardsInterval;
|
|
$(document).on('click', '.cards_mode', function() {
|
|
var cc = $(this);
|
|
var mode = cc.attr('mode');
|
|
var status = cc.attr('status');
|
|
$('.cards_mode').each(function(i,v) { $(v).attr('status', 'disabled'); });
|
|
settingSetter({ 'app': 'cards', 'setting': 'mode', 'value': mode });
|
|
setTimeout(function() {
|
|
if (mode == 'cycle') {
|
|
cardPicker();
|
|
clearInterval(cardsInterval);
|
|
cardsInterval = setInterval(function() {
|
|
if ($('.cards_mode[mode=cycle]').attr('status') == 'enabled' && $('#deck_card').is(':visible')) {
|
|
cardPicker('new');
|
|
}
|
|
else {
|
|
clearInterval(cardsInterval);
|
|
}
|
|
}, 180000);
|
|
cc.attr('status', 'enabled');
|
|
}
|
|
else {
|
|
cardPicker();
|
|
cc.attr('status', 'enabled');
|
|
}
|
|
},500);
|
|
});
|
|
|
|
$(document).on('click', '#deck_card', function() {
|
|
cardPicker('new');
|
|
});
|
|
|
|
function cardPicker(new_card) {
|
|
$('.card_description_icon').hide();
|
|
$.ajax({
|
|
url: '/manager/card_picker',
|
|
type: 'GET',
|
|
data: { timestamp: timestamp, new_card: new_card },
|
|
success: function(response) {
|
|
|
|
if (response.stream) {
|
|
$('#deck_card').attr('src', response.stream);
|
|
$('#deck_card').css({ 'height': '33%' });
|
|
$('#deck_history').html($(response.html).find('#deck_history').html());
|
|
}
|
|
else {
|
|
$('#deck_card').attr('src', '/images/cards/' + response.filename);
|
|
$('#deck_card').css({ 'height': '80%' });
|
|
$('#deck_history').html($(response.html).find('#deck_history').html());
|
|
}
|
|
|
|
$('#card_title').html(response.title).show();
|
|
|
|
$('#card_description').text(response.description).hide();
|
|
appointment_chron();
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.card.history', function() {
|
|
var title = $(this).attr('title');
|
|
var rn = $(this).attr('rn');
|
|
var description = $('.card_history_description[rn="' + rn + '"]').html();
|
|
$('#deck_card').attr('src', $(this).attr('src'));
|
|
$('#card_title').html(title).show();
|
|
$('#card_description').html(description).hide();
|
|
});
|
|
|
|
$(document).on('click', '#card_title,.card_description_icon', function() {
|
|
$('#card_description').show();
|
|
$('#card_title').hide();
|
|
});
|
|
|
|
$(document).on('click', '#card_description', function() {
|
|
$('#card_title').show();
|
|
$('#card_description').hide();
|
|
});
|
|
|
|
var key_index;
|
|
var original_key_position;
|
|
$(document).on('click', '#ticketmaker', function() {
|
|
boxOffice();
|
|
});
|
|
|
|
$(document).on('change', '#box_office_view', function() {
|
|
var view = $(this).val();
|
|
settingSetter({ 'app': 'misc', 'setting': 'box_office_view', 'value': view });
|
|
boxOffice();
|
|
});
|
|
|
|
function boxOffice() {
|
|
var view = $('#box_office_view').val();
|
|
$.ajax({
|
|
url: '/manager/box_office',
|
|
type: 'GET',
|
|
data: { timestamp: timestamp, view: view },
|
|
success: function(response) {
|
|
boxOfficeMaker(response);
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.ticket_approve', function() {
|
|
var timestamp = Date.now();
|
|
var ticket = $(this).attr('ticket');
|
|
$.ajax({
|
|
url: '/manager/box_office/approve/',
|
|
type: 'POST',
|
|
data: { timestamp: timestamp, ticket: ticket },
|
|
success: function(response) {
|
|
|
|
},
|
|
error: function(response) {
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
function boxOfficeMaker(response) {
|
|
if (response) {
|
|
windowMaker(response);
|
|
$('#box_office').show();
|
|
if (original_key_position == undefined) {
|
|
original_key_position = {
|
|
top: $('#ticket_sales').css('top'),
|
|
left: $('#ticket_sales').css('left')
|
|
};
|
|
}
|
|
$('#ticket_sales').show();
|
|
$('#ticket_sales').draggable({
|
|
start: function(p) {
|
|
|
|
$('.unlock').show();
|
|
key_index = $('#ticket_sales').css('z-index');
|
|
|
|
},
|
|
drag: function(p) {
|
|
|
|
|
|
},
|
|
stop: function(p) {
|
|
|
|
$('.unlock').hide();
|
|
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
|
|
$(document).on('click', '.box_office_close_button', function() {
|
|
$('#ticket_sales').hide();
|
|
|
|
$('#ticket_sales').css(original_key_position);
|
|
});
|
|
|
|
function qrcode_generator(app) {
|
|
var timestamp = Date.now();
|
|
var nic = $('#ticket_network_device').val();
|
|
var name = $('#ticket_name').val();
|
|
var warranty = $('#ticket_warranty').val();
|
|
var privilege = $('#ticket_privilege').val();
|
|
var project = $('#ticket_project').val();
|
|
var debriefer = JSON.stringify(localStorage);
|
|
|
|
$.ajax({
|
|
url: '/manager/qrcode_generator',
|
|
type: 'GET',
|
|
data: { timestamp: timestamp, nic: nic, debriefer:debriefer, name: name, warranty: warranty, privilege: privilege, app: app, project: project },
|
|
success: function(response) {
|
|
if (response) {
|
|
ticket_list();
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
function ticket_list() {
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/box_office',
|
|
type: 'GET',
|
|
data: { timestamp: timestamp, source: 'list' },
|
|
success:function(response) {
|
|
|
|
var tl = $(response).find('#ticket_list').html();
|
|
|
|
$('#ticket_list').html(tl);
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.ticket', function() {
|
|
var t = $(this);
|
|
var width = t.width();
|
|
if (width < 200) {
|
|
$(this).css({'width': '200px', 'height': '200px' });
|
|
}
|
|
else {
|
|
t.css({'width': '40px', 'height': '40px' });
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.delete_ticket', function() {
|
|
var a = $(this);
|
|
var timestamp = Date.now();
|
|
var uuid = a.attr('uuid');
|
|
if (a.attr('armed') == 'yes') {
|
|
$.ajax({
|
|
url: '/manager/delete_ticket',
|
|
data: { timestamp: timestamp, uuid: uuid },
|
|
success: function(response) {
|
|
|
|
$('.ticket_holder[uuid="' + response['uuid'] + '"]').remove();
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
a.attr('armed', 'yes');
|
|
var bgcolor = a.css('background-color');
|
|
a.css({'background-color': 'red' });
|
|
setTimeout(function() {
|
|
a.css({'background-color': bgcolor });
|
|
a.attr('armed', 'no');
|
|
},2000);
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.suspend_ticket', function() {
|
|
var t = $(this);
|
|
var timestamp = Date.now();
|
|
var uuid = t.attr('uuid');
|
|
$.ajax({
|
|
url: '/manager/suspend_ticket',
|
|
data: { uuid: uuid, timestamp: timestamp },
|
|
success: function(response) {
|
|
|
|
ticket_list();
|
|
t.css({ 'background-color': 'green' });
|
|
setTimeout(function() {
|
|
t.css({ 'background-color': 'grey' });
|
|
}, 1000);
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.renew_ticket', function() {
|
|
var t = $(this);
|
|
var timestamp = Date.now();
|
|
var uuid = t.attr('uuid');
|
|
var warranty = $('#ticket_warranty').val();
|
|
$.ajax({
|
|
url: '/manager/renew_ticket',
|
|
data: { timestamp: timestamp, uuid: uuid, warranty: warranty },
|
|
success: function(response) {
|
|
|
|
ticket_list();
|
|
t.css({ 'background-color': 'green' });
|
|
setTimeout(function() {
|
|
t.css({ 'background-color': 'grey' });
|
|
},1000);
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.reinstate_ticket', function() {
|
|
var t = $(this);
|
|
var timestamp = Date.now();
|
|
var uuid = t.attr('uuid');
|
|
|
|
$.ajax({
|
|
url: '/manager/reinstate_ticket',
|
|
data: { timestamp: timestamp, uuid: uuid },
|
|
success: function(response) {
|
|
|
|
ticket_list();
|
|
t.css({ 'background-color': 'green' });
|
|
setTimeout(function() {
|
|
t.css({ 'background-color': 'grey' });
|
|
},1000);
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
$(document).on('change', '#ticket_network_device', function() {
|
|
var t = $(this);
|
|
var ip = t.find('option[value="' + t.val() + '"]').attr('ip');
|
|
$('#ticket_network_ip').text(ip);
|
|
|
|
});
|
|
|
|
|
|
var searchingTimeout;
|
|
var lastSearchTime;
|
|
$(document).on('keyup click', '#search', function(e) {
|
|
lastSearchTime = Date.now();
|
|
var timestamp = lastSearchTime;
|
|
var search = $(this).val();
|
|
clearTimeout(searchingTimeout);
|
|
searchingTimeout = setTimeout(function() {
|
|
clearTimeout(searchingTimeout);
|
|
$('#search').val('');
|
|
},5000 * 60);
|
|
if (e.keyCode != 13) {
|
|
$.ajax({
|
|
url: '/manager/keyup_search',
|
|
type: 'GET',
|
|
data: { search: search, timestamp: timestamp },
|
|
success: function(response) {
|
|
if (response.timestamp == lastSearchTime) {
|
|
var o = $('#search').offset();
|
|
var h = $('#search').height();
|
|
if (response.count > 0) {
|
|
$('#search_results').html(response.results).show();;
|
|
}
|
|
else {
|
|
$('#search_results').html('').hide();
|
|
}
|
|
var height = $('#manager_search_results').height();
|
|
$('#search_results').css({ 'position':'fixed', height: height, 'bottom': $(window).height() + $(document).scrollTop() - o.top, 'border': 'solid', 'border-width': '3px', 'text-align': 'center', 'left': o.left, 'width': $('#search').width() });
|
|
}
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
$(document).on('click','.manager_search_result', function() {
|
|
var app = $(this).text();
|
|
var timestamp = Date.now();
|
|
appointmentGrabber(app,timestamp);
|
|
$('#search_results').hide();
|
|
$('#start_menu').hide();
|
|
});
|
|
|
|
|
|
$(document).on('click', '.search_toggle', function(i,e) {
|
|
$('body').css({ 'cursor': 'progress' });
|
|
clearTimeout(searchTimeout);
|
|
var search = $('#search').val();
|
|
var timestamp = Date.now();
|
|
localStorage.setItem('lastSearchTime',timestamp);
|
|
localStorage.setItem('search', search);
|
|
$('#search_results').html('').hide();
|
|
var chosen_appts = [];
|
|
$('.appointments').each(function(i,val) {
|
|
chosen_appts.push($(this).attr('app'));
|
|
});
|
|
if (search) {
|
|
searchTimeout = setTimeout(function() {
|
|
if ($('#search').val() == search) {
|
|
$.ajax({
|
|
url: '/manager/search',
|
|
data: { search: search, timestamp: timestamp, chosen_appts: chosen_appts },
|
|
success: function(response) {
|
|
var res = $(response);
|
|
|
|
var lastSearchTime = localStorage.getItem('lastSearchTime');
|
|
// if (res.find('.appointment').attr('timestamp') == lastSearchTime) {
|
|
windowMaker(response);
|
|
appointment_chron();
|
|
$('body').css({ 'cursor': 'auto' });
|
|
// }
|
|
}
|
|
});
|
|
}
|
|
},1300);
|
|
}
|
|
else {
|
|
$('.wind[title=search]').remove();
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.search_engine_grabber', function() {
|
|
|
|
var name = $(this).attr('name');
|
|
var timestamp = Date.now();
|
|
var search = $(this).attr('search') || $('#search').val();
|
|
var website = $(this).attr('url') + search;
|
|
var view = $(this).attr('view');
|
|
$.ajax({
|
|
url: '/manager/search_engine_grabber',
|
|
type: 'GET',
|
|
data: { app: name, search: search, view: view, website: website, timestamp: timestamp },
|
|
success: function(response) {
|
|
centreViewWriter(response);
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.torch_toggle', function() {
|
|
var torch = localStorage.getItem('torch_status') || 'off';
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/torch',
|
|
type: 'GET',
|
|
data: { torch: torch, timestamp: timestamp },
|
|
success: function(response) {
|
|
|
|
localStorage.setItem('torch_status', response);
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
$(document).on('click','.file_toggle',function() {
|
|
var detail = $(this).closest('.appointment_detail');
|
|
var appointment = $(this).closest('.appointment');
|
|
var app = appointment.attr('app');
|
|
var file = $(this).attr('file');
|
|
var timestamp = $(this).attr('timestamp');
|
|
|
|
$.ajax({
|
|
url:'/manager/file_open',
|
|
type:'GET',
|
|
data: { file: file, timestamp: timestamp, app: app },
|
|
success: function(response) {
|
|
|
|
detail.find('.detail_image').attr('src', response.filepath);
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.share', function() {
|
|
var image = $(this);
|
|
var src = image.attr('file');
|
|
var type = image.attr('type');
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/share',
|
|
type: 'GET',
|
|
data: { src: src, type: type, timestamp: timestamp },
|
|
success: function(response) {
|
|
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.fuck_you', function() {
|
|
fuck_you();
|
|
});
|
|
|
|
var fucks = Date.now();
|
|
function fuck_you() {
|
|
var timestamp = Date.now();
|
|
if (timestamp < (fucks + 1000)) {
|
|
return;
|
|
}
|
|
fucks = Date.now();
|
|
var bt = $('#browser_toggle');
|
|
$('#search').val('');
|
|
$.each(['#left_view','.wind', '.cord', '.manager_search_result'],function(i,v) {
|
|
$(v).remove();
|
|
});
|
|
$.each(['#configure_balloon','#ide_sidebar_container','#mail_sidebar_container', '#soundroom_sidebar_container', '#grapple', '#search_results'],function(i,v) {
|
|
$(v).hide();
|
|
});
|
|
$('.typewriter').remove();
|
|
$.each(heartbeat, function(i,v) {
|
|
clearInterval(heartbeat[i]);
|
|
});
|
|
websocketStop();
|
|
mailWebSocketStop();
|
|
inputClose();
|
|
jpStop();
|
|
twirlRunning = false;
|
|
startMenuCloser(0);
|
|
$('#start_apps').html('');
|
|
$('#time_machine').val('');
|
|
$('#timeshift').val('');
|
|
$('#alert').html('').hide();
|
|
$('.dot').hide();
|
|
$('.window_icon').remove();
|
|
localStorage.setItem('timeshift', '0');
|
|
localStorage.setItem('time_machine','');
|
|
sessionStorage.setItem('window_storage', '{}');
|
|
var timestamp = Date.now();
|
|
$.each(locationWatchers, function(i,v) {
|
|
continent_cancel(i);
|
|
});
|
|
$.ajax({
|
|
url: '/manager/fuck_you',
|
|
type: 'POST',
|
|
data: { timestamp: timestamp }
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '#start_menu_toggle', function() {
|
|
startMenuToggle();
|
|
});
|
|
|
|
$(document).on('click', '.start_menu_menu', function() {
|
|
var menu = $(this).attr('menu');
|
|
localStorage.setItem('start_menu_menu', menu);
|
|
$('#start_menu').attr('toggled', 'closed');
|
|
startMenuToggle({ source: 'menu' });
|
|
});
|
|
|
|
$(document).on('click', '.jonathan, .start_menu_list', function() {
|
|
if ($('#start_menu').is(':visible')) {
|
|
startMenuToggle();
|
|
}
|
|
});
|
|
|
|
function startMenuToggle(data) {
|
|
if (typeof data == 'undefined') { data = {}; }
|
|
var source = data['source'];
|
|
var st = $('#start_menu_toggle');
|
|
var start_menu = $('#start_menu');
|
|
var menu = localStorage.getItem('start_menu_menu');
|
|
clearTimeout(startMenuTimeout);
|
|
if ((st.attr('toggled') == 'open' || start_menu.is(':visible')) && !source) {
|
|
startMenuCloser(0);
|
|
console.log('closing start');
|
|
st.attr('toggled', 'closed');
|
|
if (focused_input.is(':visible')) {
|
|
// focused_input.focus();
|
|
}
|
|
}
|
|
else {
|
|
console.log('opening start');
|
|
$.ajax({
|
|
url: '/manager/start_menu',
|
|
type: 'GET',
|
|
data: { menu: menu },
|
|
success: function(response) {
|
|
if (response.html) {
|
|
$('#start_menu').replaceWith(response.html);
|
|
$('#start_menu').show();
|
|
startMenuDisplayer();
|
|
st.attr('toggled', 'open');
|
|
startMenuCloser(35000);
|
|
}
|
|
}
|
|
});
|
|
// $('#search').focus();
|
|
}
|
|
}
|
|
|
|
function startMenuCloser(wait) {
|
|
clearTimeout(startMenuTimeout);
|
|
startMenuTimeout = setTimeout(function() {
|
|
var start_menu = $('#start_menu');
|
|
if ($('#start_menu').is(':visible')) {
|
|
var m = mouse_position();
|
|
console.log(m);
|
|
var left = start_menu.offset().left;
|
|
var top = start_menu.offset().top;
|
|
var height = start_menu.height();
|
|
var width = start_menu.width();
|
|
if (wait == 0 || !((m.x > left && m.x < (left + width)) && (m.y > top && m.y < (top + height)))) {
|
|
var st = $('#start_menu_toggle');
|
|
st.attr('toggled', 'closed');
|
|
start_menu.hide();
|
|
}
|
|
else {
|
|
startMenuCloser(7000);
|
|
}
|
|
}
|
|
},wait);
|
|
}
|
|
|
|
$(document).on('click', '#browser_toggle', function() {
|
|
var bt = $(this);
|
|
if ($('#browser').is(':visible')) {
|
|
$('#browser').hide();
|
|
bt.css({'border-color': 'black' });
|
|
} else {
|
|
$('#browser').show();
|
|
bt.css({'border-color': 'yellow' });
|
|
}
|
|
});
|
|
|
|
|
|
$(document).on('click', '.main_image_selector', function() {
|
|
var file = $(this).attr('file');
|
|
var app = $(this).attr('app');
|
|
var selected = $(this).attr('main_image');
|
|
var mis = $('.main_image_selector');
|
|
mis.attr('main_image', 'no');
|
|
mis.css({'border-color': 'black','border-width':'3px'});
|
|
|
|
if (selected == 'yes') {
|
|
settingDeleter({ 'app': app, 'setting': 'main_image' });
|
|
}
|
|
else {
|
|
settingSetter({ 'app': app, 'setting': 'main_image', 'value': file });
|
|
$(this).css({'border-color':'orange','border-width':'6px'});
|
|
$(this).attr('main_image', 'yes');
|
|
}
|
|
});
|
|
|
|
var cb_check = 0;
|
|
$(document).on('click', '.configuration', function() {
|
|
configureToggle()
|
|
});
|
|
|
|
$(document).on('click','.purchase', function() {
|
|
var iq = $(this).closest('.appointment').find('.purchase_details');
|
|
if (iq.is(':hidden')) {
|
|
iq.show();
|
|
timestampDater();
|
|
iq.find('.date').val(moment(Date.now()).format('M/D/YYYY'));
|
|
}
|
|
else { iq.hide(); }
|
|
});
|
|
$(document).on('click','.inventory', function() {
|
|
var iq = $(this).closest('.appointment').find('.inventory_details');
|
|
var app = $(this).closest('.appointment').attr('app');
|
|
if (iq.is(':hidden')) {
|
|
iq.show();
|
|
inventoryDetails(app);
|
|
}
|
|
else {
|
|
iq.hide();
|
|
}
|
|
});
|
|
|
|
|
|
var backy_color = 0;
|
|
$(document).on('keyup', '.timed_input', function(e) {
|
|
if (e.keyCode == 13) {
|
|
var url;
|
|
var i = $(this);
|
|
|
|
var id = i.attr('id');
|
|
var messaging = i.attr('messaging');
|
|
var value = i.val();
|
|
var timestamp = Date.now();
|
|
var time_machine = localStorage.getItem('time_machine');
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
var project = localStorage.getItem('project');
|
|
var data;
|
|
var type = 'POST';
|
|
var timeout = 3000;
|
|
|
|
if (i.hasClass('add_something') || i.hasClass('.time_machine')) {
|
|
clearTimeout(searchTimeout);
|
|
setTimeout(function() {
|
|
$('#search_results').html('').hide();
|
|
},700);
|
|
i.addClass('active');
|
|
url = '/manager/reset';
|
|
var entry = 'add';
|
|
data = { app: value, timeshift: timeshift, timestamp: timestamp, type: entry, movement: 'expense', time_machine: time_machine, project: project };
|
|
timeout = 1000;
|
|
}
|
|
else if (i.hasClass('name_change')) {
|
|
url = '/manager/configure';
|
|
var setting = i.attr('setting');
|
|
var app = i.attr('app');
|
|
var name = i.val();
|
|
data = { app: app, timestamp: timestamp, type: setting, setting: setting, value: value };
|
|
}
|
|
else if (i.hasClass('appointment_search')) {
|
|
url = '/manager/appointment_details',
|
|
type = 'GET';
|
|
data = { app: value, timeshift: timeshift, timestamp: timestamp, type: "search", time_machine: time_machine, scope: scope };
|
|
}
|
|
if (url) {
|
|
$.ajax({
|
|
url: url,
|
|
type: type,
|
|
data: data,
|
|
success: function(response) {
|
|
if (i.hasClass('add_something') || url == '/manager/configure') {
|
|
$('#start_menu').hide();
|
|
i.removeClass('active');
|
|
centreViewWriter(response.cv);
|
|
// configureDisplay();
|
|
appointment_chron();
|
|
// $('#search').val('');
|
|
if ($('.now').attr('presence') != 'not' && response['added'] == 'yes') {
|
|
continent_record({'uuid':response['uuid'],'purpose': 'app','app':response['app'],'timestamp':response['timestamp']});
|
|
}
|
|
}
|
|
i.css({ "background-color": "yellow" });
|
|
clearTimeout(backy_color);
|
|
backy_color = setTimeout(function() {
|
|
i.css({ "background-color": "white" });
|
|
},950);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
|
|
$(document).on('click','.voice_prompt',function() {
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/voice_prompt',
|
|
data: { timestamp: timestamp, repeater: 'no' },
|
|
success: function(res) {
|
|
|
|
|
|
},
|
|
error: function(err) { console.log("adder error",err); }
|
|
});
|
|
});
|
|
|
|
$(document).on('dblclick', '.voice_prompt', function() {
|
|
|
|
$.ajax({
|
|
url: '/manager/voice_prompt',
|
|
data: { timestamp: timestamp, repeater: 'yes' },
|
|
success: function(res) {
|
|
|
|
},
|
|
error: function(err) { console.log("adder error",err); }
|
|
});
|
|
});
|
|
|
|
function said_it(text) {
|
|
if (focused_input.not(':visible')) {
|
|
focused_input = $('#search');
|
|
}
|
|
|
|
|
|
if (text) {
|
|
if (focused_input.attr('id') == 'search' || typeof focused_input == "undefined") {
|
|
$('#search').val(text);
|
|
$('#search').trigger(jQuery.Event('keyup', { keyCode: 13 }));
|
|
}
|
|
else {
|
|
var pretext = focused_input.val();
|
|
if (pretext) {
|
|
pretext += '. ';
|
|
}
|
|
focused_input.val(pretext + text);
|
|
focused_input.trigger('keyup');
|
|
// focused_input.trigger(jQuery.Event('keyup', { keyCode: 13 }));
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
$(document).on('click', '.appointment_list_toggle', function() {
|
|
var list = $(this).attr('list');
|
|
var l = $(this).closest('.appointment_detail').find('.appointment_list[list="' + list + '"]');
|
|
if (l.is(':visible')) {
|
|
l.hide();
|
|
}
|
|
else {
|
|
l.show();
|
|
}
|
|
|
|
});
|
|
$(document).on('click', '.delete_duty', function() {
|
|
var a = $(this);
|
|
var duuid = a.attr('duuid');
|
|
var server_time = a.attr('server_time');
|
|
var app = a.closest('.appointment').attr('app');
|
|
var app_uuid = a.closest('.appointment_detail').attr('uuid');
|
|
if (a.attr('armed') == 'yes') {
|
|
$.ajax({
|
|
url: '/manager/delete_duty',
|
|
type: 'POST',
|
|
data: { duuid: duuid, server_time: server_time, app: app, app_uuid: app_uuid },
|
|
success:function(response) {
|
|
|
|
$('.appointment_duty_container[duuid="' + response.duuid + '"]').remove();
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
a.attr('armed', 'yes');
|
|
var bgcolor = a.css('background-color');
|
|
a.css({'background-color': 'red' });
|
|
setTimeout(function() {
|
|
a.css({'background-color': bgcolor });
|
|
a.attr('armed', 'no');
|
|
},2000);
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.download', function() {
|
|
var d = $(this);
|
|
var file = d.attr('file');
|
|
var uuid = d.attr('uuid');
|
|
var app = d.attr('app');
|
|
var server_time = d.attr('server_time');
|
|
var timestamp = d.attr('timestamp');
|
|
var uri = encodeURIComponent(app);
|
|
window.location='/manager/download_file?app=' + uri + '&uuid=' + uuid + '×tamp=' + timestamp + '&server_time=' + server_time + '&file=' + file;
|
|
});
|
|
|
|
$(document).on('click', '.take_picture', function() {
|
|
var d = $(this).closest('.appointment_detail');
|
|
var app = d.attr('app');
|
|
var uuid = d.attr('uuid');
|
|
var camera = $(this).attr('camera');
|
|
var container = d.closest('.appointment');
|
|
var timestamp = Date.now();
|
|
var ago = container.find('.ago').val();
|
|
var time_machine = $('#time_machine').val() || localStorage.getItem('time_machine');
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
$.ajax({
|
|
url: '/manager/take_picture',
|
|
type: 'POST',
|
|
data: { app: app, uuid: uuid, camera: camera, timestamp: timestamp, ago: ago, time_machine: time_machine, timeshift: timeshift },
|
|
success: function(response) {
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.scan_document', function() {
|
|
var d = $(this).closest('.appointment_detail');
|
|
var container = d.closest('.appointment');
|
|
var app = d.attr('app');
|
|
var uuid = d.attr('uuid');
|
|
var feed = $(this).attr('feed');
|
|
var timestamp = Date.now();
|
|
var ago = container.find('.ago').val();
|
|
var time_machine = $('#time_machine').val() || localStorage.getItem('time_machine');
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
$.ajax({
|
|
url: '/manager/scan_document',
|
|
type: 'POST',
|
|
data: { app: app, uuid: uuid, feed: feed, timestamp: timestamp, ago: ago, time_machine: time_machine, timeshift: timeshift },
|
|
success: function(response) {
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
var m;
|
|
var main_h;
|
|
$(document).on('click', '.upload_file, #upload', function(e) {
|
|
var b = $(this);
|
|
var m = $('#main_upload_input');
|
|
|
|
var app = undefined;
|
|
var uuid = undefined;
|
|
var source = 'main_upload';
|
|
|
|
if (b.hasClass('app_upload')) {
|
|
app = b.closest('.appointment_detail').attr('app');
|
|
uuid = b.closest('.appointment_detail').attr('uuid');
|
|
source = 'app_upload';
|
|
}
|
|
m.attr('app', app);
|
|
m.attr('uuid', uuid);
|
|
m.attr('source', source);
|
|
main_h = $('#main_upload_container').html();
|
|
m.trigger('click');
|
|
});
|
|
|
|
$(document).on('change', '#main_upload_input', function() {
|
|
var m = $('#main_upload_input');
|
|
|
|
// m.trigger('click');
|
|
|
|
$.each(m[0]['files'], function(i,v) {
|
|
|
|
});
|
|
if (m[0]['files'].length > 0) {
|
|
$('#main_upload').trigger('submit');
|
|
}
|
|
});
|
|
|
|
$(document).on('submit', "#main_upload", function(e) {
|
|
e.preventDefault();
|
|
var mui = $('#main_upload_input');
|
|
var formData = new FormData(this);
|
|
formData.delete('timestamp');
|
|
formData.append('timestamp', timestamp);
|
|
var apper = $('.wind[app="' + topWindow() + '"]');
|
|
var navigation = $(apper).attr('navigation');
|
|
app = $(apper).attr('app') || $('#search').val();
|
|
formData.delete('app');
|
|
formData.delete('uuid');
|
|
var source = mui.attr('source');
|
|
if (source == 'app_upload') {
|
|
app = mui.attr('app');
|
|
var uuid = mui.attr('uuid');
|
|
formData.append('uuid', uuid);
|
|
}
|
|
|
|
formData.append('app', app);
|
|
formData.append('source', source);
|
|
console.log(formData);
|
|
$.ajax({
|
|
url: '/manager/upload_file',
|
|
type: 'POST',
|
|
data: formData,
|
|
success: function (response) {
|
|
m = undefined;
|
|
formData.delete('fileupload');
|
|
$('#main_upload').remove();
|
|
$('#main_upload_container').html(main_h);
|
|
appClearer(app);
|
|
continent_record({'uuid':response['uuid'],'purpose':'app','app':response['app'],'timestamp':response['timestamp'],'navigation':navigation});
|
|
},
|
|
cache: false,
|
|
contentType: false,
|
|
processData: false
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.name_text', function(){
|
|
var text = $(this).text();
|
|
focused_input.val(text);
|
|
});
|
|
|
|
$(document).on('click','.app_act, .save_appointment',function() {
|
|
var b = $(this);
|
|
var app = b.attr('app') || b.closest('.appointment').attr('app');
|
|
var originalColour = b.css('background-color');
|
|
b.css({'background-color': 'blue'});
|
|
setTimeout(function() { b.css({'background-color': originalColour }); },750);
|
|
// cacheDelete({ app: app, context: 'template' });
|
|
});
|
|
|
|
$(document).on('click','#calculate_it', function() {
|
|
clearInterval(calculateInterval);
|
|
calculator();
|
|
});
|
|
|
|
$(document).on('click, change', '#update_frequency', function() {
|
|
var f = $(this).val();
|
|
localStorage.setItem('update_frequency', f);
|
|
initializer()
|
|
});
|
|
|
|
|
|
|
|
|
|
$(document).on('click', '#timeshift_viewer', function() {
|
|
var time_machine = $('#timeshift_viewer').text() + ' ' + $('#time_machine').val();
|
|
$('#time_machine').val(time_machine);
|
|
localStorage.setItem('time_machine',time_machine);
|
|
});
|
|
|
|
$(document).on('click','.now',function() {
|
|
$('#time_machine').val('');
|
|
$('#timeshift').val('');
|
|
localStorage.setItem('timeshift', '0');
|
|
localStorage.setItem('time_machine','');
|
|
localStorage.setItem('timeshift', '');
|
|
timestamp = Date.now();
|
|
initializer();
|
|
debrief_setter();
|
|
calculator();
|
|
});
|
|
|
|
|
|
|
|
var note_typing_timeout;
|
|
$(document).on('keyup', '.notes, .ago, .duration', function() {
|
|
var i = $(this);
|
|
var app = i.closest('.appointment');
|
|
var appointment = app.attr('app');
|
|
clearTimeout(note_typing_timeout);
|
|
note_typing_timeout = setTimeout(function() {
|
|
$.each(['notes','ago','duration'], function(i,v) {
|
|
var typed = app.find('.' + v).val();
|
|
if (typed && typed != '') {
|
|
localStorage.setItem(appointment + '_' + v, typed);
|
|
}
|
|
else {
|
|
localStorage.removeItem(appointment + '_' + v);
|
|
}
|
|
});
|
|
i.css({ "background-color": "yellow" });
|
|
clearTimeout(backy_color);
|
|
backy_color = setTimeout(function() {
|
|
i.css({ "background-color": "white" });
|
|
},750);
|
|
},1000);
|
|
});
|
|
|
|
|
|
$(document).on('focus, click', 'input.time', function() {
|
|
$(this).addClass('editing');
|
|
});
|
|
|
|
$(document).on('change, focusout', 'input.time', function() {
|
|
var input = $(this);
|
|
var time = input.val();
|
|
var timestamp = Date.now();
|
|
|
|
$.ajax({
|
|
url: '/manager/ago',
|
|
type: 'GET',
|
|
data: { ago: time },
|
|
success: function(response) {
|
|
input.attr('timestamp', response);
|
|
input.removeClass('editing');
|
|
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
$(document).on('dblclick', '#timeshift', function() {
|
|
var e = $(this);
|
|
var scope = e.val();
|
|
e.val(0);
|
|
localStorage.setItem('timeshift', 0);
|
|
debrief_setter();
|
|
});
|
|
|
|
var timeshift_timeout;
|
|
$(document).on('input', '#timeshift', function() {
|
|
var timeshift = $(this).val();
|
|
localStorage.setItem('timeshift', timeshift);
|
|
if ($('.appointment_details').is(':visible') ) {
|
|
$('.appointment_details').each(function(i,v) {
|
|
$(v).closest('.appointment').find('.det').trigger('dblClick');
|
|
});
|
|
}
|
|
debrief_setter();
|
|
clearTimeout(timeshift_timeout);
|
|
setTimeout(function() {
|
|
calculator();
|
|
},10);
|
|
});
|
|
|
|
$(document).on('change', '#timeshift_scope', function() {
|
|
var timeshift = $(this).val();
|
|
localStorage.setItem('timeshift_scope', timeshift);
|
|
var scope = 12;
|
|
if (timeshift == 'h' ||timeshift == 'm'||timeshift == 's') { scope = 60 }
|
|
if (timeshift == 'y') { scope = 20 }
|
|
$('#timeshift_max').attr('max', scope );
|
|
debrief_setter();
|
|
});
|
|
|
|
$(document).on('change', '#scope', function () {
|
|
var scope = $(this).val();
|
|
localStorage.setItem('scope', scope);
|
|
debrief_setter();
|
|
});
|
|
|
|
$(document).on('change', '#filter', function () {
|
|
var filter = $(this).val();
|
|
localStorage.setItem('filter', filter);
|
|
debrief_setter()
|
|
});
|
|
|
|
$(document).on('change', '#layout', function() {
|
|
var layout = $(this).val();
|
|
localStorage.setItem('layout', layout);
|
|
debrief_setter();
|
|
});
|
|
|
|
$(document).on('change', '#projects', function() {
|
|
var project = $(this).val();
|
|
localStorage.setItem('project', project);
|
|
debrief_setter();
|
|
});
|
|
|
|
$(document).on('change', '#accounts', function() {
|
|
var account = $(this).val();
|
|
localStorage.setItem('account',account);
|
|
|
|
debrief_setter();
|
|
});
|
|
$(document).on('change', '#background_images', function() {
|
|
var bgi = localStorage.getItem('background_images');
|
|
if (bgi == 'on') {
|
|
bgi = 'off';
|
|
}
|
|
else {
|
|
bgi = 'on';
|
|
}
|
|
localStorage.setItem('background_images', bgi);
|
|
debrief_setter();
|
|
});
|
|
$(document).on('change', '#background_images_opacity', function() {
|
|
var bgi = $(this).val();
|
|
console.log(bgi);
|
|
localStorage.setItem('background_images_opacity', bgi);
|
|
$('#background').css({ 'opacity': bgi });
|
|
debrief_setter();
|
|
});
|
|
|
|
$(document).on('change', '#sorts', function() {
|
|
var sorts = $(this).val();
|
|
localStorage.setItem('sorts', sorts);
|
|
debrief_setter();
|
|
});
|
|
|
|
$(document).on('click','#appt_view_toggle', function() {
|
|
var view = $(this);
|
|
if (sessionStorage.getItem('appt_view_toggle') == 'on') {
|
|
sessionStorage.setItem('appt_view_toggle', 'off')
|
|
localStorage.setItem('appt_view_toggle', 'off');
|
|
view.css({ 'background-color': '' });
|
|
}
|
|
else {
|
|
view.css({ 'background-color': 'green' });
|
|
sessionStorage.setItem('appt_view_toggle', 'on');
|
|
localStorage.setItem('appt_view_toggle', 'on');
|
|
}
|
|
|
|
});
|
|
var appts = {};
|
|
var response = {};
|
|
function deloreanBringer() {
|
|
var now = Date.now();
|
|
var readable = moment(now).format();
|
|
var appts = []
|
|
$('.appointment').each(function(n,v) {
|
|
var v = $(this);
|
|
if (v.is(':visible')){ appts.push(v.attr('app')); }
|
|
});
|
|
|
|
var appointments = JSON.stringify(appts);
|
|
if (appts.length == 0 || sessionStorage.getItem('appt_view_toggle') != 'on') {
|
|
appointments = [];
|
|
}
|
|
var timeshift = localStorage.getItem('timeshift');
|
|
var timeshift_scope = localStorage.getItem('timeshift_scope');
|
|
timeshift = timeshift + timeshift_scope;
|
|
var scope = localStorage.getItem('scope');
|
|
var sorts = localStorage.getItem('sorts');
|
|
var layout = localStorage.getItem('layout');
|
|
var filter = localStorage.getItem('filter');
|
|
var project = localStorage.getItem('project');
|
|
var account = localStorage.getItem('account');
|
|
var background_images = localStorage.getItem('background_images');
|
|
var background_images_opacity = localStorage.getItem('background_images_opacity');
|
|
var time_machine = localStorage.getItem('time_machine');
|
|
var appt_view_toggle = sessionStorage.getItem('appt_view_toggle') || localStorage.getItem('appt_view_toggle');
|
|
return {
|
|
timestamp: now,
|
|
readable: readable,
|
|
appts: appointments,
|
|
scope: scope,
|
|
sorts: sorts,
|
|
layout: layout,
|
|
filter: filter,
|
|
timeshift: timeshift,
|
|
time_machine: time_machine,
|
|
account: account,
|
|
project: project,
|
|
appt_view_toggle: appt_view_toggle,
|
|
background_images: background_images,
|
|
background_images_opacity: background_images_opacity,
|
|
now: now
|
|
};
|
|
}
|
|
function calculator() {
|
|
var now = Date.now();
|
|
|
|
if (document.visibilityState == 'visible' && !document.hidden && clothesLinePos['moving'] + 300 < now && clothesLinePos['lastBX'] == undefined) {
|
|
var data = deloreanBringer();
|
|
if (appts['__specs']) {
|
|
if ((now - 35000) > appts['__specs']['server_time']) {
|
|
if (!data['stats']) { data['stats'] = {}; data['stats']['appts'] = {}; data['stats']['settings'] = {}; }
|
|
data['stats']['appts']['first'] = appts['__specs']['stats']['appts']['first'];
|
|
data['stats']['appts']['last'] = appts['__specs']['stats']['appts']['last'];
|
|
data['stats']['settings']['first'] = appts['__specs']['stats']['settings']['first'];
|
|
data['stats']['settings']['last'] = appts['__specs']['stats']['settings']['last'];
|
|
data['stats']['appts']['count'] = appts['__specs']['stats']['appts']['count'];
|
|
data['stats'] = JSON.stringify(data['stats']);
|
|
}
|
|
}
|
|
|
|
$.ajax({
|
|
url:'/manager/appointment_viewer',
|
|
type:'GET',
|
|
data: data,
|
|
success: function(respons){
|
|
if (respons.updateable != 'no') {
|
|
now = Date.now();
|
|
|
|
if (clothesLinePos['moving'] + 300 < now && clothesLinePos['lastBX'] == undefined) {
|
|
appts = respons.appts;
|
|
// appts = { ...appts, ...response.appts };
|
|
var pseudonyms = respons.pseudonyms;
|
|
$('.time_jump').each(function(i,v) {
|
|
$(v).attr('timestamp',respons.timestamp);
|
|
});
|
|
var ts = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
|
|
graphicalize(respons);
|
|
// inventoryDetailsUpdater();
|
|
}
|
|
}
|
|
else {
|
|
|
|
timestamp = respons['__specs']['timestamp'];
|
|
|
|
timelineScroller({ diff: (response.appts['__specs']['timestamp'] - respons['__specs']['timestamp']) });
|
|
response['__specs'] = respons['__specs'];
|
|
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
$(document).on('click', '.web', function() {
|
|
var app = $(this).attr('app');
|
|
var website = $(this).attr('web');
|
|
var user_agent = navigator.userAgent;
|
|
$.ajax({
|
|
url: '/manager/website_get',
|
|
data: { app: app, website: website, timestamp: timestamp, user_agent: user_agent },
|
|
success: function(response) {
|
|
$('#browser').append(response.window);
|
|
$('<iframe>', {
|
|
src: '/manager/browser?internal_url=' + response.internal_url + '×tamp=' + timestamp,
|
|
id: 'browser_' + timestamp,
|
|
frameborder: 0,
|
|
scrolling: 'yes',
|
|
style: "width:100%;height:100%"
|
|
}).appendTo('#window_' + timestamp);
|
|
var window_id = windowMaker(response);
|
|
|
|
$('#browser').show();
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
var ap;
|
|
var clockInterval;
|
|
|
|
function graphicalize(respons) {
|
|
var ts = Date.now();
|
|
|
|
if (!respons) {
|
|
respons = response;
|
|
}
|
|
else {
|
|
response = respons;
|
|
}
|
|
if (respons.clothesline.length == 0) {
|
|
clothesLineHeight = 0;
|
|
}
|
|
else {
|
|
clothesLineHeight = 40;
|
|
}
|
|
appts = respons.appts;
|
|
|
|
timestamp = appts['__specs']['timestamp'];
|
|
if ($('#' + localStorage.getItem('layout')).length == 0) {
|
|
return;
|
|
}
|
|
$.each(appts, function(i,v) {
|
|
$.each(v['list'], function(am,way) {
|
|
if (way != undefined) {
|
|
if (way['timestamp'] && way['timestamp'] >= appts['__specs']['start'] && way['timestamp'] <= appts['__specs']['end']) {
|
|
}
|
|
else {
|
|
appts[i]['list'].splice(am, 1);
|
|
if (appts[i]['list'].length == 0) {
|
|
delete appts[i];
|
|
}
|
|
}
|
|
}
|
|
});
|
|
|
|
});
|
|
var diff = Math.abs(timestamp - ts);
|
|
var nowb = $('.now');
|
|
if (diff > 1100) {
|
|
nowb.attr( 'presence', 'not' );
|
|
nowb.css({'border-color': 'red' });
|
|
if (ts != timestamp) {
|
|
|
|
nowb.css({'border-color': 'orange' });
|
|
}
|
|
}
|
|
else if (diff <= 1100 && diff >= 500) {
|
|
nowb.css({'border-color': 'yellow' });
|
|
nowb.attr('presence', 'delayed');
|
|
}
|
|
else {
|
|
nowb.attr('presence', 'here');
|
|
nowb.css({'border-color': 'green' });
|
|
}
|
|
var layout = localStorage.getItem('layout');
|
|
var timeshit = localStorage.getItem('timeshift');
|
|
var time_machine = localStorage.getItem('time_machine');
|
|
var background_images = localStorage.getItem('background_images');
|
|
|
|
if (time_machine == '0s' || time_machine == 'in 0s') {
|
|
$('#time_machine').val('');
|
|
localStorage.setItem('time_machine', '');
|
|
time_machine = '';
|
|
}
|
|
if (time_machine != '') {
|
|
nowb.css({'background-color': 'blue'});
|
|
}
|
|
else {
|
|
nowb.css({'background-color': 'yellow'});
|
|
}
|
|
|
|
//guests.push(appts);
|
|
$.each(['leaderboard', 'clockface', 'timeline', 'calendar', 'continent', 'narrator'], function(i,v) {
|
|
if (v != layout)
|
|
$('#' + v).hide();
|
|
});
|
|
if (layout == 'clockface'){
|
|
clockfacePrinter(appts);
|
|
}
|
|
else if (layout == 'leaderboard') {
|
|
leaderboardPrinter(appts);
|
|
}
|
|
else if (layout == 'calendar') {
|
|
calendarPrinter(appts);
|
|
}
|
|
else if (layout == 'narrator') {
|
|
narratorPrinter(appts);
|
|
}
|
|
else if (layout == 'timeline') {
|
|
timelinePrinter(appts);
|
|
}
|
|
else if (layout == 'continent') {
|
|
continentPrinter(appts);
|
|
}
|
|
if (background_images == 'on') {
|
|
backgroundPrinter(appts,respons);
|
|
}
|
|
else {
|
|
$('#background').hide();
|
|
}
|
|
var json_appts = JSON.stringify(appts);
|
|
sessionStorage.setItem('appts', json_appts);
|
|
|
|
clotheslineHanger(respons.clothesline);
|
|
}
|
|
|
|
var page_number = 0;
|
|
$(document).on('click', '#marker_toggle', function() {
|
|
var timestamp = Date.now();
|
|
var app = topWindow('marker');
|
|
var url = '/manager/marker';
|
|
if ($('#marker_toolbox').length > 0) {
|
|
var mid = $('#marker_toolbox').closest('.wind').attr('id');
|
|
$('#' + mid).show();
|
|
topLevelNow($('#' + mid));
|
|
}
|
|
else {
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', app: app, timestamp: timestamp, browser_tab_id: bti },
|
|
success: function(response) {
|
|
windowMaker(response);
|
|
markerInit();
|
|
}, error: function (response) { }
|
|
});
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '#terminal_toggle', function() {
|
|
terminalOpener({ window_maker: 'yes' });
|
|
});
|
|
|
|
$(document).on('click', '#twirl_toggle', function() {
|
|
twirlRunning = false;
|
|
var url = '/manager/twirl';
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response)
|
|
}, error: function (response) { }
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
$(document).on('click', '#security_toggle', function() {
|
|
|
|
var url = '/manager/security';
|
|
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response)
|
|
}, error: function (response) {
|
|
padlockReset();
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '#padlock_delete', function() {
|
|
var a = $(this);
|
|
|
|
if (a.attr('armed') == 'yes') {
|
|
$.ajax({
|
|
url: '/manager/security/padlock/delete',
|
|
type: 'POST',
|
|
success: function() {
|
|
$('#padlock_delete').hide();
|
|
$('#lock_session').hide();
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
a.attr('armed', 'yes');
|
|
var bgcolor = a.css('background-color');
|
|
a.css({'background-color': 'red' });
|
|
setTimeout(function() {
|
|
a.css({'background-color': bgcolor });
|
|
a.attr('armed', 'no');
|
|
},2000);
|
|
}
|
|
});
|
|
|
|
|
|
$(document).on('click', '.padlock_jog_wheel',function(e) {
|
|
var timestamp = Date.now();
|
|
|
|
|
|
if (padlock_numbers.digits.length == 3 ) {
|
|
var combo = JSON.stringify(padlock_numbers.digits);
|
|
var pulled = JSON.stringify(padlock_numbers.pulled);
|
|
|
|
padlock_numbers.pulled = [];
|
|
$.ajax({
|
|
url: '/manager/security/padlock',
|
|
type: 'POST',
|
|
data: { timestamp: timestamp, combo: combo, pulled: pulled },
|
|
success: function(response) {
|
|
|
|
if (response.status == 'saved') {
|
|
$('.padlock_lock').hide();
|
|
$('.padlock_unlock').show();
|
|
$('.padlock_light').addClass('superactive');
|
|
$('#lock_session').show();
|
|
$('#padlock_delete').show();
|
|
setTimeout(function() {
|
|
$('.padlock_light').removeClass('superactive');
|
|
$('.padlock_light.yellow').hide();
|
|
},5000);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '#home_toggle', function() {
|
|
var url = '/manager/home';
|
|
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response);
|
|
}, error: function (response) { }
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '#store_toggle', function() {
|
|
var url = '/manager/store';
|
|
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response);
|
|
storeInitializer();
|
|
}, error: function (response) { }
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '#handbook_toggle', function() {
|
|
|
|
var url = '/manager/handbook/' + localStorage.getItem('handbook_chapter');
|
|
var page = localStorage.getItem('handbook_page');
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
data: { page: page },
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response)
|
|
}, error: function (response) {
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.handbook_link', function() {
|
|
var chapter = $(this).attr('chapter');
|
|
var page = $(this).attr('page');
|
|
handbookGrabber(chapter,page);
|
|
});
|
|
|
|
function handbookGrabber(chapter,page) {
|
|
localStorage.setItem('handbook_page', page);
|
|
var url = '/manager/handbook/' + chapter;
|
|
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp, page: page },
|
|
success: function(response) {
|
|
windowMaker(response)
|
|
}, error: function (response) {
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '#studio_toggle', function() {
|
|
var url = '/manager/studio';
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
data: { window_maker: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
windowMaker(response);
|
|
studioInit();
|
|
}, error: function (response) { }
|
|
});
|
|
});
|
|
|
|
function openApps() {
|
|
var apps = [];
|
|
$('.appointment').each(function(i,v) {
|
|
apps.push($(v).attr('app'));
|
|
});
|
|
return apps;
|
|
}
|
|
|
|
$(document).on('click', '.top_navbar, .neighbour_window, .room_appt', function(e) {
|
|
var clicker = $(this);
|
|
var win = clicker.closest('.wind');
|
|
var text = $(this).attr('app');
|
|
console.log(e);
|
|
if (!$(e.target).hasClass('window_action')) {
|
|
if (win.hasClass('ui-draggable-disabled')) {
|
|
windowUnlocker(win);
|
|
}
|
|
else if (win.hasClass('ui-draggable')) {
|
|
windowLocker(win);
|
|
}
|
|
}
|
|
if ($(e.target).parent().hasClass('navbar_buttons')) { return false; }
|
|
|
|
var app = JSON.stringify({ name: text });
|
|
var timestamp = Date.now();
|
|
if (text == 'music' ) {
|
|
var music_window = $('#music').closest('.wind').attr('id');
|
|
topLevelNow($('#' + music_window));
|
|
}
|
|
else if (text == 'video') {
|
|
var video_window = $('#video').closest('.wind').attr('id');
|
|
topLevelNow($('#' + video_window));
|
|
}
|
|
else if ( text == 'gallery' ) {
|
|
var wind = win.attr('id');
|
|
topLevelNow($('#' + wind));
|
|
}
|
|
else if (text == 'marker') {
|
|
var wind = $('#marker').closest('.wind').attr('id');
|
|
topLevelNow($('#' + wind));
|
|
}
|
|
else if (text == 'mailbox') {
|
|
var wind = $('#marker').closest('.wind').attr('id');
|
|
topLevelNow($('#' + wind));
|
|
}
|
|
else if (text == 'terminal') {
|
|
var wind = $('#terminal').closest('.wind').attr('id');
|
|
topLevelNow($('#' + wind));
|
|
}
|
|
else {
|
|
var wind = $('#terminal').closest('.wind').attr('id');
|
|
topLevelNow(win);
|
|
}
|
|
if ($('.wind[app="' + text +'"]').length == 0) {
|
|
appointmentGrabber(text,Date.now());
|
|
}
|
|
|
|
});
|
|
|
|
$(document).on('click', '.reset', function() {
|
|
var appointment = $(this).closest('.appointment');
|
|
var app = appointment.attr('app');
|
|
var details = appointment.find('.app_details');
|
|
if (details.is(':visible')) {
|
|
details.hide();
|
|
}
|
|
else {
|
|
details.show();
|
|
}
|
|
|
|
});
|
|
|
|
function projectAccountGrabber(details) {
|
|
var container = details.closest('.appointment');
|
|
var form = container.find('.app_details');
|
|
former = form;
|
|
var account = form.find('.account').val();
|
|
var project = form.find('.project').val();
|
|
var movement = form.find('.movement').val();
|
|
var current_project = localStorage.getItem('project');
|
|
|
|
if (current_project != 'all') {
|
|
project = current_project;
|
|
}
|
|
return { account: account, project: project, movement: movement };
|
|
}
|
|
|
|
var appointmentLockingMechanism;
|
|
$(document).on('click', '.appointment_locking_mechanism', function() {
|
|
var alm = $(this);
|
|
var status = alm.attr('status');
|
|
clearInterval(appointmentLockingMechanism);
|
|
if (status == 'on') {
|
|
alm.css({'background-color':'lightgrey'});
|
|
}
|
|
else {
|
|
status = 'on';
|
|
alm.css({'background-color':'red'});
|
|
appointmentLockingMechanism = setTimeout(function() {
|
|
alm.attr('status','off');
|
|
alm.css({ 'background-color': 'lightgrey'});
|
|
},4000);
|
|
}
|
|
alm.attr('status', status);
|
|
});
|
|
|
|
var former;
|
|
$(document).on('click', '.save_appointment', function(e) {
|
|
managerReset($(this),e);
|
|
});
|
|
|
|
|
|
function managerReset(caller,e) {
|
|
console.log(e);
|
|
var lockingStatus = 'off';
|
|
|
|
var details = caller;
|
|
var pa = projectAccountGrabber(details);
|
|
var app = details.attr('app');
|
|
var container = details.closest('.appointment');
|
|
var form = container.find('.app_details');
|
|
former = form;
|
|
if (container.find('.appointment_locking_mechanism').attr('status') == 'on' || e.ctrlKey == true) {
|
|
lockingStatus = 'on';
|
|
}
|
|
var project = pa['project'];
|
|
var movement = pa['movement'];
|
|
|
|
var club = form.find('.club').val();
|
|
var camera = details.attr('camera');
|
|
var feed = details.attr('feed');
|
|
var digits = details.attr('digits');
|
|
var item = form.find('.item').val();
|
|
var amount = form.find('.amount').val();
|
|
var ago = $('#ago').val() || container.find('.ago').val();
|
|
var duration = container.find('.duration').val();
|
|
var schedule = container.find('.schedule').val();
|
|
var quantity = container.find('.main_input.quantity').val();
|
|
var notes = container.find('.notes').val();
|
|
var now = Date.now();
|
|
var type = details.attr('type');
|
|
var time_machine = $('#time_machine').val() || localStorage.getItem('time_machine');
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
var warranty = container.find('.warranty').val();
|
|
var navigation = container.attr('navigation');
|
|
var measure_is_open = false;
|
|
|
|
if (container.find('.re_measures').is(':visible')) {
|
|
measure_is_open = true;
|
|
}
|
|
|
|
if (type == 'stop') {
|
|
continent_cancel(app);
|
|
}
|
|
var data = {
|
|
app: app,
|
|
timestamp: now,
|
|
type: type,
|
|
ago: ago,
|
|
duration: duration,
|
|
warranty: warranty,
|
|
project: project,
|
|
amount: amount,
|
|
item: item,
|
|
notes: notes,
|
|
time_machine: time_machine,
|
|
timeshift: timeshift,
|
|
camera: camera,
|
|
feed: feed,
|
|
digits: digits,
|
|
schedule: schedule,
|
|
movement: movement,
|
|
measure_is_open: measure_is_open,
|
|
quantity: quantity,
|
|
lockingStatus: lockingStatus
|
|
};
|
|
$.ajax({
|
|
url: '/manager/reset',
|
|
type: 'POST',
|
|
data: data,
|
|
success: function(response) {
|
|
|
|
appClearer(app)
|
|
// centreViewWriter(response);
|
|
// if ($('.now').attr('presence') != 'not') {
|
|
|
|
if (type != 'start' && type != 'record') {
|
|
navigation = 'once';
|
|
}
|
|
continent_record({'uuid':response['uuid'], 'app':response['app'],'purpose':'app','timestamp':response['timestamp'],'navigation':navigation});
|
|
|
|
// }
|
|
},
|
|
error: function(error) { console.log(error) }
|
|
});
|
|
}
|
|
|
|
function appClearer(app) {
|
|
$('.appointment[app="' + app + '"]').each(function(i,v) {
|
|
var container = $(v);
|
|
localStorage.removeItem(app + '_notes');
|
|
localStorage.removeItem(app + '_ago');
|
|
localStorage.removeItem(app + '_duration');
|
|
container.find('.ago').val('');
|
|
container.find('.duration').val('');
|
|
container.find('.schedule').val('');
|
|
container.find('.notes').val('');
|
|
});
|
|
}
|
|
|
|
function centreViewWriter(response) {
|
|
var res = $(response).find('.appointment');
|
|
var app = $(res).attr('app');
|
|
|
|
var appointments = $('body').find('.appointment');
|
|
var matches = 0;
|
|
if (appointments.length > 0) {
|
|
$.each(appointments, function(n,val) {
|
|
if ($(val).attr('app') == app) {
|
|
// $(val).replaceWith(response).show();
|
|
matches = 1;
|
|
windowMaker(response);
|
|
}
|
|
});
|
|
}
|
|
if (matches == 0) {
|
|
windowMaker(response);
|
|
}
|
|
appointment_chron();
|
|
}
|
|
|
|
|
|
function appointmentGrabber(app,timestamp,source) {
|
|
var waiter = 0;
|
|
if (timestamp == '') {
|
|
timestamp = Date.now();
|
|
}
|
|
if (source == 'onchange') {
|
|
waiter = 500;
|
|
}
|
|
var jpR = jpReport(app);
|
|
var appt = JSON.stringify({ app: app, name: app, source: 'grabber', jpReport: jpR });
|
|
setTimeout(function() {
|
|
$.ajax({
|
|
url: '/manager/centre_view',
|
|
type: 'GET',
|
|
data: { app: appt, timestamp: timestamp, source: source },
|
|
success: function(response) {
|
|
centreViewWriter(response);
|
|
console.log(jpR);
|
|
jpRestore(app,jpR);
|
|
}
|
|
});
|
|
},waiter);
|
|
}
|
|
|
|
var windows = [];
|
|
var top_level_now = 100;
|
|
var winLine = 0;
|
|
var fullXCount = 0;
|
|
var fullYCount = 0;
|
|
|
|
|
|
function random_word(words) {
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/random_word',
|
|
type: 'GET',
|
|
data: { 'times': words, 'timestamp': timestamp },
|
|
success: function(response) {
|
|
return response;
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.measures', function() {
|
|
var a = $(this);
|
|
var timestamp = Date.now();
|
|
var parent = a.closest('.appointment');
|
|
var app = parent.attr('app');
|
|
var container = $('.appointment[app="' + app + '"]').find('.re_measures');
|
|
if (container.is(':visible')) {
|
|
container.hide();
|
|
}
|
|
else {
|
|
appointmentMeasuresGrabber(a);
|
|
container.show();
|
|
}
|
|
});
|
|
|
|
$(document).on('touchmove mouseout hover keydown keyup touchend mousedown mouseup mousewheel', '.app_measure', function() {
|
|
var mdm = $(this);
|
|
var appt = mdm.closest('.appointment');
|
|
var app = appt.attr('app');
|
|
var value = mdm.val();
|
|
var unit = mdm.attr('unit');
|
|
var measure = mdm.attr('measure');
|
|
appt.find('.app_measure_display[measure="' + measure + '"]').text(value + unit);
|
|
|
|
|
|
});
|
|
|
|
$(document).on('change keyup', '.app_measure', function() {
|
|
var mdm = $(this);
|
|
var appt = mdm.closest('.appointment');
|
|
var app = appt.attr('app');
|
|
var value = mdm.val();
|
|
var measure = mdm.attr('measure');
|
|
appt.find('.app_measure_display[measure="' + measure + '"]').text(value);
|
|
mdm.attr('changed', 'yes');
|
|
$.ajax({
|
|
url: 'manager/app_measures',
|
|
type: 'POST',
|
|
data: { app: app, value: value, measure: measure, just_one: true, setting_only: 'yes', timestamp: timestamp },
|
|
success: function(response) {
|
|
console.log('setting only ' + app + ' ' + measure + ' ' + value);
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
var amsave;
|
|
$(document).on('click', '.app_measure_save', function() {
|
|
var mdm = $(this);
|
|
var appt = mdm.closest('.appointment');
|
|
var app = appt.attr('app');
|
|
var container = mdm.closest('.appointment');
|
|
var ago = $('#ago').val() || container.find('.ago').val();
|
|
var time_machine = $('#time_machine').val() || localStorage.getItem('time_machine');
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
appt.find('.app_measure[changed="yes"]').each(function(i,v) {
|
|
|
|
var val = $(v).val();
|
|
var measure = $(v).attr('measure');
|
|
|
|
$.ajax({
|
|
url: 'manager/app_measures',
|
|
type: 'POST',
|
|
data: { app: app, value: val, measure: measure, just_one: true, timestamp: timestamp, timeshift: timeshift, time_machine: time_machine, ago: ago },
|
|
success: function(response) {
|
|
$(v).attr('changed',undefined);
|
|
mdm.addClass('superactive');
|
|
clearTimeout(amsave);
|
|
amsave = setTimeout(function() {
|
|
mdm.removeClass('superactive');
|
|
},1000);
|
|
appClearer(app);
|
|
}
|
|
});
|
|
});
|
|
});
|
|
|
|
$(document).on('click','.app_measure_delete', function() {
|
|
var b = $(this);
|
|
var app = b.closest('.appointment_detail').attr('app');
|
|
var uuid = b.attr('uuid');
|
|
var app_uuid = b.closest('.appointment_detail').attr('uuid');
|
|
var armed = b.attr('armed');
|
|
|
|
|
|
if (armed == 'yes') {
|
|
b.addClass('superactive');
|
|
$.ajax({
|
|
url: '/manager/app_measure_delete',
|
|
type: 'POST',
|
|
data: { app: app, app_uuid: app_uuid, uuid: uuid },
|
|
success:function(response) {
|
|
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
b.attr('armed', 'yes');
|
|
var bgcolor = b.css('background-color');
|
|
b.css({'background-color': 'red' });
|
|
setTimeout(function() {
|
|
b.css({'background-color': bgcolor });
|
|
b.attr('armed', 'no');
|
|
},2000);
|
|
}
|
|
});
|
|
|
|
$(document).on('click','.edit_app',function() {
|
|
|
|
var edit = $(this);
|
|
var uuid = edit.attr('uuid');
|
|
var app = edit.attr('app');
|
|
var timestamp = edit.attr('timestamp');
|
|
var appointment = edit.closest('.appointment');
|
|
var ea = $('.appointment_edit_area[uuid="' + uuid + '"][app="' + app + '"]');
|
|
if (ea.is(':visible')) {
|
|
ea.hide();
|
|
}
|
|
else {
|
|
$.ajax({
|
|
url: '/manager/edit_app',
|
|
type: 'GET',
|
|
data: { app: app, uuid: uuid, timestamp: timestamp },
|
|
success: function(response) {
|
|
ea.html(response).show();
|
|
}
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
$(document).on('click','.edit_app_submit', function() {
|
|
var edit = $(this);
|
|
var app = edit.attr('app');
|
|
var uuid = edit.attr('uuid');
|
|
var ea = $('.appointment_edit_area[uuid="' + uuid + '"]');
|
|
var app_name = ea.find('[attribute="app"]').val();
|
|
var timestamp = ea.find('[attribute="timestamp"]').attr('timestamp');
|
|
var duration = ea.find('[attribute="duration"]').val();
|
|
var warranty = ea.find('[attribute="warranty"]').attr('timestamp');
|
|
var account = ea.find('[attribute="account"]').val();
|
|
var project = ea.find('[attribute="project"]').val();
|
|
var start_notes = ea.find('[attribute="start_notes"]').val();
|
|
var notes = ea.find('[attribute="notes"]').val();
|
|
var end_notes = ea.find('[attribute="end_notes"]').val();
|
|
var movement = ea.find('[attribute="movement"]').val();
|
|
var amount = ea.find('[attribute="amount"]').val();
|
|
var tax = ea.find('[attribute="tax"]').val();
|
|
var aux = ea.find('[attribute="aux"]').val();
|
|
var total = ea.find('[attribute="total"]').val();
|
|
var vendor = ea.find('[attribute="vendor"]').val();
|
|
var unit = ea.find('[attribute="unit"]').val();
|
|
var quantity = ea.find('[attribute="quantity"]').val();
|
|
var has_tax = ea.find('.purchase_config[config="tax"]').attr('enabled');
|
|
var has_totes = ea.find('.purchase_config[config="totes"]').attr('enabled');
|
|
var item = ea.find('[attribute="item"]').val();
|
|
var model = ea.find('[attribute="model"]').val();
|
|
var state = ea.find('[attribute="state"]').val();
|
|
$.ajax({
|
|
url: '/manager/edit_app',
|
|
type: 'POST',
|
|
data: {
|
|
app: app,
|
|
app_name: app_name,
|
|
uuid: uuid,
|
|
timestamp: timestamp,
|
|
duration: duration,
|
|
warranty: warranty,
|
|
account: account,
|
|
project: project,
|
|
start_notes: start_notes,
|
|
notes: notes,
|
|
end_notes: end_notes,
|
|
movement: movement,
|
|
amount: amount,
|
|
tax: tax,
|
|
aux: aux,
|
|
total: total,
|
|
vendor: vendor,
|
|
unit: unit,
|
|
quantity: quantity,
|
|
item: item,
|
|
model: model,
|
|
has_tax: has_tax,
|
|
has_totes: has_totes,
|
|
state: state
|
|
},
|
|
success: function(response) {
|
|
edit.removeClass('medium_thumb');
|
|
edit.addClass('large_thumb');
|
|
setTimeout(function() {
|
|
edit.removeClass('large_thumb');
|
|
edit.addClass('medium_thumb');
|
|
}, 2000);
|
|
},
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '.delete_app', function() {
|
|
var a = $(this);
|
|
var app = a.attr('app');
|
|
var formatted_name = a.attr('formatted_name');
|
|
var formatted_time = a.attr('formatted_time');
|
|
var formatted_duration = a.attr('formatted_duration');
|
|
var uuid = a.attr('uuid');
|
|
var app_type = a.attr('app_type');
|
|
var server_time = a.attr('server_time');
|
|
var timestamp = a.attr('timestamp');
|
|
var armed = a.attr('armed');
|
|
|
|
if (armed == 'yes') {
|
|
$.ajax({
|
|
url: '/manager/delete_app',
|
|
type: 'POST',
|
|
data: { app: app, uuid: uuid, timestamp: timestamp, type: app_type, server_time: server_time },
|
|
success: function(response) {
|
|
$('.appointment_detail[uuid="' + uuid + '"]').remove();
|
|
if (response.deleter.status == 'start' || response.deleter.status == 'record') {
|
|
continent_cancel(app);
|
|
}
|
|
},
|
|
error: function(err) {
|
|
$('#alert').html('It didn\'t work! Try again!<br><br><button id="alert_cancel">Cancel</button>');
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
a.attr('armed', 'yes');
|
|
var bgcolor = a.css('background-color');
|
|
a.css({'background-color': 'red' });
|
|
setTimeout(function() {
|
|
a.css({'background-color': bgcolor });
|
|
a.attr('armed', 'no');
|
|
},2000);
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.delete_file', function() {
|
|
var a = $(this);
|
|
var app_uuid = a.attr('app_uuid');
|
|
var file_uuid = a.attr('file_uuid');
|
|
var app = a.attr('app');
|
|
if (a.attr('armed')) {
|
|
$.ajax({
|
|
url: '/manager/delete_file',
|
|
type: 'POST',
|
|
data: { app_uuid: app_uuid, file_uuid: file_uuid, app: app },
|
|
success: function(response) {
|
|
$.each(images, function(i,v) {
|
|
if (v['app'] == response.app && response.file_uuid == v['uuid']) {
|
|
images.splice(i,1);
|
|
if (image_number == i && ($('#main_video').is(':visible') || $('#main_image').is(':visible'))) {
|
|
galleryImageDisplayer();
|
|
}
|
|
}
|
|
|
|
|
|
});
|
|
console.log($('[app_uuid="' + response.app_uuid + '"][file_uuid="' + response.file_uuid + '"]'));
|
|
$('[app_uuid="' + response.app_uuid + '"][file_uuid="' + response.file_uuid + '"]').remove();
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
a.attr('armed', 'yes');
|
|
var bgcolor = a.css('background-color');
|
|
a.css({'background-color': 'red' });
|
|
setTimeout(function() {
|
|
a.css({'background-color': bgcolor });
|
|
a.attr('armed', 'no');
|
|
},2000);
|
|
}
|
|
});
|
|
|
|
$(document).on('change', '.file_information_updater', function() {
|
|
var a = $(this);
|
|
var value = a.val();
|
|
var f = a.closest('.file_information');
|
|
var attribute = a.attr('attribute');
|
|
var file_uuid = f.attr('file_uuid');
|
|
var app_uuid = f.attr('app_uuid');
|
|
var app = f.attr('app');
|
|
var data = { app: app, file_uuid: file_uuid, app_uuid: app_uuid, attribute: attribute, value: value };
|
|
console.log(data);
|
|
$.ajax({
|
|
url: '/manager/file/information_updater',
|
|
type: 'POST',
|
|
data: data,
|
|
success: function(response) {
|
|
console.log(response);
|
|
a.val(response['value']);
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
$(document).on('click', '.close_appointment', function() {
|
|
var t = $(this);
|
|
var p = t.closest('.appointment');
|
|
var w = p.closest('.window_view');
|
|
p.closest('.wind').remove();
|
|
var height = $(window).height();
|
|
if (p.find('#mouse_shadow')) { $('#mouse_shadow').css({ 'top': height }); }
|
|
var containers = p.find('.appointment');
|
|
if (containers.length == 1) {
|
|
p.hide();
|
|
}
|
|
var app = t.attr('app');
|
|
websocketStop(app);
|
|
|
|
windowSaver();
|
|
$('#' + app).remove();
|
|
$('#' + app).closest('.wind').remove();
|
|
if (w.find('.appointment :visible').length == 0) {
|
|
w.hide();
|
|
}
|
|
});
|
|
|
|
function appointmentMeasuresGrabber(a) {
|
|
var parent = a.closest('.appointment');
|
|
var app = a.attr('app');
|
|
var container = parent.find('.re_measures');
|
|
$.ajax({
|
|
url: '/manager/appointment_measures',
|
|
type: 'GET',
|
|
data: { app: app, timestamp: timestamp },
|
|
success: function(response) {
|
|
container.html(response).show();
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
$(document).on('click', '.det', function() {
|
|
|
|
var a = $(this);
|
|
var parent = a.closest('.appointment');
|
|
var app = a.attr('app');
|
|
var container = parent.find('.re_details');
|
|
if (container.is(':visible')) {
|
|
container.html('<span class="detail_json" app="' + app + '">{}</span>').hide();
|
|
}
|
|
else {
|
|
appointmentDetailsGrabber(a);
|
|
container.show();
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.register', function() {
|
|
var a = $(this);
|
|
var parent = a.closest('.appointment');
|
|
var app = a.attr('app');
|
|
var container = parent.find('.re_register');
|
|
if (container.is(':visible')) {
|
|
container.html('').hide();
|
|
}
|
|
else {
|
|
$.ajax({
|
|
url: '/manager/register_grabber',
|
|
type: 'GET',
|
|
data: { app: app, timestamp: timestamp },
|
|
success: function(response) {
|
|
container.html(response.html);
|
|
openAttributeReopener(app)
|
|
}
|
|
});
|
|
container.show();
|
|
}
|
|
});
|
|
|
|
|
|
var appDetailsScroll = {};
|
|
|
|
$(document).on('mousewheel touchmove', '.detail_area', function(e) {
|
|
if ($(e.target).is('canvas')) {
|
|
e.preventDefault();e.preventDefault();
|
|
}
|
|
var app = $(this).attr('app');
|
|
var scroll = $(this).offset().top;
|
|
var height = $(this).height();
|
|
var cheight = $(this).closest('.appointment').height();
|
|
if ((height - (cheight + Math.abs(scroll))) < 530) {
|
|
if (appDetailsScroll[app]['reload'] == 0) {
|
|
appDetailsScroll[app]['reload'] = 1;
|
|
|
|
// appointmentDetailsGrabber($(this),'scroll');
|
|
}
|
|
}
|
|
});
|
|
|
|
function appointmentDetailsGrabber(a,source) {
|
|
var parent = a.closest('.appointment');
|
|
var app = a.attr('app');
|
|
if ($('.wind[app="' + app + '"]').length > 0) {
|
|
var container = parent.find('.re_details');
|
|
container.html('');
|
|
var timestamp = Date.now();
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
var time_machine = localStorage.getItem('time_machine');
|
|
var sorts = localStorage.getItem('sorts');
|
|
var scope = localStorage.getItem('scope');
|
|
var filter = localStorage.getItem('filter');
|
|
|
|
if (source == 'scroll') {
|
|
|
|
}
|
|
|
|
var variables = { sorts: sorts, app: app, filter: filter, time_machine: time_machine, timeshift: timeshift, timestamp: timestamp, scope: scope };
|
|
$.ajax({
|
|
url: '/manager/appointment_details',
|
|
type: 'GET',
|
|
data: variables,
|
|
success: function(response) {
|
|
container.html(response);
|
|
container.show();
|
|
appointment_chron();
|
|
appDetailsScroll[app]['reload'] = 0;
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function appointmentDetailGrabber(app,uuid) {
|
|
if ($('.wind[app="' + app + '"]').length > 0) {
|
|
var timestamp = Date.now();
|
|
var timeshift = localStorage.getItem('timeshift') + localStorage.getItem('timeshift_scope');
|
|
var time_machine = localStorage.getItem('time_machine');
|
|
var sorts = localStorage.getItem('sorts');
|
|
var scope = localStorage.getItem('scope');
|
|
var filter = localStorage.getItem('filter');
|
|
var variables = { uuid: uuid, sorts: sorts, app: app, filter: filter, time_machine: time_machine, timeshift: timeshift, timestamp: timestamp, scope: scope };
|
|
var lists = []
|
|
$('.appointment_detail[uuid="' + uuid + '"]').find('.appointment_list').each(function(i,v) {
|
|
if ($(v).is(':visible')) {
|
|
lists.push($(v).attr('list'));
|
|
}
|
|
});
|
|
$.ajax({
|
|
url: '/manager/appointment_details',
|
|
type: 'GET',
|
|
data: variables,
|
|
success: function(response) {
|
|
var selector = '.appointment_detail[uuid="' + uuid + '"][app=\"' + app + '\"]';
|
|
if ($(selector).length > 0) {
|
|
$(selector).html($(response).find(selector).html());
|
|
}
|
|
else {
|
|
$('.detail_area[app="' + app + '"]').append($(response).find(selector).clone());
|
|
}
|
|
appointment_chron();
|
|
var q = $('.appointment_detail[app="' + app + '"]').length;
|
|
$('.detail_quantity[app="' + app + '"]').text(q);
|
|
$.each(lists, function(i,v) {
|
|
$('.appointment_detail[uuid="' + uuid + '"]').find('.appointment_list[list="' + v + '"]').show();
|
|
});
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function appointmentDetailsUpdater(app) {
|
|
|
|
var updates = {};
|
|
var selector1 = '.detail_area';
|
|
if (app) {
|
|
selector1 = '.detail_area[app="' + app + '"]';
|
|
}
|
|
$(selector1).each(function(n,ve) {
|
|
var dapp = $(ve).attr('app');
|
|
if ($('.wind[app="' + dapp + '"]').length > 0) {
|
|
updates[dapp] = {};
|
|
updates[dapp]['details'] = [];
|
|
var data = $('.detail_json[app="' + dapp + '"]').text() || {};
|
|
updates[dapp]['data'] = JSON.parse(data);
|
|
$.ajax({
|
|
url: '/manager/appointment_details',
|
|
type: 'GET',
|
|
data: updates[dapp]['data'],
|
|
success: function(response) {
|
|
var results = $(response).find('.appointment_detail[app="' + dapp + '"]');
|
|
|
|
results.each(function(i,v) {
|
|
var uuid = $(v).attr('uuid');
|
|
var last_update = $(v).attr('last_update');
|
|
var selector = '.appointment_detail[app="' + dapp + '"][uuid="' + uuid + '"]';
|
|
var vn = $(selector);
|
|
if (vn.length > 0 && vn.is(':visible')) {
|
|
if ($(v).attr('last_update') > vn.attr('last_update')) {
|
|
vn.replaceWith($(v).clone());
|
|
}
|
|
}
|
|
else {
|
|
$('.detail_area[app="' + dapp + '"]').append($(v).clone());
|
|
}
|
|
var q = results.length;
|
|
$('.detail_quantity[app="' + dapp + '"]').text(q);
|
|
});
|
|
}
|
|
});
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.notespace', function() {
|
|
var text = $(this).html();
|
|
text = text.replaceAll('<br>', "\n");
|
|
|
|
var notes = $(this).closest('.appointment').find('.notes');
|
|
|
|
notes.val(text);
|
|
|
|
|
|
});
|
|
|
|
$(document).on('click', '.notes_toggle', function() {
|
|
var toggle = $(this);
|
|
var timestamp = Date.now();
|
|
var app = toggle.attr('app');
|
|
var app_timestamp = toggle.attr('timestamp');
|
|
var server_time = toggle.attr('server_time');
|
|
var appointment = toggle.closest('.appointment_detail');
|
|
var notespace = appointment.find('.notespace');
|
|
if (notespace.html() == '') {
|
|
$.ajax({
|
|
url: '/manager/note_retriever',
|
|
type: 'GET',
|
|
data: { app_timestamp: app_timestamp, timestamp: timestamp, app: app, server_time: server_time },
|
|
success: function(response) {
|
|
notespace.html(response.notes).show();
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
notespace.html('');
|
|
notespace.hide();
|
|
}
|
|
});
|
|
|
|
|
|
$(document).on('click', '.leave', function() {
|
|
leave();
|
|
});
|
|
function leave() {
|
|
var d = JSON.stringify(localStorage);
|
|
jpStop();
|
|
websocketStop();
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/leave',
|
|
type: 'POST',
|
|
data: { timestamp: timestamp, debriefer: d },
|
|
success: function(response) {
|
|
localStorage.clear();
|
|
// $('body').replaceWith(response);
|
|
location.reload();
|
|
},
|
|
error: function(err) { console.log('Error', err); }
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '#lock_session', function() {
|
|
$.ajax({
|
|
url: '/manager/lock_session',
|
|
type: 'POST',
|
|
data: { },
|
|
success: function() {
|
|
|
|
}
|
|
|
|
});
|
|
});
|
|
|
|
$(document).on('click', '#alert_cancel', function() {
|
|
$('#alert_message').text('');
|
|
$('#alert').html('');
|
|
$('#alert').hide();
|
|
$('#alert').attr('hidden', 'yes');
|
|
});
|
|
|
|
$(document).on('click','.enabler', function() {
|
|
var strawbeery = $(this);
|
|
var appointment = strawbeery.closest('.appointment');
|
|
var app = appointment.attr('app');
|
|
var timestamp = Date.now();
|
|
var setting = strawbeery.attr('type') || 'notification';
|
|
var status = strawbeery.attr('status');
|
|
var on_colour = strawbeery.attr('on_colour');
|
|
var off_colour = strawbeery.attr('off_colour');
|
|
if (status == 'on') {
|
|
strawbeery.css({ 'background-color': off_colour });
|
|
status = 'off';
|
|
}
|
|
else {
|
|
strawbeery.css({ 'background-color': on_colour });
|
|
status = 'on';
|
|
}
|
|
|
|
$.ajax({
|
|
url: '/manager/configure',
|
|
type: 'POST',
|
|
data: { app: app, timestamp: timestamp, setting: setting, value: status, source: 'panel' },
|
|
success: function(response) {
|
|
centreViewWriter(response)
|
|
}
|
|
});
|
|
});
|
|
|
|
$(document).on('click','.remote_manager',function() {
|
|
var m = $(this);
|
|
var ip = m.attr('id');
|
|
var mac = m.attr('mac');
|
|
var manager = m.attr('manager');
|
|
var timestamp = Date.now();
|
|
|
|
if (manager) {
|
|
$('<iframe>', {
|
|
src: manager,
|
|
id: 'browser_' + timestamp,
|
|
frameborder: 0,
|
|
scrolling: 'yes',
|
|
style: "position:fixed;bottom:0;width:40%;height:40%"
|
|
}).appendTo('#remote_managers');
|
|
}
|
|
});
|
|
|
|
function cacheSet(params,data) {
|
|
var jdata = JSON.stringify(data);
|
|
$.ajax({
|
|
url: '/manager/cache_set',
|
|
type: 'POST',
|
|
data: {
|
|
app: params['app'],
|
|
context: params['context'],
|
|
subcontext: params['subcontext'],
|
|
timestamp: params['timestamp'],
|
|
data: jdata
|
|
},
|
|
success: function(response) {}
|
|
});
|
|
}
|
|
|
|
async function cacheGet(params) {
|
|
|
|
$.ajax({
|
|
url: '/manager/cache_get',
|
|
type: 'GET',
|
|
data: {
|
|
app: params['app'],
|
|
context: params['context'],
|
|
subcontext: params['subcontext'],
|
|
timestamp: params['timestamp'],
|
|
},
|
|
success: function(response) {
|
|
console.log(response);
|
|
return response;
|
|
}
|
|
});
|
|
}
|
|
|
|
function cacheDelete(params) {
|
|
var timestamp = Date.now();
|
|
$.ajax({
|
|
url: '/manager/cache_delete',
|
|
type: 'POST',
|
|
data: {
|
|
app: params['app'],
|
|
context: params['context'],
|
|
subcontext: params['subcontext'],
|
|
timestamp: timestamp,
|
|
},
|
|
success: function(response) {}
|
|
});
|
|
}
|
|
|
|
$(document).on('keydown', function(e) {
|
|
|
|
if (e.keyCode == 18 && e.ctrlKey == true) {
|
|
startMenuToggle();
|
|
}
|
|
/*
|
|
if (e.keyCode == 83 && e.ctrlKey == true && e.altKey == true) { // ctrl+alt+s
|
|
configureToggle();
|
|
}
|
|
if (e.keyCode == 77 && e.ctrlKey == true && e.altKey == true) { // ctrl+alt+m
|
|
musicToggle();
|
|
}
|
|
*/
|
|
}); |