%PDF- %PDF-
Direktori : /home/opti/public_html/stlc/wp-content/plugins/insur-addon/includes/Widgets/ |
Current File : /home/opti/public_html/stlc/wp-content/plugins/insur-addon/includes/Widgets/Pricing.php |
<?php namespace Layerdrops\Insur\Widgets; class Pricing extends \Elementor\Widget_Base { public function get_name() { return 'pricing'; } public function get_title() { return __('Pricing', 'insur-addon'); } public function get_icon() { return 'eicon-cogs'; } public function get_categories() { return ['insur-category']; } protected function register_controls() { $this->start_controls_section( 'layout_section', [ 'label' => __('Layout', 'insur-addon'), 'tab' => \Elementor\Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'layout_type', [ 'label' => __('Select Layout', 'insur-addon'), 'type' => \Elementor\Controls_Manager::SELECT2, 'default' => 'layout_one', 'options' => [ 'layout_one' => __('Layout One', 'insur-addon'), ] ] ); $this->end_controls_section(); $this->start_controls_section( 'content_section', [ 'label' => __('Content', 'insur-addon'), 'tab' => \Elementor\Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'layout_one_title', [ 'label' => __('Title', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXTAREA, 'placeholder' => __('Add Title', 'insur-addon'), ] ); $this->add_control( 'layout_one_sub_title', [ 'label' => __('Sub Title', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXTAREA, 'placeholder' => __('Add sub title', 'insur-addon'), ] ); $this->add_control( 'sub_title_left_shape', [ 'label' => __('Sub Title Left Shape', 'insur-addon'), 'type' => \Elementor\Controls_Manager::MEDIA, 'default' => [], ] ); $this->add_control( 'sub_title_right_shape', [ 'label' => __('Sub Title Right Shape', 'insur-addon'), 'type' => \Elementor\Controls_Manager::MEDIA, 'default' => [], ] ); $this->add_control( 'enable_filter', [ 'label' => esc_html__('Enable Filter', 'insur-addon'), 'type' => \Elementor\Controls_Manager::SWITCHER, 'label_on' => esc_html__('Yes', 'insur-addon'), 'label_off' => esc_html__('No', 'insur-addon'), 'return_value' => 'yes', 'default' => 'yes', ] ); $filter = new \Elementor\Repeater(); $filter->add_control( 'name', [ 'label' => __('Filter Name', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'placeholder' => __('Add Filter Name', 'insur-addon'), 'default' => __('Monthly Plan', 'insur-addon') ] ); $filter->add_control( 'slug', [ 'label' => __('Filter Slug', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'placeholder' => __('Add Filter Slug', 'insur-addon'), 'default' => __('monthly', 'insur-addon') ] ); $this->add_control( 'filter', [ 'label' => __('Filter', 'insur-addon'), 'type' => \Elementor\Controls_Manager::REPEATER, 'prevent_empty' => false, 'fields' => $filter->get_controls(), 'title_field' => '{{{ name }}}', 'condition' => [ 'enable_filter' => 'yes' ] ] ); $layout_one_pricing_items = new \Elementor\Repeater(); $layout_one_pricing_items->add_control( 'title', [ 'label' => __('Pricing Title', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => __('Business plan', 'insur-addon'), 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'currency', [ 'label' => __('Currency', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => '$', 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'price', [ 'label' => __('Price', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => __('35', 'insur-addon'), 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'tag_line', [ 'label' => __('Tag Line', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => __('Per month', 'insur-addon'), 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'features', [ 'label' => __('Features', 'insur-addon'), 'type' => \Elementor\Controls_Manager::CODE, 'default' => __('<li><div class="icon"><i class="fa fa-check"></i></div><div class="text"><p>Invoices/Estimates</p></div></li>', 'insur-addon'), 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'button_label', [ 'label' => __('Tag Line', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => __('Select Policy', 'insur-addon'), 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'url', [ 'label' => __('Url', 'insur-addon'), 'type' => \Elementor\Controls_Manager::URL, 'placeholder' => __('#', 'insur-addon'), 'show_external' => true, 'default' => [ 'url' => '#', 'is_external' => true, 'nofollow' => true, ], ] ); $layout_one_pricing_items->add_control( 'slug', [ 'label' => __('Slug', 'insur-addon'), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => __('monthly', 'insur-addon'), 'label_block' => true, ] ); $layout_one_pricing_items->add_control( 'icon_image', [ 'label' => __('Icon Image', 'insur-addon'), 'type' => \Elementor\Controls_Manager::MEDIA, 'default' => [ 'url' => \Elementor\Utils::get_placeholder_image_src(), ], ] ); $layout_one_pricing_items->add_control( 'shape', [ 'label' => __('Shape', 'insur-addon'), 'type' => \Elementor\Controls_Manager::MEDIA, 'default' => [], ] ); $this->add_control( 'layout_one_pricing_items', [ 'label' => __('Pricing Items', 'insur-addon'), 'type' => \Elementor\Controls_Manager::REPEATER, 'fields' => $layout_one_pricing_items->get_controls(), 'prevent_empty' => false, 'title_field' => '{{{ title }}}', ] ); $this->end_controls_section(); //style $this->start_controls_section( 'style_option', [ 'label' => esc_html__('Style Options', 'insur-addon'), 'tab' => \Elementor\Controls_Manager::TAB_STYLE, ] ); insur_typo_and_color_options($this, 'Section Title', '{{WRAPPER}} .section-title__title', ['layout_one']); insur_typo_and_color_options($this, 'Section Sub Title', '{{WRAPPER}} .section-sub-title', ['layout_one']); insur_typo_and_color_options($this, 'Price Title', '{{WRAPPER}} .pricing__title', ['layout_one']); insur_typo_and_color_options($this, 'Price Tag Line', '{{WRAPPER}} .pricing__content p', ['layout_one']); insur_typo_and_color_options($this, 'Price', '{{WRAPPER}} .pricing__content h3', ['layout_one']); insur_typo_and_color_options($this, 'features', '{{WRAPPER}} .pricing__points li .text p', ['layout_one']); insur_typo_and_color_options($this, 'Button', '{{WRAPPER}} .thm-btn', ['layout_one']); insur_typo_and_color_options($this, 'Button Background', '{{WRAPPER}} .thm-btn', ['layout_one'], 'background-color', false); $this->end_controls_section(); } protected function render() { $settings = $this->get_settings_for_display(); include insur_get_template('pricing-one.php'); } }