: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
* @deprecated Use `WPFormsFormTemplates.selectTemplateProcess` instead.
* @param {string} formName Name of the form.
* @param {string} template Template slug.
* @param {jQuery} $button Use template button object.
selectTemplateProcess: function( formName, template, $button ) {
console.warn( 'WARNING! Function "WPForms.Admin.Builder.Setup.selectTemplateProcess( formName, template, $button )" has been deprecated, please use the new "WPFormsFormTemplates.selectTemplateProcess( formName, template, $button, callback )" function instead!' );
WPFormsFormTemplates.selectTemplateProcess( formName, template, $button, app.selectTemplateProcessAjax );
* Cancel button click routine.
* @since 1.7.7 Deprecated.
* @deprecated Use `WPFormsFormTemplates.selectTemplateCancel` instead.
selectTemplateCancel: function( ) {
console.warn( 'WARNING! Function "WPForms.Admin.Builder.Setup.selectTemplateCancel" has been deprecated, please use the new "WPFormsFormTemplates.selectTemplateCancel" function instead!' );
WPFormsFormTemplates.selectTemplateCancel();
* Select template. Create or update form AJAX call.
* @param {string} formName Name of the form.
* @param {string} template Template slug.
selectTemplateProcessAjax: function( formName, template ) {
WPFormsBuilder.showLoadingOverlay();
action: vars.formID ? 'wpforms_update_form_template' : 'wpforms_new_form',
form_id: vars.formID, // eslint-disable-line camelcase
nonce: wpforms_builder.nonce,
const category = $( '.wpforms-setup-templates-categories li.active' ).data( 'category' );
const subcategory = $( '.wpforms-setup-templates-subcategories li.active' ).data( 'subcategory' );
data.category = category;
data.subcategory = subcategory;
if ( category === 'all' ) {
data.subcategory = 'all';
$.post( wpforms_builder.ajax_url, data )
// We have already warned the user that unsaved changes will be ignored.
WPFormsBuilder.setCloseConfirmation( false );
window.location.href = wpf.getQueryString( 'force_desktop_view' ) ?
wpf.updateQueryString( 'force_desktop_view', 1, res.data.redirect ) :
if ( res.data.error_type === 'invalid_template' ) {
app.selectTemplateProcessInvalidTemplateError( res.data.message, formName );
app.selectTemplateProcessError( res.data.message );
.fail( function( xhr, textStatus, e ) {
wpf.debug( xhr.responseText || textStatus || '' );
app.selectTemplateProcessError( '' );
* Select template AJAX call error modal for invalid template using.
* @param {string} errorMessage Error message.
* @param {string} formName Name of the form.
selectTemplateProcessInvalidTemplateError( errorMessage, formName ) {
title: wpforms_builder.heads_up,
icon: 'fa fa-exclamation-circle',
text: wpforms_builder.use_default_template,
app.selectTemplateProcessAjax( formName, 'simple-contact-form-template' );
WPFormsBuilder.hideLoadingOverlay();
text: wpforms_builder.cancel,
WPFormsFormTemplates.selectTemplateCancel();
WPFormsBuilder.hideLoadingOverlay();
* Select template AJAX call error modal.
* @since 1.8.8 Replaced error message with error title.
* @param {string} errorTitle Error title.
selectTemplateProcessError( errorTitle ) {
content: wpforms_builder.error_select_template,
icon: 'fa fa-exclamation-circle',
text: wpforms_builder.ok,
WPFormsFormTemplates.selectTemplateCancel();
WPFormsBuilder.hideLoadingOverlay();
* Open required addons alert.
* @since 1.8.2 Deprecated.
* @deprecated Use `WPFormsFormTemplates.addonsModal` instead.
* @param {string} formName Name of the form.
* @param {string} template Template slug.
* @param {jQuery} $button Use template button object.
addonsModal: function( formName, template, $button ) {
console.warn( 'WARNING! Function "WPForms.Admin.Builder.Setup.addonsModal( formName, template, $button )" has been deprecated, please use the new "WPFormsFormTemplates.addonsModal( formName, template, $button, callback )" function instead!' );
WPFormsFormTemplates.addonsModal( formName, template, $button, app.selectTemplateProcessAjax );
* Install & Activate addons via AJAX.
* @since 1.8.2 Deprecated.
* @deprecated Use `WPFormsFormTemplates.installActivateAddons` instead.
* @param {Array} addons Addons slugs.
* @param {object} previousModal Previous modal instance.
* @param {string} formName Name of the form.
* @param {string} template Template slug.
installActivateAddons: function( addons, previousModal, formName, template ) {
console.warn( 'WARNING! Function "WPForms.Admin.Builder.Setup.installActivateAddons( addons, previousModal, formName, template )" has been deprecated, please use the new "WPFormsFormTemplates.installActivateAddons( addons, previousModal, formName, template, callback )" function instead!' );
WPFormsFormTemplates.installActivateAddons( addons, previousModal, formName, template, app.selectTemplateProcessAjax );
* Install & Activate addons error modal.
* @since 1.8.2 Deprecated.
* @deprecated Use `WPFormsFormTemplates.installActivateAddonsError` instead.
* @param {string} formName Name of the form.
* @param {string} template Template slug.
installActivateAddonsError: function( formName, template ) {
console.warn( 'WARNING! Function "WPForms.Admin.Builder.Setup.installActivateAddonsError( formName, template )" has been deprecated, please use the new "WPFormsFormTemplates.installActivateAddonsError( formName, template, callback )" function instead!' );
WPFormsFormTemplates.installActivateAddonsError( formName, template, app.selectTemplateProcessAjax );
* Install & Activate single addon via AJAX.
* @since 1.8.2 Deprecated.
* @deprecated Use `WPFormsFormTemplates.installActivateAddonAjax` instead.
* @param {string} addon Addon slug.
* @returns {Promise} jQuery ajax call promise.
installActivateAddonAjax: function( addon ) {
console.warn( 'WARNING! Function "WPForms.Admin.Builder.Setup.installActivateAddonAjax( addon )" has been deprecated, please use the new "WPFormsFormTemplates.installActivateAddonAjax( addon )" function instead!' );
return WPFormsFormTemplates.installActivateAddonAjax( addon );
* Initiate template processing for a new form.
applyTemplateOnRequest: function() {
var urlParams = new URLSearchParams( window.location.search ),
templateId = urlParams.get( 'template_id' );
urlParams.get( 'view' ) !== 'setup' ||
urlParams.get( 'form_id' ) ||
el.$panel.find( '.wpforms-template .wpforms-btn[data-template="' + templateId + '"]' ).trigger( 'click' );
// Provide access to public functions/properties.
}( document, window, jQuery ) );
WPForms.Admin.Builder.Setup.init();