Files
roi-theme/wp-content/plugins/sociallocker-next-premium/bizpanda/assets/admin/js/item-edit.050600.js
root a22573bf0b Commit inicial - WordPress Análisis de Precios Unitarios
- WordPress core y plugins
- Tema Twenty Twenty-Four configurado
- Plugin allow-unfiltered-html.php simplificado
- .gitignore configurado para excluir wp-config.php y uploads

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:04:30 -06:00

292 lines
10 KiB
JavaScript
Executable File

if ( !window.bizpanda ) window.bizpanda = {};
if ( !window.bizpanda.lockerEditor ) window.bizpanda.lockerEditor = {};
(function($){
window.bizpanda.lockerEditor = {
init: function() {
this.item = $('#opanda_item').val();
this.basicOptions.init( this, this.item );
this.trackInputChanges();
this.recreatePreview();
this.initStyleRollerButton();
},
/**
* Inits a button which offers to buy the StyleRoller Add-on.
*/
initStyleRollerButton: function() {
if ( window.window.onp_sl_styleroller || !window.onp_sl_show_styleroller_offer ) return;
var $button = $("<a target='_blank' class='btn btn-default' id='onp-sl-styleroller-btn' href='" + window.onp_sl_styleroller_offer_url + "'><i class='fa fa-flask'></i>" + window.onp_sl_styleroller_offer_text + "</a>");
$("#opanda_style").after($button);
},
/**
* Starts to track user input to refresh the preview.
*/
trackInputChanges: function() {
var self = this;
var tabs = [
"#OPanda_BasicOptionsMetaBox",
"#OPanda_SocialOptionsMetaBox",
"#OPanda_AdvancedOptionsMetaBox",
"#OPanda_ConnectOptionsMetaBox",
'#OPanda_SubscriptionOptionsMetaBox',
'#OPanda_TermsOptionsMetaBox'
];
for(var index in tabs) {
$(tabs[index])
.find("input, select, textarea")
.bind('change keyup', function(){ self.refreshPreview(); });
}
},
/**
* Binds the change event of the WP editor.
*/
bindWpEditorChange: function( ed ) {
var self = this;
var changed = function() {
tinyMCE.activeEditor.save();
self.refreshPreview();
};
if ( tinymce.majorVersion <= 3 ) {
ed.onChange.add(function(){ changed(); });
} else {
ed.on("change", function(){ changed(); });
}
},
/**
* Refreshes the preview after short delay.
*/
refreshPreview: function( force ) {
var self = this;
if ( this.timerOn && !force ) {
this.timerAgain = true;
return;
}
this.timerOn = true;
setTimeout(function(){
if (self.timerAgain) {
self.timerAgain = false;
self.refreshPreview( true );
} else {
self.timerAgain = false;
self.timerOn = false;
self.recreatePreview();
}
}, 500);
},
/**
* Recreates the preview, submmits forms to the preview frame.
*/
recreatePreview: function() {
var url = $("#lock-preview-wrap").data('url');
var options = this.getPreviewOptions();
console.log(options);
$.bizpanda.hooks.run('opanda-refresh-preview');
window.bizpanda.preview.refresh( url, 'preview', options, 'onp_sl_update_preview_height' );
},
/**
* Gets options for the preview to submit into the frame.
*/
getPreviewOptions: function() {
var options = this.getCommonOptions();
var options = $.bizpanda.filters.run('opanda-preview-options', [options]);
if ( window.bizpanda.lockerEditor.filterOptions ) {
options = window.bizpanda.lockerEditor.filterOptions( options );
}
$(document).trigger('onp-sl-filter-preview-options', [options]);
return options;
},
getCommonOptions: function() {
var timer = parseInt( $("#opanda_timer").val() );
var options = {
text: {
header: $("#opanda_header").val(),
message: $("#opanda_message").val()
},
site: {
'title': window.opanda_site_name,
'url': window.opanda_home_url
},
theme: 'secrets',
agreement: {
checkbox: $("#opanda_agreement_checkbox").is(':checked') ? $("#opanda_agreement_checkbox_position").val() : false,
note: $("#opanda_agreement_note").is(':checked'),
termsUrl: window.opanda_terms,
privacyPolicyUrl: window.opanda_privacy_policy
},
overlap: {
mode: $("#opanda_overlap").val(),
position: $("#opanda_overlap_position").val()
},
effects: {
highlight: $("#opanda_highlight").is(':checked')
},
locker: {
timer: ( !timer || timer === 0 ) ? null : timer,
close: $("#opanda_close").is(':checked'),
mobile: $("#opanda_mobile").is(':checked')
},
proxy: {
consumer: {
company: {
title: window.opanda_site_name,
url: window.opanda_home_url
},
privacyPolicy: {
title: window.opanda_privacy_policy_title,
url: window.opanda_privacy_policy
}
}
},
actionsProxy: {
url: window.opanda_proxy_url,
paramPrefix: 'opanda'
},
};
if (!options.text.header && options.text.message) {
options.text = options.text.message;
}
options['theme'] = $("#opanda_style").val();
if ( window.bizpanda.previewGoogleFonts ) {
var theme = options['theme'];
options['theme'] = {
'name': theme,
'fonts': window.bizpanda.previewGoogleFonts
};
}
return options;
},
// --------------------------------------
// Basic Metabox
// --------------------------------------
basicOptions: {
init: function( editor ){
this.editor = editor;
this.initThemeSelector();
this.initOverlapModeButtons();
},
initThemeSelector: function() {
var showThemePreview = function(){
var $item = $("#opanda_style").find("option:selected");
var preview = $item.data('preview');
var previewHeight = $item.data('previewheight');
var $wrap = $("#lock-preview-wrap");
if ( preview ) {
$wrap.find("iframe").hide();
$wrap.css('height', previewHeight ? previewHeight + 'px' : '300px');
$wrap.css('background', 'url("' + preview + '") center center no-repeat');
} else {
$wrap.find("iframe").show();
$wrap.css('height', 'auto');
$wrap.css('background', 'none');
}
};
showThemePreview();
$.bizpanda.hooks.add('opanda-refresh-preview', function(){
showThemePreview();
});
},
initOverlapModeButtons: function() {
var $overlapControl = $("#OPanda_BasicOptionsMetaBox .factory-control-overlap .factory-buttons-group");
var $positionControl = $("#OPanda_BasicOptionsMetaBox .factory-control-overlap_position");
var $position = $("#opanda_overlap_position");
$overlapControl.after( $("<div id='opanda_overlap_position_wrap'></div>").append( $position ) );
var checkPositionControlVisability = function( ){
var value = $("#opanda_overlap").val();
if ( value === 'full' ) {
$("#opanda_overlap_position_wrap").css("display", "none");
} else {
$("#opanda_overlap_position_wrap").css("display", "inline-block");
}
};
var toggleAjaxOption = function() {
var value = $("#opanda_overlap").val();
if ( value === 'full' ) {
$("#opanda-ajax-disabled").hide();
} else {
$("#opanda-ajax-disabled").fadeIn();
}
};
checkPositionControlVisability();
toggleAjaxOption();
$("#opanda_overlap").change(function(){
checkPositionControlVisability()
toggleAjaxOption();
});
}
}
};
$(function(){
window.bizpanda.lockerEditor.init();
});
})(jQuery)
function opanda_editor_callback(e) {
if ( e.type == 'keyup') {
tinyMCE.activeEditor.save();
window.bizpanda.lockerEditor.refreshPreview();
}
return true;
}