OwlCyberSecurity - MANAGER
Edit File: InsertForm.php
<?php /** * @copyright Copyright (c) 2009-2022 ThemeCatcher (https://www.themecatcher.net) */ class Quform_Admin_InsertForm { /** * @var Quform_Repository */ protected $repository; /** * @var Quform_Options */ protected $options; /** * @var boolean */ protected $printedAssets = false; /** * @param Quform_Repository $repository * @param Quform_Options $options */ public function __construct(Quform_Repository $repository, Quform_Options $options) { $this->repository = $repository; $this->options = $options; } /** * Register the CSS file for the insert button */ public function registerScripts() { wp_register_style('quform-insert-form', Quform::adminUrl('css/insert-form.min.css'), array(), QUFORM_VERSION); } /** * Displays the insert form button */ public function button() { if ( ! $this->options->get('insertFormButton') || ! current_user_can('quform_list_forms')) { return; } // Don't display the button in an editor in the form builder page if (isset($_GET['page']) && $_GET['page'] == 'quform.forms') { return; } if ( ! $this->printedAssets) { wp_print_styles('quform-insert-form'); $this->printedAssets = true; } printf( '<button type="button" class="button qfb-insert-form-trigger" onclick="%s" data-l10n="%s"><span></span>%s</button>', sprintf("!function(o){window.quformInsertForm?window.quformInsertForm.loadPopup():jQuery.getScript('%s',function(){window.quformInsertForm.init(o)})}(this);", esc_js(esc_url(Quform::adminUrl('js/insert-form.min.js')))), Quform::escape(wp_json_encode(array( 'ajaxUrl' => admin_url('admin-ajax.php'), 'selectForm' => __('Please select a form first', 'quform'), 'couldNotSendToEditor' => __('The shortcode could not be sent to the editor, please copy it from the preview area and paste it into the editor', 'quform') ))), esc_html__('Add Form', 'quform') ); } /** * Displays the insert form popup */ public function display() { $orderBy = get_user_meta(get_current_user_id(), 'quform_forms_order_by', true); $order = get_user_meta(get_current_user_id(), 'quform_forms_order', true); $forms = $this->repository->formsToSelectArray(null, $orderBy, $order); ?> <div class="qfb-popup qfb-insert-form-popup"> <div class="qfb-popup-content"> <span class="qfb-insert-form-cancel"><span></span></span> <div class="qfb-settings-heading"><?php esc_html_e('Insert a form', 'quform'); ?></div> <?php if (count($forms)) : ?> <div class="qfb-sub-setting"> <select id="qfb-insert-form-id"> <option value=""><?php esc_html_e('Select a form', 'quform'); ?></option> <?php foreach ($forms as $id => $name) : ?> <option value="<?php echo Quform::escape($id); ?>"><?php echo Quform::escape($name); ?></option> <?php endforeach; ?> </select> </div> <div class="qfb-sub-setting"> <div class="qfb-sub-setting-label"> <label for="qfb-insert-form-show-title"><?php esc_html_e('Show form title', 'quform'); ?></label> </div> <div class="qfb-sub-setting-inner"> <div class="qfb-sub-setting-input"> <input type="checkbox" id="qfb-insert-form-show-title" class="qfb-mini-toggle" checked> <label for="qfb-insert-form-show-title"></label> </div> </div> </div> <div class="qfb-sub-setting"> <div class="qfb-sub-setting-label"> <label for="qfb-insert-form-show-description"><?php esc_html_e('Show form description', 'quform'); ?></label> </div> <div class="qfb-sub-setting-inner"> <div class="qfb-sub-setting-input"> <input type="checkbox" id="qfb-insert-form-show-description" class="qfb-mini-toggle" checked> <label for="qfb-insert-form-show-description"></label> </div> </div> </div> <div class="qfb-sub-setting"> <div class="qfb-sub-setting-label"> <label for="qfb-insert-form-popup"><?php esc_html_e('Popup form', 'quform'); ?></label> </div> <div class="qfb-sub-setting-inner"> <div class="qfb-sub-setting-input"> <input type="checkbox" id="qfb-insert-form-popup" class="qfb-mini-toggle"> <label for="qfb-insert-form-popup"></label> </div> </div> </div> <div class="qfb-sub-setting"> <div class="qfb-sub-setting-label"> <label for="qfb-insert-form-content"><?php esc_html_e('Content', 'quform'); ?></label> </div> <div class="qfb-sub-setting-inner"> <div class="qfb-sub-setting-input"> <textarea id="qfb-insert-form-content"></textarea> <p class="qfb-description"><?php esc_html_e('The text or HTML to trigger the popup, shortcodes can also be used.', 'quform'); ?></p> </div> </div> </div> <div class="qfb-sub-setting"> <div class="qfb-sub-setting-label"> <label for="qfb-insert-form-width"><?php esc_html_e('Width (optional)', 'quform'); ?></label> </div> <div class="qfb-sub-setting-inner"> <div class="qfb-sub-setting-input"> <input type="text" id="qfb-insert-form-width"> <p class="qfb-description"><?php esc_html_e('The width of the popup, any CSS width or number is accepted.', 'quform'); ?></p> </div> </div> </div> <div class="qfb-sub-setting"> <div class="qfb-sub-setting-label"> <label for="qfb-insert-form-options"><?php esc_html_e('Options (optional)', 'quform'); ?></label> </div> <div class="qfb-sub-setting-inner"> <div class="qfb-sub-setting-input"> <input type="text" id="qfb-insert-form-options"> <p class="qfb-description"> <?php printf( /* translators: %1$s: open link tag, %2$s: close link tag */ esc_html__('JSON encoded options to pass to the popup script, %1$sexamples%2$s.', 'quform'), '<a href="https://support.themecatcher.net/quform-wordpress-v2/guides/customization/popup-script-options" target="_blank">', '</a>' ); ?> </p> </div> </div> </div> <div class="qfb-insert-form-button-wrap qfb-cf"> <button type="button" class="button button-primary qfb-insert-form-go"><?php esc_html_e('Insert', 'quform'); ?></button> </div> <div class="qfb-insert-form-preview"> <p><?php esc_html_e('If you are having trouble inserting the form, copy and paste the code below into the page content.', 'quform'); ?></p> <input type="text" id="qfb-insert-form-preview" readonly> </div> <?php else : ?> <?php if (current_user_can('quform_add_forms')) { /* translators: %1$s: open link tag, %2$s: close link tag */ printf(esc_html__('No forms found, %1$sclick here to create one%2$s.', 'quform'), '<a href="' . esc_url(admin_url('admin.php?page=quform.forms&sp=add')) . '">', '</a>'); } else { esc_html_e('No forms found.', 'quform'); } ?> <?php endif; ?> </div> <div class="qfb-popup-overlay"></div> </div> <?php wp_die(); } }