vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 4.x Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=245)
-   -   vBulletin CMS Widgets - United-Forum Nivo Slider Widget (https://vborg.vbsupport.ru/showthread.php?t=267024)

DoDe 11-16-2011 02:13 PM

In opera after installing this add-on my background of the entire website is white even if in doc_background is black.
In explorer, chrome and firefox is ok.
What could be the cause?

mmoore5553 11-17-2011 11:00 PM

I found a weird issue. Everything is working fine but after some time the captions do not show up. There is no text. Anyone else run into this at all ?

DoDe 11-19-2011 09:46 AM

Any chance to get some solution for my problem with the white background of the entire web page on opera browser?

mmoore5553 11-20-2011 01:36 AM

I love this mod but found one error. If you let it just run for awhile it will crash. The text goes away. I think this is an issue with javascript. Is there a way to use built in vb javascript or workaround ?

Also is there a way to just have it on cms homepage ?

ablaye 11-21-2011 02:14 AM

Why does it so long to load the first image??
If you go to my site at http://www.ndakaru.com/ , you can see when you load the page that the box when the slideshow is displayed stays white for a while (a few seconds) before the display starts.
Is there any way to speed this up?

Thanks

Mooff 11-21-2011 02:40 AM

@DoDe
Doesn't happen on our page with opera so without a link to your page it's though to guess what might be happening.

@mmoore5553
that text disapearing bug is a nivo slider bug, not a bug comeing from my vbulletin bridge to the slider.
The FAQ should provide enough hints to switch out the jquery file.
Having widgets just showing up on the homepage and not above articles is independent of the slider. But was already answered somewhere in this thread and multiple times on vb.org. Please do a quick search.

@ablaye
I do not experience this behaviour while loading your site.

jack-d 11-21-2011 04:03 AM

I set this up as is and it worked fine, vB 4.1.8 but I chose to pull from a specific section modifying the code as in this post,

HTML Code:

https://vborg.vbsupport.ru/showpost.php?p=2233429&postcount=144
After that change I only get the fallback image now. The path is correct and the section ID is correct because it is pulling the title and text of the article but only the fallback picture.

Been reading through this for hours and can't find a solution.

Anyone have any ideas.


EDIT: Fixed, problem with png files I have found out. No transparent bg images because of the effects.

SRSC 11-21-2011 01:49 PM

Quote:

Originally Posted by jo8jo (Post 2268115)
Hi, the slider widget works fine for me :up: Great work ;)

One more problem i cannot solve:
I'm using this mod: VBCMS Threads promoted to articles link to forum thread no more article pages to link by clicking "Read more" to the original forum thread - not to the article!

The code in "vbcms_content_article_preview" changes to this:

Code:

<vb:if condition="$preview_chopped">
<span class="cms_article_readmore"><a href="{vb:raw vboptions.bburl}/showpost.php?{vb:raw session.sessionurl}p={vb:raw postid}">{vb:rawphrase read_more_phrase} <img src="{vb:stylevar imgdir_cms}/read_more-{vb:stylevar right}.png" alt="{vb:rawphrase read_more_phrase}" /></a>
</span>
</vb:if>

Original code:

Code:

<vb:if condition="$preview_chopped">
<span class="cms_article_readmore"><a href="{vb:raw page_url}">{vb:rawphrase read_more_phrase} <img src="{vb:stylevar imgdir_cms}/read_more-{vb:stylevar right}.png" alt="{vb:rawphrase read_more_phrase}" /></a>
</span>
</vb:if>

I want to click on the slider image or preview text and get forwarded to the forum thread - not to the article. I think i need to change the following php codeof the slider widget code to get the effect from above: :confused:

Code:

<span>'. $article['previewtext'] .'</span> <a href="/content.php?r=' . $article['nodeid'] . '-' . $article['url'] . '">More</a>';
                $article_neu['htmlcaptionname'] = 'htmlcaption' . $article['nodeid'] ;
                $article_neu['picture'] = '<a href="/content.php?r=' . $article['nodeid'] . '-' . $article['url'] . '">


I would be thankful for your suggestions :)

you can use my modified code:

Code:

// DEBUG MODUS !
$debug_modus = false;

if($debug_modus === false)
{
        ob_start();
}

//nivo slider - uf - vb.org version
//set these values as you need them:

//your slider folder - has to be read and writeable
//folder where all slider files are saved
$slider_img_filepath = 'slider/'; 

//picture width and height !same as in the CSS FILE!
$maxwidth = 600;                                 
$maxheight = 300;   

//do you want images without previewimage to be shown? slider is using the fallback then
$show_articles_without_image = false;         

//picture shown if your articles has no previewpicture
$fallback_img = $slider_img_filepath . 'uf_fallback_slider.png'; 

//hardcoded maximum is 20 - if you want more just ask
$number_of_articles_shown = 5;                               
           
//lengh in characters of the article descriptions
$description_length = 200;

//stretch picture or crop them? false = strechting (default) true = cropping (beta)
$crop = false;


//Debug Messages
if($debug_modus)
{
        echo "<span style='color:red;'>DEBUG MODE is ON! </span><br />";
        echo "slider_img_filepath: $slider_img_filepath <br />";
        echo "width: $maxwidth  height: $maxheight <br />";
        echo "Strech or Crop? $crop <br />";
        echo "show_articles_without_image: ";
        var_dump($show_articles_without_image);
        echo " <br />";
        echo "fallback_img: $fallback_img <br />";
        echo "#img: $number_of_articles_shown <br />";
        echo "description_length: $description_length <br />";
        echo 'directory ' . DIR . '<br />';

}




$article_type = vb_Types::instance()->getContentTypeID("vBCms_Article");
$time = TIMENOW;
 
if(!extension_loaded('gd'))
{
        echo '<span style="color:red">Error occurred:</span> Your System does not support the GD-Libary. Please install the GD-Libary.<br />';
}
     
        $article_get = vB::$db->query_read('
        SELECT
            article.pagetext,
            article.previewimage,
            article.postid,
            node.url,
            node.publishdate,
            node.parentnode,
            parentnode.url AS parenturl,
            thread.replycount,
            info.title,
            node.nodeid,           
            GROUP_CONCAT( category.category )
        FROM
            '.TABLE_PREFIX.'cms_article AS article INNER JOIN
            '.TABLE_PREFIX.'cms_node AS node
                ON (node.contentid = article.contentid AND node.contenttypeid = ' . vb::$db->sql_prepare($article_type) .') INNER JOIN
            '.TABLE_PREFIX.'cms_nodeinfo AS info
                ON info.nodeid = node.nodeid INNER JOIN
            '.TABLE_PREFIX.'cms_node AS parentnode
                ON parentnode.nodeid = node.parentnode LEFT JOIN
            '.TABLE_PREFIX.'thread AS thread ON thread.threadid = info.associatedthreadid LEFT JOIN
            '.TABLE_PREFIX.'cms_nodecategory AS nodecategory ON nodecategory.nodeid = node.nodeid LEFT JOIN
            '.TABLE_PREFIX.'cms_category AS category ON nodecategory.categoryid = category.categoryid
        WHERE
            node.setpublish = 1 AND
            node.publishdate > '. vb::$db->sql_prepare($time) .' -34560000 AND
                        node.publishdate < '. vb::$db->sql_prepare($time) .'
        GROUP BY node.nodeid
        ORDER BY node.publishdate
        DESC LIMIT 20');

    $database_articles = array();
   
    /* my version of sorting the articles via relevance - i'll keep it in case someone is interested*/
    while($article = vB::$db->fetch_array($article_get))
    {
        $article['value'] = ( 5 - ($time - $article['publishdate'] ) / 86400 ) * ( 5 - ($time - $article['publishdate'] ) / 86400 ) * ( 5 - ($time - $article['publishdate'] ) / 86400 ) + (10 * $article['replycount']);
        $database_articles[] = $article;       
    }
   
    foreach($database_articles as $c => $key)
    {
        $sort_value[] = $key['value'];
    }
   
    array_multisort($sort_value, SORT_DESC, $database_articles);   
   
    //
    $i = 0;
    $section_array = array();
    $featured_articles = array();
       
    foreach($database_articles AS $article)
    {
        $section_array[$article['parentnode']]++;

        $categories = explode(',' , $article['GROUP_CONCAT( category.category )']);
   
        if($show_articles_without_image == true OR $article['previewimage'])
        {
            if($section_array[$article['parentnode']] < 50 AND $i < $number_of_articles_shown)
            {
                                if($debug_modus == true OR !file_exists($slider_img_filepath . 'slide_' . $article['nodeid'] . '.jpg'))
                                {
                                        //rebuild image to the height and width we want in the slider
                                        //called sprite since i got the code from our sprite addon :P
                                        $sprite = imagecreatetruecolor($maxwidth, $maxheight);
                                        if(is_resource($sprite) AND $article['previewimage'] )
                                        {                                                 
                                                $imageinfo = getimagesize($article['previewimage']);
                                                if(is_array($imageinfo))
                                                { 
                                                        $image = null;
                                                        switch($imageinfo[2])
                                                        {
                                                                case IMAGETYPE_PNG:
                                                                $image = imagecreatefrompng($article['previewimage']);
                                                                break;
                                                                case IMAGETYPE_GIF:
                                                                $image = imagecreatefromgif($article['previewimage']);
                                                                break;
                                                                case IMAGETYPE_JPEG:
                                                                $image = imagecreatefromjpeg($article['previewimage']);
                                                                break;
                                                                default:
                                                                echo '<span style="color:red">Error occurred:</span> Unknown image format. ' . $article['previewimage']. '<br />';
                                                                break;                       
                                                        }
                                                       
                                                        if(!is_resource($image))
                                                        {
                                                                //resiziing did not work - we are using the fallback image.
                                                                echo '<span style="color:red">Error occurred:</span> imagecreation failed. ' . $article['previewimage']. '<br />';
                                                                $article['previewimage'] = $fallback_img;
                                                        }
                                                        else
                                                        {
                                                                $img_width = $imageinfo[0];
                                                                $img_height = $imageinfo[1];                                                       
                                                               
                                                                if($crop == false)
                                                                {                                                                       
                                                                        imagecopyresampled($sprite, $image, 0, 0, 0, 0, $maxwidth, $maxheight, $img_width, $img_height );
                                                                        imagedestroy($image);
                                                                }
                                                                else
                                                                {
                                                                        //cropping
                                                                        $ratiox = $maxheight / $img_height ;
                                                                        $ratioy = $maxwidth / $img_width ;
                                                                        $new_height = $img_height;
                                                                        $new_width = $img_width;
                                                                       
                                                                        if ($maxheight > $img_height OR $maxwidth > $img_width)
                                                                        {
                                                                                if($ratiox > $ratioy)
                                                                                {
                                                                                        $new_height = round($img_height * $ratiox);
                                                                                        $new_width = round($img_width * $ratiox);
                                                                                }
                                                                                else
                                                                                {
                                                                                        $new_height = round($img_height * $ratioy);
                                                                                        $new_width = round($img_width * $ratioy);
                                                                                }                                                                               
                                                                        }
                                                                        $cropx = $new_height - $maxheight;
                                                                        $cropy = $new_width - $maxwidth;
                                                                       
                                                                        imagecopyresampled($sprite, $image, 0, 0, 0, 0, $new_width, $new_height, $img_width, $img_height);
                                                                        imagedestroy($image);
                                                                       
                                                                }
                                                               
                                                               
                                                                $img_filepath = $slider_img_filepath . 'slide_' . $article['nodeid'] . '.jpg';
                                                                $success = imagejpeg($sprite, DIR  . ($img_filepath[0] != DIRECTORY_SEPARATOR ?  DIRECTORY_SEPARATOR : '') . $img_filepath);
                                                                imagedestroy($sprite);
                                                                if($success)
                                                                {
                                                                        $article['previewimage'] = $img_filepath;
                                                                }
                                                                else
                                                                {
                                                                        $img_filepath = DIR  . ($img_filepath[0] != DIRECTORY_SEPARATOR ?  DIRECTORY_SEPARATOR : '') . $img_filepath;
                                                                        echo '<span style="color:red">Error occurred:</span> imagejpeg failed. ' . $article['previewimage']. '<br />
                                                                        directory: '. $img_filepath ;
                                                                       
                                                                        $article['previewimage'] = $fallback_img;
                                                                }
                                                        }
                                                       
                                                }
                                                else
                                                {
                                                        //resiziing did not work - we are using the fallback image.
                                                        echo '<span style="color:red">Error occurred:</span> picture is not readable.' . $article['previewimage']. '<br /> ';
                                                        $article['previewimage'] = $fallback_img;
                                                }                 
                                        }
                                        else
                                        {
                                                //resiziing did not work - we are using the fallback image.
                                                echo '<span style="color:red">Warning:</span> article has no previewimage or sprite is no ressource. ' . $article['previewimage']. '<br />';
                                                $article['previewimage'] = $fallback_img;
                                        }
                                }
                                else
                                {
                                        //we already have the image, no need to resize or crop anything
                                        $article['previewimage'] = $slider_img_filepath . 'slide_' . $article['nodeid'] . '.jpg';
                                }

                /*remove everything from the previewtext - html and bb. I do not want bold or colored text there. Cut to a decent length.*/       
                $article['pagetext'] = strip_bbcode($article['pagetext'], true, true, false, true, false);

                $article['previewtext'] = strip_tags($article['pagetext'], '<a>');
                   
                $len = $description_length;
                if ( strlen($article['previewtext']) > $len )
                {                   
                    $article['previewtext'] = substr( $article['previewtext'] , 0 , strrpos( substr( $article['previewtext'], 0, $len), ' ' ));
                } 

                $i++;
                //Build Array
                $article_neu = array();
                $article_neu['description'] = '<h2 style="font-weight:bold; font-size: 14px">'. $article['title'].'</h2><span>'. $article['previewtext'] .'</span> <a href="http://yoursite.com/forum/showpost.php?p=' . $article['postid']. '">Xem chi tiết</a>';
                $article_neu['htmlcaptionname'] = 'htmlcaption' . $article['nodeid'] ;
                $article_neu['picture'] = '<a href="http://yoursite.com/forum/showpost.php?p=' . $article['postid']. '"><img src="'.$article['previewimage'].'" alt="" title="#htmlcaption'. $article['nodeid'] . '" /></a>';
               
                $featured_articles[] = $article_neu;
            }
        }
    }
   
    //Randomize Array
    //shuffle($featured_articles);

        //Debug Messages
        if($debug_modus)
        {
                echo '#articles - featured and databasepull ';
                var_dump(count($featured_articles));
                var_dump(count($database_articles));
        }

   
$output_bits = '
    <link rel="stylesheet" href="' .$slider_img_filepath. 'nivo-slider.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="' .$slider_img_filepath. 'nivo-slider_uf_theme.css" type="text/css" media="screen" />
    <div style="height:' . $maxheight . 'px;">
    <div id="wrapper">
        <div class="slider-wrapper theme-uf">
            <div class="ribbon"></div>
            <div id="slider" class="nivoSlider">';
           
                foreach($featured_articles AS $article)
                {
                    $output_bits .= $article['picture'];
                }
            $output_bits .= '
            </div>';
           
            foreach($featured_articles AS $article)
            {
                $output_bits .= '<div id="' . $article['htmlcaptionname'] . '" class="nivo-html-caption">' . $article['description'] .'</div>';
            }
           
            $output_bits .= '       
        </div>

    </div>
    <script type="text/javascript" src="' .$slider_img_filepath. 'jquery-1.6.1.min.js"></script>
    <script type="text/javascript" src="' .$slider_img_filepath. 'jquery.nivo.slider.pack.js"></script>
    <script type="text/javascript">
    $(window).load(function() {
        $("#slider").nivoSlider();
    });
    </script>
    </div>
    ';
        $output = $output_bits;
 
if($debug_modus === false)
{
        ob_end_clean();       
}

Change red text color with your forum url;). The result is when you click to preview text or picture it will go to the post that you promoted:cool:

ablaye 11-21-2011 02:18 PM

Quote:

Originally Posted by Mooff (Post 2270188)
@ablaye
I do not experience this behaviour while loading your site.

Yes, it does take quite a while to load the slides. Go to http://www.ndakaru.com and watch the box that says "A LA UNE". It takes a few seconds for the slides to load.
Any idea on how to make the slides load at the same time as the rest of the site?

DoDe 11-21-2011 06:45 PM

Quote:

Originally Posted by Mooff (Post 2270188)
@DoDe
Doesn't happen on our page with opera so without a link to your page it's though to guess what might be happening.

Please take a look on the www.dfgrom.com

I use the standard style to have a better understanding. The vbulletin version is v4.1.8 and the default color of the background should be: #e9e9e9 but it's white. If you look into the source code of the webpage you will notice that there is no white color at all. This is a strange bug only noticed in opera browser.


All times are GMT. The time now is 03:45 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01733 seconds
  • Memory Usage 1,861KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (4)bbcode_code_printable
  • (1)bbcode_html_printable
  • (3)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete