Server IP : 192.158.238.246 / Your IP : 18.220.167.202 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/task/7779/cwd/plugins/give/src/Onboarding/Wizard/ |
Upload File : |
<?php namespace Give\Onboarding\Wizard; defined('ABSPATH') || exit; use Give\Helpers\EnqueueScript; use Give\Onboarding\FormRepository; use Give_Scripts; /** * Form Preview page class * * Responsible for setting up and rendering Form Preview page at wp-admin/?page=give-form-preview * This URL is used as the src for an iframe which appears inside the Onboarding Wizard. * * @since 2.8.0 */ class FormPreview { /** @var string $slug Page slug used for displaying form preview */ protected $slug = 'give-form-preview'; /** @var FormRepository */ protected $formRepository; public function __construct(FormRepository $formRepository) { $this->formRepository = $formRepository; } /** * Adds Form Preview as dashboard page * * Register Form Preview as an admin page route * * @since 2.8.0 **/ public function add_page() { add_submenu_page('', '', '', 'manage_options', $this->slug); } /** * Conditionally renders Form Preview markup * * If the current page query matches the form preview's slug, method renders the form preview. * * @since 2.8.0 **/ public function setup_form_preview() { if (empty($_GET['page']) || $this->slug !== $_GET['page']) { // WPCS: CSRF ok, input var ok. return; } else { $this->render_page(); } } /** * Renders form preview markup * * Uses an object buffer to display the form preview template * * @since 2.8.0 **/ public function render_page() { $this->register_scripts(); ob_start(); include_once plugin_dir_path(__FILE__) . 'templates/form-preview.php'; exit; } /** * Registers form preview scripts/styles * * @since 2.8.0 **/ protected function register_scripts() { wp_register_style( 'give-styles', (new Give_Scripts)->get_frontend_stylesheet_uri(), [], GIVE_VERSION, 'all' ); EnqueueScript::make('give', 'assets/dist/js/give.js' ) ->registerTranslations() ->register(); } /** * Returns the ID of the form used for the form preview * * @since 2.8.0 **/ protected function get_preview_form_id() { return $this->formRepository->getOrMake(); } }