');
$p.prevAll(".berocket_image_value").val(attachment.url).trigger('change');
}).open();
});
$(document).on('click', '.br_framework_settings .berocket_remove_image',function(event) {
event.preventDefault();
$(this).prevAll(".berocket_selected_image").html("");
$(this).prevAll(".berocket_image_value").val("").trigger('change');
});
var berocket_fa_select_for = $('.berocket_fa_dark');
$(document).on('click', '.berocket_select_fontawesome .berocket_select_fa',function(event) {
event.preventDefault();
berocket_fa_select_for = $(this);
$('.berocket_fa_dark').not(':first').remove();
var $html = $('');
$html.append($('.berocket_fa_dark'));
var $html2 = $('');
$html2.append($html);
$('body').children('.br_fontawesome_body').remove();
$('body').append($html2);
$('.berocket_fa_dark').show();
});
$(document).on('hover', '.berocket_select_fontawesome .berocket_fa_hover', function() {
var window_width = $(window).width();
window_width = window_width / 2;
var $this = $(this).parents('.berocket_fa_icon');
if( $this.offset().left < window_width ) {
$this.find('.berocket_fa_preview').css({left: '0', right: 'initial'});
$this.find('.berocket_fa_preview span').appendTo($this.find('.berocket_fa_preview'));
} else {
$this.find('.berocket_fa_preview').css({left: 'initial', right: '0'});
$this.find('.berocket_fa_preview .fa').appendTo($this.find('.berocket_fa_preview'));
}
});
$(document).on('click', '.berocket_select_fontawesome .berocket_fa_hover',function(event) {
event.preventDefault();
var value = $(this).parents('.berocket_fa_icon').first().find('.berocket_fa_preview span').text();
$(berocket_fa_select_for).parents('.berocket_select_fontawesome').find('.berocket_selected_fa').html('');
$(berocket_fa_select_for).parents('.berocket_select_fontawesome').find('.berocket_fa_value').val(value).trigger('change');
$('.berocket_fa_dark').hide();
});
$(document).on('click', '.berocket_select_fontawesome .berocket_remove_fa',function(event) {
event.preventDefault();
$(this).parents('.berocket_select_fontawesome').find('.berocket_selected_fa').html('');
$(this).parents('.berocket_select_fontawesome').find('.berocket_fa_value').val('').trigger('change');
});
$(document).on('keyup', '.berocket_select_fontawesome .berocket_fa_search', function() {
var $parent = $(this).parents('.berocket_select_fontawesome').first();
var value = $(this).val();
value = value.replace(/\s+/g, '');
value = value.toLowerCase();
if( value.length >=1 ) {
$parent.find('.berocket_fa_icon').hide();
$parent.find('.berocket_fa_preview span:contains("'+value+'")').parents('.berocket_fa_icon').show();
} else {
$parent.find('.berocket_fa_icon').show();
}
});
$(document).on('click', '.berocket_select_fontawesome .berocket_fa_dark',function(event) {
event.preventDefault();
$(this).hide();
});
$(document).on('click', '.berocket_select_fontawesome .berocket_fa_dark .berocket_fa_close',function(event) {
event.preventDefault();
$(this).parents('.berocket_fa_dark').hide();
});
$(document).on('click', '.berocket_select_fontawesome .berocket_fa_popup',function(event) {
event.preventDefault();
event.stopPropagation();
});
if( location.hash ) {
$('.br_framework_settings ul.side a[href="'+location.hash+'"]').trigger('click');
}
if( typeof wp.codeEditor != 'undefined' && typeof wp.codeEditor.initialize != 'undefined' ) {
var css_editor = $('.br_framework_settings .css_editor');
css_editor.each(function() {
wp.codeEditor.initialize(this, {"codeEditor":{"codemirror":{"indentUnit":4,"indentWithTabs":true,"inputStyle":"contenteditable","lineNumbers":true,"lineWrapping":true,"styleActiveLine":true,"continueComments":true,"extraKeys":{"Ctrl-Space":"autocomplete","Ctrl-\/":"toggleComment","Cmd-\/":"toggleComment","Alt-F":"findPersistent"},"direction":"ltr","gutters":[],"mode":"css"},"csslint":{"errors":true,"box-model":true,"display-property-grouping":true,"duplicate-properties":true,"known-properties":true,"outline-none":true},"jshint":{"boss":true,"curly":true,"eqeqeq":true,"eqnull":true,"es3":true,"expr":true,"immed":true,"noarg":true,"nonbsp":true,"onevar":true,"quotmark":"single","trailing":true,"undef":true,"unused":true,"browser":true,"globals":{"_":false,"Backbone":false,"jQuery":false,"JSON":false,"wp":false}},"htmlhint":{"tagname-lowercase":true,"attr-lowercase":true,"attr-value-double-quotes":true,"doctype-first":false,"tag-pair":true,"spec-char-escape":true,"id-unique":true,"src-not-empty":true,"attr-no-duplication":true,"alt-require":true,"space-tab-mixed-disabled":"tab","attr-unsafe-chars":true}}});
})
var js_editor = $('.br_framework_settings .js_editor');
js_editor.each(function() {
wp.codeEditor.initialize(this, {"codeEditor":{"codemirror":{"indentUnit":4,"indentWithTabs":true,"inputStyle":"contenteditable","lineNumbers":true,"lineWrapping":true,"styleActiveLine":true,"continueComments":true,"extraKeys":{"Ctrl-Space":"autocomplete","Ctrl-\/":"toggleComment","Cmd-\/":"toggleComment","Alt-F":"findPersistent"},"direction":"ltr","gutters":[],"mode":"javascript"},"csslint":{"errors":true,"box-model":true,"display-property-grouping":true,"duplicate-properties":true,"known-properties":true,"outline-none":true},"jshint":{"boss":true,"curly":true,"eqeqeq":true,"eqnull":true,"es3":true,"expr":true,"immed":true,"noarg":true,"nonbsp":true,"onevar":true,"quotmark":"single","trailing":true,"undef":true,"unused":true,"browser":true,"globals":{"_":false,"Backbone":false,"jQuery":false,"JSON":false,"wp":false}},"htmlhint":{"tagname-lowercase":true,"attr-lowercase":true,"attr-value-double-quotes":true,"doctype-first":false,"tag-pair":true,"spec-char-escape":true,"id-unique":true,"src-not-empty":true,"attr-no-duplication":true,"alt-require":true,"space-tab-mixed-disabled":"tab","attr-unsafe-chars":true}}});
});
}
var berocket_save_button_side_timeout;
function berocket_save_button_side() {
var $button = $('.berocket_framework_sidebar_save_button .button-primary.button');
if( $button.length ) {
clearTimeout(berocket_save_button_side_timeout);
berocket_save_button_side_timeout = setTimeout(function() {
/*Settings to set*/
var bottom = '0px';
var position = 'fixed';
/*Get parameters*/
var $side = $button.parents('ul.side').first();
var sideTop = $side.offset().top;
var sideHeight = $side.outerHeight();
var windowScroll = jQuery(window).scrollTop();
var windowHeight = jQuery(window).height();
/*Calculate parameters*/
var sideBottom = sideTop + sideHeight;
var windowBottom = windowScroll + windowHeight;
var positionBottom = sideBottom - windowBottom;
if( positionBottom > (sideHeight - 50) ) {
bottom = '-100px';
}
if( positionBottom < 0 ) {
position = 'absolute';
}
if( $('.berocket_framework_default_save_button:visible').offset().top > windowBottom ) {
$button.css('display', 'block');
} else {
bottom = '-100px';
if( position == 'absolute' ) {
$button.css('display', 'none');
}
}
$button
.css('width', $button.parent().outerWidth())
.css('position', position)
.css('bottom', bottom);
}, 10);
}
}
$('.berocket_framework_sidebar_save_button .button-primary.button').css('display', 'block');
berocket_save_button_side();
$(document).scroll(berocket_save_button_side);
$(window).resize(berocket_save_button_side);
$(document).on('click', '.berocket_framework_sidebar_save_button .button-primary.button', function(event) {
event.preventDefault();
$(this).parents('.br_framework_settings').find('.br_framework_submit_form').submit();
});
});
})(jQuery);
/* PRODUCTS SELECTOR */
(function ($){
$(document).ready( function () {
var last_search = '';
var delay_search = false;
var ajax_request = false;
var $current_search = $('');
$(document).on('click', '.berocket_products_search', function() {
$(this).find('.berocket_search_input').focus();
});
$(document).on('dblclick', '.berocket_products_search', function() {
$(this).find('.berocket_search_input').select();
});
$(document).on('click', '.berocket_products_search .button', function(event) {
event.stopPropagation();
var $search_block = $(this);
var $search_box = $search_block.parents('.berocket_search_box').first();
$(this).remove();
if( $search_box.is('.single_product') && $search_box.find('.berocket_product_selected').length == 0 ) {
$search_box.find('.berocket_product_search').show();
}
});
$(document).on('click', '.berocket_search_box', function(event) {
event.stopPropagation();
var $current = $(this).find('.berocket_search_result');
if( $current.length == 0 ) {
remove_search_result();
}
});
$(document).on('keyup focus', '.berocket_search_input', function(event) {
if( delay_search ) {
clearTimeout(delay_search);
}
var $search_block = $(this);
var $search_box = $search_block.parents('.berocket_search_box').first();
if( $search_box.is('.single_product') && $search_box.find('.berocket_product_selected').length > 0 ) {
return false;
}
$current_search = $(this).parents('.berocket_search_box').first();
delay_search = setTimeout( function () {
if( $search_block.val().length >= 3 && $search_block.val() != last_search ) {
$('.berocket_search_result').remove();
last_search = $search_block.val();
var exists = [];
$search_box.find('.berocket_product_selected input').each(function( i, o ) {
exists.push($(o).val());
});
var data = {
action: $search_block.data('action'),
term: $search_block.val(),
security: berocket_framework_admin.security,
is_berocket:true
};
stop_search();
$search_box.find('.berocket_product_search').append($(''));
ajax_request = $.get(ajaxurl, data, function (data) {
$current_search = $search_box;
var count = 0;
var html = '';
$.each(data, function(index, value) {
if( $.inArray(index, exists) == -1 ) {
html += '- '+value+'
';
count++;
}
});
html += '
';
if( count > 0 ) {
$result_block = $(html);
$result_block = $('body').append($result_block);
$('.berocket_search_result').css('position', 'absolute')
.css('top', $search_box.offset().top+$search_box.height())
.css('left', $search_box.offset().left)
.outerWidth($search_box.outerWidth());
}
$('.berocket_product_search .berocket_loads').remove();
}, 'json');
} else {
stop_search();
}
}, 500 );
});
$(document).on('click', '.berocket_search_result li', function(event) {
var html = ' '+$(this).text()+'';
$current_search.find('.berocket_product_search').last().before($(html));
$current_search.find('.berocket_search_input').val('').trigger('change');
if( $current_search.is('.single_product') ) {
$current_search.find('.berocket_product_search').hide();
}
remove_search_result();
});
$(document).on('click', function(event) {
remove_search_result();
stop_search();
});
function remove_search_result() {
$('.berocket_search_result').remove();
last_search = '';
$current_search = $('');
}
function stop_search() {
if ( ajax_request !== false ) {
ajax_request.abort();
}
$('.berocket_product_search .berocket_loads').remove();
}
});
})(jQuery);
//SHOW MESSAGE FOR BLOCK
var berocket_block_messages_elements = [];
var berocket_block_messages_element_last = false;
var berocket_block_messages_element_interval = false;
function berocket_blocks_messages(options) {
if( typeof(options) == 'undefined' ) {
do {
var element = berocket_block_messages_elements.shift();
} while (! berocket_display_block_messages(element, berocket_block_messages_elements) && berocket_block_messages_elements.length);
return 'next';
}
if( ! berocket_block_messages_elements.length && berocket_block_messages_element_last == false ) {
berocket_block_messages_elements = options;
berocket_blocks_messages();
berocket_block_messages_element_interval = setInterval(function() {
if( berocket_block_messages_element_last !== false ) {
var $element = jQuery(berocket_block_messages_element_last.selector).first();
var top = parseInt($element.offset().top);
var left = parseInt($element.offset().left);
if( berocket_block_messages_element_last.top != top || berocket_block_messages_element_last.left != left ) {
berocket_display_block_message_reload_last();
}
}
}, 2000);
return true;
} else {
return false;
}
}
function berocket_display_block_messages(element, next_elements) {
if( typeof(element.selector) != 'undefined' && jQuery(element.selector).length ) {
berocket_block_messages_element_last = element;
if( typeof(element.disable_inside) == 'undefined' ) {
element.disable_inside = true;
}
if( typeof(element.execute) == 'function' ) {
element.execute(element, next_elements);
}
var $element = jQuery(element.selector).first();
var top = parseInt($element.offset().top);
var left = parseInt($element.offset().left);
berocket_block_messages_element_last.top = top;
berocket_block_messages_element_last.left = left;
var width = parseInt($element.outerWidth());
var height = parseInt($element.outerHeight());
var left_end = left + width;
var top_end = top + height;
var right_width = (parseInt(jQuery(window).width()) - left_end);
styles = {
top:'top:0;left:0;width:100%;height:'+top+'px;',
bottom:'top:'+top_end+'px;left:0;width:100%;',
left:'top:'+top+'px;left:0;width:'+left+'px;height:'+height+'px;',
right:'top:'+top+'px;left:'+left_end+'px;right:0;height:'+height+'px;',
inside:'top:'+top+'px;left:'+left+'px;width:'+width+'px;height:'+height+'px;'
};
if( top < 40 ) {
styles.top += 'padding:0;';
}
if( jQuery('#wpcontent').length ) {
var bottom_height = parseInt(jQuery('#wpcontent').outerHeight()) - top_end;
styles.bottom += 'height:'+(bottom_height + 40)+'px;';
} else {
styles.bottom += "bottom:0;";
}
if( left < 40 || height < 40 ) {
styles.left += 'padding:0;';
}
if( right_width < 40 || height < 40 ) {
styles.right += 'padding:0;';
}
//Create hide blocks
var html = '';
html += '';
html += '';
html += '';
if( typeof(element.text) == 'undefined' || element.disable_inside ) {
html += '';
}
jQuery('body').append(jQuery(html));
jQuery("html, body").stop().animate({scrollTop:top - 50}, 500, 'swing');
//Button to next and close
html = 'Close';
if( next_elements.length ) {
html += 'Next';
}
if( typeof(element.text) == 'undefined' ) {
jQuery('.berocket_display_block_messages_hide.inside').last().append(jQuery(html));
} else {
berocket_display_tooltip($element, element.text)
jQuery('.berocket_display_tooltip').last().append(jQuery(html));
}
return true;
} else {
return false;
}
}
function berocket_display_block_message_reload_last() {
berocket_display_block_messages_remove();
berocket_display_block_messages(berocket_block_messages_element_last, berocket_block_messages_elements);
}
function berocket_display_tooltip(element, text, additional) {
$element = jQuery(element).first();
if( typeof(additional) != 'object' ) {
additional = {};
}
var top = parseInt($element.offset().top);
var left = parseInt($element.offset().left);
var width = parseInt($element.outerWidth());
var height = parseInt($element.outerHeight());
var left_end = left + width;
var right_width = (parseInt(jQuery(window).width()) - left_end);
if( left > 200 ) {
var position = 'left';
} else if( right_width > 200 ) {
var position = 'right';
} else {
var position = 'element';
}
var style="";
if( position == 'left' || position == 'right' ) {
style += 'top:'+top+'px;';
} else if( position == 'element' ) {
style += 'top:'+(top+40)+'px;';
}
if( position == 'left' ) {
style += 'right:'+(right_width + width + 15)+'px;';
} else if( position == 'right' ) {
style += 'left:'+(left_end + 15)+'px;';
} else if( position == 'element' ) {
style += 'left:'+left+'px;';
}
if( position == 'left' ) {
if( (left - 30) < 500 ) {
style += 'max-width:'+(left - 30)+'px;';
}
} else if( position == 'right' ) {
if( (right_width - 30) < 500 ) {
style += 'max-width:'+(right_width - 30)+'px;';
}
} else if( position == 'element' ) {
style += 'width:'+width+'px;';
}
var classes = 'berocket_display_tooltip position_'+position;
if( typeof(additional.hide_on_click) != 'undefined' && additional.hide_on_click ) {
classes += ' hide_on_click';
}
if( typeof(additional.classes) != 'undefined' ) {
classes += ' '+additional.classes;
}
var html = '';
html += ''+text+'';
html += '';
html += '';
html += '';
html += '
';
jQuery('body').append(jQuery(html));
}
function berocket_display_block_messages_remove() {
if( typeof(berocket_block_messages_element_last.execute_after) == 'function' ) {
berocket_block_messages_element_last.execute_after(berocket_block_messages_element_last, berocket_block_messages_elements);
}
jQuery('.berocket_display_block_messages_hide').remove();
jQuery('.berocket_display_block_messages_close_button').remove();
jQuery('.berocket_display_block_messages_next_button').remove();
jQuery('.berocket_display_tooltip').remove();
}
jQuery(document).on('click', '.berocket_display_block_messages_close_button', function(event) {
event.preventDefault();
berocket_display_block_messages_remove();
berocket_block_messages_element_last = false;
berocket_block_messages_elements = [];
clearInterval(berocket_block_messages_element_interval);
});
jQuery(document).on('click', '.berocket_display_block_messages_next_button', function(event) {
event.preventDefault();
berocket_display_block_messages_remove();
berocket_blocks_messages();
});
jQuery(document).on('click', function() {
jQuery('.berocket_display_tooltip.hide_on_click').remove();
});
//Sortable custom post
(function ($){
$(document).ready( function () {
$(document).on('click', '.berocket_post_set_new_sortable, .berocket_post_set_new_sortable_set', function(event) {
event.preventDefault();
var $this = $(this);
var post_id = $(this).data('post_id');
if( $this.is('.berocket_post_set_new_sortable_set') ) {
var order = $this.parents('.berocket_post_set_new_sortable_input').first().find('input').val();
} else {
var order = $(this).data('order');
}
$.post(location.href, {braction:'berocket_custom_post_sortable', BRsortable_id:post_id, BRorder:order}, function(html) {
var $html = jQuery(html);
var $tbody = $html.find('.berocket_post_set_new_sortable').first().parents('tbody').first();
$('.berocket_post_set_new_sortable').first().parents('tbody').first().replaceWith($tbody);
});
});
});
})(jQuery);
//ADDONS RELOAD
(function ($){
$(document).ready( function () {
$(document).on('change', '.berocket_addons_list input', function() {
$(this).parents('.br_framework_submit_form').addClass('br_reload_form');
});
});
})(jQuery);
//CONDITIONS
jQuery(document).on('change', '.br_cond_type', function(event) {
var $data_block = jQuery(this).parents('.berocket_conditions_block').first().find('.br_condition_data').first();
var condition_name = $data_block.data('condition_name');
var $parent = jQuery(this).parents('.br_cond_select');
$parent.find('.br_cond').remove();
var id = $parent.parents('.br_html_condition');
var current_id = $parent.data('current');
id = id.data('id');
var html_need = jQuery('.br_cond_example .br_cond_'+jQuery(this).val()).get(0);
html_need = html_need.outerHTML;
html_need = html_need.replace(/%id%/g, id);
html_need = html_need.replace(/%current_id%/g, current_id);
html_need = html_need.replace(/%name%/g, condition_name);
$parent.find('.br_current_cond').html(html_need);
});
jQuery(document).on('click', '.berocket_add_condition', function() {
var id = jQuery(this).parents('.br_html_condition');
var current_id = id.data('current');
current_id = current_id + 1;
id.data('current', current_id);
id = id.data('id');
var $html = jQuery(this).parents('.berocket_conditions_block').first().find('.br_condition_example .br_cond_select').html();
$html = ''+$html+'
';
$html = $html.replace('%id%', id);
jQuery(this).before($html);
$parent = jQuery(this).prev();
$parent.find('.br_cond_type').trigger('change');
});
jQuery(document).on('click', '.br_add_group', function() {
var $data_block = jQuery(this).parents('.berocket_conditions_block').first().find('.br_condition_data').first();
var last_id = $data_block.data('last_id');
last_id++;
$data_block.data('last_id', last_id);
var html = jQuery(this).parents('.berocket_conditions_block').first().find('.br_condition_example').html();
html = html.replace( '%id%', last_id );
var html = '';
jQuery(this).before(html);
$parent = jQuery(this).prev();
$parent.find('.br_cond_type').trigger('change');
});
jQuery(document).on('click', '.berocket_remove_condition', function() {
$parent = jQuery(this).parents('.br_cond_select');
$parent.remove();
});
jQuery(document).on('click', '.br_remove_group', function() {
$parent = jQuery(this).parents('.br_html_condition');
$parent.remove();
});
jQuery(document).on('change', '.br_cond_attr_select', function() {
var $attr_block = jQuery(this).parents('.br_cond').first();
$attr_block.find('.br_attr_values').hide();
$attr_block.find('.br_attr_value_'+jQuery(this).val()).show();
});
jQuery(document).on('change', '.price_from', function() {
var val_price_from = jQuery(this).val();
var val_price_to = jQuery(this).parents('.br_cond').first().find('.price_to').val();
price_from = parseFloat(val_price_from);
price_to = parseFloat(val_price_to);
price_to_int = parseInt(val_price_to);
if( val_price_from == '' ) {
jQuery(this).val(0);
price_from = 0;
}
if( price_from > price_to ) {
jQuery(this).parents('.br_cond').first().find('.price_to').val(jQuery(this).val());
}
});
jQuery(document).on('change', '.price_to', function() {
var val_price_from = jQuery(this).parents('.br_cond').first().find('.price_from').val();
var val_price_to = jQuery(this).val();
price_from = parseFloat(val_price_from);
price_from_int = parseInt(val_price_from);
price_to = parseFloat(val_price_to);
if( val_price_to == '' ) {
jQuery(this).val(0);
price_to = 0;
}
if( price_from > price_to ) {
jQuery(this).parents('.br_cond').first().find('.price_from')(jQuery(this).val());
}
});
//TEMPLATES
jQuery(document).on('mousedown', '.berocket_templates_list .berocket_template_label', function() {
var $this = jQuery(this).find('.berocket_template_is_active');
if( $this.prop('checked') ) {
$this.addClass('berocket_was_checked');
} else {
$this.removeClass('berocket_was_checked');
}
});
jQuery(document).on('click', '.berocket_templates_list .berocket_template_label', function(event) {
if( jQuery(this).find('.berocket_template_paid_sign').length ) {
event.preventDefault()
} else {
var $this = jQuery(this).find('.berocket_template_is_active');
setTimeout(function() {
if( $this.is('.berocket_was_checked') ) {
$this.prop('checked', false);
}
}, 10);
}
});
jQuery(document).on('click', '.berocket_templates_list .berocket_template_label .berocket_template_paid_get a', function(event) {
event.stopPropogation();
});
//ADDONS
jQuery(document).on('click', '.berocket_addons_list .berocket_addon_label .berocket_addon_paid_get a', function(event) {
event.stopPropogation();
});