manager->get_control( $setting->id )->input_attrs; $min = ( isset( $atts['min'] ) ? $atts['min'] : $input ); $max = ( isset( $atts['max'] ) ? $atts['max'] : $input ); $step = ( isset( $atts['step'] ) ? $atts['step'] : 1 ); return ( $min <= $input && $input <= $max && is_int( $input / $step ) ? $input : $setting->default ); } endif; /** * Upsell customizer section. * * @since 1.0.0 * @access public */ class Architect_Contractor_Customize_Section_Upsell extends WP_Customize_Section { /** * The type of customize section being rendered. * * @since 1.0.0 * @access public * @var string */ public $type = 'upsell'; /** * Custom button text to output. * * @since 1.0.0 * @access public * @var string */ public $pro_text = ''; /** * Custom pro button URL. * * @since 1.0.0 * @access public * @var string */ public $pro_url = ''; public $notice = ''; public $nonotice = ''; /** * Add custom parameters to pass to the JS via JSON. * * @since 1.0.0 * @access public * @return void */ public function json() { $json = parent::json(); $json['pro_text'] = $this->pro_text; $json['pro_url'] = esc_url( $this->pro_url ); $json['notice'] = esc_attr( $this->notice ); $json['nonotice'] = esc_attr( $this->nonotice ); return $json; } /** * Outputs the Underscore.js template. * * @since 1.0.0 * @access public * @return void */ protected function render_template() { ?>