/**
 * Thumbnail HTML creation, base for index and other components
 * @param  [type]  $block_data
 * @param  [type]  $el_id
 * @param  [type]  $style_preset
 * @param  [type]  $layout
 * @param  [type]  $lightbox_classes
 * @param  [type]  $carousel_textual
 * @param  boolean $with_html
 * @return [type]
 */
function uncode_create_single_block($block_data, $el_id, $style_preset, $layout, $lightbox_classes, $carousel_textual, $with_html = true)
{
    $image_orig_w = $image_orig_h = $crop = $item_media = $media_code = $media_mime = $create_link = $title_link = $text_content = $media_attributes = $big_image = $lightbox_data = $single_height = $single_title = $nested = $media_poster = $dummy_oembed = $images_size = $single_family = $object_class = $single_back_color = $single_animation = $is_product = $single_icon = $single_text = $single_style = $single_elements_click = $overlay_color = $overlay_opacity = $tmb_data = '';
    $media_type = 'image';
    $multiple_items = false;
    if (isset($block_data['classes'])) {
        $block_classes = $block_data['classes'];
    }
    if (isset($block_data['tmb_data'])) {
        $tmb_data = $block_data['tmb_data'];
    }
    if (isset($block_data['media_id'])) {
        $item_thumb_id = $block_data['media_id'];
    }
    if (isset($block_data['images_size'])) {
        $images_size = $block_data['images_size'];
    }
    if (isset($block_data['single_style'])) {
        $single_style = $block_data['single_style'];
    }
    if (isset($block_data['single_text'])) {
        $single_text = $block_data['single_text'];
    }
    if (isset($block_data['single_elements_click'])) {
        $single_elements_click = $block_data['single_elements_click'];
    }
    if (isset($block_data['overlay_color'])) {
        $overlay_color = $block_data['overlay_color'];
    }
    if (isset($block_data['overlay_opacity'])) {
        $overlay_opacity = (int) $block_data['overlay_opacity'] / 100;
    }
    if (isset($block_data['single_width'])) {
        $single_width = $block_data['single_width'];
    }
    if (isset($block_data['single_height'])) {
        $single_height = $block_data['single_height'];
    }
    if (isset($block_data['single_back_color'])) {
        $single_back_color = $block_data['single_back_color'];
    }
    if (isset($block_data['single_title'])) {
        $single_title = $block_data['single_title'];
    }
    if (isset($block_data['single_icon'])) {
        $single_icon = $block_data['single_icon'];
    }
    if (isset($block_data['poster'])) {
        $media_poster = $block_data['poster'];
    }
    if (isset($block_data['title_classes'])) {
        $title_classes = !$block_data['title_classes'] ? array('h3') : $block_data['title_classes'];
    }
    if (isset($block_data['animation'])) {
        $single_animation = $block_data['animation'];
    }
    if (isset($block_data['product']) && $block_data['product'] === true) {
        $is_product = true;
    } else {
        $is_product = false;
    }
    if (!isset($block_classes)) {
        $block_classes = array();
    }
    if (isset($block_data['link'])) {
        $create_link = is_array($block_data['link']) ? $block_data['link']['url'] : $block_data['link'];
        $title_link = $create_link;
    }
    $a_classes = array();
    if (isset($block_data['link_class'])) {
        $a_classes[] = $block_data['link_class'];
    }
    /*** MEDIA SECTION ***/
    if (isset($images_size) && $images_size !== '' && $style_preset !== 'metro') {
        switch ($images_size) {
            case 'one-one':
                $single_height = $single_width;
                break;
            case 'four-three':
                $single_height = $single_width / (4 / 3);
                break;
            case 'three-two':
                $single_height = $single_width / (3 / 2);
                break;
            case 'sixteen-nine':
                $single_height = $single_width / (16 / 9);
                break;
            case 'twentyone-nine':
                $single_height = $single_width / (21 / 9);
                break;
            case 'three-four':
                $single_height = $single_width / (3 / 4);
                break;
            case 'two-three':
                $single_height = $single_width / (2 / 3);
                break;
            case 'nine-sixteen':
                $single_height = $single_width / (9 / 16);
                break;
        }
        $block_classes[] = 'tmb-img-ratio';
    }
    if (empty($item_thumb_id) || FALSE === get_post_status($item_thumb_id)) {
        $item_media = 'https://placeholdit.imgix.net/~text?txtsize=33&txt=media+not+available&w=500&h=500';
        $media_attributes = '';
        $image_orig_w = 500;
        $image_orig_h = 500;
    } else {
        /** get media info **/
        $items_thumb_id = explode(',', $item_thumb_id);
        if (count($items_thumb_id) > 1) {
            if ($media_poster) {
                $media_attributes = uncode_get_media_info($items_thumb_id[0]);
                $media_metavalues = unserialize($media_attributes->metadata);
                $media_mime = $media_attributes->post_mime_type;
            } else {
                $multiple_items = true;
            }
        } else {
            $media_attributes = uncode_get_media_info($item_thumb_id);
            if (!isset($media_attributes)) {
                $media_attributes = new stdClass();
            }
            $media_metavalues = unserialize($media_attributes->metadata);
            $media_mime = $media_attributes->post_mime_type;
        }
        /** check if open to lightbox **/
        if ($lightbox_classes) {
            if (isset($lightbox_classes['data-title']) && $lightbox_classes['data-title'] === true) {
                $lightbox_classes['data-title'] = $media_attributes->post_title;
            }
            if (isset($lightbox_classes['data-caption']) && $lightbox_classes['data-caption'] === true) {
                $lightbox_classes['data-caption'] = $media_attributes->post_excerpt;
            }
        }
        /** shortcode carousel  **/
        if ($multiple_items) {
            $shortcode = '[vc_gallery nested="yes" el_id="gallery-' . rand() . '" medias="' . $item_thumb_id . '" type="carousel" style_preset="' . $style_preset . '" single_padding="0" thumb_size="' . $images_size . '" carousel_lg="1" carousel_md="1" carousel_sm="1" gutter_size="0" media_items="media" carousel_interval="0" carousel_dots="yes" carousel_dots_mobile="yes" carousel_autoh="yes" carousel_type="fade" carousel_nav="no" carousel_nav_mobile="no" carousel_dots_inside="yes" single_text="overlay" single_border="yes" single_width="' . $single_width . '" single_height="' . $single_height . '" single_text_visible="no" single_text_anim="no" single_overlay_visible="no" single_overlay_anim="no" single_image_anim="no"]';
            $media_oembed = uncode_get_oembed($item_thumb_id, $shortcode, 'shortcode', false);
            $media_code = $media_oembed['code'];
            $media_type = $media_oembed['type'];
            if (($key = array_search('tmb-overlay-anim', $block_classes)) !== false) {
                unset($block_classes[$key]);
            }
            if (($key = array_search('tmb-overlay-text-anim', $block_classes)) !== false) {
                unset($block_classes[$key]);
            }
            if (($key = array_search('tmb-image-anim', $block_classes)) !== false) {
                unset($block_classes[$key]);
            }
            $image_orig_w = $single_width;
            $image_orig_h = $single_height;
            $object_class = 'nested-carousel object-size';
        } else {
            /** This is a self-hosted image **/
            if (strpos($media_mime, 'image/') !== false && $media_mime !== 'image/url' && isset($media_metavalues['width']) && isset($media_metavalues['height'])) {
                $image_orig_w = $media_metavalues['width'];
                $image_orig_h = $media_metavalues['height'];
                /** check if open to lightbox **/
                if ($lightbox_classes) {
                    $big_image = uncode_resize_image($media_attributes->guid, $media_attributes->path, $image_orig_w, $image_orig_h, 12, null, false);
                    $create_link = $big_image['url'];
                }
                /** calculate height ratio if masonry and thumb size **/
                if ($style_preset === 'masonry') {
                    if ($images_size !== '') {
                        $crop = true;
                    } else {
                        $crop = false;
                    }
                } else {
                    $crop = true;
                }
                $resized_image = uncode_resize_image($media_attributes->guid, $media_attributes->path, $image_orig_w, $image_orig_h, $single_width, $single_height, $crop);
                $item_media = esc_attr($resized_image['url']);
                $image_orig_w = $resized_image['width'];
                $image_orig_h = $resized_image['height'];
            } else {
                if ($media_mime === 'oembed/svg') {
                    $media_type = 'html';
                    $media_code = $media_attributes->post_content;
                    $media_code = preg_replace('#\\s(id)="([^"]+)"#', ' $1="$2-' . rand() . '"', $media_code);
                    if ($media_mime === 'oembed/svg') {
                        $media_code = preg_replace('#\\s(xmlns)="([^"]+)"#', '', $media_code);
                        $media_code = preg_replace('#\\s(xmlns:svg)="([^"]+)"#', '', $media_code);
                        $media_code = preg_replace('#\\s(xmlns:xlink)="([^"]+)"#', '', $media_code);
                    }
                    /** This is an iframe **/
                } else {
                    if ($media_mime === 'oembed/iframe') {
                        $media_type = 'other';
                        $media_code = $media_attributes->post_content;
                        $image_orig_w = $media_metavalues['width'];
                        $image_orig_h = $media_metavalues['height'];
                    } else {
                        $object_class = 'object-size';
                        /** external image **/
                        if ($media_mime === 'image/url') {
                            $item_media = $media_attributes->guid;
                            $image_orig_w = $media_metavalues['width'];
                            $image_orig_h = $media_metavalues['height'];
                            if ($lightbox_classes) {
                                $create_link = $item_media;
                            }
                        } else {
                            $media_oembed = uncode_get_oembed($item_thumb_id, $media_attributes->guid, $media_attributes->post_mime_type, $media_poster, $media_attributes->post_excerpt, $media_attributes->post_content);
                            /** check if is an image oembed  **/
                            if ($media_oembed['type'] === 'image') {
                                $item_media = esc_attr($media_oembed['code']);
                                $image_orig_w = $media_oembed['width'];
                                $image_orig_h = $media_oembed['height'];
                                $media_type = 'image';
                                if ($lightbox_classes) {
                                    $create_link = $media_oembed['code'];
                                }
                            } else {
                                /** check if there is a poster  **/
                                if (isset($media_oembed['poster']) && $media_oembed['poster'] !== '' && $media_poster) {
                                    /** calculate height ratio if masonry and thumb size **/
                                    if ($style_preset === 'masonry') {
                                        if ($images_size !== '') {
                                            $crop = true;
                                        } else {
                                            $crop = false;
                                        }
                                    } else {
                                        $crop = true;
                                    }
                                    if (!empty($media_oembed['poster']) && $media_oembed['poster'] !== '') {
                                        $poster_attributes = uncode_get_media_info($media_oembed['poster']);
                                        $media_metavalues = unserialize($poster_attributes->metadata);
                                        $image_orig_w = $media_metavalues['width'];
                                        $image_orig_h = $media_metavalues['height'];
                                        $resized_image = uncode_resize_image($poster_attributes->guid, $poster_attributes->path, $image_orig_w, $image_orig_h, $single_width, $single_height, $crop);
                                        $item_media = esc_attr($resized_image['url']);
                                        $image_orig_w = $resized_image['width'];
                                        $image_orig_h = $resized_image['height'];
                                        $media_type = 'image';
                                        if ($lightbox_classes) {
                                            switch ($media_attributes->post_mime_type) {
                                                case 'oembed/twitter':
                                                case 'oembed/html':
                                                    $big_image = uncode_resize_image($poster_attributes->guid, $poster_attributes->path, $image_orig_w, $image_orig_h, 12, null, false);
                                                    $create_link = $big_image['url'];
                                                    break;
                                                default:
                                                    $create_link = $media_oembed['code'];
                                                    break;
                                            }
                                        }
                                    }
                                } else {
                                    $media_code = $media_oembed['code'];
                                    $media_type = $media_oembed['type'];
                                    $object_class = $media_oembed['class'];
                                    if ($style_preset === 'metro' || $images_size != '') {
                                        $image_orig_w = $single_width;
                                        $image_orig_h = $single_height;
                                    } else {
                                        $image_orig_w = $media_oembed['width'];
                                        $image_orig_h = $media_oembed['height'];
                                    }
                                    if (strpos($media_mime, 'audio/') !== false && isset($media_oembed['poster']) && $media_oembed['poster'] !== '') {
                                        $poster_attributes = uncode_get_media_info($media_oembed['poster']);
                                        $media_metavalues = unserialize($poster_attributes->metadata);
                                        $image_orig_w = $media_metavalues['width'];
                                        $image_orig_h = $media_metavalues['height'];
                                        $resized_image = uncode_resize_image($poster_attributes->guid, $poster_attributes->path, $image_orig_w, $image_orig_h, $single_width, $single_height, $crop);
                                        $media_oembed['dummy'] = $image_orig_h / $image_orig_w * 100;
                                    }
                                    if ($image_orig_h === 0) {
                                        $image_orig_h = 1;
                                    }
                                    if ($media_oembed['dummy'] !== 0 && $style_preset !== 'metro') {
                                        $dummy_oembed = ' style="padding-top: ' . $media_oembed['dummy'] . '%"';
                                    }
                                    if ($lightbox_classes && $media_type === 'image') {
                                        $create_link = $media_oembed['code'];
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    if ($item_media === '' && !isset($media_attributes->guid) && !$multiple_items) {
        $media_type = 'image';
        $item_media = 'http://placehold.it/500&text=media+not+available';
        $image_orig_w = 500;
        $image_orig_h = 500;
    }
    if (!$with_html) {
        return array('code' => $media_type === 'image' ? esc_url($item_media) : $media_code, 'type' => $media_type, 'width' => $image_orig_w, 'height' => $image_orig_h);
    }
    $entry = $inner_entry = '';
    foreach ($layout as $key => $value) {
        switch ($key) {
            case 'icon':
                if ($single_icon !== '' && $single_text === 'overlay') {
                    $inner_entry .= '<i class="' . $single_icon . ' t-overlay-icon"></i>';
                }
                break;
            case 'title':
                $get_title = isset($media_attributes->post_title) ? $media_attributes->post_title : '';
                if ($single_text === 'overlay' && $single_elements_click !== 'yes' || isset($media_attributes->team) && $media_attributes->team || $title_link === '#') {
                    $print_title = $single_title ? $single_title : $media_attributes->post_title;
                    if ($print_title !== '') {
                        $inner_entry .= '<h3 class="t-entry-title ' . trim(implode(' ', $title_classes)) . '">' . $print_title . '</h3>';
                    }
                } else {
                    $print_title = $single_title ? $single_title : $get_title;
                    if ($print_title !== '') {
                        $inner_entry .= '<h3 class="t-entry-title ' . trim(implode(' ', $title_classes)) . '"><a href="' . $title_link . '">' . $print_title . '</a></h3>';
                    }
                }
                break;
            case 'type':
                $inner_entry .= '<p class="t-entry-type"><span>' . ucfirst(get_post_type($block_data['id'])) . '</span></p>';
                break;
            case 'category':
            case 'meta':
                if (isset($value[0]) && $value[0] === 'yesbg') {
                    $with_bg = true;
                } else {
                    $with_bg = false;
                }
                $inner_entry .= '<p class="t-entry-meta">';
                if (is_sticky()) {
                    $inner_entry .= '<span class="t-entry-category"><i class="fa fa-ribbon fa-push-right"></i>' . esc_html__('Sticky', 'uncode') . '</span>';
                }
                if ($key === 'meta') {
                    $year = get_the_time('Y');
                    $month = get_the_time('m');
                    $day = get_the_time('d');
                    $date = get_the_date('', $block_data['id']);
                    $inner_entry .= '<span class="t-entry-category"><i class="fa fa-clock fa-push-right"></i><a href="' . get_day_link($year, $month, $day) . '">' . $date . '</a></span>';
                }
                $categories_array = isset($block_data['single_categories_id']) ? $block_data['single_categories_id'] : array();
                $cat_icon = false;
                $tag_icon = false;
                $cat_count = count($categories_array);
                $cat_counter = 0;
                foreach ($categories_array as $t_key => $tax) {
                    $category = '';
                    $add_comma = true;
                    $term_color = get_option('_uncode_taxonomy_' . $tax);
                    $cat_classes = 't-entry-category';
                    if (isset($term_color['term_color']) && $term_color['term_color'] !== '' && $with_bg) {
                        $term_color = 'text-' . $term_color['term_color'] . '-color';
                    } else {
                        $term_color = '';
                    }
                    if (isset($block_data['single_categories'][$t_key])) {
                        $single_cat = $block_data['single_categories'][$t_key];
                        if (gettype($single_cat) !== 'string' && isset($single_cat['link'])) {
                            $cat_link = $block_data['single_categories'][$t_key]['link'];
                            if ($block_data['single_categories'][$t_key]['tax'] === 'category' && !$cat_icon) {
                                $category .= '<i class="fa fa-archive2 fa-push-right"></i>';
                                $cat_icon = true;
                                $add_comma = false;
                            }
                            if ($block_data['single_categories'][$t_key]['tax'] === 'post_tag' && !$tag_icon) {
                                $category .= '<i class="fa fa-tag2 fa-push-right"></i>';
                                $tag_icon = true;
                                $add_comma = false;
                            }
                        } else {
                            $cat_link = $block_data['single_categories'][$t_key];
                        }
                        $cat_link = str_replace('<a ', '<a class="' . $term_color . '" ', $cat_link);
                        $category .= ($cat_counter !== 0 && $add_comma ? '<span class="cat-comma">,</span>' : '') . $cat_link;
                        $add_comma = true;
                    } else {
                        $category = '';
                    }
                    $inner_entry .= '<span class="' . $cat_classes . '">' . $category . '</span>';
                    $cat_counter++;
                    $category = '';
                }
                $inner_entry .= '</p>';
                break;
            case 'date':
                $date = get_the_date('', $block_data['id']);
                $inner_entry .= '<p class="t-entry-meta">';
                $inner_entry .= '<span class="t-entry-date">' . $date . '</span>';
                $inner_entry .= '</p>';
                break;
            case 'text':
                $post_format = get_post_format();
                if (isset($value[0]) && $value[0] === 'full') {
                    $block_text = apply_filters('the_content', ($post_format === 'link' ? '<i class="fa fa-link fa-push-right"></i>' : '') . get_the_content());
                    $block_text .= wp_link_pages(array('before' => '<div class="page-links">' . esc_html__('Pages:', 'uncode'), 'after' => '</div>', 'link_before' => '<span>', 'link_after' => '</span>', 'echo' => 0));
                } else {
                    $block_text = get_post_field('post_excerpt', $block_data['id']);
                }
                if (isset($block_data['text_length']) && $block_data['text_length'] !== '') {
                    $block_text = '<p>' . uncode_truncate($block_text, $block_data['text_length']) . '</p>';
                } else {
                    if (isset($value[1]) && !empty($value[1])) {
                        $block_text = '<p>' . uncode_truncate($block_text, $value[1]) . '</p>';
                    }
                }
                if ($single_text === 'overlay' && $single_elements_click !== 'yes') {
                    $inner_entry .= '<p class="t-entry-excerpt">' . preg_replace('/<\\/?a(.|\\s)*?>/', '', $block_text) . '</p>';
                } else {
                    if (isset($value[0]) && $value[0] === 'full') {
                        $inner_entry .= $block_text;
                    } else {
                        $inner_entry .= '<p class="t-entry-excerpt">' . $block_text . '</p>';
                    }
                }
                break;
            case 'link':
                $btn_shape = ' btn-default';
                if (isset($value[0]) && $value[0] !== 'default') {
                    if ($value[0] === 'link') {
                        $btn_shape = ' btn-link';
                    } else {
                        $btn_shape = ' btn-default btn-' . $value[0];
                    }
                }
                if ($single_text === 'overlay' && $single_elements_click !== 'yes') {
                    $inner_entry .= '<p class="t-entry-readmore"><span class="btn' . $btn_shape . '">Read More</span></p>';
                } else {
                    $inner_entry .= '<p class="t-entry-readmore"><a href="' . $create_link . '" class="btn' . $btn_shape . '">Read More</a></p>';
                }
                break;
            case 'author':
                $author = get_post_field('post_author', $block_data['id']);
                $author_name = get_the_author_meta('display_name', $author);
                $author_link = get_author_posts_url($author);
                $inner_entry .= '<p class="t-entry-author">';
                if ($single_text === 'overlay' && $single_elements_click !== 'yes') {
                    $inner_entry .= get_avatar($author, 80) . '<span>' . esc_html__('by ', 'uncode') . $author_name . '</span>';
                } else {
                    $inner_entry .= '<a href="' . $author_link . '">' . get_avatar($author, 80) . '<span>' . esc_html__('by ', 'uncode') . $author_name . '</span></a>';
                }
                $inner_entry .= '</p>';
                break;
            case 'extra':
                $inner_entry .= '<p class="t-entry-comments entry-small"><span class="extras">';
                if (function_exists('dot_irecommendthis')) {
                    global $uncode_irecommendthis;
                    if ($single_text === 'under') {
                        $inner_entry .= $uncode_irecommendthis->dot_recommend($block_data['id'], true);
                    } else {
                        if ($single_elements_click === 'yes') {
                            $inner_entry .= $uncode_irecommendthis->dot_recommend($block_data['id'], true);
                        } else {
                            $inner_entry .= $uncode_irecommendthis->dot_recommend($block_data['id'], false);
                        }
                    }
                }
                $num_comments = get_comments_number($block_data['id']);
                $entry_comments = '<i class="fa fa-speech-bubble"></i><span>' . $num_comments . ' ' . _nx('Comment', 'Comments', $num_comments, 'comments', 'uncode') . '</span>';
                if ($single_text === 'overlay' && $single_elements_click !== 'yes') {
                    $inner_entry .= '<span class="extras-wrap">' . $entry_comments . '</span>';
                } else {
                    $inner_entry .= '<a class="extras-wrap" href="' . get_comments_link($block_data['id']) . '" title="title">' . $entry_comments . '</a>';
                }
                $inner_entry .= '<span class="extras-wrap"><i class="fa fa-watch"></i><span>' . uncode_estimated_reading_time($block_data['id']) . '</span></span></span></p>';
                break;
            case 'price':
                global $woocommerce;
                if (class_exists('WooCommerce')) {
                    $product = new WC_Product($block_data['id']);
                    $inner_entry .= '<span class="price ' . trim(implode(' ', $title_classes)) . '">' . $product->get_price_html() . '</span>';
                }
                break;
            case 'caption':
                if (isset($media_attributes->post_excerpt) && $media_attributes->post_excerpt !== '') {
                    $inner_entry .= '<p class="t-entry-meta"><span>' . $media_attributes->post_excerpt . '</span></p>';
                }
                break;
            case 'description':
                if (isset($media_attributes->post_content) && $media_attributes->post_content !== '') {
                    $inner_entry .= '<p class="t-entry-excerpt">' . $media_attributes->post_content . '</p>';
                }
                break;
            case 'team-social':
                if ($media_attributes->team) {
                    $team_socials = explode("\n", $media_attributes->team_social);
                    $inner_entry .= '<p class="t-entry-comments t-entry-member-social"><span class="extras">';
                    foreach ($team_socials as $key => $value) {
                        if ($value !== '') {
                            $get_host = parse_url($value);
                            $host = str_replace("www.", "", $get_host['host']);
                            $host = explode('.', $host);
                            if ($host[0] === 'plus') {
                                $host[0] = 'google-' . $host[0];
                            }
                            $inner_entry .= '<a href="' . esc_url($value) . '" target="_blank"><i class="fa fa-' . esc_attr($host[0]) . '"></i></a>';
                        }
                    }
                    $inner_entry .= '</span></p>';
                }
                break;
            case 'sep-one':
            case 'sep-two':
                $sep_class = isset($value[0]) && $value[0] === 'reduced' ? ' class="separator-reduced"' : '';
                $inner_entry .= '<hr' . $sep_class . ' />';
                break;
        }
    }
    if (isset($media_attributes->team) && $media_attributes->team) {
        $single_elements_click = 'yes';
    }
    if (!empty($layout) && !(count($layout) === 1 && array_key_exists('media', $layout)) && $inner_entry !== '') {
        if ($single_text === 'under') {
            $entry .= '<div class="t-entry-text">
						<div class="t-entry-text-tc ' . $block_data['text_padding'] . '">';
        }
        $entry .= '<div class="t-entry">';
        $entry .= $inner_entry;
        $entry .= '</div>';
        if ($single_text === 'under') {
            $entry .= '</div>
				</div>';
        }
    }
    if ($lightbox_classes) {
        $lightbox_data = ' ' . implode(' ', array_map(function ($v, $k) {
            return $k . '="' . $v . '"';
        }, $lightbox_classes, array_keys($lightbox_classes)));
        $lightbox_data .= ' data-lbox="ilightbox_' . $el_id . '"';
        $video_src = '';
        if (isset($media_attributes->post_mime_type) && strpos($media_attributes->post_mime_type, 'video/') !== false) {
            $video_src .= 'html5video:{preload:\'true\',';
            $alt_videos = get_post_meta($item_thumb_id, "_uncode_video_alternative", true);
            if (!empty($alt_videos)) {
                foreach ($alt_videos as $key => $value) {
                    $exloded_url = explode(".", strtolower($value));
                    $ext = end($exloded_url);
                    if ($ext !== '') {
                        $video_src .= $ext . ":'" . $value . "',";
                    }
                }
            }
            $video_src .= '},';
        }
        $lightbox_data .= ' data-options="' . $video_src . 'thumbnail: \'' . $item_media . '\'"';
    }
    $layoutArray = array_keys($layout);
    foreach ($layoutArray as $key => $value) {
        if ($value === 'icon') {
            unset($layoutArray[$key]);
        }
    }
    if (!array_key_exists('media', $layout)) {
        $block_classes[] = 'tmb-only-text';
        $with_media = false;
    } else {
        $with_media = true;
    }
    if ($single_text === 'overlay') {
        $block_classes[] = 'tmb-media-first';
        $block_classes[] = 'tmb-media-last';
        $block_classes[] = 'tmb-content-overlay';
    } else {
        $block_classes[] = 'tmb-content-under';
        $layoutLast = (string) array_pop($layoutArray);
        if (($layoutLast === 'media' || $layoutLast === '') && $with_media) {
            $block_classes[] = 'tmb-media-last';
        } else {
            $block_classes[] = 'tmb-media-first';
        }
    }
    $media_alt = isset($media_attributes->alt) ? $media_attributes->alt : '';
    if ($single_back_color === '') {
        $block_classes[] = 'tmb-no-bg';
    } else {
        $single_back_color = ' style-' . $single_back_color . '-bg';
    }
    $output = '<div class="' . implode(' ', $block_classes) . '">
					<div class="' . ($nested !== 'yes' ? 't-inside' : '') . $single_back_color . $single_animation . '" ' . implode(' ', array_map(function ($v, $k) {
        return $k . '="' . $v . '"';
    }, $tmb_data, array_keys($tmb_data))) . '>';
    if ($single_text === 'under' && $layoutLast === 'media') {
        $output .= $entry;
    }
    if (array_key_exists('media', $layout) || $single_text === 'overlay') {
        $output .= '<div class="t-entry-visual">
							<div class="t-entry-visual-tc">
								<div class="t-entry-visual-cont">';
        if ($style_preset === 'masonry' && ($images_size !== '' || ($single_text === 'under' || $single_elements_click !== 'yes')) && array_key_exists('media', $layout)) {
            if ($media_type === 'image' && $image_orig_w != 0 && $image_orig_h != 0) {
                $dummy_padding = round($image_orig_h / $image_orig_w * 100, 2);
                $output .= '<div class="dummy" style="padding-top: ' . $dummy_padding . '%;"></div>';
            }
        }
        if (($single_text === 'under' || $single_elements_click !== 'yes') && $media_type === 'image') {
            if ($style_preset === 'masonry') {
                $a_classes[] = 'pushed';
            }
            $data_values = isset($block_data['link']['target']) && !empty($block_data['link']['target']) && is_array($block_data['link']) ? ' target="' . trim($block_data['link']['target']) . '"' : '';
            $output .= '<a href="' . ($media_type === 'image' ? $create_link : '') . '"' . (count($a_classes) > 0 ? ' class="' . trim(implode(' ', $a_classes)) . '"' : '') . $lightbox_data . $data_values . '>';
        }
        $output .= '<div class="t-entry-visual-overlay"><div class="t-entry-visual-overlay-in ' . $overlay_color . '" style="opacity: ' . $overlay_opacity . ';"></div></div>
									<div class="t-overlay-wrap">
										<div class="t-overlay-inner">
											<div class="t-overlay-content">
												<div class="t-overlay-text ' . $block_data['text_padding'] . '">';
        if ($single_text === 'overlay') {
            $output .= $entry;
        } else {
            $output .= '<div class="t-entry t-single-line">';
            if (array_key_exists('icon', $layout)) {
                if ($single_icon !== '') {
                    $output .= '<i class="' . $single_icon . ' t-overlay-icon"></i>';
                }
            }
            $output .= '</div>';
        }
        $output .= '</div>
											</div>
										</div>
									</div>';
        if (array_key_exists('media', $layout)) {
            if ($style_preset === 'metro') {
                if ($single_elements_click === 'yes' && $media_type === 'image') {
                    $a_classes[] = 't-background-click';
                    $data_values = !empty($block_data['link']['target']) ? ' target="' . trim($block_data['link']['target']) . '"' : '';
                    $output .= '<a href="' . ($media_type === 'image' ? $create_link : '') . '"' . (count($a_classes) > 0 ? ' class="' . trim(implode(' ', $a_classes)) . '"' : '') . $lightbox_data . $data_values . '>
											<div class="t-background-cover" style="background-image:url(\'' . $item_media . '\')"></div>
										</a>';
                } else {
                    if ($media_type === 'image') {
                        $output .= '<div class="t-background-cover" style="background-image:url(\'' . $item_media . '\')"></div>';
                    } else {
                        $output .= '<div class="fluid-object ' . trim(implode(' ', $title_classes)) . ' ' . $object_class . '"' . $dummy_oembed . '>' . $media_code . '</div>';
                    }
                }
            } else {
                if ($media_type === 'image') {
                    $output .= '<img src="' . $item_media . '" width="' . $image_orig_w . '" height="' . $image_orig_h . '" alt="' . $media_alt . '" />';
                } else {
                    $output .= '<div class="fluid-object ' . trim(implode(' ', $title_classes)) . ' ' . $object_class . '"' . $dummy_oembed . '>' . $media_code . '</div>';
                }
            }
        }
        if (($single_text === 'under' || $single_elements_click !== 'yes') && $media_type === 'image') {
            $output .= '</a>';
        }
        if ($is_product) {
            $product = wc_get_product($block_data['id']);
            $product_add_to_cart = sprintf('<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" class="%s product_type_%s">%s</a>', esc_url($product->add_to_cart_url()), esc_attr($product->id), esc_attr($product->get_sku()), $product->is_purchasable() ? 'add_to_cart_button' : '', esc_attr($product->product_type), esc_html($product->add_to_cart_text()));
            $output .= '<div class="add-to-cart-overlay">' . $product_add_to_cart . '</div>';
        }
        $output .= '</div>
							</div>
						</div>';
    }
    if ($single_text === 'under' && $layoutLast !== 'media') {
        $output .= $entry;
    }
    $output .= '</div>
				</div>';
    return $output;
}
 * The template part for displaying results in search pages.
 *
 * Learn more: http://codex.wordpress.org/Template_Hierarchy
 *
 * @package uncode
 */
$post_type = get_post_type();
?>

<article id="post-<?php 
the_ID();
?>
" <?php 
post_class();
?>
>
	<header class="entry-header">
		<?php 
the_title(sprintf('<h1 class="entry-title h4"><a href="%s" rel="bookmark">', esc_url(get_permalink())), '</a></h1>');
?>
	</header><!-- .entry-header -->

	<div class="entry-summary">
		<?php 
$text = wp_strip_all_tags(do_shortcode(get_the_content()));
echo uncode_truncate($text, 400);
?>
	</div><!-- .entry-summary -->

</article><!-- #post-## -->