* @copyright 2007-2022 Leotheme * @license http://leotheme.com - prestashop template provider */ namespace LeoElements; use LeoElements\Modules\DynamicTags\Module as TagsModule; use LeoElements\Leo_Helper; if ( ! defined( '_PS_VERSION_' ) ) { exit; // Exit if accessed directly. } /** * Elementor URL control. * * A base control for creating url control. Displays a URL input with the * ability to set the target of the link to `_blank` to open in a new tab. * * @since 1.0.0 */ class Control_URL extends Control_Base_Multiple { /** * Get url control type. * * Retrieve the control type, in this case `url`. * * @since 1.0.0 * @access public * * @return string Control type. */ public function get_type() { return 'url'; } /** * Get url control default values. * * Retrieve the default value of the url control. Used to return the default * values while initializing the url control. * * @since 1.0.0 * @access public * * @return array Control default value. */ public function get_default_value() { return [ 'url' => '', 'is_external' => '', 'nofollow' => '', ]; } /** * Get url control default settings. * * Retrieve the default settings of the url control. Used to return the default * settings while initializing the url control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'label_block' => true, 'show_external' => true, 'placeholder' => Leo_Helper::__( 'Paste URL or type', 'elementor' ), 'autocomplete' => true, ]; } /** * Render url control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); $more_input_control_uid = $this->get_control_uid( 'more-input' ); $is_external_control_uid = $this->get_control_uid( 'is_external' ); $nofollow_control_uid = $this->get_control_uid( 'nofollow' ); ?>