<?php /** * @author RadiusTheme * @since 1.0 * @version 1.0 */ namespace radiustheme\Digeco_Core; use Elementor\Controls_Manager; if ( ! defined( 'ABSPATH' ) ) exit; class Contact_Address extends Custom_Widget_Base { public function __construct( $data = [], $args = null ){ $this->rt_name = esc_html__( 'RT Contact Address', 'digeco-core' ); $this->rt_base = 'rt-contact-address'; parent::__construct( $data, $args ); } public function rt_fields(){ $repeater = new \Elementor\Repeater(); $repeater->add_control( 'address_icon', [ 'type' => Controls_Manager::TEXTAREA, 'label' => esc_html__( 'Address Icon', 'digeco-core' ), 'default' => '<i class="flaticon-mail"></i>', ] ); $repeater->add_control( 'address_label', [ 'type' => Controls_Manager::TEXT, 'label' => esc_html__( 'Address Label', 'digeco-core' ), 'default' => 'Office Name', 'label_block' => true, ] ); $repeater->add_control( 'address_infos', [ 'type' => Controls_Manager::TEXTAREA, 'label' => esc_html__( 'Add Address', 'digeco-core' ), 'default' => '29 Street, Melbourne City<br>example@gmail.com<br><a href="tel:+0123456789">+0123456789</a> ', ] ); $fields = array( array( 'mode' => 'section_start', 'id' => 'sec_general', 'label' => esc_html__( 'General', 'digeco-core' ), ), array( 'type' => Controls_Manager::SWITCHER, 'id' => 'animation_display', 'label' => esc_html__( 'Animation Off/On', 'digeco-core' ), 'default' => 'yes', ), array( 'type' => Controls_Manager::TEXT, 'id' => 'delay', 'label' => esc_html__( 'Animation Delay', 'digeco-core' ), 'default' => '100', 'condition' => array( 'animation_display' => array( 'yes' ) ), ), array( 'type' => Controls_Manager::SELECT2, 'id' => 'style', 'label' => esc_html__( 'Theme Style', 'digeco-core' ), 'options' => array( 'light' => esc_html__( 'Light Background', 'digeco-core' ), 'dark' => esc_html__( 'Dark Background', 'digeco-core' ), ), 'default' => 'light', ), array( 'type' => Controls_Manager::TEXT, 'id' => 'address_title', 'label' => esc_html__( 'Address Tile', 'digeco-core' ), 'default' => 'Our Office Address', ), array ( 'type' => Controls_Manager::REPEATER, 'id' => 'address_info', 'label' => esc_html__( 'Address', 'digeco-core' ), 'fields' => $repeater->get_controls(), ), array( 'mode' => 'section_end', ), ); return $fields; } protected function render() { $data = $this->get_settings(); $template = 'contact-address'; return $this->rt_template( $template, $data ); } }