Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Thread Thumbnails Details »»
Thread Thumbnails
Version: 3.1.0, by Null Parameter Null Parameter is offline
Developer Last Online: Apr 2014 Show Printable Version Email this Page

Category: Forum Display Enhancements - Version: 4.0.x Rating:
Released: 03-02-2010 Last Update: 04-29-2010 Installs: 243
DB Changes Uses Plugins Auto-Templates
Translations  
No support by the author.

Thread Thumbnails
Created By: Null Parameter

The Thread Thumbnails mod allows users of a forum to specify, in several possible ways, a thumbnail for their thread to be displayed on Forumdisplay thread list.

I had created the mod for vB 3.8, but people we're crying out for a ported version to vB4, and, thanks to help from several of the members, here it is!


Description of Features

Thumbnails are displayed on the Forumdisplay next to the threadicon.
In the ACP Options, assuming you are using the Auto-Template Edits, you can choose which side of the icon to display it on.

Forum Display Screenshot


When submitting a new thread or editing the first post of a thread, a thumbnail can be specified directly if the User Entered URL option is chosen in the ACP. Another option is to Require the thumbnail. If the thumbnail isn't required, it may be left blank by the user, and it can either not be shown at all on forumdisplay or be replaced by a default thumbnail image specified in the ACP.

New Thread Screenshot

Edit Post Screenshot


All available options in the ACP include...
  • Turn Off/On Thumbnails
  • Turn Off/On Auto-Template Edits
  • Which forums to use thumbnails in
  • Turn Off/On thumbnails on sticky threads
  • Require thumbnails (doesn't work with attachment option)
  • Choose to retrieve thumbnails from one of the following
    • User Entered URL
    • First Attachment
    • First Image in Post
  • Choose where thumbnail is displayed in threadbit (relies on Auto-Template Edits)
  • Thumbnail CSS Style
  • Specify No Thumbnail Replacement Image
ACP Options Screenshot


This version is also now using phrases, so it can more easily be translated!


Installation

Install the product XML file. That's it!

If you have a highly customized style, there is a chance that the auto-template edits will not work. In that case, you will need to make the template edits manually. See the included README for more details.


Thumbnail Style

The style for thumbnails is specified in the ACP. It is used to choose exactly how thumbnails will be displayed, including width, height, margins, borders and many other attributes.

The style is specified in CSS, and is applied directly to the HTML img tag.

Here are some examples of possible thumbnail styles, along with a description of what they will do. If you don't know much about CSS, you can learn more here.
  • Every thumbnail will have a width of 100 pixels, but be constrained to being a maximum of 150 pixels in height
    • width:100px;max-height:150px;
  • Every thumbnail will have a width of 120 pixels and have a margin of 3 pixels around the thumbnail, so that it doesn't touch any of the other elements in the threadbit
    • width:120px;margin:3px;
  • Thumbnails aren't allowed to exceed 150 pixels in either dimension, and are also mildly transparent
    • max-width:150px;max-height:150px;opacity:0.8;filter:alpha(opacity=80);
Note: Using CSS positioning attributes (i.e. position, float, clear, etc.) could mess up the threadbit structure, so beware.


FAQs

The version of this mod for vB 3.8 showed thumbnails in the search results. Where did they go?
The search system between vB 3.x and vB4 changed significantly. I didn't have the time to figure out the complexity of it, and was unable to find any examples of other mods that integrated into the search results.

If you know how this is done, feel free to contact me and we can work to get this feature back in!
Does this mod work for RTL Languages, such as Arabic?
There is a separate product XML file available for download that has the appropriate changes to support RTL languages.
When I choose the First Image in Post option, no thumbnails show up in my current threads. Why?
Thumbnails are only updated when a new thread is created or when the first post is edited. Parsing through every forum/thread whenever the options are changed could be disastrous for performance.

Luckily, a user of this mod, megamoose, created a script that you can use to help this out. I want this method to be known, but because I didn't write this, I make no promises that it will work.

Quote:
Originally Posted by megamoose View Post
This should enable batch processing. I have tested it.
Change the $STEP_AMOUNT at the top to something lower if you still get errors
Remember this is for vB version 3.8
Always backup your data before running scripts like these

TO THOSE WHO HAVEN'T BEEN FOLLOWING THE CONVERSATION:
This script will go through all your existing posts and give them thumbnails, based on the First IMG in post option.

Code:
<?php $STEP_AMOUNT = 600; ?>

<input type="button" id="btnNext" value="Process Next Results" onClick="window.location='?start='+(<?php echo $_GET["start"]; ?>+<?php echo $STEP_AMOUNT;?>)" disabled=true><br>
The button above should enable once this batch is complete!<br>
<br>

<?php
error_reporting(E_ALL & ~E_NOTICE & ~8192);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('SKIP_SESSIONCREATE', 1);
define('NOCOOKIES', 1);
define('THIS_SCRIPT', 'xupdate');
define('CSRF_PROTECTION', true);

// #################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array();

// pre-cache templates used by specific actions
$actiontemplates = array();

// ######################### REQUIRE BACK-END ############################
require_once('./global.php');

if (!$_GET["start"]) { $_GET["start"] = 0; }


        $threads = $db->query_read_slave("
        SELECT *
        FROM " . TABLE_PREFIX . "thread
        LIMIT ".$db->escape_string($_GET["start"]).",". $db->escape_string($_GET["start"]+$STEP_AMOUNT));

while ($thread = $db->fetch_array($threads)){
    echo "<b>Thread:</b> ".$thread["title"]."<br>";

    $posts = $db->query_read_slave("SELECT * FROM `" . TABLE_PREFIX . "post` WHERE `postid` = '".$thread["firstpostid"]."'");
    $post = $db->fetch_array($posts);
    echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
          <b>First Post:</b> ".$post["title"]."<br>";
preg_match('/\[img\](.*?)\[\/img\]/i',$post["pagetext"],$matches);
$query = "UPDATE `" . TABLE_PREFIX . "thread` set `thumbnailurl` = '".$db->escape_string($matches[1])."' WHERE threadid = " . $thread["threadid"];
echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <b>SQL:</b>".$query."<br><br>";
$db->query_write($query);

}
?>

<script> document.getElementById("btnNext").disabled = false; </script>
Translations

Arabic

Versions

v3.1
  • Fix for Required Thumbnails
  • New feature to automatically use ALL Forums
v3.0
  • Support for vB4!
  • Use Phrases
  • Option to make Thumbnails Required
  • Option to select where to show the thumbnail on Forumdisplay
  • Option to specify the CSS Style of thumbnail images
Mod Support

I am fully willing to support this mod and continue to add new feature to it when they are desired enough to make them applicable to the product as a whole. The issue is that I do not have access to a vB4 installation, and therefore cannot develop.

Several people were gracious enough to offer up a test installation for me to use, and that is how this mod exists today. If any new features/fixes are wanted, other people will need to be just as gracious.

Also, since I don't own a vB4 instance, I'm supporting this strictly out of the kindness of my heart. So, if you wish to Support me as a developer, it would be much appreciated.

Enjoy!

Download Now

File Type: zip product-thread_thumbnails_v31.zip (313.3 KB, 1895 views)
File Type: xml product-thread_thumbnails_RTL.xml (19.2 KB, 609 views)

Screenshots

File Type: png forumdisplay.png (148.2 KB, 0 views)
File Type: png editpost.png (24.6 KB, 0 views)
File Type: png newthread.png (36.1 KB, 0 views)
File Type: jpg adminoptions.jpg (121.5 KB, 0 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
Благодарность от:
misericorde

Comments
  #192  
Old 12-21-2010, 04:53 PM
abdelali abdelali is offline
 
Join Date: Sep 2007
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Someone now how to put this mod in recent threads of vbadvanced cmps portal. thanks
Reply With Quote
  #193  
Old 12-21-2010, 11:23 PM
mgurain's Avatar
mgurain mgurain is offline
 
Join Date: Apr 2005
Location: KSA - Qatif - Al-Jarodiah
Posts: 345
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This mod is very needed, but is not working,
who could make one with single product install and is working fine ?
Or fix this mod.

Thanks,,
Reply With Quote
  #194  
Old 12-31-2010, 05:27 PM
AlexisMedia AlexisMedia is offline
 
Join Date: Dec 2010
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'd like to use the "first attachment" option but it appears that vBSEO is changing my image attachment urls causing the thread thumbnail to be broken. Any ideas? I'm really needing to get this thing going as soon as possible.

Thanks!
Reply With Quote
  #195  
Old 01-01-2011, 06:20 PM
AlexisMedia AlexisMedia is offline
 
Join Date: Dec 2010
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Begging for help at this point...

I've switched off vBSEO attachment rewrites but it's still having issues. Here is the urls

What thread thumbnails is looking for:
http://www.mysite.com/forums/attachm...&stc=1&thumb=1

Where it needs to be looking:
http://www.mysite.com/forums/attachm...9&d=1293912681

Please help! Thanks!
Reply With Quote
  #196  
Old 01-01-2011, 06:46 PM
AlexisMedia AlexisMedia is offline
 
Join Date: Dec 2010
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Fixed! Had the master setting for thumbnails turned off
Reply With Quote
  #197  
Old 01-06-2011, 08:53 PM
megamoose's Avatar
megamoose megamoose is offline
 
Join Date: Feb 2007
Location: Northern Ireland
Posts: 19
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Null, thanks for this mod. It is perfect.

The thumbnail generator I created in the previous version had a bug in it which would cause a great server load. This new version should run a lot quicker and more efficient. Remember if it does hang on your server decrease the STEP_AMOUNT variable.

Create a file on your server called threadthumbupdate.php with the following in the file and open it in your browser.

PHP Code:
<?php $STEP_AMOUNT 20000?>

<input type="button" id="btnNext" value="Process Next Results" onClick="window.location='?start='+(<?php echo $_GET["start"]; ?>+<?php echo $STEP_AMOUNT;?>)" disabled=true><br>
The button above should enable once this batch is complete!<br>
<br>

<?php
error_reporting
(E_ALL & ~E_NOTICE & ~8192);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('SKIP_SESSIONCREATE'1);
define('NOCOOKIES'1);
define('THIS_SCRIPT''xupdate');
define('CSRF_PROTECTION'true);

// #################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array();

// pre-cache templates used by specific actions
$actiontemplates = array();

// ######################### REQUIRE BACK-END ############################
require_once('./global.php');

if (!
$_GET["start"]) { $_GET["start"] = 0; }


        
$threads $db->query_read_slave("
        SELECT *
        FROM " 
TABLE_PREFIX "thread
        LIMIT "
.$db->escape_string($_GET["start"]).","$db->escape_string($STEP_AMOUNT));

while (
$thread $db->fetch_array($threads)){


    
$posts $db->query_read_slave("SELECT * FROM `" TABLE_PREFIX "post` WHERE `postid` = '".$thread["firstpostid"]."'");
    
$post $db->fetch_array($posts);

preg_match('/\[img\](.*?)\[\/img\]/i',$post["pagetext"],$matches);
$query "UPDATE `" TABLE_PREFIX "thread` set `thumbnailurl` = '".$db->escape_string($matches[1])."' WHERE threadid = " $thread["threadid"];

$db->query_write($query);

}
?>

<script> document.getElementById("btnNext").disabled = false;

</script>
Reply With Quote
  #198  
Old 01-09-2011, 02:43 PM
DavidMatus DavidMatus is offline
 
Join Date: Dec 2009
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by megamoose View Post
Null, thanks for this mod. It is perfect.

The thumbnail generator I created in the previous version had a bug in it which would cause a great server load. This new version should run a lot quicker and more efficient. Remember if it does hang on your server decrease the STEP_AMOUNT variable.
And now is even better Thank you so much! now it work so perfect
Reply With Quote
  #199  
Old 01-14-2011, 02:16 AM
fxwoody's Avatar
fxwoody fxwoody is offline
 
Join Date: Jun 2010
Location: On Earth
Posts: 291
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well Moose! You made my day my friend
Just reinstalled the new 4.1.1 for my forum and used your Script.......you're the man !!!!

Works like a charm
No more overload nor crash of anything.

I think you should take over this mod and reorganize it for every one.

Cheers
Reply With Quote
  #200  
Old 01-14-2011, 05:24 AM
AlexisMedia AlexisMedia is offline
 
Join Date: Dec 2010
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If your using the upload 1st attachment option and a user accidently uploaded the wrong image 1st... is there a way I can admin change which image is the thumbnail? Other then having the user redo the post?

Is there a way I can maybe access the users attachment and change the image for that attachment name or something?

Does that make sense?

Thanks!
Reply With Quote
  #201  
Old 01-14-2011, 10:22 PM
AlexisMedia AlexisMedia is offline
 
Join Date: Dec 2010
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

My users were too frustrated with this so I had to uninstall. I would REALLY like it if this can be either editable by admin OR a separate specified attachment option when the user is writing their post. It can be attached and changed as the user pleases... I'll keep my eye out because I REALLY want this feature but the 1st attachment thing just doesn't work out. Img tags don't work about because not all are using image tags over attachments. And user entered URL doesn't work if the user is doing it as an attachment. So many options but not 1 solution that works for everybody and is easily changeable : (
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:11 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.06968 seconds
  • Memory Usage 2,385KB
  • Queries Executed 26 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_code
  • (1)bbcode_php
  • (2)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (1)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (6)postbit_attachment
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete