<?php
    $html_id = pxl_get_element_id($settings);
    $tax = ['service-category'];
    $select_post_by = $widget->get_setting('select_post_by', '');

    $post_ids = ($select_post_by === 'post_selected') ? $widget->get_setting('source_'.$settings['post_type'].'_post_ids', '') : [];
    $source = ($select_post_by !== 'post_selected') ? $widget->get_setting('source_'.$settings['post_type'], '') : [];
    $orderby = $widget->get_setting('orderby', 'date');
    $order = $widget->get_setting('order', 'desc');
    $limit = $widget->get_setting('limit', 6);
    extract(pxl_get_posts_of_grid(
        'service', 
        [
            'source' => $source, 
            'orderby' => $orderby, 
            'order' => $order, 
            'limit' => $limit, 
            'post_ids' => $post_ids
        ],
        $tax
    ));

    $col_xs = $widget->get_setting('col_xs', '');
    $col_sm = $widget->get_setting('col_sm', '');
    $col_md = $widget->get_setting('col_md', '');
    $col_lg = $widget->get_setting('col_lg', '');
    $col_xl = $widget->get_setting('col_xl', '');
    $col_xxl = $widget->get_setting('col_xxl', '');
    $slides_to_scroll = $widget->get_setting('slides_to_scroll', '');

    $drap = $widget->get_setting('drap', false);

    // Animation
    $animate = $widget->get_setting('pxl_animate');
    $animate_delay = (int)$widget->get_setting('pxl_animate_delay', 0);

    // Display
    $show_button = !empty($settings['show_button']) || false;
    $show_excerpt = !empty($settings['show_excerpt']) || false;
    $show_icon = !empty($settings['show_icon']) || false;
    $title_hover_style = $settings['title_hover_style']  ?? '';

    $button_text = !empty($settings['button_text']) ? $settings['button_text'] : 'Learn more';
    $num_words = !empty($settings['num_words']) ? $settings['num_words'] : 10;
    $img_size = !empty($settings['img_size']) ? $settings['img_size'] : '410x274';

    $pause_on_hover = !empty($settings['pause_on_hover']) || false;
    $autoplay = !empty($settings['autoplay']) || false;
    $autoplay_speed = !empty($settings['autoplay_speed']) ? $settings['autoplay_speed'] : 5000;
    $infinite = !empty($settings['infinite']) || false;
    $speed = !empty($settings['speed']) ? $settings['speed'] : 500;
    $arrows = !empty($settings['arrows']) || false;
    $pagination = !empty($settings['pagination']) || false;
    $pagination_type = $settings['pagination_carousel_type'];

    $opts = [
        'slide_direction'               => 'horizontal',
        'slide_percolumn'               => 1, 
        'slide_mode'                    => 'slide', 
        'slides_to_show'                => 1,
        'slides_to_show_xxl'            => $col_xxl,
        'slides_to_show_xl'             => $col_xl,
        'slides_to_show_lg'             => $col_lg,
        'slides_to_show_md'             => $col_md,
        'slides_to_show_sm'             => $col_sm,
        'slides_to_show_xs'             => $col_xs,
        'slides_to_scroll'              => 1,
        'arrow'                         => $arrows,
        'pagination'                    => $pagination,
        'pagination_type'               => $pagination_type,
        'autoplay'                      => $autoplay,
        'pause_on_hover'                => $pause_on_hover,
        'pause_on_interaction'          => true,
        'delay'                         => $autoplay_speed,
        'loop'                          => $infinite,
        'speed'                         => $speed
    ];
    $widget->add_render_attribute( 'carousel', [
        'class'         => 'pxl-swiper-container',
        'dir'           => is_rtl() ? 'rtl' : 'ltr',
        'data-settings' => wp_json_encode($opts)
    ]); 

?>

<?php if (is_array($posts)): ?>
    <div class="pxl-swiper-slider pxl-service-carousel pxl-service-carousel1 pxl-swiper-boxshadow">
        <div class="pxl-carousel-inner">
            <div <?php pxl_print_html($widget->get_render_attribute_string( 'carousel' )); ?>>
                <div class="pxl-swiper-wrapper">
                    <?php foreach ($posts as $key => $post): ?>
                        <?php
                            $img_id = get_post_thumbnail_id($post->ID) ?? '';
                            $thumbnail = solarva_get_thumbnail($img_id, $img_size, false, 'layzyload');
                            $service_icon = solarva_get_icon_service($post->ID);
                            $wow_delay = $key * $animate_delay;
                        ?>
                        <!-- HTML -->
                        <div class="pxl-swiper-slide <?php echo esc_attr($animate); ?>" data-wow-delay="<?php echo esc_attr($wow_delay.'ms'); ?>">
                            <div class="pxl-post--container " >
                                <div class="pxl-post--inner">
                                    <?php if(!empty($thumbnail)) : ?>
                                        <div class="pxl-post--featured pxl-hover-zoom-in">
                                            <a href="<?php echo esc_url(get_permalink($post->ID)); ?>">
                                                <?php echo wp_kses_post($thumbnail); ?>
                                            </a>
                                        </div>
                                    <?php endif; ?>
                                    <div class="pxl-post--content " >
                                        <?php if(!empty($service_icon) && $show_icon) : ?>
                                            <div class="pxl-post--icon pxl-drawing-effect">
                                                <?php pxl_print_html($service_icon); ?>
                                            </div>
                                        <?php endif; ?>
                                        <div class="pxl-post--title <?php echo esc_attr($title_hover_style); ?>">
                                            <a class="pxl-title--link" href="<?php echo esc_url(get_permalink($post->ID)); ?>">
                                                <?php echo esc_attr(get_the_title($post->ID)); ?>
                                            </a>
                                        </div>
                                        <?php if($show_excerpt) : ?>
                                            <div class="pxl-post--excerpt">
                                                <?php echo wp_trim_words( $post->post_excerpt, $num_words, $more = null); ?>
                                            </div>
                                        <?php endif; ?>
                                    </div>
                                    <?php if($show_button) : ?>
                                        <div class="pxl-btn--wrap">
                                            <a class="btn pxl-post--btn" href="<?php echo esc_url( get_permalink($post->ID)); ?>">
                                                <span class="pxl-btn--text">
                                                    <?php echo esc_attr($button_text); ?>
                                                </span>
                                                <svg xmlns="http://www.w3.org/2000/svg" width="15" height="13" viewBox="0 0 15 13" fill="none">
                                                    <path d="M0.518926 7.57879H11.0748L6.97493 11.6787L8.26321 12.967L14.5625 6.6677L8.26321 0.368408L6.97493 1.65669L11.0748 5.75661H0.518926V7.57879Z" fill="#002244"/>
                                                </svg>
                                            </a>
                                        </div>
                                    <?php endif; ?>
                                </div>
                            </div>
                        </div>
                        <!-- HTML -->
                    <?php endforeach; ?>
                </div> 
            </div>

            <?php if ($pagination): ?>
                <div class="pxl-swiper-dots-wrap">
                    <div class="pxl-swiper-dots pxl-swiper-dots1"></div>
                </div>
            <?php endif; ?>
            <?php if ($arrows): ?>
                <div class="pxl-swiper-arrow-wrap">
                    <div class="pxl-swiper-arrows pxl-swiper-arrows1">
                        <div class="pxl-swiper-arrow pxl-swiper-arrow-prev">
                            <svg xmlns="http://www.w3.org/2000/svg" width="10" height="18" viewBox="0 0 10 18" fill="none">
                                <path d="M1.61719 7.96875L0.585938 9L8.83594 17.25L9.86719 16.2187L2.64844 9L9.86719 1.78125L8.83594 0.749998L4.71094 4.875L1.61719 7.96875Z" fill="#003973"/>
                            </svg>
                        </div>
                        <div class="pxl-swiper-arrow pxl-swiper-arrow-next">
                            <svg xmlns="http://www.w3.org/2000/svg" width="10" height="18" viewBox="0 0 10 18" fill="none">
                                <path d="M8.38281 10.0312L9.41406 9L1.07812 0.749998L0.046875 1.78125L7.26562 9L0.046875 16.2187L1.07812 17.25L5.28906 13.125L8.38281 10.0312Z" fill="#003973"/>
                            </svg>
                        </div>
                    </div>
                </div>
            <?php endif; ?>

        </div>
    </div>
<?php endif; ?>