The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
United-Forum Nivo Slider Widget Details »» | ||||||||||||||||||||||||||||||||
Based on the Nivo Slider - all credit for slider awesomeness goes to them.
vB4 implementation goes to me. What it is: A slider for cms articles, it gets the articles via database, uses (if possible) the previewimage there and resizes it to slider size *update 1.1.0 cropping function included. Livedemo on a Big Board (>2.000.000 posts) the nivo slider on our site is customized to fit our heavily customized cms. Default look of this addon is shown in the picture below facts about the nivo slider Quote:
Custom settings: Support:
Slider not working. No idea why?
The widget here is completely free. No charge, no branding. But, we do not mind donations either. If you want to give us something. Since we are advertising free and fan based we are happy about every small donation. ( On Forumhome bottom right paypal button: http://www.united-forum.de/forum.php ) That's all Hope it works for you. Regards Mooff Download Now
Screenshots
Supporters / CoAuthors Show Your Support
|
13 благодарности(ей) от: | ||
AaronMiller, Aramist, doctorsexy, Gemma, LOGECT, mitch84, nacaruncr, owning_y0u, RaSa, Sage Knight, The Rocketeer, YkudzA |
Comments |
#332
|
||||
|
||||
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? |
#333
|
|||
|
|||
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 ?
|
#334
|
||||
|
||||
Any chance to get some solution for my problem with the white background of the entire web page on opera browser?
|
#335
|
|||
|
|||
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 ? |
#336
|
|||
|
|||
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 |
#337
|
|||
|
|||
@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. |
#338
|
|||
|
|||
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 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. |
#339
|
|||
|
|||
Quote:
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(); } |
Благодарность от: | ||
Mooff |
#340
|
|||
|
|||
Quote:
Any idea on how to make the slides load at the same time as the rest of the site? |
#341
|
||||
|
||||
Quote:
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. |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|