File "class-evf-admin-editor.php"
Full Path: /home/rattkxnv/byattorney.com/wp-content/plugins/everest-forms/includes/admin/class-evf-admin-editor.php
File size: 3.33 KB
MIME-type: text/x-php
Charset: utf-8
<?php
/**
* Functionality related to the admin TinyMCE editor.
*
* @package EverestForms/Admin
* @version 1.2.0
*/
defined( 'ABSPATH' ) || exit;
if ( ! class_exists( 'EVF_Admin_Editor', false ) ) {
return new EVF_Admin_Editor();
}
/**
* EVF_Admin_Editor Class.
*/
class EVF_Admin_Editor {
/**
* Constructor.
*/
public function __construct() {
add_action( 'media_buttons', array( $this, 'media_button' ), 15 );
}
/**
* Allow easy shortcode insertion via a custom media button.
*
* @param string $editor_id Unique editor identifier, e.g. 'content'.
*/
public function media_button( $editor_id ) {
if ( ! apply_filters( 'everest_forms_show_media_button', is_admin(), $editor_id ) ) {
return;
}
// Setup the svg icon.
printf(
'<a href="#" class="button evf-insert-form-button" data-editor="%s" title="%s"><span class="wp-media-buttons-icon">%s</span> %s</a>',
esc_attr( $editor_id ),
esc_attr__( 'Add Everest Form', 'everest-forms' ),
'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path fill="#82878c" d="M18.1 4h-3.8l1.2 2h3.9zM20.6 8h-3.9l1.2 2h3.9zM20.6 18H5.8L12 7.9l2.5 4.1H12l-1.2 2h7.3L12 4.1 2.2 20h19.6z"/></g></svg>',
esc_html__( 'Add Form', 'everest-forms' )
);
// If we have made it, then load the JS.
wp_enqueue_script( 'everest-forms-editor' );
add_action( 'admin_footer', array( $this, 'shortcode_modal' ) );
}
/**
* Modal window for inserting the form shortcode into TinyMCE.
*/
public function shortcode_modal() {
?>
<div id="evf-modal-backdrop" style="display: none"></div>
<div id="evf-modal-wrap" style="display: none">
<form id="evf-modal" tabindex="-1">
<div id="evf-modal-title">
<?php esc_html_e( 'Insert Form', 'everest-forms' ); ?>
<button type="button" id="evf-modal-close"><span class="screen-reader-text"><?php esc_html_e( 'Close', 'everest-forms' ); ?></span></button>
</div>
<div id="evf-modal-inner">
<div id="evf-modal-options">
<?php
$forms = evf_get_all_forms();
if ( ! empty( $forms ) ) {
printf( '<p><label for="evf-modal-select-form">%s</label></p>', esc_html__( 'Select a form below to insert', 'everest-forms' ) );
echo '<select id="evf-modal-select-form">';
foreach ( $forms as $form_id => $form_value ) {
printf( '<option value="%d">%s</option>', esc_attr( $form_id ), esc_html( $form_value ) );
}
echo '</select>';
} else {
echo '<p>';
printf(
wp_kses(
/* translators: %s - Everest Builder page. */
__( 'Whoops, you haven\'t created a form yet. Want to <a href="%s">give it a go</a>?', 'everest-forms' ),
array(
'a' => array(
'href' => array(),
),
)
),
esc_url( admin_url( 'admin.php?page=evf-builder' ) )
);
echo '</p>';
}
?>
</div>
</div>
<div class="submitbox">
<div id="evf-modal-cancel">
<a class="submitdelete deletion" href="#"><?php esc_html_e( 'Cancel', 'everest-forms' ); ?></a>
</div>
<?php if ( ! empty( $forms ) ) : ?>
<div id="evf-modal-update">
<button class="button button-primary" id="evf-modal-submit"><?php esc_html_e( 'Add Form', 'everest-forms' ); ?></button>
</div>
<?php endif; ?>
</div>
</form>
</div>
<?php
}
}
return new EVF_Admin_Editor();