laipower/wp-content/plugins/gp-premium/library/customizer/controls/class-action-button-control...

45 lines
1.3 KiB
PHP

<?php
if ( ! defined( 'ABSPATH' ) ) {
exit; // No direct access, please.
}
if ( ! class_exists( 'WP_Customize_Control' ) ) {
return;
}
if ( ! class_exists( 'GeneratePress_Action_Button_Control' ) ) {
/**
* Add a button which needs javascript attached to it.
*/
class GeneratePress_Action_Button_Control extends WP_Customize_Control {
public $type = 'gp_action_button';
public $data_type = '';
public $description = '';
public $nonce = '';
public function enqueue() {
wp_enqueue_script( 'gp-button-actions', trailingslashit( plugin_dir_url( __FILE__ ) ) . 'js/button-actions.js', array( 'customize-controls' ), GP_PREMIUM_VERSION, true );
wp_enqueue_style( 'gp-button-actions', trailingslashit( plugin_dir_url( __FILE__ ) ) . 'css/button-actions.css', array(), GP_PREMIUM_VERSION );
}
public function to_json() {
parent::to_json();
$this->json['data_type'] = $this->data_type;
$this->json['description'] = $this->description;
$this->json['nonce'] = $this->nonce;
}
public function content_template() {
?>
<button class="button" data-type="{{{ data.data_type }}}" data-nonce="{{{ data.nonce }}}">{{{ data.label }}}</button>
<# if ( data.description ) { #>
<span class="description customize-control-description">
<p>{{{ data.description }}}</p>
</span>
<# } #>
<?php
}
}
}