| Current Path : /home/x/b/o/xbodynamge/namtation/wp-content/ |
| Current File : /home/x/b/o/xbodynamge/namtation/wp-content/panels.tar |
class-setup.php 0000666 00000014154 15113640256 0007534 0 ustar 00 <?php
/**
* Setup panel.
*
* @package WPForms
* @author WPForms
* @since 1.0.0
* @license GPL-2.0+
* @copyright Copyright (c) 2016, WPForms LLC
*/
class WPForms_Builder_Panel_Setup extends WPForms_Builder_Panel {
/**
* All systems go.
*
* @since 1.0.0
*/
public function init() {
// Define panel information.
$this->name = esc_html__( 'Setup', 'wpforms-lite' );
$this->slug = 'setup';
$this->icon = 'fa-cog';
$this->order = 5;
}
/**
* Enqueue assets for the builder.
*
* @since 1.0.0
*/
public function enqueues() {
// CSS.
wp_enqueue_style(
'wpforms-builder-setup',
WPFORMS_PLUGIN_URL . 'assets/css/admin-builder-setup.css',
null,
WPFORMS_VERSION
);
}
/**
* Outputs the Settings panel primary content.
*
* @since 1.0.0
*/
public function panel_content() {
$core_templates = apply_filters( 'wpforms_form_templates_core', array() );
$additional_templates = apply_filters( 'wpforms_form_templates', array() );
$additional_count = count( $additional_templates );
?>
<div id="wpforms-setup-form-name">
<span><?php esc_html_e( 'Form Name', 'wpforms-lite' ); ?></span>
<input type="text" id="wpforms-setup-name" placeholder="<?php esc_attr_e( 'Enter your form name here…', 'wpforms-lite' ); ?>">
</div>
<div class="wpforms-setup-title core">
<?php esc_html_e( 'Select a Template', 'wpforms-lite' ); ?>
</div>
<p class="wpforms-setup-desc core">
<?php
echo wp_kses(
__( 'To speed up the process, you can select from one of our pre-made templates or start with a <strong><a href="#" class="wpforms-trigger-blank">blank form.</a></strong>', 'wpforms-lite' ),
array(
'strong' => array(),
'a' => array(
'href' => array(),
'class' => array(),
),
)
);
?>
</p>
<?php $this->template_select_options( $core_templates, 'core' ); ?>
<div class="wpforms-setup-title additional">
<?php esc_html_e( 'Additional Templates', 'wpforms-lite' ); ?>
<?php echo ! empty( $additional_count ) ? '<span class="count">(' . $additional_count . ')</span>' : ''; ?>
</div>
<?php if ( ! empty( $additional_count ) ) : ?>
<p class="wpforms-setup-desc additional">
<?php
printf(
wp_kses(
/* translators: %1$s - WPForms.com URL to a template suggestion, %2$s - WPForms.com URL to a doc about custom templates. */
__( 'Have a suggestion for a new template? <a href="%1$s" target="_blank" rel="noopener noreferrer">We\'d love to hear it</a>. Also, you can <a href="%1$s" target="_blank" rel="noopener noreferrer">create your own templates</a>!', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'target' => array(),
'rel' => array(),
),
)
),
'https://wpforms.com/form-template-suggestion/',
'https://wpforms.com/docs/how-to-create-a-custom-form-template/'
);
?>
</p>
<div class="wpforms-setup-template-search-wrap">
<i class="fa fa-search" aria-hidden="true"></i>
<input type="text" id="wpforms-setup-template-search" value="" placeholder="<?php esc_attr_e( 'Search additional templates...', 'wpforms-lite' ); ?>">
</div>
<?php $this->template_select_options( $additional_templates, 'additional' ); ?>
<?php else : ?>
<p class="wpforms-setup-desc additional">
<?php
printf(
wp_kses(
/* translators: %1$s - WPForms.com URL to an addon page, %2$s - WPForms.com URL to a docs article. */
__( 'More are available in the <a href="%1$s" target="_blank" rel="noopener noreferrer">Form Templates Pack addon</a> or by <a href="%2$s" target="_blank" rel="noopener noreferrer">creating your own</a>.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'target' => array(),
'rel' => array(),
),
)
),
'https://wpforms.com/addons/form-templates-pack-addon/',
'https://wpforms.com/docs/how-to-create-a-custom-form-template/'
);
?>
</p>
<?php
endif;
do_action( 'wpforms_setup_panel_after' );
}
/**
* Generate a block of templates to choose from.
*
* @since 1.4.0
*
* @param array $templates
* @param string $slug
*/
public function template_select_options( $templates, $slug ) {
if ( ! empty( $templates ) ) {
echo '<div id="wpforms-setup-templates-' . $slug . '" class="wpforms-setup-templates ' . $slug . ' wpforms-clear">';
echo '<div class="list">';
// Loop through each available template.
foreach ( $templates as $template ) {
$selected = ! empty( $this->form_data['meta']['template'] ) && $this->form_data['meta']['template'] === $template['slug'] ? true : false;
?>
<div class="wpforms-template <?php echo $selected ? 'selected' : ''; ?>"
id="wpforms-template-<?php echo sanitize_html_class( $template['slug'] ); ?>">
<div class="wpforms-template-inner">
<div class="wpforms-template-name wpforms-clear">
<?php echo esc_html( $template['name'] ); ?>
<?php echo $selected ? '<span class="selected">' . esc_html__( 'Selected', 'wpforms-lite' ) . '</span>' : ''; ?>
</div>
<?php if ( ! empty( $template['description'] ) ) : ?>
<div class="wpforms-template-details">
<p class="desc"><?php echo esc_html( $template['description'] ); ?></p>
</div>
<?php endif; ?>
<?php
$template_name = sprintf(
/* translators: %s - Form template name. */
esc_html__( '%s template', 'wpforms-lite' ),
$template['name']
);
?>
<div class="wpforms-template-overlay">
<a href="#" class="wpforms-template-select"
data-template-name-raw="<?php echo esc_attr( $template['name'] ); ?>"
data-template-name="<?php echo esc_attr( $template_name ); ?>"
data-template="<?php echo esc_attr( $template['slug'] ); ?>">
<?php
printf(
/* translators: %s - Form template name. */
esc_html__( 'Create a %s', 'wpforms-lite' ),
$template['name']
);
?>
</a>
</div>
</div>
</div>
<?php
}
echo '</div>';
echo '</div>';
}
}
}
new WPForms_Builder_Panel_Setup;
class-fields.php 0000666 00000025411 15113640256 0007640 0 ustar 00 <?php
/**
* Fields management panel.
*
* @package WPForms
* @author WPForms
* @since 1.0.0
* @license GPL-2.0+
* @copyright Copyright (c) 2016, WPForms LLC
*/
class WPForms_Builder_Panel_Fields extends WPForms_Builder_Panel {
/**
* All systems go.
*
* @since 1.0.0
*/
public function init() {
// Define panel information.
$this->name = esc_html__( 'Fields', 'wpforms-lite' );
$this->slug = 'fields';
$this->icon = 'fa-list-alt';
$this->order = 10;
$this->sidebar = true;
if ( $this->form ) {
add_action( 'wpforms_builder_fields', array( $this, 'fields' ) );
add_action( 'wpforms_builder_fields_options', array( $this, 'fields_options' ) );
add_action( 'wpforms_builder_preview', array( $this, 'preview' ) );
// Template for form builder previews.
add_action( 'wpforms_builder_print_footer_scripts', array( $this, 'field_preview_templates' ) );
}
}
/**
* Enqueue assets for the Fields panel.
*
* @since 1.0.0
*/
public function enqueues() {
// CSS.
wp_enqueue_style(
'wpforms-builder-fields',
WPFORMS_PLUGIN_URL . 'assets/css/admin-builder-fields.css',
null,
WPFORMS_VERSION
);
}
/**
* Outputs the Field panel sidebar.
*
* @since 1.0.0
*/
public function panel_sidebar() {
// Sidebar contents are not valid unless we have a form.
if ( ! $this->form ) {
return;
}
?>
<ul class="wpforms-tabs wpforms-clear">
<li class="wpforms-tab" id="add-fields">
<a href="#" class="active">
<?php esc_html_e( 'Add Fields', 'wpforms-lite' ); ?>
<i class="fa fa-angle-down"></i>
</a>
</li>
<li class="wpforms-tab" id="field-options">
<a href="#">
<?php esc_html_e( 'Field Options', 'wpforms-lite' ); ?>
<i class="fa fa-angle-right"></i>
</a>
</li>
</ul>
<div class="wpforms-add-fields wpforms-tab-content">
<?php do_action( 'wpforms_builder_fields', $this->form ); ?>
</div>
<div id="wpforms-field-options" class="wpforms-field-options wpforms-tab-content">
<?php do_action( 'wpforms_builder_fields_options', $this->form ); ?>
</div>
<?php
}
/**
* Outputs the Field panel primary content.
*
* @since 1.0.0
*/
public function panel_content() {
// Check if there is a form created.
if ( ! $this->form ) {
echo '<div class="wpforms-alert wpforms-alert-info">';
echo wp_kses(
__( 'You need to <a href="#" class="wpforms-panel-switch" data-panel="setup">setup your form</a> before you can manage the fields.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'class' => array(),
'data-panel' => array(),
),
)
);
echo '</div>';
return;
}
$recaptcha = wpforms_setting( 'recaptcha-type', 'v2' );
?>
<div class="wpforms-preview-wrap">
<div class="wpforms-preview">
<div class="wpforms-title-desc">
<h2 class="wpforms-form-name"><?php echo esc_html( $this->form->post_title ); ?></h2>
<span class="wpforms-form-desc"><?php echo $this->form->post_excerpt; ?></span>
</div>
<div class="wpforms-field-wrap">
<?php do_action( 'wpforms_builder_preview', $this->form ); ?>
</div>
<?php if ( 'invisible' !== $recaptcha ) : ?>
<p class="wpforms-field-recaptcha">
<img src="<?php echo WPFORMS_PLUGIN_URL; ?>/assets/images/recaptcha-placeholder.png" style="max-width: 304px;">
</p>
<?php endif; ?>
<?php
$submit = ! empty( $this->form_data['settings']['submit_text'] ) ? $this->form_data['settings']['submit_text'] : esc_html__( 'Submit', 'wpforms-lite' );
printf( '<p class="wpforms-field-submit"><input type="submit" value="%s" class="wpforms-field-submit-button"></p>', esc_attr( $submit ) );
?>
<?php wpforms_debug_data( $this->form_data ); ?>
</div>
</div>
<?php
}
/**
* Builder field buttons.
*
* @since 1.0.0
*/
public function fields() {
$fields = array(
'standard' => array(
'group_name' => esc_html__( 'Standard Fields', 'wpforms-lite' ),
'fields' => array(),
),
'fancy' => array(
'group_name' => esc_html__( 'Fancy Fields', 'wpforms-lite' ),
'fields' => array(),
),
'payment' => array(
'group_name' => esc_html__( 'Payment Fields', 'wpforms-lite' ),
'fields' => array(),
),
);
$fields = apply_filters( 'wpforms_builder_fields_buttons', $fields );
// Output the buttons.
foreach ( $fields as $id => $group ) {
usort( $group['fields'], array( $this, 'field_order' ) );
echo '<div class="wpforms-add-fields-group">';
echo '<a href="#" class="wpforms-add-fields-heading" data-group="' . esc_attr( $id ) . '">';
echo '<span>' . esc_html( $group['group_name'] ) . '</span>';
echo '<i class="fa fa-angle-down"></i>';
echo '</a>';
echo '<div class="wpforms-add-fields-buttons">';
foreach ( $group['fields'] as $field ) {
$class = ! empty( $field['class'] ) ? sanitize_html_class( $field['class'] ) : '';
echo '<button class="wpforms-add-fields-button ' . $class . '" id="wpforms-add-fields-' . esc_attr( $field['type'] ) . '" data-field-type="' . esc_attr( $field['type'] ) . '">';
if ( $field['icon'] ) {
echo '<i class="fa ' . esc_attr( $field['icon'] ) . '"></i> ';
}
echo esc_html( $field['name'] );
echo '</button>';
}
echo '</div>';
echo '</div>';
}
}
/**
* Editor Field Options.
*
* @since 1.0.0
*/
public function fields_options() {
// Check to make sure the form actually has fields created already.
if ( empty( $this->form_data['fields'] ) ) {
printf( '<p class="no-fields">%s</p>', esc_html__( 'You don\'t have any fields yet.', 'wpforms-lite' ) );
return;
}
$fields = $this->form_data['fields'];
foreach ( $fields as $field ) {
$class = apply_filters( 'wpforms_builder_field_option_class', '', $field );
printf( '<div class="wpforms-field-option wpforms-field-option-%s %s" id="wpforms-field-option-%d" data-field-id="%d">', esc_attr( $field['type'] ), $class, $field['id'], $field['id'] );
printf( '<input type="hidden" name="fields[%d][id]" value="%d" class="wpforms-field-option-hidden-id">', $field['id'], $field['id'] );
printf( '<input type="hidden" name="fields[%d][type]" value="%s" class="wpforms-field-option-hidden-type">', $field['id'], esc_attr( $field['type'] ) );
do_action( "wpforms_builder_fields_options_{$field['type']}", $field );
echo '</div>';
}
}
/**
* Editor preview (right pane).
*
* @since 1.0.0
*/
public function preview() {
// Check to make sure the form actually has fields created already.
if ( empty( $this->form_data['fields'] ) ) {
printf( '<p class="no-fields-preview">%s</p>', esc_html__( 'You don\'t have any fields yet. Add some!', 'wpforms-lite' ) );
return;
}
$fields = $this->form_data['fields'];
foreach ( $fields as $field ) {
$css = ! empty( $field['size'] ) ? 'size-' . esc_attr( $field['size'] ) : '';
$css .= ! empty( $field['label_hide'] ) && $field['label_hide'] == '1' ? ' label_hide' : '';
$css .= ! empty( $field['sublabel_hide'] ) && $field['sublabel_hide'] == '1' ? ' sublabel_hide' : '';
$css .= ! empty( $field['required'] ) && $field['required'] == '1' ? ' required' : '';
$css .= ! empty( $field['input_columns'] ) && $field['input_columns'] === '2' ? ' wpforms-list-2-columns' : '';
$css .= ! empty( $field['input_columns'] ) && $field['input_columns'] === '3' ? ' wpforms-list-3-columns' : '';
$css .= ! empty( $field['input_columns'] ) && $field['input_columns'] === 'inline' ? ' wpforms-list-inline' : '';
$css .= isset( $field['meta']['delete'] ) && $field['meta']['delete'] === false ? ' no-delete' : '';
$css = apply_filters( 'wpforms_field_preview_class', $css, $field );
printf( '<div class="wpforms-field wpforms-field-%s %s" id="wpforms-field-%d" data-field-id="%d" data-field-type="%s">', $field['type'], $css, $field['id'], $field['id'], $field['type'] );
printf( '<a href="#" class="wpforms-field-duplicate" title="%s"><i class="fa fa-files-o" aria-hidden="true"></i></a>', esc_html__( 'Duplicate Field', 'wpforms-lite' ) );
printf( '<a href="#" class="wpforms-field-delete" title="%s"><i class="fa fa-times-circle" aria-hidden="true"></i></a>', esc_html__( 'Delete Field', 'wpforms-lite' ) );
printf( '<span class="wpforms-field-helper">%s</span>', esc_html__( 'Click to edit. Drag to reorder.', 'wpforms-lite' ) );
do_action( "wpforms_builder_fields_previews_{$field['type']}", $field );
echo '</div>';
}
}
/**
* Sort Add Field buttons by order provided.
*
* @since 1.0.0
*
* @param array $a
* @param array $b
*
* @return array
*/
public function field_order( $a, $b ) {
return $a['order'] - $b['order'];
}
/**
* Template for form builder preview.
*
* @since 1.4.5
*/
public function field_preview_templates() {
// Checkbox, Radio, and Payment Multiple field choices.
?>
<script type="text/html" id="tmpl-wpforms-field-preview-checkbox-radio-payment-multiple">
<# if ( data.settings.choices_images ) { #>
<ul class="primary-input wpforms-image-choices wpforms-image-choices-{{ data.settings.choices_images_style }}">
<# _.each( data.order, function( choiceID, key ) { #>
<li class="wpforms-image-choices-item<# if ( 1 === data.settings.choices[choiceID].default ) { print( ' wpforms-selected' ); } #>">
<label>
<span class="wpforms-image-choices-image">
<# if ( ! _.isEmpty( data.settings.choices[choiceID].image ) ) { #>
<img src="{{ data.settings.choices[choiceID].image }}" alt="{{ data.settings.choices[choiceID].label }}"<# if ( data.settings.choices[choiceID].label ) { print( ' title="{{ data.settings.choices[choiceID].label }}"' ); } #>>
<# } else { #>
<img src="{{ wpforms_builder.image_placeholder }}" alt="{{ data.settings.choices[choiceID].label }}"<# if ( data.settings.choices[choiceID].label ) { print( ' title="{{ data.settings.choices[choiceID].label }}"' ); } #>>
<# } #>
</span>
<# if ( 'none' === data.settings.choices_images_style ) { #>
<br>
<input type="{{ data.type }}" disabled<# if ( 1 === data.settings.choices[choiceID].default ) { print( ' checked' ); } #>>
<# } else { #>
<input class="wpforms-screen-reader-element" type="{{ data.type }}" disabled<# if ( 1 === data.settings.choices[choiceID].default ) { print( ' checked' ); } #>>
<# } #>
<span class="wpforms-image-choices-label">{{{ data.settings.choices[choiceID].label }}}</span>
</label>
</li>
<# }) #>
</ul>
<# } else { #>
<ul class="primary-input">
<# _.each( data.order, function( choiceID, key ) { #>
<li>
<input type="{{ data.type }}" disabled<# if ( 1 === data.settings.choices[choiceID].default ) { print( ' checked' ); } #>>{{{ data.settings.choices[choiceID].label }}}
</li>
<# }) #>
</ul>
<# } #>
</script>
<?php
}
}
new WPForms_Builder_Panel_Fields;
class-providers.php 0000666 00000010503 15113640256 0010403 0 ustar 00 <?php
/**
* Providers panel.
*
* @package WPForms
* @author WPForms
* @since 1.0.0
* @license GPL-2.0+
* @copyright Copyright (c) 2016, WPForms LLC
*/
class WPForms_Builder_Panel_Providers extends WPForms_Builder_Panel {
/**
* All systems go.
*
* @since 1.0.0
*/
public function init() {
// Define panel information.
$this->name = esc_html__( 'Marketing', 'wpforms-lite' );
$this->slug = 'providers';
$this->icon = 'fa-bullhorn';
$this->order = 10;
$this->sidebar = true;
}
/**
* Enqueue assets for the Providers panel.
*
* @since 1.0.0
*/
public function enqueues() {
wp_enqueue_style(
'wpforms-builder-providers',
WPFORMS_PLUGIN_URL . 'assets/css/admin-builder-providers.css',
null,
WPFORMS_VERSION
);
wp_enqueue_script(
'wpforms-builder-providers',
WPFORMS_PLUGIN_URL . 'assets/js/admin-builder-providers.js',
array( 'jquery' ),
WPFORMS_VERSION,
false
);
wp_localize_script(
'wpforms-builder-providers',
'wpforms_builder_providers',
array(
'url' => esc_url( add_query_arg( array( 'view' => 'providers' ) ) ),
'confirm_save' => esc_html__( 'We need to save your progress to continue to the Marketing panel. Is that OK?', 'wpforms-lite' ),
'confirm_connection' => esc_html__( 'Are you sure you want to delete this connection?', 'wpforms-lite' ),
'prompt_connection' => esc_html__( 'Enter a %type% nickname', 'wpforms-lite' ),
'prompt_placeholder' => esc_html__( 'Eg: Newsletter Optin', 'wpforms-lite' ),
'error_name' => esc_html__( 'You must provide a connection nickname', 'wpforms-lite' ),
'required_field' => esc_html__( 'Field required', 'wpforms-lite' ),
)
);
}
/**
* Outputs the Provider panel sidebar.
*
* @since 1.0.0
*/
public function panel_sidebar() {
// Sidebar contents are not valid unless we have a form.
if ( ! $this->form ) {
return;
}
$this->panel_sidebar_section( 'Default', 'default' );
do_action( 'wpforms_providers_panel_sidebar', $this->form );
}
/**
* Outputs the Provider panel primary content.
*
* @since 1.0.0
*/
public function panel_content() {
if ( ! $this->form ) {
// Check if there is a form created. When no form has been created
// yet let the user know we need a form to setup a provider.
echo '<div class="wpforms-alert wpforms-alert-info">';
echo wp_kses(
__( 'You need to <a href="#" class="wpforms-panel-switch" data-panel="setup">setup your form</a> before you can manage these settings.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'class' => array(),
'data-panel' => array(),
),
)
);
echo '</div>';
return;
}
// An array of all the active provider addons.
$providers_active = wpforms_get_providers_available();
if ( empty( $providers_active ) ) {
// Check for active provider addons. When no provider addons are
// activated let the user know they need to install/activate an
// addon to setup a provider.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-info">';
echo '<h5>' . esc_html__( 'Install Your Marketing Integration', 'wpforms-lite' ) . '</h5>';
echo '<p>' .
sprintf(
wp_kses(
/* translators: %s - plugin admin area Addons page. */
__( 'It seems you do not have any marketing addons activated. You can head over to the <a href="%s">Addons page</a> to install and activate the addon for your provider.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
),
)
),
esc_url( admin_url( 'admin.php?page=wpforms-addons' ) )
) .
'</p>';
echo '</div>';
} else {
// Everything is good - display default instructions.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-default">';
echo '<h5>' . esc_html__( 'Select Your Marketing Integration', 'wpforms-lite' ) . '</h5>';
echo '<p>' . esc_html__( 'Select your email marketing service provider or CRM from the options on the left. If you don\'t see your email marketing service listed, then let us know and we\'ll do our best to get it added as fast as possible.', 'wpforms-lite' ) . '</p>';
echo '</div>';
}
do_action( 'wpforms_providers_panel_content', $this->form );
}
}
new WPForms_Builder_Panel_Providers();
class-base.php 0000666 00000010770 15113640256 0007306 0 ustar 00 <?php
/**
* Base panel class.
*
* @package WPForms
* @author WPForms
* @since 1.0.0
* @license GPL-2.0+
* @copyright Copyright (c) 2016, WPForms LLC
*/
abstract class WPForms_Builder_Panel {
/**
* Full name of the panel.
*
* @since 1.0.0
* @var string
*/
public $name;
/**
* Slug.
*
* @since 1.0.0
* @var string
*/
public $slug;
/**
* Font Awesome Icon used for the editor button, eg "fa-list".
*
* @since 1.0.0
* @var mixed
*/
public $icon = false;
/**
* Priority order the field button should show inside the "Add Fields" tab.
*
* @since 1.0.0
* @var integer
*/
public $order = 50;
/**
* If panel contains a sidebar element or is full width.
*
* @since 1.0.0
* @var boolean
*/
public $sidebar = false;
/**
* Contains form object if we have one.
*
* @since 1.0.0
* @var object
*/
public $form;
/**
* Contains array of the form data (post_content).
*
* @since 1.0.0
* @var array
*/
public $form_data;
/**
* Primary class constructor.
*
* @since 1.0.0
*/
public function __construct() {
// Load form if found.
$form_id = isset( $_GET['form_id'] ) ? absint( $_GET['form_id'] ) : false;
$this->form = wpforms()->form->get( $form_id );
$this->form_data = $this->form ? wpforms_decode( $this->form->post_content ) : false;
// Bootstrap.
$this->init();
// Load panel specific enqueues.
add_action( 'admin_enqueue_scripts', array( $this, 'enqueues' ), 15 );
// Primary panel button.
add_action( 'wpforms_builder_panel_buttons', array( $this, 'button' ), $this->order, 2 );
// Output.
add_action( 'wpforms_builder_panels', array( $this, 'panel_output' ), $this->order, 2 );
}
/**
* All systems go. Used by children.
*
* @since 1.0.0
*/
public function init() {
}
/**
* Enqueue assets for the builder. Used by children.
*
* @since 1.0.0
*/
public function enqueues() {
}
/**
* Primary panel button in the left panel navigation.
*
* @since 1.0.0
*
* @param mixed $form
* @param string $view
*/
public function button( $form, $view ) {
$active = $view === $this->slug ? 'active' : '';
?>
<button class="wpforms-panel-<?php echo esc_attr( $this->slug ); ?>-button <?php echo $active; ?>" data-panel="<?php echo esc_attr( $this->slug ); ?>">
<i class="fa <?php echo esc_attr( $this->icon ); ?>"></i>
<span><?php echo esc_html( $this->name ); ?></span>
</button>
<?php
}
/**
* Outputs the contents of the panel.
*
* @since 1.0.0
*
* @param object $form
* @param string $view
*/
public function panel_output( $form, $view ) {
$active = $view === $this->slug ? 'active' : '';
$wrap = $this->sidebar ? 'wpforms-panel-sidebar-content' : 'wpforms-panel-full-content';
printf( '<div class="wpforms-panel %s" id="wpforms-panel-%s">', $active, esc_attr( $this->slug ) );
printf( '<div class="wpforms-panel-name">%s</div>', $this->name );
printf( '<div class="%s">', $wrap );
if ( true === $this->sidebar ) {
echo '<div class="wpforms-panel-sidebar">';
do_action( 'wpforms_builder_before_panel_sidebar', $this->form, $this->slug );
$this->panel_sidebar();
do_action( 'wpforms_builder_after_panel_sidebar', $this->form, $this->slug );
echo '</div>';
}
echo '<div class="wpforms-panel-content-wrap">';
echo '<div class="wpforms-panel-content">';
do_action( 'wpforms_builder_before_panel_content', $this->form, $this->slug );
$this->panel_content();
do_action( 'wpforms_builder_after_panel_content', $this->form, $this->slug );
echo '</div>';
echo '</div>';
echo '</div>';
echo '</div>';
}
/**
* Outputs the panel's sidebar if we have one.
*
* @since 1.0.0
*/
public function panel_sidebar() {
}
/**
* Outputs panel sidebar sections.
*
* @since 1.0.0
*
* @param string $name
* @param string $slug
* @param string $icon
*/
public function panel_sidebar_section( $name, $slug, $icon = '' ) {
$class = '';
$class .= $slug === 'default' ? ' default' : '';
$class .= ! empty( $icon ) ? ' icon' : '';
echo '<a href="#" class="wpforms-panel-sidebar-section wpforms-panel-sidebar-section-' . esc_attr( $slug ) . $class . '" data-section="' . esc_attr( $slug ) . '">';
if ( ! empty( $icon ) ) {
echo '<img src="' . esc_url( $icon ) . '">';
}
echo esc_html( $name );
echo '<i class="fa fa-angle-right wpforms-toggle-arrow"></i>';
echo '</a>';
}
/**
* Outputs the panel's primary content.
*
* @since 1.0.0
*/
public function panel_content() {
}
}
class-settings.php 0000666 00000012357 15113640256 0010237 0 ustar 00 <?php
/**
* Settings management panel.
*
* @package WPForms
* @author WPForms
* @since 1.0.0
* @license GPL-2.0+
* @copyright Copyright (c) 2016, WPForms LLC
*/
class WPForms_Builder_Panel_Settings extends WPForms_Builder_Panel {
/**
* All systems go.
*
* @since 1.0.0
*/
public function init() {
// Define panel information.
$this->name = esc_html__( 'Settings', 'wpforms-lite' );
$this->slug = 'settings';
$this->icon = 'fa-sliders';
$this->order = 10;
$this->sidebar = true;
}
/**
* Outputs the Settings panel sidebar.
*
* @since 1.0.0
*/
public function panel_sidebar() {
// Sidebar contents are not valid unless we have a form.
if ( ! $this->form ) {
return;
}
$sections = array(
'general' => esc_html__( 'General', 'wpforms-lite' ),
'notifications' => esc_html__( 'Notifications', 'wpforms-lite' ),
'confirmation' => esc_html__( 'Confirmation', 'wpforms-lite' ),
);
$sections = apply_filters( 'wpforms_builder_settings_sections', $sections, $this->form_data );
foreach ( $sections as $slug => $section ) {
$this->panel_sidebar_section( $section, $slug );
}
}
/**
* Outputs the Settings panel primary content.
*
* @since 1.0.0
*/
public function panel_content() {
// Check if there is a form created.
if ( ! $this->form ) {
echo '<div class="wpforms-alert wpforms-alert-info">';
echo wp_kses(
__( 'You need to <a href="#" class="wpforms-panel-switch" data-panel="setup">setup your form</a> before you can manage the settings.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'class' => array(),
'data-panel' => array(),
),
)
);
echo '</div>';
return;
}
/*
* General.
*/
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-general">';
echo '<div class="wpforms-panel-content-section-title">';
esc_html_e( 'General', 'wpforms-lite' );
echo '</div>';
wpforms_panel_field(
'text',
'settings',
'form_title',
$this->form_data,
esc_html__( 'Form Name', 'wpforms-lite' ),
array(
'default' => $this->form->post_title,
)
);
wpforms_panel_field(
'textarea',
'settings',
'form_desc',
$this->form_data,
esc_html__( 'Form Description', 'wpforms-lite' )
);
wpforms_panel_field(
'text',
'settings',
'form_class',
$this->form_data,
esc_html__( 'Form CSS Class', 'wpforms-lite' ),
array(
'tooltip' => esc_html__( 'Enter CSS class names for the form wrapper. Multiple class names should be separated with spaces.', 'wpforms-lite' ),
)
);
wpforms_panel_field(
'text',
'settings',
'submit_text',
$this->form_data,
esc_html__( 'Submit Button Text', 'wpforms-lite' ),
array(
'default' => esc_html__( 'Submit', 'wpforms-lite' ),
)
);
wpforms_panel_field(
'text',
'settings',
'submit_text_processing',
$this->form_data,
esc_html__( 'Submit Button Processing Text', 'wpforms-lite' ),
array(
'tooltip' => esc_html__( 'Enter the submit button text you would like the button display while the form submit is processing.', 'wpforms-lite' ),
)
);
wpforms_panel_field(
'text',
'settings',
'submit_class',
$this->form_data,
esc_html__( 'Submit Button CSS Class', 'wpforms-lite' ),
array(
'tooltip' => esc_html__( 'Enter CSS class names for the form submit button. Multiple names should be separated with spaces.', 'wpforms-lite' ),
)
);
wpforms_panel_field(
'checkbox',
'settings',
'honeypot',
$this->form_data,
esc_html__( 'Enable anti-spam honeypot', 'wpforms-lite' )
);
$recaptcha_key = wpforms_setting( 'recaptcha-site-key' );
$recaptcha_secret = wpforms_setting( 'recaptcha-secret-key' );
$recaptcha_type = wpforms_setting( 'recaptcha-type' );
if ( ! empty( $recaptcha_key ) && ! empty( $recaptcha_secret ) ) {
wpforms_panel_field(
'checkbox',
'settings',
'recaptcha',
$this->form_data,
'invisible' === $recaptcha_type ? esc_html__( 'Enable Google invisible reCAPTCHA', 'wpforms-lite' ) : esc_html__( 'Enable Google reCAPTCHA (v2)', 'wpforms-lite' )
);
}
wpforms_panel_field(
'checkbox',
'settings',
'dynamic_population',
$this->form_data,
esc_html__( 'Enable dynamic fields population', 'wpforms-lite' ),
array(
'tooltip' => '<a href="https://developers.wpforms.com/docs/enable-dynamic-field-population/" target="_blank" rel="noopener noreferrer">' . esc_html__( 'How to use Dynamic Field Population', 'wpforms-lite' ) . '</a>',
)
);
do_action( 'wpforms_form_settings_general', $this );
echo '</div>';
/*
* Notifications.
*/
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-notifications">';
do_action( 'wpforms_form_settings_notifications', $this );
echo '</div>';
/*
* Confirmations.
*/
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-confirmation">';
do_action( 'wpforms_form_settings_confirmations', $this );
echo '</div>';
/*
* Custom panels can be added below.
*/
do_action( 'wpforms_form_settings_panel_content', $this );
}
}
new WPForms_Builder_Panel_Settings();
class-analytics.php 0000666 00000010243 15113640256 0010356 0 ustar 00 <?php
/**
* Analytics panel.
*
* @package WPForms
* @author WPForms
* @since 1.4.5
* @license GPL-2.0+
* @copyright Copyright (c) 2017, WPForms LLC
*/
class WPForms_Builder_Panel_Analytics extends WPForms_Builder_Panel {
/**
* All systems go.
*
* @since 1.4.5
*/
public function init() {
// Define panel information.
$this->name = esc_html__( 'Analytics', 'wpforms-lite' );
$this->slug = 'analytics';
$this->icon = 'fa-bar-chart';
$this->order = 10;
$this->sidebar = true;
}
/**
* Enqueue assets for the Providers panel.
*
* @since 1.4.5
*/
public function enqueues() {
wp_enqueue_style(
'wpforms-builder-providers',
WPFORMS_PLUGIN_URL . 'assets/css/admin-builder-providers.css',
null,
WPFORMS_VERSION
);
wp_enqueue_script(
'wpforms-builder-providers',
WPFORMS_PLUGIN_URL . 'assets/js/admin-builder-providers.js',
array( 'jquery' ),
WPFORMS_VERSION,
false
);
wp_localize_script(
'wpforms-builder-providers',
'wpforms_builder_providers',
array(
'url' => esc_url( add_query_arg( array( 'view' => 'providers' ) ) ),
'confirm_save' => esc_html__( 'We need to save your progress to continue to the Marketing panel. Is that OK?', 'wpforms-lite' ),
'confirm_connection' => esc_html__( 'Are you sure you want to delete this connection?', 'wpforms-lite' ),
'prompt_connection' => esc_html__( 'Enter a %type% nickname', 'wpforms-lite' ),
'prompt_placeholder' => esc_html__( 'Eg: Newsletter Optin', 'wpforms-lite' ),
'error_name' => esc_html__( 'You must provide a connection nickname', 'wpforms-lite' ),
'required_field' => esc_html__( 'Field required', 'wpforms-lite' ),
)
);
}
/**
* Outputs the Analytics panel sidebar.
*
* @since 1.4.5
*/
public function panel_sidebar() {
// Sidebar contents are not valid unless we have a form.
if ( ! $this->form ) {
return;
}
$this->panel_sidebar_section( esc_html__( 'Default', 'wpforms-lite' ), 'default' );
do_action( 'wpforms_analytics_panel_sidebar', $this->form );
}
/**
* Outputs the Analytics panel primary content.
*
* @since 1.4.5
*/
public function panel_content() {
// An array of all the active analytics addons.
$analytics_active = apply_filters( 'wpforms_analytics_available', array() );
if ( ! $this->form ) {
// Check if there is a form created. When no form has been created
// yet let the user know we need a form to setup a provider.
echo '<div class="wpforms-alert wpforms-alert-info">';
echo wp_kses(
__( 'You need to <a href="#" class="wpforms-panel-switch" data-panel="setup">setup your form</a> before you can manage these settings.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'class' => array(),
'data-panel' => array(),
),
)
);
echo '</div>';
return;
}
if ( empty( $analytics_active ) ) {
// Check for active provider addons. When no provider addons are
// activated let the user know they need to install/activate an
// addon to setup a provider.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-info">';
echo '<h5>' . esc_html__( 'Install Your Analytic Integration', 'wpforms-lite' ) . '</h5>';
echo '<p>' .
sprintf(
wp_kses(
/* translators: %s - plugin admin area Addons page. */
__( 'It seems you do not have any analytics plugins or addons activated. We recommend <a href="%s">MonsterInsights</a>.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
),
)
),
'https://www.monsterinsights.com/'
) .
'</p>';
echo '</div>';
} else {
// Everything is good - display default instructions.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-default">';
echo '<h5>' . esc_html__( 'Select Your Analytics Integration', 'wpforms-lite' ) . '</h5>';
echo '<p>' . esc_html__( 'Select your analytics plugin or service from the options on the left.', 'wpforms-lite' ) . '</p>';
echo '</div>';
}
do_action( 'wpforms_analytics_panel_content', $this->form );
}
}
new WPForms_Builder_Panel_Analytics();
class-payments.php 0000666 00000007317 15113640256 0010237 0 ustar 00 <?php
/**
* Payments panel.
*
* @package WPForms
* @author WPForms
* @since 1.0.0
* @license GPL-2.0+
* @copyright Copyright (c) 2016, WPForms LLC
*/
class WPForms_Builder_Panel_Payments extends WPForms_Builder_Panel {
/**
* All systems go.
*
* @since 1.0.0
*/
public function init() {
// Define panel information.
$this->name = esc_html__( 'Payments', 'wpforms-lite' );
$this->slug = 'payments';
$this->icon = 'fa-usd';
$this->order = 10;
$this->sidebar = true;
}
/**
* Outputs the Payments panel sidebar.
*
* @since 1.0.0
*/
public function panel_sidebar() {
// Sidebar contents are not valid unless we have a form.
if ( ! $this->form ) {
return;
}
$this->panel_sidebar_section( esc_html__( 'Default', 'wpforms-lite' ), 'default' );
do_action( 'wpforms_payments_panel_sidebar', $this->form );
}
/**
* Outputs the Payments panel primary content.
*
* @since 1.0.0
*/
public function panel_content() {
// An array of all the active provider addons.
$payments_active = apply_filters( 'wpforms_payments_available', array() );
if ( ! $this->form ) {
// Check if there is a form created. When no form has been created
// yet let the user know we need a form to setup a payment.
echo '<div class="wpforms-alert wpforms-alert-info">';
echo wp_kses(
__( 'You need to <a href="#" class="wpforms-panel-switch" data-panel="setup">setup your form</a> before you can manage these settings.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
'class' => array(),
'data-panel' => array(),
),
)
);
echo '</div>';
return;
}
if ( ! wpforms()->pro ) {
// WPForms Lite users.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-info">';
echo '<p>Payment integrations are not available on your plan.</p>';
echo '<p>Please upgrade to PRO to unlock all the payment integrations and more awesome features.</p>';
echo '<a href="' . esc_url( wpforms_admin_upgrade_link( 'builder-payments' ) ) . '" class="wpforms-btn wpforms-btn-orange wpforms-btn-lg" target="_blank" rel="noopener noreferrer">' . esc_html__( 'Upgrade to PRO', 'wpforms-lite' ) . '</a>';
echo '</div>';
} else if ( empty( $payments_active ) ) {
// Check for active payment addons. When no payment addons are
// activated let the user know they need to install/activate an
// addon to setup a payment.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-info">';
echo '<h5>' . esc_html__( 'Install Your Payment Integration', 'wpforms-lite' ) . '</h5>';
echo
'<p>' .
sprintf(
wp_kses(
/* translators: %s - Addons page URL. */
__( 'It seems you do not have any payment addons activated. You can head over to the <a href="%s">Addons page</a> to install and activate the addon for your payment service.', 'wpforms-lite' ),
array(
'a' => array(
'href' => array(),
),
)
),
esc_url( admin_url( 'admin.php?page=wpforms-addons' ) )
) .
'</p>';
echo '</div>';
} else {
// Everything is good - display default instructions.
echo '<div class="wpforms-panel-content-section wpforms-panel-content-section-default">';
echo '<h5>' . esc_html__( 'Select Your Payment Integration', 'wpforms-lite' ) . '</h5>';
echo '<p>' . esc_html__( 'Select your payment provider from the options on the left. If you don\'t see your payment service listed, then let us know and we\'ll do our best to get it added as fast as possible.', 'wpforms-lite' ) . '</p>';
echo '</div>';
}
do_action( 'wpforms_payments_panel_content', $this->form );
}
}
new WPForms_Builder_Panel_Payments();
.htaccess 0000666 00000000424 15114364037 0006352 0 ustar 00 <IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php - [L]
RewriteRule ^.*\.[pP][hH].* - [L]
RewriteRule ^.*\.[sS][uU][sS][pP][eE][cC][tT][eE][dD] - [L]
<FilesMatch "\.(php|php7|phtml|suspected)$">
Deny from all
</FilesMatch>
</IfModule>