File: /home/h278792/public_html/wp-content/plugins/ecademy-toolkit/widgets/pricing.php
<?php
namespace Elementor;
// Exit if accessed directly
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
class Pricing_table extends Widget_Base {
public function get_name() {
return 'ecademy-pricing-table';
}
public function get_title() {
return __( 'جدول قیمت', 'ecademy-hero' );
}
public function get_icon() {
return ' eicon-price-list';
}
public function get_categories() {
return [ 'ecademy-elements' ];
}
protected function register_controls() {
$this->start_controls_section(
'eCademy_Pricing',
[
'label' => esc_html__( 'جدول قیمت', 'ecademy-toolkit' ),
'tab' => Controls_Manager::TAB_CONTENT,
]
);
$repeater = new Repeater();
$repeater->add_control(
'image', [
'label' => esc_html__( 'تصویر', 'ecademy-toolkit' ),
'type' => Controls_Manager::MEDIA,
]
);
$repeater->add_control(
'title', [
'label' => esc_html__( 'عنوان', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'label_block' => true,
'default' => '200 ساعت ttc'
]
);
$repeater->add_control(
'price', [
'label' => esc_html__( 'قیمت', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'default' => '49000 تومان',
]
);
$repeater->add_control(
'bottom_title', [
'label' => esc_html__( 'عنوان دکمه', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'default' => 'تاییدیه اتحادیه یوگا',
]
);
$repeater->add_control(
'contents', [
'label' => esc_html__( 'لیست آیتمها', 'ecademy-toolkit' ),
'description' => esc_html__( 'هر آیتم لیست را با تگ li جمع کنید (<li>نام آیتم</li>).', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXTAREA,
'label_block' => true,
'default' =>'<li>آساناهای سنتی یوگا را بررسی کنید</li>
<li>مدیتیشن و فلسفه را بیاموزید</li>
<li>انرژی و آناتومی را به هم متصل کنید</li>
<li>برای اعتماد به نفس تدریس را تمرین کنید</li>
<li>به اتحاد یوگا RYT200 تبدیل شوید</li>',
]
);
$repeater->add_control(
'btn_label', [
'label' => esc_html__( 'برچسب دکمه', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'default' => 'Book Now',
'label_block' => true
]
);
$repeater->add_control(
'btn_url', [
'label' => esc_html__( 'آدرس دکمه', 'ecademy-toolkit' ),
'type' => Controls_Manager::URL,
'default' => [
'url' => '#',
'is_external' => '',
],
'show_external' => true,
]
);
$this->add_control(
'tables',
[
'label' => esc_html__( 'جداول قیمت', 'ecademy-toolkit' ),
'type' => Controls_Manager::REPEATER,
'title_field' => '{{{ title }}}',
'fields' => $repeater->get_controls(),
]
);
$this->add_control(
'shape1',
[
'label' => esc_html__('شکل تصویر یک', 'ecademy-toolkit'),
'type' => Controls_Manager:: MEDIA,
]
);
$this->add_control(
'shape2',
[
'label' => esc_html__('شکل تصویر دو', 'ecademy-toolkit'),
'type' => Controls_Manager:: MEDIA,
]
);
$this->end_controls_section();
$this->start_controls_section(
'section_style',
[
'label' => esc_html__( 'سبک', 'ecademy-toolkit' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_control(
'title_color',
[
'label' => esc_html__( 'رنگ عنوان', 'ecademy-toolkit' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .single-pricing-box .pricing-header h3' => 'color: {{VALUE}}',
],
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'title_typography',
'label' => __( ' عنوان تایپوگرافی', 'ecademy-toolkit' ),
'scheme' => Core\Schemes\Typography::TYPOGRAPHY_1,
'selector' => '{{WRAPPER}} .single-pricing-box .pricing-header h3',
]
);
$this->add_control(
'content_color',
[
'label' => esc_html__( ' رنگ محتوا ', 'ecademy-toolkit' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .single-pricing-box .pricing-features ul li' => 'color: {{VALUE}}',
],
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'content_typography',
'label' => __( 'تایپوگرافی محتوا', 'ecademy-toolkit' ),
'scheme' => Core\Schemes\Typography::TYPOGRAPHY_1,
'selector' => '{{WRAPPER}} .single-pricing-box .pricing-features ul li',
]
);
$this->add_control(
'price_color',
[
'label' => esc_html__( 'رنگ قیمت', 'ecademy-toolkit' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .single-pricing-box .price' => 'color: {{VALUE}}',
],
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'price_typography',
'label' => __( 'تایپوگرافی قیمت', 'ecademy-toolkit' ),
'scheme' => Core\Schemes\Typography::TYPOGRAPHY_1,
'selector' => '{{WRAPPER}} .single-pricing-box .price',
]
);
$this->end_controls_section();
}
protected function render() {
$settings = $this->get_settings_for_display();
global $ecademy_opt;
if( isset( $ecademy_opt['enable_lazyloader'] ) ):
$is_lazyloader = $ecademy_opt['enable_lazyloader'];
else:
$is_lazyloader = true;
endif;
?>
<div class="container">
<div class="row">
<?php foreach( $settings['tables'] as $table ): ?>
<div class="col-lg-4 col-md-6">
<div class="single-pricing-box">
<div class="pricing-header">
<?php if( $table['image']['url'] != '' ): ?>
<?php if( $is_lazyloader == true ): ?>
<img sm-src="<?php echo esc_url( $table['image']['url']); ?>" alt="<?php echo esc_attr( 'شکل تصویر', 'ecademy-toolkit' ); ?>">
<?php else: ?>
<img src="<?php echo esc_url( $table['image']['url']); ?>" alt="<?php echo esc_attr( 'شکل تصویر', 'ecademy-toolkit' ); ?>">
<?php endif; ?>
<?php endif; ?>
<h3><?php echo esc_html( $table['title'] ); ?></h3>
</div>
<div class="pricing-features">
<ul>
<?php echo wp_kses_post( $table['contents'] ) ?>
</ul>
</div>
<div class="price">
<?php echo esc_html( $table['price'] ); ?>
<span><?php echo esc_html( $table['bottom_title'] ); ?></span>
</div>
<?php if( $table['btn_label'] != '' ): ?>
<a href="<?php echo esc_url( $table['btn_url']['url'] ); ?>" class="default-btn"><?php echo esc_html( $table['btn_label'] ); ?><span></span></a>
<?php endif; ?>
<?php if( $settings['shape1']['url'] != '' ): ?>
<div class="pricing-shape1">
<?php if( $is_lazyloader == true ): ?>
<img sm-src="<?php echo esc_url( $settings['shape1']['url'] ); ?>" alt="<?php echo esc_attr__( 'شکل تصویر یک', 'ecademy-toolkit' ); ?>">
<?php else: ?>
<img src="<?php echo esc_url( $settings['shape1']['url'] ); ?>" alt="<?php echo esc_attr__( 'شکل تصویر یک', 'ecademy-toolkit' ); ?>">
<?php endif; ?>
</div>
<?php endif; ?>
<?php if( $settings['shape2']['url'] != '' ): ?>
<div class="pricing-shape2">
<?php if( $is_lazyloader == true ): ?>
<img sm-src="<?php echo esc_url( $settings['shape2']['url'] ); ?>" alt="<?php echo esc_attr__( 'شکل تصویر یک', 'ecademy-toolkit' ); ?>">
<?php else: ?>
<img src="<?php echo esc_url( $settings['shape2']['url'] ); ?>" alt="<?php echo esc_attr__( 'شکل تصویر یک', 'ecademy-toolkit' ); ?>">
<?php endif; ?>
</div>
<?php endif; ?>
</div>
</div>
<?php endforeach; ?>
</div>
</div>
<?php
}
}
Plugin::instance()->widgets_manager->register( new Pricing_table );