function themerex_ajax_query_attachments_args($query)
{
    if (isset($query['post_mime_type'])) {
        $v = $query['post_mime_type'];
        if (themerex_substr($v, 0, 13) == 'media_folder.') {
            unset($query['post_mime_type']);
            if (themerex_strlen($v) > 13) {
                $query['media_folder'] = themerex_substr($v, 13);
            } else {
                $list_ids = array();
                /*
                $terms = get_terms('media_folder', array(
                	'hide_empty' => false
                ));
                */
                $terms = getTermsByTaxonomy(array('media_folder'));
                if (count($terms) > 0) {
                    foreach ($terms as $term) {
                        $list_ids[] = $term->term_id;
                    }
                }
                if (count($list_ids) > 0) {
                    $query['tax_query'] = array(array('taxonomy' => 'media_folder', 'field' => 'id', 'terms' => $list_ids, 'operator' => 'NOT IN'));
                }
            }
        }
    }
    return $query;
}
Ejemplo n.º 2
0
    /**
     * How to display the widget on the screen.
     */
    function widget($args, $instance)
    {
        extract($args);
        global $wp_query, $post;
        /* Our variables from the widget settings. */
        $title = apply_filters('widget_title', isset($instance['title']) ? $instance['title'] : '');
        $title_tabs = array(apply_filters('widget_title', isset($instance['title_author']) ? $instance['title_author'] : ''), apply_filters('widget_title', isset($instance['title_users']) ? $instance['title_users'] : ''));
        $number = isset($instance['number']) ? (int) $instance['number'] : '';
        $show_date = isset($instance['show_date']) ? (int) $instance['show_date'] : 0;
        $show_image = isset($instance['show_image']) ? (int) $instance['show_image'] : 0;
        $show_author = isset($instance['show_author']) ? (int) $instance['show_author'] : 0;
        $show_counters = isset($instance['show_counters']) ? (int) $instance['show_counters'] : 0;
        $category = isset($instance['category']) ? (int) $instance['category'] : 0;
        $counters = 'stars';
        $output = '';
        $tabs = array();
        $reviews_first_author = get_theme_option('reviews_first') == 'author';
        $reviews_second_hide = get_theme_option('reviews_second') == 'hide';
        for ($i = 0; $i < 2; $i++) {
            if ($i == 0 && !$reviews_first_author && $reviews_second_hide) {
                continue;
            }
            if ($i == 1 && $reviews_first_author && $reviews_second_hide) {
                continue;
            }
            $args = array('post_type' => 'post', 'post_status' => current_user_can('read_private_pages') && current_user_can('read_private_posts') ? array('publish', 'private') : 'publish', 'post_password' => '', 'posts_per_page' => $number, 'ignore_sticky_posts' => 1, 'order' => 'DESC', 'orderby' => 'meta_value_num', 'meta_key' => 'reviews_avg' . ($i == 0 ? '' : '2'));
            if ($category > 0) {
                $args['cat'] = $category;
            }
            $ex = get_theme_option('exclude_cats');
            if (!empty($ex)) {
                $args['category__not_in'] = explode(',', $ex);
            }
            query_posts($args);
            /* Loop posts */
            if (have_posts()) {
                $tabs[$i] = '<li><a href="#widget_top10_' . $i . '" class="theme_button"><span>' . $title_tabs[$i] . '</span></a></li>';
                $output .= '
					<div class="tab_content" id="widget_top10_' . $i . '"' . ($i == 1 && !$output ? ' style="display: block;"' : '') . '>
				';
                $post_number = 0;
                while (have_posts()) {
                    the_post();
                    $post_number++;
                    $post_id = get_the_ID();
                    $post_date = getDateOrDifference(get_the_date('Y-m-d H:i:s'));
                    $post_title = $post->post_title;
                    $post_link = get_permalink();
                    $output .= '
						<div class="post_item' . ($post_number == 1 ? ' first' : '') . '">
					';
                    if ($show_image) {
                        $post_thumb = getResizedImageTag($post_id, 60, 60);
                        if ($post_thumb) {
                            $output .= '
									<div class="post_thumb image_wrapper">' . $post_thumb . '</div>
							';
                        }
                    }
                    $output .= '
									<div class="post_wrapper">
										<h5 class="post_title theme_title' . ($show_counters == 2 ? '' : ' title_padding') . '"><a href="' . $post_link . '">' . $post_title . '</a></h5>
					';
                    if ($show_counters) {
                        $post_counters = marksToDisplay(get_post_meta($post_id, 'reviews_avg' . ($i == 0 ? '' : '2'), true));
                        if ($post_counters > 0) {
                            if (themerex_strlen($post_counters) == 1) {
                                $post_counters .= '.0';
                            }
                            if ($show_counters == 2 && get_custom_option('show_reviews') == 'yes') {
                                $output .= '
									<div class="reviews_summary blog_reviews">
										<div class="criteria_summary criteria_row">
											' . getReviewsSummaryStars($post_counters) . '
										</div>
									</div>
								';
                            }
                        }
                    }
                    if ($show_date || $show_counters || $show_author) {
                        $output .= '
										<div class="post_info theme_info">
						';
                        if ($show_date) {
                            $output .= '
												<span class="post_date theme_text">' . $post_date . '</span>
							';
                        }
                        if ($show_author) {
                            $post_author_id = $post->post_author;
                            $post_author_name = get_the_author_meta('display_name', $post_author_id);
                            $post_author_url = get_author_posts_url($post_author_id, '');
                            $output .= '
											<span class="post_author">' . __('by', 'themerex') . ' <a href="' . $post_author_url . '">' . $post_author_name . '</a></span>
							';
                        }
                        if ($show_counters == 1 && $post_counters) {
                            $output .= '
										<span class="post_comments"><a href="' . $post_link . '">
											<span class="comments_icon icon-star"></span><span class="post_comments_number">' . $post_counters . '</span>
										</a></span>';
                        }
                        $output .= '
										</div>
						';
                    }
                    $output .= '
							</div>
						</div>
					';
                    if ($post_number >= $number) {
                        break;
                    }
                }
                $output .= '
					</div>
				';
            }
        }
        /* Restore main wp_query and current post data in the global var $post */
        wp_reset_query();
        wp_reset_postdata();
        if (!empty($output)) {
            if (!$reviews_second_hide) {
                wp_enqueue_script('jquery-ui-tabs', false, array('jquery', 'jquery-ui-core'), null, true);
            }
            /* Before widget (defined by themes). */
            echo $before_widget;
            /* Display the widget title if one was input (before and after defined by themes). */
            if ($title) {
                echo $before_title . $title . $after_title;
            }
            echo '
				<div class="top10_tabs' . ($show_image ? '' : ' ordered_list') . ($show_image || $show_date || $show_author ? '' : ' flat_list') . '">' . (!$reviews_second_hide ? '<ul class="tabs">' . ($reviews_first_author ? $tabs[0] . $tabs[1] : $tabs[1] . $tabs[0]) . '</ul>' : '') . $output . (!$reviews_second_hide ? '
							<script type="text/javascript">
								jQuery(document).ready(function() {
									jQuery(\'.top10_tabs\').tabs();
								});
							</script>' : '') . '
				</div>
			';
            /* After widget (defined by themes). */
            echo $after_widget;
        }
    }
Ejemplo n.º 3
0
function getSelectorPropertyFromCSS($css, $selector, $prop)
{
    $rez = '';
    if (!file_exists($css)) {
        return $rez;
    }
    $file = file($css);
    foreach ($file as $row) {
        if (($pos = themerex_strpos($row, $selector)) === false) {
            continue;
        }
        if (($pos2 = themerex_strpos($row, $prop . ':', $pos)) !== false && ($pos3 = themerex_strpos($row, ';', $pos2)) !== false && $pos2 < $pos3) {
            $rez = trim(chop(themerex_substr($row, $pos2 + themerex_strlen($prop) + 1, $pos3 - $pos2 - themerex_strlen($prop) - 1)));
            break;
        }
    }
    return $rez;
}
Ejemplo n.º 4
0
 function themerex_compose_styles()
 {
     global $wp_styles, $concatenate_scripts, $compress_css, $THEMEREX_styles_collector;
     if (is_admin() || get_theme_option('compose_scripts') != 'yes' || !is_object($wp_styles)) {
         return;
     }
     //$concatenate_scripts = $compress_css = true;
     $theme_url = get_template_directory_uri();
     foreach ($wp_styles->queue as $style) {
         if (isset($wp_styles->registered[$style]) && themerex_strpos($wp_styles->registered[$style]->src, $theme_url) === 0 && themerex_strpos($wp_styles->registered[$style]->ver, 'no-compose') === false) {
             //$dir = dirname(themerex_substr($wp_styles->registered[$style]->src, themerex_strlen($wp_styles->base_url))).'/';
             $dir = dirname($wp_styles->registered[$style]->src) . '/';
             if (file_exists($file = get_template_directory() . themerex_substr($wp_styles->registered[$style]->src, themerex_strlen($theme_url)))) {
                 $css = file_get_contents($file);
                 if (isset($wp_styles->registered[$style]->extra['after'])) {
                     foreach ($wp_styles->registered[$style]->extra['after'] as $add) {
                         $css .= "\n" . $add . "\n";
                     }
                 }
                 $pos = -1;
                 while (($pos = themerex_strpos($css, 'url(', $pos + 1)) !== false) {
                     if (themerex_substr($css, $pos, 9) == 'url(data:') {
                         continue;
                     }
                     $shift = 0;
                     if (($ch = themerex_substr($css, $pos + 4, 1)) == '"' || $ch == "'") {
                         $shift = 1;
                     }
                     $css = themerex_substr($css, 0, $pos + 4 + $shift) . $dir . themerex_substr($css, $pos + 4 + $shift);
                 }
                 $THEMEREX_styles_collector .= "\n" . $css . "\n";
                 $wp_styles->done[] = $style;
             }
         }
     }
     if ($THEMEREX_styles_collector) {
         echo "\n<!-- Stylesheets composer -->\n<style type=\"text/css\">\n" . $THEMEREX_styles_collector . "\n</style>\n<!-- /Stylesheets composer -->\n";
     }
 }
Ejemplo n.º 5
0
function get_option_name($fullname)
{
    global $THEMEREX_shortname;
    return themerex_substr($fullname, 0, themerex_strlen($THEMEREX_shortname) + 1) == $THEMEREX_shortname . '_' ? themerex_substr($fullname, themerex_strlen($THEMEREX_shortname) + 1) : $fullname;
}
Ejemplo n.º 6
0
    function getReviewsMarkup($field, $value, $editable = false, $clear = false, $snippets = false)
    {
        $maxLevel = max(5, (int) get_custom_option('reviews_max_level'));
        $reviews_style = get_custom_option('reviews_style');
        $output = '';
        $criterias = $field['options'];
        $marks = explode(',', $value);
        if (is_array($criterias) && count($criterias) > 0) {
            $i = 0;
            foreach ($criterias as $num => $sb) {
                if (empty($sb)) {
                    continue;
                }
                if ($clear || !isset($marks[$i]) || $marks[$i] == '' || is_inherit_option($marks[$i])) {
                    $marks[$i] = 0;
                }
                $output .= '<div class="revWrap revStyle' . $maxLevel . '">' . getReviewsSummaryStars($marks[$i], $editable, true, $reviews_style) . '<div class="revName">' . $sb . '</div>' . '</div>';
                $i++;
            }
        }
        $output .= isset($field['accept']) && $field['accept'] ? '<div class="revAccept">' . do_shortcode('[trx_button id="rev_author" skin="global" style="bg" size="medium" title="' . __('Accept your votes', 'themerex') . '"]' . __('Accept your votes', 'themerex') . '[/trx_button]') . '</div>' : '';
        $avg = getReviewsRatingAverage($value);
        $output .= '
            <div class="revTotalWrap">
            	<div class="revTotal"><div class="revRating" data-mark="' . $avg . '">' . $avg . (themerex_strlen($avg) == 1 ? '.0' : '') . '</div></div>
                <div class="revDesc">' . (isset($field['descr']) ? $field['descr'] : '') . '</div>
            </div>
		';
        return $output;
    }
Ejemplo n.º 7
0
function getUploadsDirFromURL($url)
{
    $upload_info = wp_upload_dir();
    $upload_dir = $upload_info['basedir'];
    $upload_url = $upload_info['baseurl'];
    $http_prefix = "http://";
    $https_prefix = "https://";
    if (!strncmp($url, $https_prefix, themerex_strlen($https_prefix))) {
        //if url begins with https:// make $upload_url begin with https:// as well
        $upload_url = str_replace($http_prefix, $https_prefix, $upload_url);
    } else {
        if (!strncmp($url, $http_prefix, themerex_strlen($http_prefix))) {
            //if url begins with http:// make $upload_url begin with http:// as well
            $upload_url = str_replace($https_prefix, $http_prefix, $upload_url);
        }
    }
    // Check if $img_url is local.
    if (false === themerex_strpos($url, $upload_url)) {
        return false;
    }
    // Define path of image.
    $rel_path = str_replace($upload_url, '', $url);
    $img_path = $upload_dir . $rel_path;
    return $img_path;
}
Ejemplo n.º 8
0
    if ($opt['style'] != 'date') {
        ?>
		<div class="sc_<?php 
        echo in_array($opt['style'], array('accordion_1', 'accordion_2', 'accordion_3')) ? 'toggl' : 'blogger';
        ?>
_content">
		<?php 
    }
    if (in_array($opt['style'], array('date'))) {
        echo balanceTags($info);
    }
    if (in_array($opt['style'], array('image_small', 'image_medium')) && $thumb) {
        echo balanceTags($thumb);
    }
    if ($opt['style'] != 'date' && $opt['descr'] > 0) {
        if (!in_array($post_data['post_format'], array('quote', 'link')) && themerex_strlen($post_data['post_excerpt']) > $opt['descr']) {
            $post_data['post_excerpt'] = getShortString(strip_tags($post_data['post_excerpt']), $opt['descr'], $opt['readmore'] ? '' : '...');
        }
        echo balanceTags($post_data['post_excerpt']);
    }
    if (in_array($opt['style'], array('accordion_1', 'accordion_2', 'accordion_3'))) {
        echo balanceTags($info);
    }
    if ($opt['style'] != 'date') {
        ?>
		</div>
		<?php 
    }
    if (!in_array($opt['style'], array('date', 'accordion_1', 'accordion_2', 'accordion_3'))) {
        echo balanceTags($info);
    }
Ejemplo n.º 9
0
 function replace_uploads($str)
 {
     if (is_array($str)) {
         foreach ($str as $k => $v) {
             $str[$k] = $this->replace_uploads($v);
         }
     } else {
         if (is_string($str)) {
             while (($pos = themerex_strpos($str, "/{$this->options['uploads_folder']}/")) !== false) {
                 $pos0 = $pos;
                 while ($pos0) {
                     if (themerex_substr($str, $pos0, 5) == 'http:') {
                         break;
                     }
                     $pos0--;
                 }
                 $str = ($pos0 > 0 ? themerex_substr($str, 0, $pos0) : '') . $this->uploads_url . themerex_substr($str, $pos + themerex_strlen($this->options['uploads_folder']) + 1);
             }
         }
     }
     return $str;
 }
Ejemplo n.º 10
0
    function getReviewsMarkup($field, $value, $editable = false, $clear = false, $snippets = false)
    {
        $maxLevel = max(5, (int) get_custom_option('reviews_max_level'));
        $output = '';
        $criterias = $field['options'];
        $marks = explode(',', $value);
        if (is_array($criterias) && count($criterias) > 0) {
            $i = 0;
            foreach ($criterias as $num => $sb) {
                if (empty($sb)) {
                    continue;
                }
                if ($clear || !isset($marks[$i]) || $marks[$i] == '' || is_inherit_option($marks[$i])) {
                    $marks[$i] = 0;
                }
                $output .= '<div class="ratBody">' . getReviewsSummaryStars($marks[$i], $editable) . '<span class="name">' . $sb . '</span>' . '</div>';
                $i++;
            }
        }
        $output .= isset($field['accept']) && $field['accept'] ? '<div class="accept"><div class="squareButton global"><a href="#" title="' . __('Accept your votes', 'themerex') . '">' . __('Accept', 'themerex') . '</a></div></div>' : '';
        $avg = getReviewsRatingAverage($value);
        $output .= '
            <div class="infoTotal">
                <div class="infoRat">' . (isset($field['descr']) ? $field['descr'] : '') . '</div>
                <div class="totalWrap">
                    <div class="totalStar">
						' . getReviewsSummaryStars($avg, false, $snippets) . '
                    </div>
                    <div class="totalRating" data-mark="' . $avg . '">' . $avg . (themerex_strlen($avg) == 1 ? '.0' : '') . '</div>
                </div>
            </div>
		';
        return $output;
    }
<?php

global $THEMEREX_usermenu, $THEMEREX_usermenu_show;
if (empty($THEMEREX_usermenu) || !$THEMEREX_usermenu_show) {
    ?>
	<ul id="usermenu" class="usermenu_list">
    <?php 
} else {
    $menu = themerex_substr($THEMEREX_usermenu, 0, themerex_strlen($THEMEREX_usermenu) - 5);
    $pos = themerex_strpos($menu, '<ul');
    if ($pos !== false) {
        $menu = themerex_substr($menu, 0, $pos + 3) . ' class="usermenu_list"' . themerex_substr($menu, $pos + 3);
    }
    echo str_replace('class=""', '', $menu);
}
?>

<?php 
if (is_woocommerce_page() && get_custom_option('show_currency') == 'yes') {
    ?>
	<li class="usermenu_currency">
		<a href="#">$</a>
		<ul>
			<li><a href="#"><b>&#36;</b> <?php 
    _e('Dollar', 'themerex');
    ?>
</a></li>
			<li><a href="#"><b>&euro;</b> <?php 
    _e('Euro', 'themerex');
    ?>
</a></li>
Ejemplo n.º 12
0
function sc_blogger($atts, $content = null)
{
    extract(shortcode_atts(array("id" => "", "style" => "regular", "bubble_color" => "", "ids" => "", "cat" => "", "count" => "3", "offset" => "", "orderby" => "date", "order" => "desc", "descr" => "0", "readmore" => "0", "dir" => "horizontal", "border" => "0", "rating" => "1", "top" => "", "bottom" => "", "left" => "", "right" => ""), $atts));
    $s = ($top !== '' ? 'margin-top:' . $top . 'px;' : '') . ($bottom !== '' ? 'margin-bottom:' . $bottom . 'px;' : '') . ($left !== '' ? 'margin-left:' . $left . 'px;' : '') . ($right !== '' ? 'margin-right:' . $right . 'px;' : '');
    global $THEMEREX_sc_blogger_counter, $post;
    $THEMEREX_sc_blogger_counter = 0;
    if (!in_array($style, array('regular', 'date', 'image_large', 'image_medium', 'image_small', 'bubble_left', 'bubble_top', 'accordion', 'puzzles', 'underline'))) {
        $style = 'regular';
    }
    if (!empty($ids)) {
        $posts = explode(',', str_replace(' ', '', $ids));
        $count = count($posts);
    }
    if ($style == 'accordion') {
        $dir = 'vertical';
    }
    $output = $style == 'puzzles' ? '' : '<div' . ($id ? ' id="' . $id . '"' : '') . ' class="sc_blogger' . ' sc_blogger_' . ($dir == 'vertical' ? 'vertical' : 'horizontal') . ' style_' . $style . ($style == 'accordion' ? ' sc_accordion' : '') . ($dir != 'vertical' && $style != 'puzzles' ? ' sc_columns sc_columns_count_' . $count : '') . '"' . ($s != '' ? ' style="' . $s . '"' : '') . '>';
    $counters = get_theme_option("blog_counters");
    $args = array('post_status' => current_user_can('read_private_pages') && current_user_can('read_private_posts') ? array('publish', 'private') : 'publish', 'posts_per_page' => $count, 'ignore_sticky_posts' => 1, 'order' => $order == 'asc' ? 'asc' : 'desc', 'orderby' => 'date');
    if ($offset > 0 && empty($ids)) {
        $args['offset'] = $offset;
    }
    $args = addSortOrderInQuery($args, $orderby, $order);
    $args = addPostsAndCatsInQuery($args, $ids, $cat);
    $query = new WP_Query($args);
    while ($query->have_posts()) {
        $query->the_post();
        $post_id = get_the_ID();
        $post_protected = post_password_required();
        $post_format = get_post_format();
        $post_link = get_permalink();
        $post_comments_link = $counters == 'comments' ? get_comments_link($post_id) : $post_link;
        $post_comments = get_comments_number();
        $post_views = getPostViews($post_id);
        $post_date = prepareDateForTranslation(get_the_date());
        $post_date_sql = get_the_date('Y-m-d H:i:s');
        $post_date_diff = getDateOrDifference($post_date_sql);
        $post_icon = getPostFormatIcon($post_format);
        $post_author = get_the_author();
        $post_author_id = get_the_author_meta('ID');
        $post_author_url = get_author_posts_url($post_author_id, '');
        $post_title_tag = $dir == 'vertical' ? 'h3' : 'h4';
        $post_thumb_w = $post_thumb_h = 0;
        if (themerex_strpos($style, 'bubble') !== false) {
            $post_custom_options = get_post_meta($post_id, 'post_custom_options', true);
            $post_icon = isset($post_custom_options['page_icon']) ? $post_custom_options['page_icon'] : $post_icon;
            $post_title_tag = 'h2';
        } else {
            if ($style == 'image_small') {
                $post_thumb = getResizedImageTag($post_id, 120, 80);
            } else {
                if ($style == 'image_medium') {
                    $post_thumb = getResizedImageTag($post_id, $post_thumb_w = 279, $post_thumb_h = 186);
                } else {
                    if ($style == 'image_large') {
                        $post_thumb = getResizedImageTag($post_id, $post_thumb_w = 466, $post_thumb_h = 310);
                    } else {
                        if ($style == 'puzzles') {
                            $post_thumb = getResizedImageTag($post_id, $post_thumb_w = 310, $post_thumb_h = 310);
                        }
                    }
                }
            }
        }
        //$post_attachment = wp_get_attachment_url(get_post_thumbnail_id($post_id));
        if (get_theme_option('preserve_decoration') == 'no') {
            // -------------- Old way to get title, excerpt and content -----------------------
            $post_title = get_the_title();
            $post_content_full = $post->post_content;
            //get_the_content() not used, because it trim content up to <!-- more --> in each case!
            $post_content_prepared = strip_shortcodes($post_content_full);
            //do_shortcode($post_content_full); //do_shortcode() make a recursion if insert shortcode [blogger] in the posts!!!!
            $post_excerpt = in_array($post_format, array('quote', 'link')) && $style == 'puzzles' ? $post_content_prepared : ($descr > 0 ? strip_tags(strip_shortcodes(getPostDescription($descr, $readmore ? '' : '...'))) : '');
        } else {
            // ----------------- New way to get title, excerpt and content -----------------------
            $post_title = $post_title_plain = get_the_title();
            global $more;
            $old_more = $more;
            $more = -1;
            $post_content_full = get_the_content();
            $post_content_prepared = do_shortcode($post_content_full);
            $more = $old_more;
            $post_content = get_the_content(null);
            $post_excerpt = has_excerpt() || $post_protected ? get_the_excerpt() : '';
            if (empty($post_excerpt)) {
                if (($more_pos = themerex_strpos($post_content_full, '<span id="more-')) !== false) {
                    $post_excerpt = themerex_substr($post_content_full, 0, $more_pos);
                } else {
                    $post_excerpt = in_array($post_format, array('quote', 'link')) ? $post_content : get_the_excerpt();
                }
            }
            $post_excerpt = str_replace('[&hellip;]', '', $post_excerpt);
            if (!in_array($post_format, array('quote', 'link')) && $descr > 0 && themerex_strlen($post_excerpt) > $descr) {
                $post_excerpt = getShortString(strip_tags(do_shortcode($post_excerpt)), $descr, $readmore ? '' : '...');
            }
            $post_excerpt .= !in_array($post_format, array('quote', 'link')) && $readmore ? '&nbsp;<a href="' . $post_link . '" class="readmore">' . ($readmore == 1 ? '&raquo;' : $readmore) . '</a>' : '';
            //$post_content = apply_filters('the_content', $post_content);
            // ------------------  /New way to get title, excerpt and content -----------------------
        }
        $post_excerpt = apply_filters(in_array($post_format, array('quote', 'link')) ? 'the_content' : 'the_excerpt', force_balance_tags($post_excerpt));
        // Extract gallery, video and audio from full post content
        $post_gallery = $post_video = $post_audio = $post_url = $post_url_target = '';
        if (in_array($style, array('image_medium', 'image_large', 'puzzles'))) {
            if ($post_format == 'gallery') {
                $post_gallery = buildGalleryTag(getPostGallery($post_content_full, $post_id), $post_thumb_w, $post_thumb_h);
            } else {
                if ($post_format == 'video') {
                    $post_video = getPostVideo($post_content_full, false);
                    if ($post_video == '') {
                        $src = getVideoPlayerURL(getPostVideo($post_content_full, true), $post_thumb != '');
                        if ($src) {
                            $post_video = substituteVideo('<video src="' . $src . '">', $post_thumb_w, $post_thumb_h);
                        }
                    }
                    if ($post_video != '' && get_custom_option('substitute_video') == 'yes') {
                        $src = getVideoPlayerURL(getPostVideo($post_video), $post_thumb != '');
                        if ($src) {
                            $post_video = substituteVideo('<video src="' . $src . '">', $post_thumb_w, $post_thumb_h);
                        }
                    }
                } else {
                    if ($post_format == 'audio') {
                        $post_audio = getPostAudio($post_content_full, false);
                        if ($post_audio == '') {
                            $src = getPostAudio($post_content_full, true);
                            if ($src) {
                                $post_audio = substituteAudio('<audio src="' . $src . '">');
                            }
                        }
                        if ($post_audio != '' && get_custom_option('substitute_audio') == 'yes') {
                            $src = getPostAudio($post_audio);
                            if ($src) {
                                $post_audio = substituteAudio('<audio src="' . $src . '">');
                            }
                        }
                    } else {
                        if ($post_format == 'image' && !$post_thumb) {
                            if (($src = getPostImage($post_content_full)) != '') {
                                $post_thumb = getResizedImageTag($src, $post_thumb_w, $post_thumb_h);
                            }
                        } else {
                            if ($post_format == 'link') {
                                $post_url_data = getPostLink($post_content_full, false);
                                $post_url = $post_url_data['url'];
                                $post_url_target = $post_url_data['target'];
                            }
                        }
                    }
                }
            }
        }
        // Get all post's categories
        $post_categories = getCategoriesByPostId($post_id);
        $post_categories_str = '';
        $post_accent_color = '';
        $post_accent_category = '';
        $ex_cats = explode(',', get_theme_option('exclude_cats'));
        for ($i = 0; $i < count($post_categories); $i++) {
            if (in_array($post_categories[$i]['term_id'], $ex_cats)) {
                continue;
            }
            if ($post_accent_category == '') {
                if (get_theme_option('close_category') == 'parental') {
                    $parent_cat_id = 0;
                    //(int) get_custom_option('category_id');
                    $parent_cat = getParentCategory($post_categories[$i]['term_id'], $parent_cat_id);
                    if ($parent_cat) {
                        $post_accent_category = $parent_cat['name'];
                        if ($post_accent_color == '') {
                            $post_accent_color = getCategoryInheritedProperty($parent_cat['term_id'], 'theme_accent_color');
                        }
                    }
                } else {
                    $post_accent_category = $post_categories[$i]['name'];
                    if ($post_accent_color == '') {
                        $post_accent_color = getCategoryInheritedProperty($post_categories[$i]['term_id'], 'theme_accent_color');
                    }
                }
            }
            $post_categories_str .= '<a class="cat_link" href="' . $post_categories[$i]['link'] . '">' . $post_categories[$i]['name'] . ($i < count($post_categories) - 1 ? ',' : '') . '</a> ';
        }
        if ($post_accent_category == '' && count($post_categories) > 0) {
            $post_accent_category = $post_categories[0]['name'];
            if ($post_accent_color == '') {
                $post_accent_color = getCategoryInheritedProperty($post_categories[0]['term_id'], 'theme_accent_color');
            }
        }
        if ($style == 'puzzles') {
            $post_hover_bg = get_custom_option('puzzles_post_bg', null, $post_id);
            $post_hover_pos = get_custom_option('puzzles_post_position', null, $post_id);
        }
        // Prepare reviews block
        $reviewsBlock = '';
        $avg_author = 0;
        if ($rating > 0 && get_custom_option('show_reviews', null, $post_id) == 'yes') {
            $avg_author = marksToDisplay(get_post_meta($post_id, 'reviews_avg' . (get_theme_option('reviews_first') == 'author' ? '' : '2'), true));
            if ($avg_author > 0) {
                $reviewsBlock .= '<div class="reviews_summary blog_reviews' . ($style == 'puzzles' ? ' theme_puzzles' : '') . '"' . ($style == 'puzzles' && $post_hover_bg != '' && $post_hover_bg != 'default' ? ' style="background-color:' . $post_hover_bg . ';"' : '') . '>' . '<div class="criteria_summary criteria_row">' . getReviewsSummaryStars($avg_author) . '</div>' . '</div>';
            }
        }
        // Start output
        $THEMEREX_sc_blogger_counter++;
        $output .= '<div class="sc_blogger_item' . ($style == 'puzzles' ? ' sc_blogger_item_puzzles' : '') . ($style == 'date' ? ' sc_blogger_item_date' : '') . ($style == 'accordion' ? ' sc_accordion_item' : '') . ($dir != 'vertical' && $style != 'puzzles' ? ' sc_column_item sc_column_item_' . $THEMEREX_sc_blogger_counter : '') . ($border == 1 ? ' sc_blogger_item_bordered' : '') . ($THEMEREX_sc_blogger_counter % 2 == 1 ? ' odd' : ' even') . ($THEMEREX_sc_blogger_counter == 1 ? ' first' : '') . '">
			';
        if ($style == 'puzzles') {
            $show_content_block = !in_array($post_format, array('link', 'image')) || !$post_thumb;
            $puzzles_style = get_custom_option('puzzles_style');
            $no_thumb = in_array($post_format, array('quote', 'link', 'image')) || !$post_thumb && (!$post_gallery || $post_protected);
            $output .= '<div class="post_thumb image_wrapper post_format_' . $post_format . ' ' . ($no_thumb ? 'no_thumb' : $post_hover_pos) . '"' . ($post_video && !$post_protected ? ' data-video="' . htmlspecialchars($post_video) . '"' : '') . '>';
            if ($post_thumb && ($post_format != 'gallery' || !$post_gallery || get_custom_option('gallery_instead_image') == 'no')) {
                // If post have thumbnail - show it
                if ($post_format == 'link' && $post_url != '') {
                    $output .= '<a href="' . $post_url . '"' . ($post_url_target ? ' target="' . $post_url_target . '"' : '') . '>' . $post_thumb . '</a>';
                } else {
                    if ($post_link != '') {
                        $output .= '<a href="' . $post_link . '">' . $post_thumb . '</a>';
                    } else {
                        $output .= $post_thumb;
                    }
                }
                if ($post_format == 'video' && $post_video && !$post_protected) {
                    $output .= '<a href="#" class="post_video_play icon-play"></a>';
                }
            } else {
                if ($post_gallery && !$post_protected) {
                    // If post have gallery - show it
                    if ($post_link != '') {
                        $output .= '<a href="' . $post_link . '">' . $post_gallery . '</a>';
                    } else {
                        $output .= $post_gallery;
                    }
                } else {
                    if ($post_video && !$post_protected) {
                        // If post have video - show it
                        $output .= $post_video;
                        $show_content_block = false;
                    }
                }
            }
            $output .= '<span class="post_format theme_accent_bg ' . $post_icon . '"' . (themerex_substr($post_accent_color, 0, 1) == '#' ? ' style="background-color: ' . $post_accent_color . '"' : '') . '></span>';
            if ($puzzles_style == 'heavy') {
                if ($post_accent_category != '') {
                    $output .= '<span class="post_category theme_accent_bg"' . (themerex_substr($post_accent_color, 0, 1) == '#' ? ' style="background-color: ' . $post_accent_color . '"' : '') . '>' . $post_accent_category . '</span>';
                }
            } else {
                if ($show_content_block) {
                    $output .= '<div class="post_content_light">' . ($post_accent_category != '' ? '<span class="post_category theme_accent_bg"' . (themerex_substr($post_accent_color, 0, 1) == '#' ? ' style="background-color: ' . $post_accent_color . '"' : '') . '>' . $post_accent_category . '</span><br>' : '') . '<h2 class="post_subtitle theme_puzzles"' . ($post_hover_bg != '' && $post_hover_bg != 'default' ? ' style="background-color:' . $post_hover_bg . ';"' : '') . '><a href="' . $post_link . '">' . $post_title . '</a></h2><br>' . $reviewsBlock . '</div>';
                }
            }
            if ($show_content_block) {
                $output .= '<div class="post_content_wrapper theme_puzzles"' . ($post_hover_bg != '' && $post_hover_bg != 'default' ? ' style="background-color:' . $post_hover_bg . ';"' : '') . '>';
                if (!in_array($post_format, array('quote', 'aside'))) {
                    $output .= '<h2 class="post_subtitle"><a href="' . $post_link . '">' . $post_title . '</a></h2>';
                    $output .= $reviewsBlock;
                }
                $output .= '<div class="post_descr">' . $post_excerpt . '</div>' . '<div class="post_content_padding theme_puzzles"';
                if ($post_hover_bg != '' && $post_hover_bg != 'default') {
                    $rgb = Hex2RGB($post_hover_bg);
                    $post_hover_ie = str_replace('#', '', $post_hover_bg);
                    $output .= " style=\"\n\t\t\t\t\t\tbackground: -moz-linear-gradient(top,  rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0) 0%, rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0.01) 1%, rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},1) 50%);\n\t\t\t\t\t\tbackground: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0)), color-stop(1%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0.01)), color-stop(50%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},1)));\n\t\t\t\t\t\tbackground: -webkit-linear-gradient(top,  rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0) 0%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0.01) 1%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},1) 50%);\n\t\t\t\t\t\tbackground: -o-linear-gradient(top,  rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0) 0%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0.01) 1%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},1) 50%);\n\t\t\t\t\t\tbackground: -ms-linear-gradient(top,  rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0) 0%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0.01) 1%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},1) 50%);\n\t\t\t\t\t\tbackground: linear-gradient(to bottom,  rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0) 0%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},0.01) 1%,rgba({$rgb['r']},{$rgb['g']},{$rgb['b']},1) 50%);\n\t\t\t\t\t\tfilter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00{$post_hover_ie}', endColorstr='#{$post_hover_ie}',GradientType=0 );\n\t\t\t\t\t\t\"";
                }
                $output .= '></div></div>';
            }
            if (!$post_protected) {
                if ($post_audio) {
                    // If post have audio - show it
                    $output .= $post_audio;
                }
            }
            $output .= '</div>';
        } else {
            $title = '<' . $post_title_tag . ' class="sc_blogger_title sc_title entry-title' . ($style == 'accordion' ? ' sc_accordion_title' : '') . ($style == 'underline' ? ' sc_title_underline' : '') . (themerex_strpos($style, 'bubble') !== false ? ' sc_title_bubble sc_title_' . $style : '') . '">' . '<a href="' . ($style == 'accordion' ? '#' : $post_link) . '">' . (themerex_substr($style, 0, 6) == 'bubble' ? '<span class="sc_title_bubble_icon ' . ($post_icon != '' ? ' ' . $post_icon : '') . '"' . ($bubble_color != '' ? ' style="background-color:' . $bubble_color . '"' : '') . '></span>' : '') . ($style == 'accordion' ? '<span class="sc_accordion_icon"></span>' : '') . $post_title . ($style == 'accordion' ? '' : $reviewsBlock) . '</a>' . '</' . $post_title_tag . '>';
            if ($style == 'date') {
                $output .= '<div class="date_area">' . '<div class="date_month">' . prepareDateForTranslation(date('M', strtotime($post_date_sql))) . '</div>' . '<div class="date_day">' . date('d', strtotime($post_date)) . '</div>' . '</div>';
            } else {
                if (themerex_strpos($style, 'image') !== false) {
                    $output .= ($style == 'image_small' ? '<div class="title_area">' . $title . '</div>' : ($post_thumb ? '<div class="sc_blogger_image image_wrapper">' . ($post_link != '' ? '<a href="' . $post_link . '">' : '') . $post_thumb . ($post_link != '' ? '</a>' : '') . '</div>' : '')) . '<div class="post_wrapper">' . '<div class="post_info theme_info">' . __('Posted', 'themerex') . ' <span class="post_date theme_text">' . $post_date_diff . '</span> ' . '<span class="post_author">' . __('by', 'themerex') . ' <a href="' . $post_author_url . '" class="post_author">' . $post_author . '</a></span>' . '<br />' . ($post_categories_str != '' ? '<span class="post_cats">' . __('in', 'themerex') . ' ' . $post_categories_str . '</span>' : '') . ($counters == 'none' ? '' : '<span class="post_comments"><a href="' . $post_comments_link . '"><span class="comments_icon theme_info icon-' . ($orderby == 'comments' || $counters == 'comments' ? 'chat-1' : 'eye') . '"></span><span class="comments_number">' . ($orderby == 'comments' || $counters == 'comments' ? $post_comments : $post_views) . '</span></a></span>') . '</div>' . ($style == 'image_small' ? '' : '<div class="title_area">');
                }
            }
            $output .= $style == 'image_small' ? '' : $title;
            if (themerex_strpos($style, 'image') !== false) {
                $output .= $style == 'image_small' ? $post_thumb ? '<div class="sc_blogger_image image_wrapper">' . ($post_link != '' ? '<a href="' . $post_link . '">' : '') . $post_thumb . ($post_link != '' ? '</a>' : '') . '</div>' : '' : '</div>';
            }
            if ($descr > 0) {
                $output .= '<div class="sc_blogger_content' . ($style == 'accordion' ? ' sc_accordion_content' : '') . '">' . $post_excerpt . '</div>';
            }
            if (themerex_strpos($style, 'image') !== false) {
                $output .= '</div>';
            }
        }
        $output .= '</div>';
    }
    wp_reset_postdata();
    if ($style !== 'puzzles') {
        $output .= '</div>';
    }
    if ($style == 'accordion') {
        wp_enqueue_script('jquery-ui-accordion', false, array('jquery', 'jquery-ui-core'), null, true);
        $output .= '<script type="text/javascript">
				jQuery(document).ready(function() {
					jQuery(\'div' . ($id ? '#' . $id : '') . '.sc_blogger.sc_accordion\').accordion({
						header: "h3",
						collapsible: true,
						heightStyle: "content"
					});
				});
			</script>';
    }
    if ($border == 1) {
        $output .= '<script type="text/javascript">
				jQuery(document).ready(function() {
					var maxHeight = 0;
					for (var i=0; i<2; i++) {
						jQuery(\'.sc_blogger_item_bordered\').each(function(){
							if (i > 0) {
								if (maxHeight>0) jQuery(this).height(maxHeight);
							} else if (jQuery(this).height() > maxHeight)
								maxHeight = jQuery(this).height();
						});
					}
				});
			</script>';
    }
    return $output;
}
Ejemplo n.º 13
0
 function themerex_enqueue_script($handle, $src = false, $depts = array(), $ver = null, $in_footer = false)
 {
     if (!is_array($src) && $src !== false && $src !== '') {
         global $THEMEREX_DEBUG_MODE;
         //if (empty($THEMEREX_DEBUG_MODE)) $THEMEREX_DEBUG_MODE = get_theme_option('debug_mode');
         $THEMEREX_DEBUG_MODE = false;
         $theme_dir = get_template_directory();
         $theme_url = get_template_directory_uri();
         $child_dir = get_stylesheet_directory();
         $child_url = get_stylesheet_directory_uri();
         $dir = $url = '';
         if (themerex_strpos($src, $child_url) === 0) {
             $dir = $child_dir;
             $url = $child_url;
         } else {
             if (themerex_strpos($src, $theme_url) === 0) {
                 $dir = $theme_dir;
                 $url = $theme_url;
             }
         }
         if ($dir != '') {
             if ($THEMEREX_DEBUG_MODE == 'no') {
                 if (themerex_substr($src, -3) == '.js') {
                     if (themerex_substr($src, -7) != '.min.js') {
                         $src_min = themerex_substr($src, 0, themerex_strlen($src) - 3) . '.min.js';
                         $file_src = $dir . themerex_substr($src, themerex_strlen($url));
                         $file_min = $dir . themerex_substr($src_min, themerex_strlen($url));
                         if (file_exists($file_min) && filemtime($file_src) <= filemtime($file_min)) {
                             $src = $src_min;
                         }
                     }
                 }
             }
         }
     }
     if (is_array($src)) {
         wp_enqueue_script($handle, $depts, $ver, $in_footer);
     } else {
         wp_enqueue_script($handle, $src, $depts, $ver, $in_footer);
     }
 }