vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.5 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=113)
-   -   vBISpy - AJAX real-time feed of new posts/threads (for vB3.5) (https://vborg.vbsupport.ru/showthread.php?t=126027)

MPDev 09-06-2006 10:00 PM

vBISpy - AJAX real-time feed of new posts/threads (for vB3.5)
 
After seeing the http://www.digg.com/spy application; I wondered if this could be done for vBulletin as well. I came across this webpage which had a "how to" on how they built a similiar application to do the same thing. Taking a page from their book (i.e. the code), I modified it for use with vBulletin.

During development, I also came across this post here on vBulletin.Org where the very subject had already been discussed.

So I put this together; a simple ZIP file with a single PHP script, three javascript files and 4 images.

Installation

. UNZIP the file into your forums directory
. That's it!

Virtually all the code to customize the page is in the vaispy.php script; there are no plugins, no templates and no phrases. You do not need to do anything further; this should work right out of the box.

In your browser, open the URL:

http://www.yourforum.com/forum/vaispy.php

You can see examples of this at:

http://www.viperalley.com/forum/vaispy.php
http://www.extremefitness.com/forum/vaispy.php

Note: I claim no ownership of this code except for the file vaispy.php - the rest of the files were using 'freely distributable' sources. As such, you may use these files as you wish, but please do not remove the copyrights.

This version is for vBulletin 3.5 users only, for vBulletin 3.6 you will need to download the 3.6 version located here.

JOIN THE vBIspy Network!
Once you have this mod installed, you can join the vBIspy network to have your threads appear on this site; the vBIspy Network is a great way for people to see what's going on in various vBulletin communities and for forum owners to promote their sites and generate new traffic.

Optional add-ons

Who's Online mod for this: https://vborg.vbsupport.ru/showthread.php?t=126209

vBAdvanced Module: https://vborg.vbsupport.ru/showthread.php?t=126421

UPDATES
1.0.2
Added buro9's code from here

1.0.3 - 9.9.06
Modified some JavaScript in va_spy.js to remove split strings

1.0.4 - 9.10.06
Added date cuffoff code from here and changed init() to spyinit() - changed vaispy.php and va_spy.js files.

1.0.5 - 9.11.06
I've changed the query to grab the preview text from the last message; the downside to this change is that people with very large "post" tables will want to add an index to their table to significantly improve the performance on this script.

Code:

ALTER TABLE `vb_post` ADD INDEX ( `dateline` )
1.0.6 - 9.12.06
va_spy.js: Added a forum url variable to allow for integration with portals or other products outside the forum directory
va_spy.js: Added xmldelay variable at top of script for easier configuration or repolling
Updated files: vaispy.php, vb_spy.js

1.0.7 - 9.13.06
vaispy.php - changed code for checking for forum permissions to include password protected forums, added javascript tag for script code
va_spy.js - changed link to use goto=lastpost to fix links

1.0.8 - 9.16.06
vaispy.php
va_spy.js
va_effects.js
- modified to allow for proper display in Opera browsers and moved more html into vaispy.php to allow for stylevars, trimmed va_effects.js to remove unused code (ForumDog's suggestions, except not using templates yet), changed way threads are parsed (removes html as well)

1.0.9 - 9.17.06
va_prototype.js - removed 20kb of unused code

MPDev 09-07-2006 12:43 PM

Reserved.

kompakt 09-07-2006 01:55 PM

thanks for the 3.5 version of the mod; works great...

edit.. both 3.6 and 3.5 versions do not work on opera browsers (everything is displayed inline under the event column) any idea how to fix it?

The Chief 09-07-2006 02:21 PM

Amazing, will install on myetalk.com probably sometime this weekend, good job!! :)

Strike3ForumsMH 09-07-2006 03:15 PM

Huzzah. I was very upset to see that this wasn't functional with 3.5x, so much thanks for getting a version ready for everyong else so fast MP.

Great mod.

MPDev 09-07-2006 04:07 PM

Made a small update to vbispy.php and vb_spy.js to provide same XML data as the 3.6 version; you should update those two files if you downloaded before now.

Gizmo5h1t3 09-07-2006 04:54 PM

just curious....could it be done so you have the little right facing arrow that takes you to the last post in that thread on the page somewhere??

saves clicking the post shown in the vaispy.php page, and having to trawl thru all the posts to get to the end of the thread??

Holidazed 09-07-2006 05:00 PM

Quote:

Originally Posted by Gizmo5h1t3
just curious....could it be done so you have the little right facing arrow that takes you to the last post in that thread on the page somewhere??

saves clicking the post shown in the vaispy.php page, and having to trawl thru all the posts to get to the end of the thread??

That would be slick. Then I could replace my "New Posts" menu option with this.

MPDev 09-07-2006 05:25 PM

When I click on the link, it takes me right to the thread being shown.

Titania 09-07-2006 06:08 PM

Quote:

Originally Posted by MPDev
When I click on the link, it takes me right to the thread being shown.

That is what it does for me too but -
Quote:

Originally Posted by Gizmo5h1t3
just curious....could it be done so you have the little right facing arrow that takes you to the last post in that thread on the page somewhere??

saves clicking the post shown in the vaispy.php page, and having to trawl thru all the posts to get to the end of the thread??

I agree with this post. Rather than just go to the thread, it would be much better if it went to the last post in that thread.

Great mod though :D

MPDev 09-07-2006 06:26 PM

What I meant to say was it took me to the post being shown; not the top of the thread. If I click on a post, I go right to the post.

Titania 09-07-2006 06:44 PM

Quote:

Originally Posted by MPDev
What I meant to say was it took me to the post being shown; not the top of the thread. If I click on a post, I go right to the post.

Hmm... doesn't do that on mine. I get sent to the FIRST post on each topic. I am using Firefox on WinXP Pro. You can try it HERE

Titania 09-07-2006 06:47 PM

Just tried it with IE and it still goes to the first post.

MPDev 09-07-2006 07:07 PM

I just tried it on your site using FF and it took me to the second post. Check the link - it has a #X in it which is used by vB3.5 to take a person to a specific post; we could possibly change the link to use "goto=lastpost" instead of the #X in vb_spy.js

camoman 09-07-2006 07:24 PM

Looks really good.. What I would lie to see is it pull the latest X threadsand display them imediatly instead of one at a time .. then start polling for new threads so your not waiting for them to load if you click the back button after going to a post or revisiting the page.
So basically a module like I have in the middle on my front page HERE but it auto updates with AJAX.

RFViet 09-07-2006 10:09 PM

Is there anyway to display it on the main forum ?? just want to replace the TopXStat !!!
And it doesn't work with bbcode !!!

MPDev 09-07-2006 11:09 PM

Right, it does not display bbcode and I haven't tried to integrate it anywhere else; but I am sure it could be done.

RFViet 09-08-2006 12:47 AM

Quote:

Originally Posted by MPDev
Right, it does not display bbcode and I haven't tried to integrate it anywhere else; but I am sure it could be done.

Can you make it display within a box, anh about first 5 or 10 new posts , just display the thread name (so you won't worry about bbcode) . So, member can see live new posts without refresh the page . !!

scottct1 09-08-2006 01:13 AM

My users are reporting the following error...

Works fine in Firefox, but folks having trouble with IE.

Lonny 09-08-2006 11:44 AM

what about server load?

MPDev 09-08-2006 12:36 PM

As with any "new thing" you add, there can be an impact. I haven't had any problems on my site; but I would expect with a large number of users you'd see a higher load because it would be like all of those users hitting the refresh button every 5 seconds or so. That's why I would suggest moderating the delay to suit your needs on your site (see the 3.6 thread for that info).

MPDev 09-08-2006 12:55 PM

Quote:

Originally Posted by RFViet
Can you make it display within a box, anh about first 5 or 10 new posts , just display the thread name (so you won't worry about bbcode) . So, member can see live new posts without refresh the page . !!

At this time I have no plans to work on derivatives; sorry.

lexx27 09-08-2006 03:31 PM

Great Hack!!!! Thank you

Do you have in mind to make something similar with feeds?

lexx27 09-08-2006 04:11 PM

I have 2 problems.

1. Doesnt work in ie
2. Doesnt refresh in firefox,flock and opera

I didnt change a thing from the code(only the title) and all the files are in the right place.

here is the link http://www.webz.gr/forum/vaispy.php

MPDev 09-08-2006 04:16 PM

lexx27 - your link is working just fine for me.

Gizmo5h1t3 09-08-2006 04:17 PM

Quote:

Originally Posted by MPDev
I just tried it on your site using FF and it took me to the second post. Check the link - it has a #X in it which is used by vB3.5 to take a person to a specific post; we could possibly change the link to use "goto=lastpost" instead of the #X in vb_spy.js


tried that mate, and it stil goes to the first post....

weird...and a shame, cracking hack this, but would be complete with the ability to get to the final post in a thread with just one click.

MPDev 09-08-2006 05:59 PM

Try grabbing the current files; I think I have it resolved (hard to keep track of these two versions and the changes, lol).

Intex 09-08-2006 06:56 PM

Great addition. Would be nice to have the same ajax functionality with who's online.

RFViet 09-08-2006 09:19 PM

Is there anyway to limit the characters to display ??

username12 09-08-2006 09:21 PM

Quote:

Originally Posted by Lonny
what about server load?

Way too much for me, but I may try editing the delay as suggested.

MPDev 09-08-2006 09:48 PM

Quote:

Originally Posted by RFViet
Is there anyway to limit the characters to display ??

You can change line 69 in vaispy.php:

Code:

            $thread['preview'] = htmlspecialchars_uni(fetch_trimmed_title(strip_bbcode($thread['preview'], true, true), 200));
Change the 200 to whatever.

(Dont' forget to click INSTALL!)

RFViet 09-08-2006 09:52 PM

thanks, then how to change the time to refresh the page ??

MPDev 09-08-2006 10:13 PM

In va_spy.js, find 3 times:

Code:

setTimeout("getXML()", 5000);
Change the number to whatever (1000 = 1 second).

Murty 09-08-2006 11:43 PM

Can i ask, what exactly does this modification do? I have never heard of 'spy'. perhaps add something to your mod description.
thanks

MPDev 09-08-2006 11:45 PM

Click the example links in the mod description and you'll see exactly what it does - provides a continously updating live feed of posts made to your forum without having to use REFRESH.

Murty 09-08-2006 11:49 PM

ohh ok cool

scottct1 09-08-2006 11:58 PM

Still not working in IE. It loads the first 10 messages but does not continue to montor and gives the error shown above in the picture I uploaded earlier.

MPDev 09-09-2006 12:07 AM

Scott, your issue isn't related to the feed itself (it works on your site); it appears to be something about your advertising sidebar items which are causing the problem.

I'm guessing its something about your header or footer that is causing the problem.

scottct1 09-09-2006 12:14 AM

Thanks I found out the issue was the footer, it had another Javascript in there and I just removed it.

No more error, although on IE7 I get the feed for a few minutes and then it just stops. Strange, runs fine in Firefox

RFViet 09-09-2006 12:55 AM

Quote:

Originally Posted by scottct1
Still not working in IE. It loads the first 10 messages but does not continue to montor and gives the error shown above in the picture I uploaded earlier.

Hmm I have the same problem . Yes I have java script at footer but I don't want to remove it.


All times are GMT. The time now is 06:38 AM.

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.01403 seconds
  • Memory Usage 1,828KB
  • 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
  • (3)bbcode_code_printable
  • (10)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)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