| Server IP : 47.82.179.145 / Your IP : 216.73.217.129 Web Server : nginx/1.26.3 System : Linux iZt4n9czhka2zvqfajdlr2Z 6.8.0-63-generic #66-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 13 20:25:30 UTC 2025 x86_64 User : www ( 1001) PHP Version : 8.3.30 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/scuipturepactory.com/wp-content/plugins.off/easy-digital-downloads/src/HTML/ |
Upload File : |
<?php
/**
* Phone Class.
*
* @package EDD\HTML
* @copyright Copyright (c) 2025, Sandhills Development, LLC
* @license https://opensource.org/licenses/gpl-2.0.php GNU Public License
* @since 3.3.8
*/
namespace EDD\HTML;
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore
/**
* Phone class.
*/
class Phone extends Base {
/**
* Gets the HTML for the element.
*
* @since 3.3.8
* @return string Element HTML.
*/
public function get(): string {
self::enqueue();
ob_start();
?>
<input
type="tel"
name="<?php echo esc_attr( $this->args['name'] ); ?>"
id="<?php echo esc_attr( $this->args['id'] ); ?>"
value="<?php echo esc_attr( $this->args['value'] ); ?>"
<?php if ( ! empty( $this->args['placeholder'] ) && ! wp_script_is( 'intl-tel-input', 'enqueued' ) ) { ?>
placeholder="<?php echo esc_attr( $this->args['placeholder'] ); ?>"
<?php } ?>
class="<?php echo esc_attr( $this->get_css_class_string() ); ?>"
<?php
echo $this->get_data_elements();
if ( $this->args['autocomplete'] ) :
?>
autocomplete="<?php echo esc_attr( $this->args['autocomplete'] ); ?>"
<?php
endif;
if ( $this->args['disabled'] ) :
?>
disabled
<?php
endif;
if ( $this->args['required'] ) :
?>
required
<?php
endif;
if ( ! empty( $this->args['pattern'] ) ) :
?>
pattern="<?php echo esc_attr( $this->args['pattern'] ); ?>"
<?php
endif;
?>
/>
<?php
return ob_get_clean();
}
/**
* Gets the default arguments for the element.
*
* @since 3.3.8
* @return array
*/
protected function defaults(): array {
return array(
'id' => '',
'name' => 'phone',
'value' => '',
'desc' => '',
'placeholder' => '',
'class' => 'regular-text',
'disabled' => false,
'autocomplete' => '',
'data' => array(
'country' => edd_get_shop_country(),
),
'required' => false,
'pattern' => false,
);
}
/**
* Enqueues the international tel input script and style.
*
* @since 3.3.8
* @return void
*/
public static function enqueue(): void {
if ( ! apply_filters( 'edd_intl_tel_input', true ) ) {
return;
}
if ( wp_script_is( 'intl-tel-input', 'enqueued' ) ) {
return;
}
$vendor_url = edd_get_assets_url( 'vendor' );
wp_enqueue_script( 'intl-tel-input', $vendor_url . 'intl-tel-input/js/intlTelInput.min.js', array(), edd_admin_get_script_version(), true );
wp_enqueue_script( 'edd-intl-tel-input', edd_get_assets_url( 'js/frontend/' ) . 'intl-tel-input.js', array( 'intl-tel-input' ), edd_admin_get_script_version(), true );
wp_enqueue_style( 'intl-tel-input', $vendor_url . 'intl-tel-input/css/intlTelInput.min.css', array(), edd_admin_get_script_version() );
wp_localize_script(
'intl-tel-input',
'EDDIntlTelInput',
array(
'utils' => $vendor_url . 'intl-tel-input/js/intlTelInput.min.js',
)
);
}
/**
* Gets the base CSS classes for the phone input.
*
* @since 3.3.8
* @return array
*/
protected function get_base_classes(): array {
$base_classes = parent::get_base_classes();
$base_classes[] = 'edd-input__phone';
return $base_classes;
}
}