File: /home/h278792/public_html/wp-content/plugins/ecademy-toolkit/widgets/language-courses.php
<?php
/**
* Language Courses Widget
*/
namespace Elementor;
// Exit if accessed directly
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
class eCademy_Language_Courses extends Widget_Base {
public function get_name() {
return 'eCademy_Language_Courses';
}
public function get_title() {
return esc_html__( 'منطقه ویژگی', 'ecademy-toolkit' );
}
public function get_icon() {
return 'eicon-icon-box';
}
public function get_categories() {
return [ 'ecademy-elements' ];
}
protected function register_controls() {
$this->start_controls_section(
'eCademy_Language_Courses_controls',
[
'label' => esc_html__( 'کنترل دوره های زبان', 'ecademy-toolkit' ),
'tab' => Controls_Manager::TAB_CONTENT,
]
);
$this->add_control(
'style',
[
'label' => __( 'سبک', 'ecademy-toolkit' ),
'type' => Controls_Manager::SELECT,
'options' => [
'1' => __( 'سبک 1', 'ecademy-toolkit' ),
'2' => __( 'سبک', 'ecademy-toolkit' ),
],
'default' => '1',
]
);
$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,
'default' => esc_html__('چینی ها ', 'ecademy-toolkit'),
]
);
$repeater->add_control(
'content', [
'label' => __( 'محتوا', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXTAREA,
'default' => esc_html__('لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است. .', 'ecademy-toolkit'),
]
);
$repeater->add_control(
'link_text', [
'label' => __( 'متن لینک', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXTAREA,
'default' => esc_html__('نمایش بیشتر', 'ecademy-toolkit'),
]
);
$repeater->add_control(
'default_icon', [
'label' => esc_html__( 'انتخاب آیکن', 'ecademy-toolkit' ),
'type' => Controls_Manager::ICON,
'label_block' => true,
'options' => ecademy_flaticons(),
]
);
$repeater->add_control(
'link_type', [
'label' => __( 'نوع لینک', 'ecademy-toolkit' ),
'type' => Controls_Manager::SELECT,
'label_block' => true,
'options' => [
'1' => esc_html__( 'پیوند به صفحه', 'ecademy-toolkit' ),
'2' => esc_html__( 'لینک خارجی', 'ecademy-toolkit' ),
],
]
);
$repeater->add_control(
'link_to_page', [
'label' => __( 'صفحه لینک', 'ecademy-toolkit' ),
'type' => Controls_Manager::SELECT,
'label_block' => true,
'options' => ecademy_toolkit_get_page_as_list(),
'condition' => [
'link_type' => '1',
]
]
);
$repeater->add_control(
'ex_link', [
'label' => __( 'صفحه خارجی ', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'condition' => [
'link_type' => '2',
]
]
);
$this->add_control(
'card_item',
[
'label' => esc_html__('کارت آیتم', 'ecademy-toolkit'),
'type' => Controls_Manager::REPEATER,
'fields' => $repeater->get_controls(),
'condition' => [
'style' => '1',
]
]
);
$repeater2 = new Repeater();
$repeater2->add_control(
'yoga_image', [
'label' => esc_html__( 'تصویر', 'ecademy-toolkit' ),
'type' => Controls_Manager::MEDIA,
]
);
$repeater2->add_control(
'yoga_title', [
'label' => esc_html__( 'عنوان', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'default' => esc_html__('چینی ها ', 'ecademy-toolkit'),
]
);
$repeater2->add_control(
'yoga_content', [
'label' => __( 'محتوا', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXTAREA,
'default' => esc_html__('لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است. .', 'ecademy-toolkit'),
]
);
$repeater2->add_control(
'yoga_link_text', [
'label' => __( 'متن لینک', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXTAREA,
'default' => esc_html__('نمایش بیشتر', 'ecademy-toolkit'),
]
);
$repeater2->add_control(
'yoga_link_type', [
'label' => __( 'نوع لینک', 'ecademy-toolkit' ),
'type' => Controls_Manager::SELECT,
'label_block' => true,
'options' => [
'1' => esc_html__( 'پیوند به صفحه', 'ecademy-toolkit' ),
'2' => esc_html__( 'لینک خارجی', 'ecademy-toolkit' ),
],
]
);
$repeater2->add_control(
'yoga_link_to_page', [
'label' => __( 'صفحه لینک', 'ecademy-toolkit' ),
'type' => Controls_Manager::SELECT,
'label_block' => true,
'options' => ecademy_toolkit_get_page_as_list(),
'condition' => [
'yoga_link_type' => '1',
]
]
);
$repeater2->add_control(
'yoga_ex_link', [
'label' => __( 'صفحه خارجی ', 'ecademy-toolkit' ),
'type' => Controls_Manager::TEXT,
'condition' => [
'yoga_link_type' => '2',
]
]
);
$this->add_control(
'yoga_card_item',
[
'label' => esc_html__('کارت آیتم', 'ecademy-toolkit'),
'type' => Controls_Manager::REPEATER,
'fields' => $repeater2->get_controls(),
'condition' => [
'style' => '2',
]
]
);
$this->end_controls_section();
$this->start_controls_section(
'features_boxes_style',
[
'label' => __( 'سبک', 'ecademy-toolkit' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'title_typography',
'label' => __( ' عنوان تایپوگرافی', 'ecademy-toolkit' ),
'scheme' => Core\Schemes\Typography::TYPOGRAPHY_1,
'selector' => '{{WRAPPER}} .single-language-courses-box h3, .single-yoga-courses-box .courses-content h3',
]
);
$this->add_control(
'title_color',
[
'label' => __( 'عنوان رنگ', 'ecademy-toolkit' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .single-language-courses-box h3, .single-yoga-courses-box .courses-content h3' => '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-language-courses-box p, .single-yoga-courses-box .courses-content p',
]
);
$this->add_control(
'content_color',
[
'label' => __( 'رنگ محتوا', 'ecademy-toolkit' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .single-language-courses-box p, .single-yoga-courses-box .courses-content p' => 'color: {{VALUE}}',
],
]
);
$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;
// Inline Editing
$this-> add_inline_editing_attributes('title','none');
?>
<?php if( $settings['style'] == '1' ): ?>
<div class="boxes-area bg-f5f7fa">
<div class="container">
<div class="row">
<?php foreach( $settings['card_item'] as $item ):
// Get Button Link
if( $item['link_type'] == 1 ){
$link = get_page_link( $item['link_to_page'] );
} else {
$link = $item['ex_link'];
}
// Icon
$icon =$item['default_icon'];
?>
<div class="col-lg-4 col-md-6 col-sm-6">
<div class="single-language-courses-box">
<?php if( $item['image']['url'] != '' ): ?>
<?php if( $is_lazyloader == true ): ?>
<img sm-src="<?php echo esc_url( $item['image']['url'] ); ?>" alt="<?php echo esc_attr( $item['title'] ); ?>">
<?php else: ?>
<img src="<?php echo esc_url( $item['image']['url'] ); ?>" alt="<?php echo esc_attr( $item['title'] ); ?>">
<?php endif; ?>
<?php endif; ?>
<h3><?php echo esc_html( $item['title'] ); ?></h3>
<p><?php echo esc_html( $item['content'] ); ?></p>
<?php if( $item['link_text'] != '' ): ?>
<a href="<?php echo esc_url( $link ); ?>" class="default-btn"><i class="<?php echo esc_attr( $icon ); ?>"></i><?php echo esc_html( $item
['link_text'] ); ?><span></span></a>
<?php endif; ?>
</div>
</div>
<?php endforeach; ?>
</div>
</div>
</div>
<?php elseif( $settings['style'] == '2' ): ?>
<div class="container">
<div class="row">
<?php foreach( $settings['yoga_card_item'] as $item ):
// Get Button Link
if( $item['yoga_link_type'] == 1 ){
$link = get_page_link( $item['yoga_link_to_page'] );
} else {
$link = $item['yoga_ex_link'];
}
?>
<div class="col-lg-4 col-md-6">
<div class="single-yoga-courses-box">
<?php if( $item['yoga_image']['url'] != '' ): ?>
<div class="courses-image">
<?php if( $is_lazyloader == true ): ?>
<img sm-src="<?php echo esc_url( $item['yoga_image']['url'] ); ?>" alt="<?php echo esc_attr( $item['yoga_title'] ); ?>">
<?php else: ?>
<img src="<?php echo esc_url( $item['yoga_image']['url'] ); ?>" alt="<?php echo esc_attr( $item['yoga_title'] ); ?>">
<?php endif; ?>
</div>
<?php endif; ?>
<div class="courses-content">
<h3><?php echo esc_html( $item['yoga_title'] ); ?></h3>
<p><?php echo esc_html( $item['yoga_content'] ); ?></p>
<?php if( $item['yoga_link_text'] != '' ): ?>
<a href="<?php echo esc_url( $link ); ?>" class="default-btn"><?php echo esc_html( $item
['yoga_link_text'] ); ?><span></span></a>
<?php endif; ?>
</div>
</div>
</div>
<?php endforeach; ?>
</div>
</div>
<?php endif ?>
<?php
}
}
Plugin::instance()->widgets_manager->register( new eCademy_Language_Courses );