__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
/* global wpforms_builder */

/**
 * @param wpforms_builder.repeater.addons_requirements_alert_text
 * @param wpforms_builder.repeater.enabled_cf_alert_text
 * @param wpforms_builder.repeater.is_google_sheets_has_connection
 * @param wpforms_builder.field_add_cf_alert_text
 */

// noinspection ES6ConvertVarToLetConst
/**
 * Form Builder Field Addons module.
 *
 * @since 1.8.9
 */
var WPForms = window.WPForms || {}; // eslint-disable-line no-var

WPForms.Admin = WPForms.Admin || {};
WPForms.Admin.Builder = WPForms.Admin.Builder || {};

WPForms.Admin.Builder.Addons = WPForms.Admin.Builder.Addons || ( function( document, window, $ ) {
	/**
	 * Elements holder.
	 *
	 * @since 1.8.9
	 *
	 * @type {Object}
	 */
	const el = {};

	// noinspection ES6ShorthandObjectProperty
	/**
	 * Public functions and properties.
	 *
	 * @since 1.8.9
	 *
	 * @type {Object}
	 */
	const app = {

		isGoogleSheetsVisited: false,

		/**
		 * Init Filters section.
		 *
		 * @since 1.8.9
		 */
		init() {
			$( app.ready );
		},

		/**
		 * DOM is fully loaded.
		 *
		 * @since 1.8.9
		 */
		ready() {
			app.setup();
			app.events();
		},

		/**
		 * Setup. Prepare some variables.
		 *
		 * @since 1.8.9
		 */
		setup() {
			// Cache DOM elements.
			el.$builder = $( '#wpforms-builder' );
		},

		/**
		 * Bind events.
		 *
		 * @since 1.8.9
		 */
		events() {
			el.$builder.on( 'click', '#wpforms-panel-field-settings-conversational_forms_enable', app.optionCFEnableModal );
			el.$builder.on( 'click', '#wpforms-panel-field-settings-save_resume_enable', app.optionSaveAndResumeEnableModal );
			el.$builder.on( 'click', '#wpforms-panel-field-settings-form_abandonment', app.optionFormAbandonmentEnableModal );
			el.$builder.on( 'click', '.wpforms-panel-sidebar-section-google-sheets', app.optionGoogleSheetsVisitedModal );
			el.$builder.on( 'click', '#wpforms-panel-field-lead_forms-enable', app.optionLeadFormsEnableModal );
			el.$builder.on( 'wpformsFieldAddDragStart wpformsBeforeFieldAddOnClick', app.layoutFieldsCantAddModal );
		},

		/**
		 * Layout-based field can't be added modal.
		 *
		 * @since 1.8.9
		 *
		 * @param {Event}  e    Event.
		 * @param {string} type Field type.
		 */
		layoutFieldsCantAddModal( e, type ) { // eslint-disable-line complexity
			if ( ! app.isLayoutBasedField( type ) ) {
				return;
			}

			let alertMessage = '';

			if ( app.isAddonEnabled( 'wpforms-conversational-forms' ) ) {
				alertMessage = wpforms_builder[ type ].field_add_cf_alert_text;

				e.preventDefault();
			}

			if ( app.isAddonEnabled( 'wpforms-save-resume' ) && type === 'repeater' && ! app.isInsideRepeaterAddonAllowed( 'wpforms-save-resume' ) ) {
				alertMessage = wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-save-resume' ];
			}

			if ( app.isAddonEnabled( 'wpforms-form-abandonment' ) && type === 'repeater' && ! app.isInsideRepeaterAddonAllowed( 'wpforms-form-abandonment' ) ) {
				alertMessage = wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-form-abandonment' ];
			}

			if ( ! $( '.wpforms-panel-sidebar-section-google-sheets' ).hasClass( 'education-modal' ) && type === 'repeater' && ! app.isInsideRepeaterAddonAllowed( 'wpforms-google-sheets' ) && app.isGoogleSheetsConnectionsExist() ) {
				alertMessage = wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-google-sheets' ];
			}

			if ( app.isAddonEnabled( 'wpforms-lead-forms' ) && type === 'repeater' && ! app.isInsideRepeaterAddonAllowed( 'wpforms-lead-forms' ) ) {
				alertMessage = wpforms_builder.repeater.addons_requirements_alert[ 'wpforms-lead-forms' ];

				e.preventDefault();
			}

			if ( alertMessage === '' ) {
				return;
			}

			app.openModal( {
				content: alertMessage,
			} );
		},

		/**
		 * Check if the addon is enabled.
		 *
		 * @since 1.8.9
		 *
		 * @param {string} slug Addon slug.
		 *
		 * @return {boolean} True if the addon is enabled.
		 */
		isAddonEnabled( slug ) {
			// Addon toggle selectors.
			const toggleSelector = {
				'wpforms-conversational-forms': '#wpforms-panel-field-settings-conversational_forms_enable',
				'wpforms-save-resume': '#wpforms-panel-field-settings-save_resume_enable',
				'wpforms-form-abandonment': '#wpforms-panel-field-settings-form_abandonment',
				'wpforms-lead-forms': '#wpforms-panel-field-lead_forms-enable',
			};

			if ( ! toggleSelector[ slug ] ) {
				return false;
			}

			return $( toggleSelector[ slug ] ).is( ':checked' );
		},

		/**
		 * Check if the addon is allowed inside the repeater.
		 *
		 * @param {string} slug Addon slug.
		 *
		 * @return {boolean} True if the addon is allowed.
		 */
		isInsideRepeaterAddonAllowed( slug ) {
			return wpforms_builder.repeater.addons_requirements[ slug ];
		},

		/**
		 * Check if the Repeater field added to the form.
		 *
		 * @return {boolean} True if the Repeater field added to the form.
		 */
		isRepeaterAdded() {
			return $( '#wpforms-field-options .wpforms-field-option-repeater' ).length > 0;
		},

		/**
		 * Save and Resume can't be enabled modal.
		 *
		 * @since 1.8.9
		 */
		optionFormAbandonmentEnableModal() {
			if ( ! app.isAddonEnabled( 'wpforms-form-abandonment' ) || app.isInsideRepeaterAddonAllowed( 'wpforms-form-abandonment' ) ) {
				return;
			}

			if ( ! app.isRepeaterAdded() ) {
				return;
			}

			app.openModal( {
				content: wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-form-abandonment' ],
			} );
		},

		/**
		 * Show a proposal to upgrade Google Sheets addon for using repeated fields.
		 *
		 * @since 1.8.9
		 */
		optionGoogleSheetsVisitedModal() {
			if ( app.isGoogleSheetsVisited ) {
				return;
			}

			if ( $( this ).hasClass( 'education-modal' ) ) {
				return;
			}

			if ( app.isInsideRepeaterAddonAllowed( 'wpforms-google-sheets' ) ) {
				return;
			}

			if ( ! app.isRepeaterAdded() ) {
				return;
			}

			if ( ! app.isGoogleSheetsConnectionsExist() ) {
				return;
			}

			app.isGoogleSheetsVisited = true;

			app.openModal( {
				content: wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-google-sheets' ],
			} );
		},

		/**
		 * Determine if Google Sheets connections exist.
		 *
		 * @since 1.9.0
		 *
		 * @return {boolean} True if Google Sheets connections exist.
		 */
		isGoogleSheetsConnectionsExist() {
			if ( ! WPForms.Admin.Builder.Providers?.GoogleSheets?.isReady ) {
				return wpforms_builder.repeater.is_google_sheets_has_connection;
			}

			return Boolean( $( '.wpforms-builder-provider-connection', '#google-sheets-provider' ).length );
		},

		/**
		 * Save and Resume can't be enabled modal.
		 *
		 * @since 1.8.9
		 */
		optionSaveAndResumeEnableModal() {
			if ( ! app.isAddonEnabled( 'wpforms-save-resume' ) || app.isInsideRepeaterAddonAllowed( 'wpforms-save-resume' ) ) {
				return;
			}

			if ( ! app.isRepeaterAdded() ) {
				return;
			}

			app.openModal( {
				content: wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-save-resume' ],
			} );
		},

		/**
		 * Conversational Forms can't be enabled modal.
		 *
		 * @since 1.8.9
		 *
		 * @param {Event} e Event.
		 */
		optionCFEnableModal( e ) {
			if ( ! app.isAddonEnabled( 'wpforms-conversational-forms' ) ) {
				return;
			}

			if ( ! app.isRepeaterAdded() ) {
				return;
			}

			e.preventDefault();

			app.openModal( {
				content: wpforms_builder.repeater.enabled_cf_alert_text,
			} );
		},

		/**
		 * Lead Forms can't be enabled modal.
		 *
		 * @since 1.8.9
		 *
		 * @param {Event} e Event.
		 */
		optionLeadFormsEnableModal( e ) {
			if ( ! app.isAddonEnabled( 'wpforms-lead-forms' ) ) {
				return;
			}

			if ( ! app.isRepeaterAdded() ) {
				return;
			}

			e.preventDefault();

			app.openModal( {
				content: wpforms_builder.repeater.addons_requirements_alert_text[ 'wpforms-lead-forms' ],
			} );
		},

		/**
		 * Open modal window.
		 *
		 * @since 1.8.9
		 *
		 * @param {Object} args Arguments.
		 */
		openModal( args ) {
			if ( ! args || ! args.content ) {
				return;
			}

			$.confirm( {
				title: args.title ?? wpforms_builder.heads_up,
				content: args.content,
				icon: args.icon ?? 'fa fa-exclamation-circle',
				type: args.type ?? 'orange',
				buttons: {
					confirm: {
						text: wpforms_builder.ok,
						btnClass: 'btn-confirm',
						keys: [ 'enter' ],
					},
				},
			} );
		},

		/**
		 * Determine whether the field type is a layout-based field.
		 *
		 * @since 1.8.9
		 *
		 * @param {string} fieldType Field type to check.
		 *
		 * @return {boolean} True if it is the Layout-based field.
		 */
		isLayoutBasedField( fieldType ) {
			if ( ! WPForms.Admin.Builder.FieldLayout ) {
				return false;
			}

			return WPForms.Admin.Builder.FieldLayout.isLayoutBasedField( fieldType );
		},
	};

	// Provide access to public functions/properties.
	return app;
}( document, window, jQuery ) );

// Initialize.
WPForms.Admin.Builder.Addons.init();

Filemanager

Name Type Size Permission Actions
fields Folder 0750
addons.js File 8.67 KB 0640
addons.min.js File 4.42 KB 0640
conditional-logic-core.js File 23.57 KB 0640
conditional-logic-core.min.js File 10.07 KB 0640
filters.js File 10.57 KB 0640
filters.min.js File 5.82 KB 0640
notifications.js File 21.14 KB 0640
notifications.min.js File 7.37 KB 0640
payments.js File 16.2 KB 0640
payments.min.js File 8.19 KB 0640
Filemanager