// Popup messages //----------------------------------------------------------------- jQuery(document).ready(function(){ "use strict"; AIRSUPPLY_STORAGE['message_callback'] = null; AIRSUPPLY_STORAGE['message_timeout'] = 5000; jQuery('body').on('click', '#airsupply_modal_bg,.airsupply_message .airsupply_message_close', function (e) { "use strict"; airsupply_message_destroy(); if (AIRSUPPLY_STORAGE['message_callback']) { AIRSUPPLY_STORAGE['message_callback'](0); AIRSUPPLY_STORAGE['message_callback'] = null; } e.preventDefault(); return false; }); }); // Warning function airsupply_message_warning(msg) { "use strict"; var hdr = arguments[1] ? arguments[1] : ''; var icon = arguments[2] ? arguments[2] : 'cancel'; var delay = arguments[3] ? arguments[3] : AIRSUPPLY_STORAGE['message_timeout']; return airsupply_message({ msg: msg, hdr: hdr, icon: icon, type: 'warning', delay: delay, buttons: [], callback: null }); } // Success function airsupply_message_success(msg) { "use strict"; var hdr = arguments[1] ? arguments[1] : ''; var icon = arguments[2] ? arguments[2] : 'check'; var delay = arguments[3] ? arguments[3] : AIRSUPPLY_STORAGE['message_timeout']; return airsupply_message({ msg: msg, hdr: hdr, icon: icon, type: 'success', delay: delay, buttons: [], callback: null }); } // Info function airsupply_message_info(msg) { "use strict"; var hdr = arguments[1] ? arguments[1] : ''; var icon = arguments[2] ? arguments[2] : 'info'; var delay = arguments[3] ? arguments[3] : AIRSUPPLY_STORAGE['message_timeout']; return airsupply_message({ msg: msg, hdr: hdr, icon: icon, type: 'info', delay: delay, buttons: [], callback: null }); } // Regular function airsupply_message_regular(msg) { "use strict"; var hdr = arguments[1] ? arguments[1] : ''; var icon = arguments[2] ? arguments[2] : 'quote'; var delay = arguments[3] ? arguments[3] : AIRSUPPLY_STORAGE['message_timeout']; return airsupply_message({ msg: msg, hdr: hdr, icon: icon, type: 'regular', delay: delay, buttons: [], callback: null }); } // Confirm dialog function airsupply_message_confirm(msg) { "use strict"; var hdr = arguments[1] ? arguments[1] : ''; var callback = arguments[2] ? arguments[2] : null; return airsupply_message({ msg: msg, hdr: hdr, icon: 'help', type: 'regular', delay: 0, buttons: ['Yes', 'No'], callback: callback }); } // Modal dialog function airsupply_message_dialog(content) { "use strict"; var hdr = arguments[1] ? arguments[1] : ''; var init = arguments[2] ? arguments[2] : null; var callback = arguments[3] ? arguments[3] : null; return airsupply_message({ msg: content, hdr: hdr, icon: '', type: 'regular', delay: 0, buttons: ['Apply', 'Cancel'], init: init, callback: callback }); } // General message window function airsupply_message(opt) { "use strict"; var msg = opt.msg != undefined ? opt.msg : ''; var hdr = opt.hdr != undefined ? opt.hdr : ''; var icon = opt.icon != undefined ? opt.icon : ''; var type = opt.type != undefined ? opt.type : 'regular'; var delay = opt.delay != undefined ? opt.delay : AIRSUPPLY_STORAGE['message_timeout']; var buttons = opt.buttons != undefined ? opt.buttons : []; var init = opt.init != undefined ? opt.init : null; var callback = opt.callback != undefined ? opt.callback : null; // Modal bg jQuery('#airsupply_modal_bg').remove(); jQuery('body').append('
'); jQuery('#airsupply_modal_bg').fadeIn(); // Popup window jQuery('.airsupply_message').remove(); var html = ' '; // Add popup to body jQuery('body').append(html); var popup = jQuery('body .airsupply_message').eq(0); // Prepare callback on buttons click if (callback != null) { AIRSUPPLY_STORAGE['message_callback'] = callback; jQuery('.airsupply_message_button').on('click', function(e) { "use strict"; var btn = jQuery(this).index(); callback(btn+1, popup); AIRSUPPLY_STORAGE['message_callback'] = null; airsupply_message_destroy(); }); } // Call init function if (init != null) init(popup); // Show (animate) popup var top = jQuery(window).scrollTop(); jQuery('body .airsupply_message').animate({top: top+Math.round((jQuery(window).height()-jQuery('.airsupply_message').height())/2), opacity: 1}, {complete: function () { // Call init function //if (init != null) init(popup); }}); // Delayed destroy (if need) if (delay > 0) { setTimeout(function() { airsupply_message_destroy(); }, delay); } return popup; } // Destroy message window function airsupply_message_destroy() { "use strict"; var top = jQuery(window).scrollTop(); jQuery('#airsupply_modal_bg').fadeOut(); jQuery('.airsupply_message').animate({top: top-jQuery('.airsupply_message').height(), opacity: 0}); setTimeout(function() { jQuery('#airsupply_modal_bg').remove(); jQuery('.airsupply_message').remove(); }, 500); }