var Aviation_Industry_Whizzie = (function($){ var t; var current_step = ''; var step_pointer = ''; // callbacks from form button clicks. var callbacks = { aviation_industry_do_next_step: function( btn ) { aviation_industry_do_next_step( btn ); }, aviation_industry_install_widgets: function( btn ) { var widgets = new aviation_industry_WidgetManager(); widgets.init( btn ); }, aviation_industry_install_content: function(btn){ var content = new aviation_industry_ContentManager(); content.init( btn ); } }; function aviation_industry_window_loaded() { var maxHeight = 0; $( '.whizzie-menu li.step' ).each( function( index ) { $(this).attr( 'data-height', $(this).innerHeight() ); if( $(this).innerHeight() > maxHeight ) { maxHeight = $(this).innerHeight(); } }); $( '.whizzie-menu li .detail' ).each( function( index ) { $(this).attr( 'data-height', $(this).innerHeight() ); $(this).addClass( 'scale-down' ); }); $( '.whizzie-menu li.step' ).css( 'height', '100%' ); $( '.whizzie-menu li.step:first-child' ).addClass( 'active-step' ); $( '.whizzie-nav li:first-child' ).addClass( 'active-step' ); $( '.whizzie-wrap' ).addClass( 'loaded' ); // init button clicks: $('.do-it').on( 'click', function(e) { e.preventDefault(); step_pointer = $(this).data('step'); current_step = $('.step-' + $(this).data('step')); $('.whizzie-wrap').addClass( 'spinning' ); if($(this).data('callback') && typeof callbacks[$(this).data('callback')] != 'undefined'){ // we have to process a callback before continue with form submission callbacks[$(this).data('callback')](this); return false; } else { aviation_industry_loading_content(); return true; } }); $('.button-upload').on( 'click', function(e) { e.preventDefault(); renderMediaUploader(); }); $('.theme-presets a').on( 'click', function(e) { e.preventDefault(); var $ul = $(this).parents('ul').first(); $ul.find('.current').removeClass('current'); var $li = $(this).parents('li').first(); $li.addClass('current'); var newcolor = $(this).data('style'); $('#new_style').val(newcolor); return false; }); } function aviation_industry_loading_content(){} function aviation_industry_do_next_step( btn ) { current_step.removeClass( 'active-step' ); $( '.nav-step-' + step_pointer ).removeClass( 'active-step' ); current_step.addClass( 'done-step' ); $( '.nav-step-' + step_pointer ).addClass( 'done-step' ); current_step.fadeOut( 500, function() { current_step = current_step.next(); step_pointer = current_step.data( 'step' ); current_step.fadeIn(); current_step.addClass( 'active-step' ); $( '.nav-step-' + step_pointer ).addClass( 'active-step' ); $('.whizzie-wrap').removeClass( 'spinning' ); }); } function aviation_industry_WidgetManager() { function aviation_industry_import_widgets(){ jQuery.post( whizzie_params.ajaxurl, { action: 'aviation_industry_setup_widgets', wpnonce: whizzie_params.wpnonce }, complete ); } return { init: function( btn ) { complete = function() { aviation_industry_do_next_step(); } aviation_industry_import_widgets(); } } } function aviation_industry_ContentManager(){ var complete; var items_completed = 0; var current_item = ''; var $current_node; var current_item_hash = ''; function ajax_callback(response) { if(typeof response == 'object' && typeof response.message != 'undefined'){ $current_node.find('span').text(response.message); if(typeof response.url != 'undefined'){ // we have an ajax url action to perform. if(response.hash == current_item_hash){ $current_node.find('span').text("failed"); aviation_industry_find_next(); }else { current_item_hash = response.hash; jQuery.post(response.url, response, ajax_callback).fail(ajax_callback); // recuurrssionnnnn } }else if(typeof response.done != 'undefined'){ // finished processing this plugin, move onto next aviation_industry_find_next(); }else{ // error processing this plugin aviation_industry_find_next(); } }else{ // error - try again with next plugin $current_node.find('span').text("ajax error"); aviation_industry_find_next(); } } return { init: function(btn){ $('.envato-setup-pages').addClass('installing'); $('.envato-setup-pages').find('input').prop("disabled", true); complete = function(){ aviation_industry_loading_content(); window.location.href=btn.href; }; aviation_industry_find_next(); } } } return { init: function(){ t = this; $(aviation_industry_window_loaded); }, callback: function(func){ console.log(func); console.log(this); } } })(jQuery); Aviation_Industry_Whizzie.init();