Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.0 > vBulletin 3.0 Full Releases
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vB3 Forumhome Stats Cache Serialize hack v2.2 Details »»
vB3 Forumhome Stats Cache Serialize hack v2.2
Version: 1.00, by Boofo Boofo is offline
Developer Last Online: Jun 2012 Show Printable Version Email this Page

Version: 3.0.0 Rating:
Released: 02-10-2004 Last Update: Never Installs: 108
 
No support by the author.

vB3 Forumhome Stats Cache Serialize hack
Version 2.2
(By Boofo)

What does this hack do?
This hack will add some forum statistics to your forumhome that will be cached (to reduce the query load) for a certain amount of time that can be set to whatever you want. This covers most of the stats any forum Admin would use on his site.

Note: This is the setting for the time interval (in minutes) that you want the cache to be updated on. The default value is 10 minutes. The following code is in the index.php part of this hack.

$updatetime = 10;

Once you install the Admin CP setting (at the end of this file), you will be able to update this from the Admin CP vBulletin Options settings.

Credits:
I want to thank Tigga for the original Forumhome Statistics Cache hack for vB2, partly on what this hack is based. I also want to thank EvilLS1 for his time and patience in helping put this hack together. Another thank you goes out to Mike Gaidin for testing this thoroughly while I was putting together this install file. And, finally, thank you goes out to NTLDR, for helping me track down a very stupid mistake on my part which I had overlooked.

Version 2.0 credits go out to g-force2k2 for getting me started on the datastore version of this hack and guiding me through some of the rough parts in the beginning. And also to KirbyDE for answering all of my dummy questions while writing this version and verifying the code when I figured out all of my mistakes. This is my first attempt at using the datastore function but it seems to work better and be easier to code than the older way of doing things.

Version Information:
Version 1.0
--Initial release
Version 2.0 --Completely rewritten using the datastore function for vB3. It now uses "serialize" to store the data and "unserialize" to retrieve the data. There is also now 1 less query when reading from the cache.
Version 2.1 --Combined the "new threads since last visit" and "new posts since last visit" queries into 1 query, thus eliminating another query on cache hits. Thanks goes out to g_force2k2 for this one. Also added Admin CP setting code so you can change the time interval between cache updates via the Forum Display Option setting in the vBulletin Option in the Admin CP. That code to add is at the end of this file.
Version 2.2 --Added "Top Reputation" statistic (requested by rinkrat ) and totally re-did the template. It looks cleaner now.

New Installation:
Do all of the steps in this file.

To Update Version 1.0 to Version 2.0:
To update this hack you will need to do everything in this file over again except the second query (Query #2). After you have this hack up and running again and you have made sure it is running to your satisfaction, you can drop the statscache table (from version one of this hack) completely. It is no longer needed.

To Update Version 2.0 to Version 2.1:
You will need to re-add the code for the index.php and go to the end of this file and add the setting for the Admin CP.

To Update Version 2.1 to Version 2.2:
You will need to re-add the code for the index.php and replace the code for the forumhome template.

Installation overview:
Queries to run:
(2)
Files to edit: (2)
--index.php
--member.php
Templates to edit: (1)
--forumhome
Settings to add: (1)
--forumhomecachetime

vB3 Arcade hack stats addon:
https://vborg.vbsupport.ru/showpost....&postcount=262

The first attachment shows the Guest loggedin and the second attachment show the Registered Member and above loggedin.

Show Your Support

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

Comments
  #347  
Old 05-06-2004, 07:39 AM
Astovidatu Astovidatu is offline
 
Join Date: May 2004
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Pseudomizer
Perhaps you missed that part here

Just an idea.

Cheers,
Yep indeed, thanks. Dut now it looks like this:
Top Poster: Astovidatu (756 Posts = 0,14%)

Thats not possible either by a sum of 3000 Posts total.
Reply With Quote
  #348  
Old 05-06-2004, 07:49 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Astovidatu
Thanks, but now it looks like this:
Top Poster: Astovidatu (756 Posts = 142.93)
Top Thread Starter: Astovidatu (121 Threads = 23)

The same just without percentage sign.

My code:
Code:
	$statscache['newthreads'] = intval ($newestthreads[count]) ;
	$statscache['newposts'] = intval ($newestposts[count]);
	$statscache['newusers'] = intval ($newestusers[count]);
	$statscache['getthreadviews'] = intval ($getthreadviews[tviews]);
	$statscache['topposter'] = $topposter[username];
	$statscache['topposterid'] = intval ($topposter[userid]);
	$statscache['toppostercount'] = intval ($topposter[posts]);
	if($statscache['topposterpercent'] > 100)
{
$statscache['topposterpercent'] = vb_number_format(($topposter[posts] / ($totalthreads + $totalposts)) * 100 / 1000, 2 ) . '%';
}
else
{
$statscache['topposterpercent'] = vb_number_format(($topposter[posts] / ($totalthreads + $totalposts)) * 100, 2) . '%';
}
	$statscache['topstarter'] = $topstarter[postusername];
	$statscache['topstarterid'] = intval ($topstarter[postuserid]);
	$statscache['topstartercount'] = intval ($topstarter[count]);
if($statscache['topthreadspercent'] > 100)
{
$statscache['topthreadspercent'] = vb_number_format(($topstarter[count] / $totalthreads) * 100 / 1000, 2 ) . '%';
}
else
{
$statscache['topthreadspercent'] = vb_number_format(($topstarter[count] / $totalthreads) * 100, 2) . '%';
} 
	$statscache['getfileviewsun'] = $getfileviews[username];
	$statscache['getfileviewsid'] = intval ($getfileviews[userid]);
	$statscache['getfileviews'] = intval ($getfileviews[profileviews]);
	$statscache['ref2'] = $ref[username];
	$statscache['topreferrerid'] = intval ($ref[userid]);
	$statscache['ref'] = intval ($ref[referrals]);
	$statscache['toprepun'] = $toprep[username];
	$statscache['toprepid'] = intval ($toprep[userid]);
	$statscache['topreprep'] = intval ($toprep[reputation]);
	$statscache['lastupdate'] = intval (TIMENOW);
and I deleted the 2 if - else statements you told.
I have a fix for all of the percentages that I am working on getting into the install file now. You might want to click the install button so when update the hack in the next few days, that you will be notified.
Reply With Quote
  #349  
Old 05-08-2004, 09:42 PM
ImportPassion ImportPassion is offline
 
Join Date: Mar 2002
Location: Gilbert, AZ
Posts: 605
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Little problem here

Most Viewed Profile: 007 (0 Views)

Oh, just noticed this too...
Last updated at 07:00 PM - December 31st, 1969

After first update.

Shouldn't this default to N/A or something?
Reply With Quote
  #350  
Old 05-09-2004, 07:39 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by 7thgenCivic.Com
Little problem here

Most Viewed Profile: 007 (0 Views)

Oh, just noticed this too...
Last updated at 07:00 PM - December 31st, 1969

After first update.

Shouldn't this default to N/A or something?
You need to set the updatetime to 0 and run it a couple of times when you first install it. The profileviews will only update when you view someone's profile and NOT your own. I don't have it counting views when the person is looking at their own profile. Look at someone else's profile a couple of times and it will show up.
Reply With Quote
  #351  
Old 05-09-2004, 10:58 AM
ImportPassion ImportPassion is offline
 
Join Date: Mar 2002
Location: Gilbert, AZ
Posts: 605
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

ok, i will check it out. but that profile is not mine.
Reply With Quote
  #352  
Old 05-09-2004, 11:08 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by 7thgenCivic.Com
ok, i will check it out. but that profile is not mine.
Did you run the query and add the code to the member.php?
Reply With Quote
  #353  
Old 05-09-2004, 03:09 PM
Chriss74 Chriss74 is offline
 
Join Date: Apr 2004
Posts: 35
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for this hack!

I'd like to have this statistics on a separate site. This statistics-site should include further statistics:
- recent attachments
- Number of Active Users Today
- 5 most read threads
- 5 threads with most answers
- last 5 threads
- last 5 new members
- average data: posts per member, posts per forum, answers per thread, new posts per day, new members per day, xy % of all members posted at least 1 posting

I began to write something for my board (have a look at the attachment). But it doesn't use the cache. Therefore it would be nice, if somebody could make one hack with all features.

Greetings,
Chriss
Reply With Quote
  #354  
Old 05-10-2004, 12:54 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Chriss74
Thanks for this hack!

I'd like to have this statistics on a separate site. This statistics-site should include further statistics:
- recent attachments
- Number of Active Users Today
- 5 most read threads
- 5 threads with most answers
- last 5 threads
- last 5 new members
- average data: posts per member, posts per forum, answers per thread, new posts per day, new members per day, xy % of all members posted at least 1 posting

I began to write something for my board (have a look at the attachment). But it doesn't use the cache. Therefore it would be nice, if somebody could make one hack with all features.

Greetings,
Chriss
Don't forget to click the install button.
Reply With Quote
  #355  
Old 05-14-2004, 09:26 AM
Astovidatu Astovidatu is offline
 
Join Date: May 2004
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nice Ideas Chriss74...
But what about the fix for the Percantage stat? Shouldnt that have priority to more Stats.
Reply With Quote
  #356  
Old 05-14-2004, 09:36 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Astovidatu
Nice Ideas Chriss74...
But what about the fix for the Percantage stat? Shouldnt that have priority to more Stats.
The percentages are fixed. I am redoing (completely re-writing) the install file now. I will notify those that have clicked the install button when I upload the new file. I need to test it first to make sure I have left nothing out, though. If anyone is interested in helping test this, contact me PM.
Reply With Quote
  #357  
Old 05-14-2004, 03:50 PM
paratek's Avatar
paratek paratek is offline
 
Join Date: Feb 2003
Location: New York
Posts: 78
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How do you add the Most Active User today?....i don't see it refered to in the code
Reply With Quote
  #358  
Old 05-14-2004, 03:56 PM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by paratek
How do you add the Most Active User today?....i don't see it refered to in the code
That will be available in the coming update. That is from a hack by Kentaurus (who authoriuzed me to use it in the stats hack). If you're interested, you can help me test the update to make sure I didn't forget anything in it.
Reply With Quote
  #359  
Old 05-14-2004, 03:57 PM
paratek's Avatar
paratek paratek is offline
 
Join Date: Feb 2003
Location: New York
Posts: 78
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Absolutely Boofo, let me know
Reply With Quote
  #360  
Old 05-14-2004, 04:03 PM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by paratek
Absolutely Boofo, let me know
Head to the site and pm me there.
Reply With Quote
  #361  
Old 05-15-2004, 05:43 PM
Chriss74 Chriss74 is offline
 
Join Date: Apr 2004
Posts: 35
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Boofo
That will be available in the coming update. That is from a hack by Kentaurus (who authoriuzed me to use it in the stats hack). If you're interested, you can help me test the update to make sure I didn't forget anything in it.
That's right. I used the hack from Kentaraus.

@Boofo: Will your new/enhanced version of your Stats hack be installed on a separate site or again at the index-page? I would prefer a separate page.

Greetings,
Chriss
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 05:26 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.05832 seconds
  • Memory Usage 2,380KB
  • Queries Executed 30 (?)
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
  • (9)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
  • (1)pagenav_pagelinkrel
  • (16)post_thanks_box
  • (16)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (16)post_thanks_postbit_info
  • (15)postbit
  • (16)postbit_onlinestatus
  • (16)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