SP Property error - Forum | JoomShaper
Solved Extensions

SP Property error

Asked by Manuel 4 years ago Last activity 4 years ago

Hi, I was starting to configurate the Extension and the template. Right now I become this error on the frontend.
https://prnt.sc/1vqeifj

I dont know what I was doing wrong.
First I was deleting the demo Agents and create an new.
Second I rename a few categories
Third I was changing the id's in property features to the actuall user.

Then I put logos and sticky icon on the template.
after that I was doing in Pagebuilder - Home a few fotos for the slideshow in. I renew the frontend site then was coming this.

Please Help
Best Regards Manuel

Accepted answer

Marked as the solution
Toufiq Senior Staff

This addon was made for specific template. if you want to use slideshow addon you can use the slideshow addon instead of fullwidth slideshow addon. Thanks

27 more replies

Toufiq Senior Staff

Hi there,

Thanks for contacting us. Sorry for the inconvenience. I have replaced this code with your existing fullwidth_slider site.php file.

templates/shaper_estate/sppagebuilder/addons/fullwidth_slider/site.php

<?php

/**
 * @package Estate
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2018 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */
//no direct accees
defined('_JEXEC') or die('resticted access');

class SppagebuilderAddonFullwidth_slider extends SppagebuilderAddons {

    public function render() {
        $autoplay = (isset($this->addon->settings->autoplay) && $this->addon->settings->autoplay) ? $this->addon->settings->autoplay : '';
        $controllers = (isset($this->addon->settings->controllers) && $this->addon->settings->controllers) ? $this->addon->settings->controllers : '';
        $arrows = (isset($this->addon->settings->arrows) && $this->addon->settings->arrows) ? $this->addon->settings->arrows : '';
        $class = (isset($this->addon->settings->class) && $this->addon->settings->class) ? $this->addon->settings->class : '';


        //Check Auto Play
        $slide_autoplay = ($autoplay) ? 'data-sppb-slide-ride="true"' : '';
        $slide_controllers = ($controllers) ? 'data-sppb-fullwidth-slider-controllers="true"' : '';

        //output
        $output = '<div class="sppb-addon sppb-fullwidth-slider ' . $class . '">';
        $output .= '<div class="sppb-fullwidth-slider-wrap">';
        $output .= '<div id="sppb-fullwidth-slider" class="owl-carousel" ' . $slide_controllers . ' ' . $slide_autoplay . ' >';

        foreach ($this->addon->settings->sp_fullwidth_slider_item as $key => $slide_item) {

            $src = "";
            if (isset($slide_item->bg)) {
                if (is_object($slide_item->bg)) {
                    $src = $slide_item->bg->src;
                } elseif (is_string($slide_item->bg)) {
                    $src = $slide_item->bg;
                }
            }
            $bg_image = "";
            // if have bg then add class
            $bg_image = !empty($src) ? 'style="background-image: url('/ . JURI::base() . $src . ');"' : '';

            // *** animation *** //
            // Subtitle animation
            $subtitle_animation = '';
            if (isset($slide_item->subtitle_animation) && $slide_item->subtitle_animation) {
                $slide_item->subtitle_animation .= ' sppb-wow ' . $slide_item->subtitle_animation;
            }

            $subtitle_data_attr = '';
            if (isset($slide_item->subtitle_animationduration) && $slide_item->subtitle_animationduration)
                $subtitle_data_attr .= ' data-sppb-wow-duration="' . $slide_item->subtitle_animationduration . 'ms"';
            if (isset($slide_item->subtitle_animationdelay) && $slide_item->subtitle_animationdelay)
                $subtitle_data_attr .= ' data-sppb-wow-delay="' . $slide_item->subtitle_animationdelay . 'ms"';

            // Title animation
            $title_animation = '';
            if (isset($slide_item->title_animation) && $slide_item->title_animation) {
                $slide_item->title_animation .= ' sppb-wow ' . $slide_item->title_animation;
            }

            $title_data_attr = '';
            if (isset($slide_item->title_animationduration) && $slide_item->title_animationduration)
                $title_data_attr .= ' data-sppb-wow-duration="' . $slide_item->title_animationduration . 'ms"';
            if (isset($slide_item->title_animationdelay) && $slide_item->title_animationdelay)
                $title_data_attr .= ' data-sppb-wow-delay="' . $slide_item->title_animationdelay . 'ms"';

            // content animation
            if (isset($slide_item->content_animation) && $slide_item->content_animation) {
                $slide_item->content_animation .= ' sppb-wow ' . $slide_item->content_animation;
            }

            $content_data_attr = '';
            if (isset($slide_item->content_animationduration) && $slide_item->content_animationduration)
                $content_data_attr .= ' data-sppb-wow-duration="' . $slide_item->content_animationduration . 'ms"';
            if (isset($slide_item->content_animationdelay) && $slide_item->content_animationdelay)
                $content_data_attr .= ' data-sppb-wow-delay="' . $slide_item->content_animationdelay . 'ms"';

            // Button animation
            if (isset($slide_item->button_animation) && $slide_item->button_animation) {
                $slide_item->button_animation .= ' sppb-wow ' . $slide_item->button_animation;
            }

            $button_data_attr = '';
            if (isset($slide_item->button_animationduration) && $slide_item->button_animationduration)
                $button_data_attr .= ' data-sppb-wow-duration="' . $slide_item->button_animationduration . 'ms"';
            if (isset($slide_item->button_animationdelay) && $slide_item->button_animationdelay)
                $button_data_attr .= ' data-sppb-wow-delay="' . $slide_item->button_animationdelay . 'ms"';



            // Before button icon
            $button_before_icon = (isset($slide_item->button_before_icon) && $slide_item->button_before_icon) ? '<i class="fa ' . $slide_item->button_before_icon . '"></i>' : '';

            $output .= '<div class="sppb-fullwidth-slider-item item">';
            $output .= '<div class="sppb-fullwidth-slider-item-bg" ' . $bg_image . '>';
            $output .= '<div class="container">';
            $output .= '<div class="sppb-fullwidth-slider-item-text">';
            $output .= '<div class="sppb-fullwidth-slider-item-text-wrap">';

            if (($slide_item->title) || ($slide_item->content) || ($slide_item->sub_title)) {
                $subtitle_animation = (isset($slide_item->subtitle_animation)) ? $slide_item->subtitle_animation : '';
                $title_animation = (isset($slide_item->title_animation)) ? $slide_item->title_animation : '';
                $button_target = (isset($slide_item->target)) ? $slide_item->target : '';
                $content_animation = (isset($slide_item->content_animation)) ? $slide_item->content_animation : '';
                $button_animation = (isset($slide_item->button_animation)) ? $slide_item->button_animation : '';
                $button_text = (isset($slide_item->button_text)) ? $slide_item->button_text : '';

                if ($slide_item->sub_title) {
                    $output .= '<h3 class="sppb-fullwidth-slider-sub-title ' . $subtitle_animation . '" ' . $subtitle_data_attr . '>' . $slide_item->sub_title . '</h3>';
                }

                if($slide_item->title){
                    $output .= '<h4 class="sppb-fullwidth-slider-title ' . $title_animation . '" ' . $title_data_attr . '>' . $slide_item->title . ' </h4>';
                }

                if ($slide_item->content) {
                    $output .= '<p class="details ' . $content_animation . '" ' . $content_data_attr . '><i class="fa fa-map-marker"></i>' . $slide_item->content . '</p>';
                }

                if (($button_text && $slide_item->button_url)) {
                    $output .= '<div class="sppb-fw-slider-button-wrapper ' . $button_animation . '" ' . $button_data_attr . '> ';
                    if ($slide_item->button_text && $slide_item->button_url) {
                        $output .= '<a target="' . $button_target . '" href="' . $slide_item->button_url . '" class="sppb-btn sppb-btn-primary"><span>' . $button_text . '</span>' . $button_before_icon .  '</a>';
                    }
                    $output .= '</div>';
                }
            }

            $output .= '</div>'; // END:: /.sppb-fullwidth-slider-item-text
            $output .= '</div>'; // END:: /.sppb-fullwidth-slider-item-text
            $output .= '</div>'; // END:: /.container
            $output .= '</div>'; // END:: /.sppb-fullwidth-slider-item-bg
            $output .= '</div>'; // END:: /.sppb-fullwidth-slider-item
        }

        $output .= '</div>'; //END:: /.sppb-slider-items
        // has next/previous arrows
        if ($arrows) {
            $output .= '<div class="customNavigation">';
            $output .= '<a class="sppbSlidePrev"><i class="fa fa-chevron-left"></i></a>';
            $output .= '<a class="sppbSlideNext"><i class="fa fa-chevron-right"></i></a>';
            $output .= '</div>'; // END:: /.customNavigation
        }
        $output .= '</div>'; // END:: /.sppb-fullwidth-slider-wrap



        $output .= '</div>'; // /.sppb-fullwidth-slider
        // has dot controls
        if ($controllers) {
            $output .= '<div class="owl-dots">';
            $output .= '<div class="owl-dot active"><span></span></div>';
            $output .= '<div class="owl-dot"><span></span></div>';
            $output .= '<div class="owl-dot"><span></span></div>';
            $output .= '</div>';
        }

        return $output;
    }

    public function scripts() {
        $app = JFactory::getApplication();
        $base_path = JURI::base() . '/templates/' . $app->getTemplate() . '/js/';
        return array($base_path . 'owl.carousel.min.js', $base_path . 'addon.slider.js');
    }

    public function js() {
        $addon_id = '#sppb-addon-' . $this->addon->id;
        return '
            jQuery(document).ready(function($){"use strict";

            var $slideFullwidth = $("' . $addon_id . ' #sppb-fullwidth-slider");

            var $autoplay   = $slideFullwidth.attr("data-sppb-slide-ride");
            if ($autoplay == "true") { var $autoplay = true; } else { var $autoplay = false};

            var $controllers   = $slideFullwidth.attr("data-sppb-fullwidth-slider-controllers");
            if ($controllers == "true") { var $controllers = true; } else { var $controllers = false};

            $slideFullwidth.owlCarousel({
                margin: 0,
                loop: true,
                video:true,
                autoplay: $autoplay,
                animateIn: "fadeIn",
                animateOut: "fadeOut",
                autoplayHoverPause: true,
                autoplaySpeed: 1500,
                responsive: {
                    0: {
                        items: 1
                    },
                    600: {
                        items: 1
                    },
                    1000: {
                        items: 1
                    }
                },
                dots: $controllers,
            });

            $(".sppbSlidePrev").click(function(){
                $slideFullwidth.trigger("prev.owl.carousel", [400]);
            });

            $(".sppbSlideNext").click(function(){
                $slideFullwidth.trigger("next.owl.carousel",[400]);
            });
        });
        ';
    }

    public function stylesheets() {
        $app = JFactory::getApplication();
        $base_path = JURI::base() . '/templates/' . $app->getTemplate() . '/css/';
        return array($base_path . 'owl.carousel.css');
    }

    public static function getTemplate() {
        $output = '
            <style type="text/css">
                <# _.each (data.sp_fullwidth_slider_item, function(slide_item, item_key) { #>
                    #sppb-addon-{{ data.id }} .item-{{ data.id }}-{{ item_key }} .sppb-fullwidth-slider-item-bg{
                        background-image: url({{ pagebuilder_base + slide_item.bg }});
                        background-repeat: no-repeat;
                        background-size: cover;
                        background-position: center center;
                    }
                <# }); #>
            </style>
            <#
                var autoplay = (typeof data.autoplay !=="undefined") ? data.autoplay : 0;
                var controllers = (typeof data.controllers !=="undefined") ? data.controllers : 0;
                var arrows = (typeof data.arrows !=="undefined") ? data.arrows : 0;
                var contentClass = (!_.isEmpty(data.class)) ? data.class : "";

                var slide_autoplay = (autoplay>0) ? \'data-sppb-slide-ride="true"\' : \'data-sppb-slide-ride="false"\';
                var slide_controllers = (controllers > 0) ? \'data-sppb-fullwidth-slider-controllers="true"\' : \'data-sppb-fullwidth-slider-controllers="false"\';
            #>

                <div class="sppb-addon sppb-fullwidth-slider {{contentClass}}">
                <div class="sppb-fullwidth-slider-wrap">
                <div id="sppb-fullwidth-slider" class="owl-carousel" {{slide_controllers}} {{slide_autoplay}} >

                <#_.each (data.sp_fullwidth_slider_item, function(slide_item, item_key) {

                    var title_animation = "";
                    if (!_.isEmpty(slide_item.title_animation)) {
                        title_animation += \' sppb-wow \' + slide_item.title_animation;
                    }

                    var title_data_attr = "";
                    if (!_.isEmpty(slide_item.title_animationduration)){
                        title_data_attr += \' data-sppb-wow-duration="\' + slide_item.title_animationduration + \'ms"\';
                    }
                    if (!_.isEmpty(slide_item.title_animationdelay)){
                        title_data_attr += \' data-sppb-wow-delay="\' + slide_item.title_animationdelay + \'ms"\';
                    }

                    var subtitle_animation = "";
                    if (!_.isEmpty(slide_item.subtitle_animation)) {
                        subtitle_animation += \' sppb-wow \' + slide_item.subtitle_animation;
                    }

                    var subtitle_data_attr = "";
                    if (!_.isEmpty(slide_item.subtitle_animationduration)){
                        subtitle_data_attr += \' data-sppb-wow-duration="\' + slide_item.subtitle_animationduration + \'ms"\';
                    }
                    if (!_.isEmpty(slide_item.subtitle_animationdelay)){
                        subtitle_data_attr += \' data-sppb-wow-delay="\' + slide_item.subtitle_animationdelay + \'ms"\';
                    }

                    var content_animation ="";
                    if (!_.isEmpty(slide_item.content_animation)) {
                        content_animation += \' sppb-wow \' + slide_item.content_animation;
                    }

                    var content_data_attr = "";
                    if (!_.isEmpty(slide_item.content_animationduration)){
                        content_data_attr += \' data-sppb-wow-duration="\' + slide_item.content_animationduration + \'ms"\';
                    }

                    if (!_.isEmpty(slide_item.content_animationdelay)){
                        content_data_attr += \' data-sppb-wow-delay="\' + slide_item.content_animationdelay + \'ms"\';
                    }

                    var button_animation ="";
                    if (!_.isEmpty(slide_item.button_animation)) {
                        button_animation += \' sppb-wow \' + slide_item.button_animation;
                    }

                    var button_data_attr = "";
                    if (!_.isEmpty(slide_item.button_animationduration)){
                        button_data_attr += \' data-sppb-wow-duration="\' + slide_item.button_animationduration + \'ms"\';
                    }
                    if (!_.isEmpty(slide_item.button_animationdelay)){
                        button_data_attr += \' data-sppb-wow-delay="\' + slide_item.button_animationdelay + \'ms"\';
                    }

                    var button_before_icon = (!_.isEmpty(slide_item.button_before_icon)) ? \'<i class="fa \' + slide_item.button_before_icon + \'"></i>\' : "";
                    #>

                    <div class="sppb-fullwidth-slider-item item-{{ data.id }}-{{ item_key }}">
                    <div class="sppb-slide-item-bg sppb-fullwidth-slider-item-bg" {{data.bg_image}}>
                    <div class="container">
                    <div class="sppb-fullwidth-slider-item-text">
                    <div class="sppb-fullwidth-slider-item-text-wrap">
                    <# if ((slide_item.title) || (slide_item.sub_title) || (slide_item.content)) {
                        if (slide_item.sub_title) { #>
                            <h3 class="sppb-fullwidth-slider-sub-title {{subtitle_animation}}" {{{subtitle_data_attr}}}>{{{slide_item.sub_title}}}</h3>
                        <# }
                        if (slide_item.title) { #>
                            <h4 class="sppb-fullwidth-slider-title {{title_animation}}" {{{title_data_attr}}}>{{{slide_item.title}}}</h4>
                        <# }
                        if (slide_item.content) {
                        #>
                            <p class="details {{content_animation}}" {{{content_data_attr}}}><i class="fa fa-map-marker"></i>{{{slide_item.content}}}</p>
                        <# }

                        if ((slide_item.button_text && slide_item.button_url)) {
                        #>
                            <div class="sppb-fw-slider-button-wrapper {{button_animation}}" {{{button_data_attr}}}>
                            <# if (slide_item.button_text && slide_item.button_url) { #>
                                <a target="{{slide_item.target}}" href="/{{slide_item.button_url}}" class="sppb-btn sppb-btn-primary"><span>{{slide_item.button_text}}</span> {{{button_before_icon}}}</a>
                            <# } #>

                            </div>
                        <# } #>
                    <# } #>

                    </div>
                    </div>
                    </div>
                    </div>
                    </div>
                <# }) #>
                </div>

                <# if (arrows > 0) { #>
                    <div class="customNavigation">
                    <a class="sppbSlidePrev"><i class="fa fa-angle-left"></i></a>
                    <a class="sppbSlideNext"><i class="fa fa-angle-right"></i></a>
                    </div>
                <# } #>
                </div>
                </div>

                <# if (slide_controllers) { #>
                    <div class="owl-dots">
                    <div class="owl-dot active"><span></span></div>
                    <div class="owl-dot"><span></span></div>
                    <div class="owl-dot"><span></span></div>
                    </div>
                <# } #>
                ';
        return $output;
    }

}

-Thanks

Manuel Asked this

Hi, but why something was wrong in the code? From where that comes. Because we was changing nothing inside the code.
Comes that error with the Quickstart package?

Best Regards
Manuel

Toufiq Senior Staff

The quickstart pack file has issue. I have solved your issue. Thanks

Manuel Asked this

Ok, I can open it again. Thank you. But I think after you was doing the code inside the change a few another things.
Can you check the SP Pagebuilder site "Home" on the frontend.
The examples Properties are not there anymore.

Regards Manuel

Toufiq Senior Staff

Will you please drop here your cpanel access?

Manuel Asked this

Here is the access for the cpanel.

Toufiq Senior Staff

Please check here and let me know. Thanks

Manuel Asked this

Hi, Looks like that is working there.
Great.
Was it an issue of the extension?

Log in to reply.