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

Reply
 
Thread Tools
Live Topic Details »»
Live Topic
Version: 1.07b, by Coders Shack Coders Shack is offline
Developer Last Online: Sep 2013 Show Printable Version Email this Page

Category: Miscellaneous Hacks - Version: 3.8.0 Rating:
Released: 01-09-2009 Last Update: 02-28-2009 Installs: 976
DB Changes Uses Plugins Auto-Templates
Is in Beta Stage  
No support by the author.

. . . . . . . . Brought to you by scriptasy.com

Live Demo:
Live Topic 1.07b Demo (you must be logged in, and the topic must be "live")

Videos: 1.00b 1.06b

watch the damn videos... ^_^
Description:
This product is different from anything you have seen before, it raises the bar for forums. It will make your forums much more interactive, and also reduce server load.

Technical Details:
If a thread has been posted in X seconds then its now Live, if other users are viewing the Live topic and are on the last page they will experience a clean ajax experience while talking to other members. Once the thread is older than X seconds its no longer Live and it will now act like a normal thread. Also if a user edits one of their posts that's inside of the thread, it will be updated too so there is no longer a reason to ever have to refresh.

There is also logic for the viewer, the viewer of the thread has to be in an active state to see responses. An active user state is determined upon the users actions, if no actions were made in X seconds then the user is marked as inactive.

Also you may wonder why this could save your server bandwidth and CPU. If a user is refreshing to talk to another members the queries on a normal thread load are way more intense than the ajax call that this modification makes. So if you have 5 people talking to each other none of them have to refresh the page, all they are doing is simple page requests and one intense request when there has actual change.

You can test Live Topic with two users, you will see how amaizing this is... And probably spontaneously combust.

Found a bug? Want to request a feature?
Live Topic - Project Manager
Installation:
This is take less than 3 minutes to install, takes longer to notice its amazing feature. (you need multiple people to be active in the same topic)

Upgrade:
[1.01b to 1.XXb] Uninstall the product, then reinstall it. Overwrite all old files with new files and you should be fine.

[1.02b to 1.03b] Overwrite files, upgrade product (dont install product)

[1.03b to 1.04b] Uninstall the product, then reinstall it. Overwrite all old files with new files and you should be fine.

[1.04b to 1.05b, 1.05b to 1.06b,1.06b to 1.07b] Upgrade the product. Overwrite all old files with new files and you should be fine.
Works With (FF2, FF3, IE6, IE7, IE8, SF2, SF3, CHROME):
vBulletin [3.8.X]

get the vBulletin [3.7.X] version here

INCOMPATIBLE HACKS:
Versions:
1.01b
1.02b
fixes
safari 2 support
safari 3 support
google chrome sup
port
added live topic icon on new posts page
fixed security issue, strongly suggest upgrading!
changes
added live edit (to avoid a performance hit i had to add two rows to two tables in the database)
added external style sheet
1.03b
fixes
fix double post
phrase notification
fixed an edit bug for people with table prefixes
changes
ability to change interval in ACP
1.04b
fixes
javascript error for guests
fixed live topic activation (first poster to raise a dead topic)
changes
auto quick reply focus after post
1.05b
fixes
css flaw
js error for unsupported browsers (random)

fixed chrome issue
changes
edit notification - thanks to nso
rebuilding some of the original logic to hopefully prevent product conflicts

1.06b
fixes
fixed a little javascript issue that had to do with displaying posts
uses GPC cleaner now
changes
limit the number of ajax posts on the live topic (example 40) and fade them away.
changed the way the hooks are used
tightened up everything a bit

1.07b
fixes
fixed a bug where the live topic notification always making an ajax call
changes
support user ignore list
changed the way the javascript logic worked (hopefully there are less compatibly issues) added support for IE6 and IE8
1.10
hmm

Download Now

File Type: zip LiveTopic107b.zip (15.9 KB, 3950 views)

Screenshots

File Type: png Picture 5.png (33.7 KB, 0 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #452  
Old 02-09-2009, 03:32 PM
AMailer AMailer is offline
 
Join Date: Oct 2007
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Why is this stated as incompatible with Passivevid 1.x?
I'm running both and they seem to be working fine.
Reply With Quote
  #453  
Old 02-09-2009, 09:00 PM
Bounce's Avatar
Bounce Bounce is offline
 
Join Date: Mar 2004
Location: Edinburgh,Scotland
Posts: 919
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Right...... despite the server loads I've decided to try this again lol

Now ...... from what I see on the video the thread should auto update WITHOUT having to
refresh?

The live topic image appears fine but at the moment I'm sitting on a thread awaiting summit happened and its just not lol

I'll refresh after the idle time is up to see what's what LOL
Reply With Quote
  #454  
Old 02-10-2009, 12:10 AM
Alfa1's Avatar
Alfa1 Alfa1 is offline
 
Join Date: Dec 2005
Location: Netherlands
Posts: 3,537
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How do I only allow certain usergroups to have this functionality? Are there edits I can make in your files, to accomplish this?

How do you resolve the incompatibility with the 'Prevent double posting' Hack? Is there a fix?

I installed your product on my test forum. Here's the error on import:
Code:
Importing Product, Please Wait...

[:]

Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in [path]/admincp/plugin.php(1995) : eval()'d code(2) : eval()'d code on line 1

Warning: file_get_contents(http://track.scriptasy.com/livetopic/1.05b/www.mysite.com) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in [path]/admincp/plugin.php(1995) : eval()'d code(2) : eval()'d code on line 1

Message

    Product livetopic Imported
Reply With Quote
  #455  
Old 02-10-2009, 04:12 AM
dai-kun dai-kun is offline
 
Join Date: Jul 2005
Posts: 238
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I enabled this hack again, making the request time from 3 to 5 seconds. My load just increases a little but it never went up to 20 like last time.

Code:
top - 00:11:45 up 1 day,  8:28,  1 user,  load average: 1.43, 1.30, 1.39
I am happy for now
Reply With Quote
  #456  
Old 02-10-2009, 11:24 AM
auto auto is offline
 
Join Date: Nov 2001
Location: Los Angeles, CA
Posts: 85
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How can I troubleshoot this hack?

I have installed it on vB3.8.0 at http://www.automotiveforums.com/vbulletin/ but the AJAX does not seem to do anything. The LiveTopic image does show up and then disappears after the specified time of inactivity.
Reply With Quote
  #457  
Old 02-10-2009, 11:26 AM
auto auto is offline
 
Join Date: Nov 2001
Location: Los Angeles, CA
Posts: 85
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Coders Shack View Post
it already does this
Then I'd prefer this behavior anyway.
Reply With Quote
  #458  
Old 02-10-2009, 03:01 PM
fattony69 fattony69 is offline
 
Join Date: Jun 2007
Location: Philly
Posts: 353
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Does this still have any issues with the leaderboards hack? I would love to install this, but I already have that installed as well.
Reply With Quote
  #459  
Old 02-10-2009, 06:56 PM
buro9 buro9 is offline
 
Join Date: Feb 2002
Location: London, UK
Posts: 585
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have a couple of questions.

One relates to the packed/minified javascript. I want to remove the notice that tells people it's a live topic... or re-format it... it's ugly.

So I'm guessing it's written by the javascript, so I would like to see the unpacked JavaScript to adjust it. OR have the additional notice templated in the vBulletin template system.

Next up is security. I got a few errors through:
PHP Code:
Database error in vBulletin 3.8.1:

Invalid SQL:

                                        
SELECT COUNT(*) AS count
                                        FROM vb_post 
AS post
                                        WHERE
                                                
(threadid 14030
                                                
AND visible 1
                                                
AND dateline 1234287978.:
                                                AND 
userid != 217)
                                                OR (
threadid 14030
                                                
AND visible 1
                                                
AND lastedit 1234286762);

MySQL Error   You have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near ':
                                                AND userid != 217)
                                                OR (threadid = 14030
                                                AND visible = 1
                                ' 
at line 6 
Now where did that come from?

Checking the php source it seems that you just take the POST'd value and put it straight into the MySql script. Is that correct? If so... BIG ++++ING SECURITY HOLE. Because you've just allowed SQL injection.

Could you confirm whether you really are taking $_POST['value'] and using it directly in the SQL, because you REALLY REALLY need to change that before something very bad happens.
Reply With Quote
  #460  
Old 02-10-2009, 09:03 PM
buro9 buro9 is offline
 
Join Date: Feb 2002
Location: London, UK
Posts: 585
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Actually, just seen that you do this:
PHP Code:
                $_POST['threadid'] = $vbulletin->db->escape_string($_POST['threadid']);
                
$_POST['ajax_lastpost'] = $vbulletin->db->escape_string($_POST['ajax_lastpost']);
                
$_POST['ajax_lastedit'] = $vbulletin->db->escape_string($_POST['ajax_lastedit']); 
So you are escaping... just numbers as strings.

Weird though... how did ".:" get into the posted info on some requests?

I had about 20 of those errors over a 5 minute period.
Reply With Quote
  #461  
Old 02-11-2009, 03:10 AM
pspcrazy pspcrazy is offline
 
Join Date: Apr 2005
Posts: 184
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Anyone have any issues with guest posting? I'm upgrading to live topic 5b from 4b hope that fixes my issues.
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:05 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.06085 seconds
  • Memory Usage 2,374KB
  • 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
  • (2)bbcode_code
  • (2)bbcode_php
  • (1)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
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (2)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
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • 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