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

 
 
Thread Tools
AJAX Who's Online Details »»
AJAX Who's Online
Version: 1.00, by Red Blaze Red Blaze is offline
Developer Last Online: Mar 2016 Show Printable Version Email this Page

Version: 3.5.3 Rating:
Released: 01-12-2006 Last Update: Never Installs: 31
Template Edits
Code Changes Is in Beta Stage  
No support by the author.

First off, this is my first modification. It's tiny, it's obvious, but I'm proud of it. I have Zero Tolerance to thank, he did give me some hints and tips.

Description:
This only refreshes the names of the users in the index page of the forums. Not the "currently online" number of users. It could say currently 4 users online, and there's a huge list of usernames.
I don't really see a need of a picture since there's no visual change. It only calls the names of the users currently online and removes them if they're offline without the need of refreshing the index page of the forums.

Edits:
1 Template to edit (FORUMHOME)
1 File to edit (index.php)

First the File Edit:
Open your index.php file in your forum directory.
Find:
Code:
// ### ALL DONE! SPIT OUT THE HTML AND LET'S GET OUTTA HERE... ###
Above add:
Code:
if ($_GET['do'] == 'online')
{
	echo $activeusers;
	exit;
}
Save, close, then upload index.php file to your forum directory.

Next, open your FORUMHOME template.
Find:
Code:
			<div class="smallfont">
				<div style="white-space: nowrap"><phrase 1="$recordusers" 2="$recorddate" 3="$recordtime">$vbphrase[most_users_ever_online_was_x_y_at_z]</phrase>
Above that, add:
Code:
<script type='text/javascript'>
<!--
function requestWhoOnline()
{
	doReqOnline = new vB_AJAX_Handler(true)
	doReqOnline.onreadystatechange(ReqOnlineDone)
	doReqOnline.send('index.php?do=online')
}
function ReqOnlineDone()
{
	if (doReqOnline.handler.readyState == 4 && doReqOnline.handler.status == 200)
	{
		fetch_object('whoisonline').innerHTML = doReqOnline.handler.responseText
		setTimeout("requestWhoOnline()", 60000)
	}
}
setTimeout("requestWhoOnline()", 20000)
-->
</script>
Now Find:
Code:
<div>$activeusers</div>
Replace with:
Code:
<div id="whoisonline">$activeusers</div>
====================

Since this is my first mod, I'd back up the files. Forgive me if this hack has already been done. I made a strict search and found no such thing. I decided to try to do it, and voila! Go me.

Show Your Support

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

Comments
  #22  
Old 01-13-2006, 09:56 PM
IrPr IrPr is offline
 
Join Date: Mar 2005
Posts: 351
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

it seems this plugin runs AJAX Script once per 20 seconds
this wont make CPU to the roof
Reply With Quote
  #23  
Old 01-13-2006, 09:56 PM
99SIVTEC 99SIVTEC is offline
 
Join Date: Nov 2001
Posts: 281
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Depends on the size of the forum.

I'm not trying to come down on the guy. It's a great start to hacking and we should all thank him for taking the time to release it. I just want to warn users of large forums that AJAX hacks such as this probably shouldn't be used. That is all.

Michelle, i'm unsure what the first part of your comment means. If you are questioning me as a programmer, then by all means do so, but you don't know me or anything I have created. I'm simply offering advice here.
Reply With Quote
  #24  
Old 01-13-2006, 09:57 PM
Red Blaze's Avatar
Red Blaze Red Blaze is offline
 
Join Date: Jan 2003
Location: Texas
Posts: 493
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It's actually every 60 seconds. It can be changed to a higher number if you'd like.
Reply With Quote
  #25  
Old 01-13-2006, 09:58 PM
99SIVTEC 99SIVTEC is offline
 
Join Date: Nov 2001
Posts: 281
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

That will surely help matters .
Reply With Quote
  #26  
Old 01-13-2006, 09:59 PM
IrPr IrPr is offline
 
Join Date: Mar 2005
Posts: 351
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sonikku
It's actually every 60 seconds. It can be changed to a higher number if you'd like.
sure?
Code:
setTimeout("requestWhoOnline()", 20000)
Reply With Quote
  #27  
Old 01-13-2006, 10:00 PM
Lea Verou Lea Verou is offline
 
Join Date: Jul 2005
Location: Greece
Posts: 1,856
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I wasn't talking about 99SIVTEC. I was talking about the others who said nothing more about the server load and kept moaning. And what bugs me the most is that they have never released anything although they seem to know a bit of coding. I've said in other thread how this kind of .orger annoys me a lot. Just getting with no giving back although they can. They just keep it to themselves to make their forum "unique". And now they are discouraging people who aren't that selfish??? Gosh!

Sonikku, if your first hack is like that you are going to be a brilliant coder.
Reply With Quote
  #28  
Old 01-13-2006, 10:02 PM
Lea Verou Lea Verou is offline
 
Join Date: Jul 2005
Location: Greece
Posts: 1,856
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

99SIVTEC, if you didn't understand what I mean, the better a programmer you are the worse it is that you haven't released anything. It just seems selfish imho...
Reply With Quote
  #29  
Old 01-13-2006, 10:07 PM
Red Blaze's Avatar
Red Blaze Red Blaze is offline
 
Join Date: Jan 2003
Location: Texas
Posts: 493
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Code:
		fetch_object('whoisonline').innerHTML = doReqOnline.handler.responseText
		setTimeout("requestWhoOnline()", 60000)
I'm quite sure, yes.

@Michelle: You really think so? ^_^;;
Reply With Quote
  #30  
Old 01-13-2006, 10:10 PM
IrPr IrPr is offline
 
Join Date: Mar 2005
Posts: 351
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sonikku
Code:
		fetch_object('whoisonline').innerHTML = doReqOnline.handler.responseText
		setTimeout("requestWhoOnline()", 60000)
I'm quite sure, yes.

@Michelle: You really think so? ^_^;;
ok Sonikku
sorry im newbie in coding
Reply With Quote
  #31  
Old 01-13-2006, 10:13 PM
Lea Verou Lea Verou is offline
 
Join Date: Jul 2005
Location: Greece
Posts: 1,856
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sonikku
Code:
		fetch_object('whoisonline').innerHTML = doReqOnline.handler.responseText
		setTimeout("requestWhoOnline()", 60000)
I'm quite sure, yes.

@Michelle: You really think so? ^_^;;
You are surely going to be a LOT better than me
Look at my first hack! Only one install and that is mine
Reply With Quote
 


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 05:22 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.10466 seconds
  • Memory Usage 2,309KB
  • Queries Executed 25 (?)
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
  • (10)bbcode_code
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (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_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete