(function($) {
var callbacks = {
install_plugins: function(data, beforestart, callback) {
var plugins = $('').PluginManager();
plugins.init(beforestart, callback);
},
import_data: function(data, beforestart, callback) {
$('#bs_import_form').submit();
},
save_theme_settings: function(data, beforestart, callback) {
$.ajax({
type: "POST",
url: ajaxurl,
data: {
action: "bs_save_theme_settings",
logo_url: $('#new_logo_url').val(),
pr_color: $('#pr_accent_color').val()
},
beforeSend: function() {
if (typeof beforestart == 'function') {
beforestart();
}
$('#setup-next').addClass('disabled');
$('#setup-back').addClass('disabled');
}
}).done(function(re) {
if (typeof callback == 'function') {
callback();
}
goToStep(5, function() {
$('#setup-next').removeClass('disabled');
$('#setup-back').removeClass('disabled');
$('#setup-next').data('step', 5);
$('#setup-next').attr('data-step', 5);
});
});
}
};
var afterReplace = {
import_functions: function() {
$("select.image-picker").imagepicker({
show_label: true,
initialized: function(e) {
$('.image_picker_selector').imagePreview();
},
selected: function(select, picker, event) {
}
})
form_installer();
check_selected_data();
radio_list();
},
logo_design: function() {
var $color_el = $('.cotton-colorpicker');
$color_el.wpColorPicker({
change: function(event, ui) {
pickColor($(this).wpColorPicker('color'));
},
clear: function() {
pickColor('');
}
});
$('.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;
});
}
};
$.fn.replaceWithCallback = function(replace, callback) {
var ret = $.fn.replaceWith.call(this, replace); // Call replaceWith
if (typeof callback === 'function') {
callback.call(ret); // Call your callback
}
return ret; // For chaining
};
function pickColor(color) {
$('#pr_accent_color').val(color);
}
function renderMediaUploader() {
'use strict';
var file_frame, attachment;
if (undefined !== file_frame) {
file_frame.open();
return;
}
file_frame = wp.media.frames.file_frame = wp.media({
title: 'Upload Logo', //jQuery( this ).data( 'uploader_title' ),
button: {
text: 'Select Logo' //jQuery( this ).data( 'uploader_button_text' )
},
multiple: false // Set to true to allow multiple files to be selected
});
// When an image is selected, run a callback.
file_frame.on('select', function() {
// We set multiple to false so only get one image from the uploader
attachment = file_frame.state().get('selection').first().toJSON();
jQuery('.site-logo').attr('src', attachment.url);
jQuery('#new_logo_id').val(attachment.id);
jQuery('#new_logo_url').val(attachment.url);
// Do something with attachment.id and/or attachment.url here
});
// Now display the actual file_frame
file_frame.open();
}
function active_step() {
var $curr_step = $('#setup-next').data('step');
$('.content-guide').find('li.active').removeClass('active');
$('.content-guide').find('li').each(function() {
if ($(this).data('step') == $curr_step) {
$(this).addClass('active');
}
})
}
function ajax_handle(demo, action, loader, next) {
$.ajax({
url: ajaxurl,
type: 'POST',
data: {
action: action,
demo: demo,
},
beforeSend: function() {
$(loader).removeClass('click');
$(loader).addClass('loading');
$('#setup-next').addClass('disabled');
$('#setup-back').addClass('disabled');
},
success: function(resp) {
$(loader).removeClass('loading');
$(loader).addClass('done');
$(loader).addClass('click');
if (typeof next === undefined) {
console.log('tyes');
}
if ('function' === typeof next) {
next(resp);
}
},
}).done(function(re) {
if ($('.bs_demo_content').find('li.loading').length === 0) {
$('#bs_import_form').removeClass('disabled');
$('#setup-next').removeClass('disabled');
$('.bs_demo_content li').removeClass('done');
$('.bs_demo_content li').removeClass('click');
check_selected_data();
goToStep(4, function() {
$('#setup-next').removeClass('disabled');
$('#setup-back').removeClass('disabled');
$('#setup-next').data('step', 4);
$('#setup-next').attr('data-step', 4);
});
}
console.log(re);
})
}
function form_installer() {
$('#bs_import_form').submit(function(e) {
var data = [],
demo = $('select[name="bs_demo_file"]').val(),
ajaxSlug = 'bs',
dataSize, selc, el, import_log,
current = 0;
$('.bs_demo_content').find('li').each(function() {
if ($(this).hasClass('click')) {
data.push($(this).data('value'));
}
})
$('#bs_import_form').addClass('disabled');
$('#setup-next').addClass('disabled');
dataSize = data.length;
if (dataSize > 0) {
selc = data[dataSize - dataSize];
el = $('.bs_demo_content').find('[data-value="' + selc + '"]');
ajax_handle(demo, ajaxSlug + '_' + selc, el, function(resp2) {
current = current + 1;
import_log += resp2 + "\n";
if (dataSize >= 2) {
selc = data[current];
el = $('.bs_demo_content').find('[data-value="' + selc + '"]');;
ajax_handle(demo, ajaxSlug + '_' + selc, el, function(resp3) {
current = current + 1;
import_log += resp3 + "\n";
if (dataSize >= 3) {
selc = data[current];
el = $('.bs_demo_content').find('[data-value="' + selc + '"]');
ajax_handle(demo, ajaxSlug + '_' + selc, el, function(resp4) {
current = current + 1;
import_log += resp4 + "\n";
if (dataSize >= 4) {
selc = data[current];
el = $('.bs_demo_content').find('[data-value="' + selc + '"]');
ajax_handle(demo, ajaxSlug + '_' + selc, el, function(resp5) {
current = current + 1;
import_log += resp5 + "\n";
if (dataSize >= 5) {
selc = data[current];
el = $('.bs_demo_content').find('[data-value="' + selc + '"]');
ajax_handle(demo, ajaxSlug + '_' + selc, el, function(resp6) {
import_log += resp6 + "\n";
});
}
})
}
})
}
})
}
})
} else {
}
e.preventDefault();
});
}
function slideLeftPanel() {
}
function bodyBG() {
$('#wpwrap').animate({
backgroundColor: 'rgba(0, 0, 0, 0.85)'
}, 800);
}
function check_selected_data() {
if ($('.bs_demo_content').find('li.click').length === 0) {
$('#setup-next').addClass('disabled');
} else {
$('#setup-next').removeClass('disabled');
}
}
function radio_list() {
$('.radio-list').find('li').each(function() {
$(this).on('click', function() {
var that = $(this);
if (!$('#bs_import_form').hasClass('disabled')) {
if (that.hasClass('disable')) {
that.removeClass('click');
} else {
that.toggleClass('click');
}
}
check_selected_data();
})
})
}
function back() {
$('#setup-back').off('click').on('click', function(e) {
e.preventDefault();
var step = $('#setup-next').data('step');
goToStep(step - 1, function() {
$('#setup-next').data('step', step - 1);
$('#setup-next').attr('data-step', step - 1);
$('#setup-next').removeClass('disabled');
});
});
}
function footer_buttons() {
if ($('#setup-next').data('step') == '1') {
$('#setup-back').css('display', 'none');
} else {
$('#setup-back').css('display', 'block')
}
if ($('#setup-next').data('step') == '6') {
$('#setup-next').css('display', 'none');
} else {
$('#setup-next').css('display', 'block');
}
}
function goToStep(step, callback) {
$.ajax({
type: "POST",
url: ajaxurl,
data: {
action: "bs_setup_next",
nextstep: step
},
beforeSend: function() {
$('#setup-wizard').addClass('is-active');
}
}).done(function(re) {
var prased = $.parseHTML(re);
$('.setup_content').replaceWithCallback(re, function() {
if ($('.setup_content').data('after') != '') {
var after = afterReplace[String($('.setup_content').data('after'))];
after();
}
});
$('#setup-wizard').removeClass('is-active');
if (typeof callback == 'function') {
callback();
}
active_step();
footer_buttons();
});
}
function next() {
$('#setup-next').on('click', function(e) {
e.preventDefault();
var step = $(this).data('step');
if ($('.setup_content').data('action') != '') {
var fn = callbacks[(String($('.setup_content').data('action')))],
demo = $('select[name="bs_demo_file"]').val();
return fn(demo, function() {
}, function() {
$('.setup_content').data('action', '');
$('.setup_content').attr('data-action', '');
});
} else {
$(this).data('step', step + 1);
$(this).attr('data-step', step + 1);
}
goToStep(step + 1);
});
}
function exitORskip() {
$('#setup-exit').on('click', function() {
$.confirm({
title: bs_vars.popup_title,
content: bs_vars.popup_content,
buttons: {
exit: {
text: bs_vars.popup_exit,
btnClass: 'btn-blue',
keys: ['enter', 'shift'],
action: function() {
return window.location.href = bs_vars.dashboard_url;
}
},
skip: {
text: bs_vars.popup_skip,
btnClass: 'btn-orange',
action: function() {
var $step = $('#setup-next').data('step');
return goToStep($step + 1, function() {
$('#setup-next').data('step', $step + 1);
$('#setup-next').attr('data-step', $step + 1);
});
}
},
cancel: function() {
}
}
});
})
}
$.fn.imagePreview = function() {
/* CONFIG */
xOffset = 30;
yOffset = 30;
$(this).find('img').each(function() {
var that = $(this);
that.hover(function(e) {
this.t = this.title;
this.title = "";
var c = (this.t != "") ? "
" + this.t : "";
$("body").append("
" + c + "