function presscore_get_logo_src($logos = array()) { $default_logo = ''; $r_logo = $logos['logo_retina']; $logo = $logos['logo']; // get default logo foreach ($logos as $logo) { if ($logo) { $default_logo = $logo; break; } } if (presscore_is_srcset_based_retina() || presscore_is_logos_only_retina()) { $logos = array('1x' => $logo, '2x' => $r_logo); $srcset = array(); foreach ($logos as $xx => $_logo) { if (!empty($_logo)) { $srcset[] = "{$_logo[0]} {$xx}"; } } $srcset = implode(', ', $srcset); $logo = $default_logo; $logo[0] = $logo_src = $srcset; } else { if ($logo && !$r_logo) { $r_logo = $logo; } elseif ($r_logo && !$logo) { $logo = $r_logo; } elseif (!$r_logo && !$logo) { $logo = $r_logo = $default_logo; } if (dt_retina_on() && dt_is_hd_device()) { $logo = $r_logo; } $logo_src = isset($logo[0]) ? $logo[0] : ''; } $w = isset($logo[1]) ? $logo[1] : ''; $h = isset($logo[2]) ? $logo[2] : ''; return array($logo_src, $w, $h); }
?> " /> <?php if (presscore_responsive()) { ?> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <?php } else { ?> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <?php } // is responsive ?> <?php if (dt_retina_on()) { dt_core_detect_retina_script(); } ?> <title><?php echo presscore_blog_title(); ?> </title> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="<?php bloginfo('pingback_url'); ?> " /> <!--[if IE]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]-->
/** * Chooses what src to use, based on device pixel ratio and theme settings * @param string $regular_img_src Regular image src * @param string $hd_img_src Hd image src * @return string Best suitable src */ function presscore_choose_right_image_based_on_device_pixel_ratio($regular_img_src, $hd_img_src = '') { $output_src = ''; if (!$regular_img_src && !$hd_img_src) { } elseif (!$regular_img_src) { $output_src = $hd_img_src; } elseif (!$hd_img_src) { $output_src = $regular_img_src; } else { if (dt_retina_on()) { $output_src = dt_is_hd_device() ? $hd_img_src : $regular_img_src; } else { $output_src = $regular_img_src; } } return $output_src; }
public function shortcode($atts, $content = null) { $default_atts = array('style' => '1', 'image' => '', 'image_alt' => '', 'hd_image' => '', 'media' => '', 'padding' => '0', 'align' => '', 'animation' => 'none', 'width' => ''); $attributes = shortcode_atts($default_atts, $atts); // $attributes['type'] = in_array( $attributes['type'], array('image', 'video') ) ? $attributes['type'] : $default_atts['type']; $attributes['animation'] = in_array($attributes['animation'], array('none', 'scale', 'fade', 'left', 'right', 'bottom', 'top')) ? $attributes['animation'] : $default_atts['animation']; $attributes['style'] = in_array($attributes['style'], array('1', '2', '3')) ? $attributes['style'] : $default_atts['style']; $attributes['align'] = in_array($attributes['align'], array('center', 'centre', 'left', 'right')) ? $attributes['align'] : $default_atts['align']; $attributes['padding'] = intval($attributes['padding']); $attributes['width'] = absint($attributes['width']); $attributes['image'] = esc_url($attributes['image']); $attributes['image_alt'] = esc_attr($attributes['image_alt']); $attributes['hd_image'] = esc_url($attributes['hd_image']); $attributes['media'] = esc_url($attributes['media']); // $attributes['lightbox'] = apply_filters('dt_sanitize_flag', $attributes['lightbox']); $container_classes = array('shortcode-single-image-wrap'); $media_classes = array('shortcode-single-image'); $container_style = array(); $media = ''; $content_block = ''; $content = strip_shortcodes($content); $attributes['type'] = 'video'; $attributes['lightbox'] = 1; switch ($attributes['style']) { case '3': $container_classes[] = 'br-standard'; case '2': $container_classes[] = 'borderframe'; $style = ' style="padding: ' . esc_attr($attributes['padding']) . 'px"'; break; default: $style = ''; } switch ($attributes['align']) { case 'left': $container_classes[] = 'alignleft'; break; case 'right': $container_classes[] = 'alignright'; break; case 'centre': case 'center': $container_classes[] = 'alignnone'; break; } if ('none' != $attributes['animation']) { switch ($attributes['animation']) { case 'scale': $container_classes[] = 'scale-up'; break; case 'fade': $container_classes[] = 'fade-in'; break; case 'left': $container_classes[] = 'right-to-left'; break; case 'right': $container_classes[] = 'left-to-right'; break; case 'bottom': $container_classes[] = 'top-to-bottom'; break; case 'top': $container_classes[] = 'bottom-to-top'; break; } $container_classes[] = 'animate-element'; } if ($content) { $container_classes[] = 'caption-on'; $content_block = '<div class="shortcode-single-caption">' . $content . '</div>'; } $default_image_src = $attributes['image'] ? $attributes['image'] : $attributes['hd_image']; if (dt_retina_on()) { $image_src = dt_is_hd_device() ? $attributes['hd_image'] : $attributes['image']; } else { $image_src = $attributes['image']; } if (empty($image_src)) { $image_src = $default_image_src; } $media = sprintf('<img src="%s" alt="%s" />', $image_src, $attributes['image_alt']); $media = sprintf('<div class="rollover-video">%s<a class="video-icon dt-single-mfp-popup dt-mfp-item mfp-iframe" href="%s" title="%s" data-dt-img-description="%s"></a></div>', $media, $attributes['media'], $attributes['image_alt'], esc_attr($content)); if ($media) { $media = sprintf('<div class="%s"%s><div class="fancy-media-wrap">%s</div></div>', esc_attr(implode(' ', $media_classes)), $style, $media); } if ($attributes['width']) { $container_style[] = 'width: ' . $attributes['width'] . 'px'; } $output = sprintf('<div class="%s"%s>%s</div>', esc_attr(implode(' ', $container_classes)), $container_style ? ' style="' . esc_attr(implode(';', $container_style)) . '"' : '', $media . $content_block); return $output; }
/** * Get image based on devicePixelRatio coocie and theme options. * * @param $logo array Regular logo. * @param $r_logo array Retina logo. * @param $default array Default logo. * @param $custom string Custom img attributes. * * @return string. */ function dt_get_retina_sensible_image ( $logo, $r_logo, $default, $custom = '', $class = '' ) { if ( empty( $default ) ) { return ''; } if ( $logo && !$r_logo ) { $r_logo = $logo; } elseif ( $r_logo && !$logo ) { $logo = $r_logo; } elseif ( !$r_logo && !$logo ) { $logo = $r_logo = $default; } if ( dt_retina_on() ) { $img_meta = dt_is_hd_device() ? $r_logo : $logo; } else { $img_meta = $logo; } if ( ! isset( $img_meta['size'] ) && isset( $img_meta[1], $img_meta[2] ) ) { $img_meta['size'] = image_hwstring( $img_meta[1], $img_meta[2] ); } $output = dt_get_thumb_img( array( 'wrap' => '<img %IMG_CLASS% %SRC% %SIZE% %CUSTOM% />', 'img_class' => $class, 'img_meta' => $img_meta, 'custom' => $custom, 'echo' => false, // TODO: add alt if it's possible 'alt' => '', ) ); return $output; }
public function render_benefit($attributes, $content = null) { $image = ''; if ($attributes['icon_code']) { $image = wp_kses($attributes['icon_code'], array('i' => array('class' => array()))); } else { $default_image = null; $images = array($attributes['image'], $attributes['hd_image']); // get default logo foreach ($images as $img) { if ($img) { $default_image = $img; break; } } if (!empty($default_image)) { if (dt_retina_on()) { $image = dt_is_hd_device() ? $images[1] : $images[0]; } else { $image = $images[0]; } if (empty($image)) { $image = $default_image; } // ssl support $image = dt_make_image_src_ssl_friendly($image); $image_size = ''; if (!empty($attributes['image_size'])) { $image_size = image_hwstring($attributes['image_size'][0], $attributes['image_size'][1]); } $image = sprintf('<img src="%s" %s alt="%s" />', $image, $image_size, esc_attr($attributes['image_alt'])); } } if ($image) { $image_classes = array('benefits-grid-ico'); if (presscore_shortcode_animation_on($attributes['animation'])) { $image_classes[] = presscore_get_shortcode_animation_html_class($attributes['animation']); } // ninjaaaa! $image_classes = esc_attr(implode(' ', $image_classes)); if ($attributes['image_link']) { $image = sprintf('<a href="%s" class="%s"%s>%s</a>', $attributes['image_link'], $image_classes, $attributes['target_blank'] ? ' target="_blank"' : '', $image); } else { $image = sprintf('<span class="%s">%s</span>', $image_classes, $image); } } $style = empty($attributes['style']) ? '1' : $attributes['style']; $title = ''; if ($attributes['title']) { if ($attributes['image_link']) { $title = sprintf('<%1$s class="benefit-title"><a href="%2$s"%3$s>%4$s</a></%1$s>', $attributes['header_size'], $attributes['image_link'], $attributes['target_blank'] ? ' target="_blank"' : '', $attributes['title']); } else { $title = sprintf('<%1$s>%2$s</%1$s>', $attributes['header_size'], $attributes['title']); } } $output = ''; switch ($style) { case '2': $output .= '<div class="wf-cell">' . '<div>' . '<div class="text-' . $attributes['content_size'] . '">' . '<div class="wf-table">' . '<div class="wf-td">' . $image . '</div>' . '<div class="wf-td">' . $title . '</div>' . '</div>' . $content . '</div>' . '</div>' . '</div>'; break; case '3': $output .= '<div class="wf-cell">' . '<div>' . '<div class="text-' . $attributes['content_size'] . '">' . '<div class="wf-table">' . '<div class="wf-td">' . $image . '</div>' . '<div class="wf-td benefits-inner">' . $title . $content . '</div>' . '</div>' . '</div>' . '</div>' . '</div>'; break; default: $output .= '<div class="wf-cell">' . '<div>' . '<div class="text-' . $attributes['content_size'] . '">' . '<div class="line-decoration">' . $image . $title . '</div>' . $content . '</div>' . '</div>' . '</div>'; } return $output; }
public function shortcode_benefit($atts, $content = null) { $attributes = shortcode_atts(array('image_link' => '', 'target_blank' => 'true', 'image' => '', 'hd_image' => '', 'header_size' => 'h4', 'title' => '', 'content_size' => 'normal'), $atts); $attributes['image_link'] = esc_url($attributes['image_link']); $attributes['image'] = esc_url($attributes['image']); $attributes['hd_image'] = esc_url($attributes['hd_image']); $attributes['header_size'] = in_array($attributes['header_size'], array('h2', 'h3', 'h4', 'h5', 'h6')) ? $attributes['header_size'] : 'h4'; $attributes['content_size'] = in_array($attributes['content_size'], array('normal', 'small', 'big')) ? $attributes['content_size'] : 'normal'; $attributes['title'] = wp_kses($attributes['title'], array()); $attributes['target_blank'] = apply_filters('dt_sanitize_flag', $attributes['target_blank']); $image = ''; $title = ''; $output = ''; $default_image = null; $images = array($attributes['image'], $attributes['hd_image']); // get default logo foreach ($images as $img) { if ($img) { $default_image = $img; break; } } if (!empty($default_image)) { if (dt_retina_on()) { $image = dt_is_hd_device() ? $images[1] : $images[0]; } else { $image = $images[0]; } if (empty($image)) { $image = $default_image; } // ssl support $image = dt_make_image_src_ssl_friendly($image); $image = sprintf('<img src="%s" alt="" />', $image); $image_classes = array('benefits-grid-ico'); if (isset(self::$atts['animation']) && 'none' != self::$atts['animation']) { switch (self::$atts['animation']) { case 'scale': $image_classes[] = 'scale-up'; break; case 'fade': $image_classes[] = 'fade-in'; break; case 'left': $image_classes[] = 'right-to-left'; break; case 'right': $image_classes[] = 'left-to-right'; break; case 'bottom': $image_classes[] = 'top-to-bottom'; break; case 'top': $image_classes[] = 'bottom-to-top'; break; } $image_classes[] = 'animate-element'; } // ninjaaaa! $image_classes = esc_attr(implode(' ', $image_classes)); if ($attributes['image_link']) { $image = sprintf('<a href="%s" class="%s"%s>%s</a>', $attributes['image_link'], $image_classes, $attributes['target_blank'] ? ' target="_blank"' : '', $image); } else { $image = sprintf('<span class="%s">%s</span>', $image_classes, $image); } } if ($attributes['title']) { $title = sprintf('<%1$s>%2$s</%1$s>', $attributes['header_size'], $attributes['title']); } $style = '1'; $column = '4'; $dividers = ' class="borders"'; if (!empty(self::$atts)) { $style = self::$atts['style']; $column = self::$atts['columns']; $dividers = !self::$atts['dividers'] ? $dividers = '' : $dividers; } switch ($column) { case '1': $column_class = 'wf-1'; break; case '2': $column_class = 'wf-1-2'; break; case '3': $column_class = 'wf-1-3'; break; case '5': $column_class = 'wf-1-5'; break; default: $column_class = 'wf-1-4'; } switch ($style) { case '2': $output = sprintf('<div class="wf-cell %s"><div%s><div class="text-%s"><div class="wf-table"><div class="wf-td">%s</div><div class="wf-td">%s</div></div>%s</div></div></div>', $column_class, $dividers, $attributes['content_size'], $image, $title, do_shortcode(wpautop($content))); break; case '3': $output = sprintf('<div class="wf-cell %s"><div%s><div class="text-%s"><div class="wf-table"><div class="wf-td">%s</div><div class="wf-td benefits-inner">%s</div></div></div></div></div>', $column_class, $dividers, $attributes['content_size'], $image, $title . do_shortcode(wpautop($content))); break; default: $output = sprintf('<div class="wf-cell %s"><div%s><div class="text-%s">%s</div></div></div>', $column_class, $dividers, $attributes['content_size'], $image . $title . do_shortcode(wpautop($content))); } return $output; }
/** * Set some javascript globals for floating menu and logo. * */ function presscore_setup_floating_menu() { $show_logo = of_get_option('general-floating_menu_show_logo', false); $show_menu = of_get_option('header-show_floating_menu', true); $logo_src = ''; $w = ''; $h = ''; if ($show_menu && $show_logo) { $logos = presscore_get_floating_menu_logos_meta(); $default_logo = ''; $r_logo = $logos['logo_retina']; $logo = $logos['logo']; // get default logo foreach ($logos as $logo) { if ($logo) { $default_logo = $logo; break; } } if (presscore_is_srcset_based_retina() || presscore_is_logos_only_retina()) { $logos = array('1x' => $logo, '2x' => $r_logo); $srcset = array(); foreach ($logos as $xx => $_logo) { if (!empty($_logo)) { $srcset[] = "{$_logo[0]} {$xx}"; } } $srcset = implode(', ', $srcset); $logo = $default_logo; $logo[0] = $logo_src = $srcset; $logo_src = esc_attr($logo_src); } else { if ($logo && !$r_logo) { $r_logo = $logo; } elseif ($r_logo && !$logo) { $logo = $r_logo; } elseif (!$r_logo && !$logo) { $logo = $r_logo = $default_logo; } if (dt_retina_on() && dt_is_hd_device()) { $logo = $r_logo; } $logo_src = isset($logo[0]) ? $logo[0] : ''; $logo_src = esc_url($logo_src); } $w = isset($logo[1]) ? $logo[1] : ''; $h = isset($logo[2]) ? $logo[2] : ''; } ?> <script type="text/javascript"> dtGlobals.logoEnabled = <?php echo absint($show_logo); ?> ; dtGlobals.logoURL = '<?php echo $logo_src; ?> '; dtGlobals.logoW = '<?php echo absint($w); ?> '; dtGlobals.logoH = '<?php echo absint($h); ?> '; smartMenu = <?php echo absint($show_menu); ?> ; </script> <?php }
protected function choose_src_responsively($img, $hd_img = '') { $default_img = $img ? $img : $hd_img; if (dt_retina_on()) { $image_src = dt_is_hd_device() ? $hd_img : $img; } else { $image_src = $img; } if (empty($image_src)) { $image_src = $default_img; } return $image_src; }
public function render_benefit($attributes, $content = null) { $image = ''; $title = ''; $output = ''; if ($attributes['icon_code']) { $image = wp_kses($attributes['icon_code'], array('i' => array('class' => array()))); } else { $default_image = null; $images = array($attributes['image'], $attributes['hd_image']); // get default logo foreach ($images as $img) { if ($img) { $default_image = $img; break; } } if (!empty($default_image)) { if (dt_retina_on()) { $image = dt_is_hd_device() ? $images[1] : $images[0]; } else { $image = $images[0]; } if (empty($image)) { $image = $default_image; } $image_size = ''; if (!empty($attributes['image_size'])) { $image_size = image_hwstring($attributes['image_size'][0], $attributes['image_size'][1]); } $image = sprintf('<img src="%s" %s alt="" />', $image, $image_size); } } if ($image) { $image_classes = array('benefits-grid-ico'); if (isset($attributes['animation']) && 'none' != $attributes['animation']) { switch ($attributes['animation']) { case 'scale': $image_classes[] = 'scale-up'; break; case 'fade': $image_classes[] = 'fade-in'; break; case 'left': $image_classes[] = 'right-to-left'; break; case 'right': $image_classes[] = 'left-to-right'; break; case 'bottom': $image_classes[] = 'top-to-bottom'; break; case 'top': $image_classes[] = 'bottom-to-top'; break; } $image_classes[] = 'animate-element'; } // ninjaaaa! $image_classes = esc_attr(implode(' ', $image_classes)); if ($attributes['image_link']) { $image = sprintf('<a href="%s" class="%s"%s>%s</a>', $attributes['image_link'], $image_classes, $attributes['target_blank'] ? ' target="_blank"' : '', $image); } else { $image = sprintf('<span class="%s">%s</span>', $image_classes, $image); } } if ($attributes['title']) { $title = sprintf('<%1$s>%2$s</%1$s>', $attributes['header_size'], $attributes['title']); } $style = '1'; $column = '4'; $dividers = ' class="borders"'; if (!empty($attributes)) { $style = $attributes['style']; $column = $attributes['columns']; $dividers = !$attributes['dividers'] ? $dividers = '' : $dividers; } switch ($column) { case '1': $column_class = 'wf-1'; break; case '2': $column_class = 'wf-1-2'; break; case '3': $column_class = 'wf-1-3'; break; case '5': $column_class = 'wf-1-5'; break; default: $column_class = 'wf-1-4'; } switch ($style) { case '2': $output = sprintf('<div class="wf-cell %s"><div%s><div class="text-%s"><div class="wf-table"><div class="wf-td">%s</div><div class="wf-td">%s</div></div>%s</div></div></div>', $column_class, $dividers, $attributes['content_size'], $image, $title, $content); break; case '3': $output = sprintf('<div class="wf-cell %s"><div%s><div class="text-%s"><div class="wf-table"><div class="wf-td">%s</div><div class="wf-td benefits-inner">%s</div></div></div></div></div>', $column_class, $dividers, $attributes['content_size'], $image, $title . $content); break; default: $output = sprintf('<div class="wf-cell %s"><div%s><div class="text-%s">%s</div></div></div>', $column_class, $dividers, $attributes['content_size'], $image . $title . $content); } return $output; }
/** * Detect client retina support in header. * * @since 3.0.0 */ function presscore_detect_retina_in_header_action() { if (dt_retina_on()) { dt_core_detect_retina_script(); } }
/** * Set some javascript globals for floating menu and logo. * */ function presscore_setup_floating_menu() { $show_logo = of_get_option('general-floating_menu_show_logo', false); $show_menu = of_get_option('header-show_floating_menu', true); $logo_src = ''; $w = ''; $h = ''; if ($show_menu && $show_logo) { $logos = presscore_get_floating_menu_logos_meta(); $default_logo = ''; $r_logo = $logos['logo_retina']; $logo = $logos['logo']; // get default logo foreach ($logos as $logo) { if ($logo) { $default_logo = $logo; break; } } if ($logo && !$r_logo) { $r_logo = $logo; } elseif ($r_logo && !$logo) { $logo = $r_logo; } elseif (!$r_logo && !$logo) { $logo = $r_logo = $default_logo; } if (dt_retina_on() && dt_is_hd_device()) { $logo = $r_logo; } $logo_src = isset($logo[0]) ? $logo[0] : ''; $w = isset($logo[1]) ? $logo[1] : ''; $h = isset($logo[2]) ? $logo[2] : ''; } ?> <script type="text/javascript"> dtGlobals.logoEnabled = <?php echo absint($show_logo); ?> ; dtGlobals.logoURL = '<?php echo esc_url($logo_src); ?> '; dtGlobals.logoW = '<?php echo absint($w); ?> '; dtGlobals.logoH = '<?php echo absint($h); ?> '; smartMenu = <?php echo absint($show_menu); ?> ; </script> <?php }