예제 #1
0
 /**
  * Render the shortcode
  * 
  * @param  array $args	 Shortcode paramters
  * @param  string $content Content between shortcode
  * @return string		  HTML output
  */
 function render($args, $content = '')
 {
     global $smof_data;
     $defaults = FusionCore_Plugin::set_shortcode_defaults(array('class' => '', 'id' => '', 'backgroundattachment' => 'scroll', 'backgroundcolor' => $smof_data['full_width_bg_color'], 'backgroundimage' => '', 'backgroundposition' => 'left top', 'backgroundrepeat' => 'no-repeat', 'bordercolor' => $smof_data['full_width_border_color'], 'bordersize' => $smof_data['full_width_border_size'], 'borderstyle' => 'solid', 'equal_height_columns' => 'no', 'fade' => 'no', 'hundred_percent' => 'no', 'menu_anchor' => '', 'overlay_color' => '', 'overlay_opacity' => '0.5', 'paddingbottom' => '20px', 'paddingleft' => '0px', 'paddingright' => '0px', 'paddingtop' => '20px', 'paddingBottom' => '', 'paddingTop' => '', 'video_loop' => 'yes', 'video_mp4' => '', 'video_mute' => 'yes', 'video_ogv' => '', 'video_preview_image' => '', 'video_webm' => ''), $args);
     if ($defaults['hundred_percent'] == 'yes') {
         $defaults['paddingleft'] = '0px';
         $defaults['paddingright'] = '0px';
     }
     extract($defaults);
     self::$args = $defaults;
     $this->depracted_args();
     $outer_html = '';
     self::$bg_type = 'image';
     if ($video_mp4 || $video_ogv || $video_webm) {
         self::$bg_type = 'video';
     }
     if ($fade == 'yes') {
         self::$bg_type = 'faded';
         $outer_html .= sprintf('<div %s></div>', FusionCore_Plugin::attributes('fullwidth-faded'));
     }
     if (self::$bg_type == 'video') {
         $video_attributes = 'preload="auto" autoplay';
         $video_src = '';
         if ($video_loop == 'yes') {
             $video_attributes .= ' loop';
         }
         if ($video_mute == 'yes') {
             $video_attributes .= ' muted';
         }
         if ($video_mp4) {
             $video_src .= sprintf('<source src="%s" type="video/mp4">', $video_mp4);
         }
         if ($video_ogv) {
             $video_src .= sprintf('<source src="%s" type="video/ogg">', $video_ogg);
         }
         if ($video_webm) {
             $video_src .= sprintf('<source src="%s" type="video/webm">', $video_webm);
         }
         if ($overlay_color) {
             $outer_html .= sprintf('<div %s></div>', FusionCore_Plugin::attributes('fullwidth-overlay'));
         }
         $outer_html .= sprintf('<div class="%s"><video %s>%s</video></div>', 'fullwidth-video', $video_attributes, $video_src);
         if ($video_preview_image) {
             $video_preview_image_style = sprintf('background-image:url(%s);', $video_preview_image);
             $outer_html .= sprintf('<div class="%s" style="%s"></div>', 'fullwidth-video-image', $video_preview_image_style);
         }
     }
     if ($defaults['menu_anchor']) {
         $html = sprintf('<div id="%s"><div %s>%s<div %s>%s</div></div></div>', $defaults['menu_anchor'], FusionCore_Plugin::attributes('fullwidth-shortcode'), $outer_html, FusionCore_Plugin::attributes('avada-row'), do_shortcode($content));
     } else {
         $html = sprintf('<div %s>%s<div %s>%s</div></div>', FusionCore_Plugin::attributes('fullwidth-shortcode'), $outer_html, FusionCore_Plugin::attributes('avada-row'), do_shortcode($content));
     }
     return $html;
 }
예제 #2
0
 /**
  * Render the shortcode
  * 
  * @param  array $args     Shortcode paramters
  * @param  string $content Content between shortcode
  * @return string          HTML output
  */
 function render($args, $content = '')
 {
     global $smof_data;
     $defaults = FusionCore_Plugin::set_shortcode_defaults(array('class' => '', 'id' => '', 'backgroundattachment' => 'scroll', 'backgroundcolor' => $smof_data['full_width_bg_color'], 'backgroundimage' => '', 'backgroundposition' => 'left top', 'backgroundrepeat' => 'no-repeat', 'bordercolor' => $smof_data['full_width_border_color'], 'bordersize' => $smof_data['full_width_border_size'], 'borderstyle' => 'solid', 'menu_anchor' => '', 'paddingbottom' => '20px', 'paddingtop' => '20px', 'paddingBottom' => '', 'paddingTop' => ''), $args);
     extract($defaults);
     self::$args = $defaults;
     $this->depracted_args();
     if ($defaults['menu_anchor']) {
         $html = sprintf('<div id="%s"><div %s><div %s>%s</div></div></div>', $defaults['menu_anchor'], FusionCore_Plugin::attributes('fullwidth-shortcode'), FusionCore_Plugin::attributes('avada-row'), do_shortcode($content));
     } else {
         $html = sprintf('<div %s><div %s>%s</div></div>', FusionCore_Plugin::attributes('fullwidth-shortcode'), FusionCore_Plugin::attributes('avada-row'), do_shortcode($content));
     }
     return $html;
 }
예제 #3
0
    /**
     * Render the shortcode
     *
     * @param  array  $args    Shortcode paramters
     * @param  string $content Content between shortcode
     *
     * @return string          HTML output
     */
    function render($args, $content = '')
    {
        global $smof_data;
        $args = $this->deprecated_args($args);
        $defaults = FusionCore_Plugin::set_shortcode_defaults(array('class' => '', 'id' => '', 'background_parallax' => 'none', 'background_color' => $smof_data['full_width_bg_color'], 'background_image' => '', 'background_position' => 'center center', 'background_repeat' => 'no-repeat', 'border_color' => $smof_data['full_width_border_color'], 'border_size' => $smof_data['full_width_border_size'], 'border_style' => 'solid', 'equal_height_columns' => 'no', 'enable_mobile' => 'no', 'fade' => 'no', 'hundred_percent' => 'no', 'menu_anchor' => '', 'hide_on_mobile' => 'no', 'overlay_color' => '', 'break_parents' => '0', 'parallax_speed' => '0.3', 'overlay_opacity' => '0.5', 'opacity' => '100', 'padding_bottom' => '0px', 'padding_left' => '0px', 'padding_right' => '0px', 'padding_top' => '0px', 'video_loop' => 'yes', 'video_loop_refinement' => '', 'video_mp4' => '', 'video_mute' => 'yes', 'video_ogv' => '', 'video_preview_image' => '', 'video_url' => '', 'data-bg-height' => '', 'data-bg-width' => '', 'video_aspect_ratio' => '', 'video_webm' => ''), $args);
        if (strpos($defaults['padding_left'], '%') === false && strpos($defaults['padding_left'], 'px') === false) {
            $defaults['padding_left'] = $defaults['padding_left'] . 'px';
        }
        if (strpos($defaults['padding_right'], '%') === false && strpos($defaults['padding_right'], 'px') === false) {
            $defaults['padding_right'] = $defaults['padding_right'] . 'px';
        }
        if (strpos($defaults['padding_top'], '%') === false && strpos($defaults['padding_top'], 'px') === false) {
            $defaults['padding_top'] = $defaults['padding_top'] . 'px';
        }
        if (strpos($defaults['padding_bottom'], '%') === false && strpos($defaults['padding_bottom'], 'px') === false) {
            $defaults['padding_bottom'] = $defaults['padding_bottom'] . 'px';
        }
        self::$args = $defaults;
        extract($defaults);
        $outer_html = '';
        self::$bg_type = "image";
        if (!empty(self::$args['video_url']) || !empty(self::$args['video_mp4']) || !empty(self::$args['video_webm']) || !empty(self::$args['video_ogv'])) {
            self::$bg_type = "video";
        }
        if (self::$bg_type == 'video' && !empty(self::$args['video_url'])) {
            $video_url = self::get_video_provider(self::$args['video_url']);
            if ($video_url['type'] == 'youtube') {
                $outer_html .= "<div style='visibility: hidden' id='video-" . self::$parallaxID++ . "' data-youtube-video-id='" . $video_url['id'] . "' data-mute='" . (self::$args['video_mute'] == 'yes' ? 1 : 0) . "' data-loop='" . (self::$args['video_loop'] == 'yes' ? 1 : 0) . "' data-loop-adjustment='" . self::$args['video_loop_refinement'] . "' data-video-aspect-ratio='" . self::$args['video_aspect_ratio'] . "' data-overlay-opacity='" . self::$args['overlay_opacity'] . "'><div id='video-" . self::$parallaxID++ . "-inner'></div></div>";
            } else {
                if ($video_url['type'] == 'vimeo') {
                    $outer_html .= '<div id="video-' . self::$parallaxID . '" data-vimeo-video-id="' . $video_url['id'] . '" data-mute="' . (self::$args['video_mute'] == 'yes' ? 'true' : 'false') . '" data-video-aspect-ratio="' . self::$args['video_aspect_ratio'] . '" style="visibility:hidden;"><iframe id="video-iframe-' . self::$parallaxID . '" src="//player.vimeo.com/video/' . $video_url['id'] . '?api=1&player_id=video-iframe-' . self::$parallaxID++ . '&html5=1&autopause=0&autoplay=1&badge=0&byline=0&loop=' . (self::$args['video_loop'] == 'yes' ? '1' : '0') . '&title=0" frameborder="0"></iframe></div>';
                }
            }
            if ($overlay_color) {
                $outer_html .= sprintf('<div %s></div>', FusionCore_Plugin::attributes('fullwidth-overlay'));
            }
        } elseif (self::$bg_type == 'video' && empty(self::$args['video_url'])) {
            $video_attributes = 'preload="auto" autoplay';
            $video_src = '';
            if ($video_loop == 'yes') {
                $video_attributes .= ' loop';
            }
            if ($video_mute == 'yes') {
                $video_attributes .= ' muted';
            }
            if ($video_mp4) {
                $video_src .= sprintf('<source src="%s" type="video/mp4">', $video_mp4);
            }
            if ($video_ogv) {
                $video_src .= sprintf('<source src="%s" type="video/ogg">', $video_ogg);
            }
            if ($video_webm) {
                $video_src .= sprintf('<source src="%s" type="video/webm">', $video_webm);
            }
            if ($overlay_color) {
                $outer_html .= sprintf('<div %s></div>', FusionCore_Plugin::attributes('fullwidth-overlay'));
            }
            $outer_html .= sprintf('<div class="%s"><video %s>%s</video></div>', 'fullwidth-video', $video_attributes, $video_src);
            if ($video_preview_image) {
                $video_preview_image_style = sprintf('background-image:url(%s);', $video_preview_image);
                $outer_html .= sprintf('<div class="%s" style="%s"></div>', 'fullwidth-video-image', $video_preview_image_style);
            }
        }
        if (self::$args['fade'] == 'yes' && self::$bg_type == "image") {
            self::$bg_type = 'faded';
            $outer_html .= sprintf('<div %s></div>', FusionCore_Plugin::attributes('fullwidth-faded'));
        }
        $parallax_helper = '';
        if (self::$args['background_parallax'] != 'none' && self::$args['background_parallax'] != 'fixed') {
            $parallax_helper = sprintf('<div %s></div>', FusionCore_Plugin::attributes('fullwidth-parallax'));
        }
        if (strpos($smof_data['site_width'], '%') === false && strpos($smof_data['site_width'], 'px') === false) {
            $smof_data['site_width'] = $smof_data['site_width'] . 'px';
        }
        $site_width = (int) $smof_data['site_width'];
        $site_width_percent = false;
        if (strpos($smof_data['site_width'], '%') !== false) {
            $site_width_percent = true;
        }
        $int_left_padding = (int) self::$args['padding_left'];
        $int_right_padding = (int) self::$args['padding_right'];
        $styles = '';
        if ($defaults['hundred_percent'] == 'yes') {
            $styles .= '<style type="text/css" scoped="scoped">';
            $styles .= '.width-100 .fusion-fullwidth-' . $this->fwc_counter . ', .width-100 .fusion-fullwidth-' . $this->fwc_counter . '.fusion-section-separator {
						padding-left: ' . self::$args['padding_left'] . ' !important;
						padding-right: ' . self::$args['padding_right'] . ' !important;
					}';
            if (!$site_width_percent) {
                $styles .= '@media only screen and (max-width: ' . $smof_data['site_width'] . ') {';
                if ($int_left_padding != 0 && $int_right_padding != 0) {
                    $styles .= '.width-100 .fusion-fullwidth-' . $this->fwc_counter . ', .width-100 .fusion-fullwidth-' . $this->fwc_counter . '.fusion-section-separator {
								margin-left: -' . self::$args['padding_left'] . ' !important;
								margin-right: -' . self::$args['padding_right'] . ' !important;
							}';
                } elseif ($int_left_padding == 0 && $int_right_padding != 0) {
                    $styles .= '.width-100 .fusion-fullwidth-' . $this->fwc_counter . ', .width-100 .fusion-fullwidth-' . $this->fwc_counter . '.fusion-section-separator {
								margin-right: -' . self::$args['padding_right'] . ' !important;
							}';
                } elseif ($int_left_padding != 0 && $int_right_padding == 0) {
                    $styles .= '.width-100 .fusion-fullwidth-' . $this->fwc_counter . ', .width-100 .fusion-fullwidth-' . $this->fwc_counter . '.fusion-section-separator {
								margin-left: -' . self::$args['padding_left'] . ' !important;
							}';
                }
                $styles .= '}';
            }
            $styles .= '</style>';
        } else {
            if (!$site_width_percent) {
                $styles .= '<style type="text/css" scoped="scoped">';
                /*$styles .= '.fusion-fullwidth-' . $this->fwc_counter . ' {
                			padding-left: 0px !important;
                			padding-right: 0px !important;
                		}';*/
                $styles .= '.fusion-fullwidth-' . $this->fwc_counter . ' {
							padding-left: ' . self::$args['padding_left'] . ' !important;
							padding-right: ' . self::$args['padding_right'] . ' !important;
						}';
                /*$styles .= '@media only screen and (max-width: ' . $smof_data['site_width'] . ') {';
                			$styles .= '.fusion-fullwidth-' . $this->fwc_counter . ' .fusion-row {
                					padding-left: 0 !important;
                					padding-right: 0 !important;
                				}';
                		$styles .= '}';*/
                $styles .= '</style>';
            }
        }
        $html = sprintf('%s<div %s>%s<div %s>%s</div></div>', $parallax_helper, FusionCore_Plugin::attributes('fullwidth-shortcode'), $styles . $outer_html, FusionCore_Plugin::attributes('fusion-row'), do_shortcode($content));
        if ($defaults['menu_anchor']) {
            $html = sprintf('<div id="%s">%s</div>', $defaults['menu_anchor'], $html);
        }
        $this->fwc_counter++;
        return $html;
    }