Thread: Miscellaneous Hacks - New posts and reputation comments.
View Single Post
  #147  
Old 08-13-2007, 01:49 AM
aranthorn's Avatar
aranthorn aranthorn is offline
 
Join Date: Jun 2004
Location: Chicago
Posts: 137
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Everyone keeps asking if they can exclude forums, well, that's a different table in vBulletin. What I did is remove a user. I my case this is an RSS bot. So here's what I did.
Original New Posts and Reputation (1) Plugin:
Code:
$repcount = array();
$postcount = array();
$show['pcount'] = $vbulletin->options['npr1'];
$show['rcount'] = $vbulletin->options['npr2'];

if ($vbulletin->userinfo['userid'])
{
	if ($show['pcount'])
	{
		$postcount = $vbulletin->db->query_first_slave("
			SELECT COUNT(dateline) AS pcount 
			FROM ".TABLE_PREFIX."post 
			WHERE dateline > {$vbulletin->userinfo[lastvisit]}
		");
	}
	if ($show['rcount']) 
	{ 
		if ($vbulletin->userinfo['showreputation'])
		{
			$repcount = $vbulletin->db->query_first_slave("
				SELECT COUNT(dateline) AS rcount 
				FROM ".TABLE_PREFIX."reputation 
				WHERE userid = {$vbulletin->userinfo[userid]} 
				AND dateline > {$vbulletin->userinfo[lastrepcheck]}
			");
		}
	}

	if ($postcount['pcount'] == 0)
	{
		$vbulletin->userinfo['pcount'] = $vbphrase['npr_no_posts']; 
	}
	else
	{
		if ($postcount['pcount'] == 1)
		{
			$vbulletin->userinfo['pcount'] = construct_phrase($vbphrase['npr_posts'],$postcount['pcount'],$vbphrase['npr_single_post']); 
		}
		else
		{
			$vbulletin->userinfo['pcount'] = construct_phrase($vbphrase['npr_posts'],$postcount['pcount'],$vbphrase['npr_plural_post']);  
		}		
	}		

	if ($repcount['rcount'] == 0)
	{
		$vbulletin->userinfo['rcount'] = $vbphrase['npr_no_reputation']; 
	}
	else
	{
		if ($repcount['rcount'] == 1)
		{
			$vbulletin->userinfo['rcount'] = construct_phrase($vbphrase['npr_reputation'],$repcount['rcount'],$vbphrase['npr_single_comment']); 
		}
		else
		{
			$vbulletin->userinfo['rcount'] = construct_phrase($vbphrase['npr_reputation'],$repcount['rcount'],$vbphrase['npr_plural_comment']);  
		}		
	}		
}
Have a look at this bit:
Code:
	if ($show['pcount'])
	{
		$postcount = $vbulletin->db->query_first_slave("
			SELECT COUNT(dateline) AS pcount 
			FROM ".TABLE_PREFIX."post 
			WHERE dateline > {$vbulletin->userinfo[lastvisit]}
		");
	}
This is where you can manually tweak the query.
Code:
	if ($show['pcount'])
	{
		$postcount = $vbulletin->db->query_first_slave("
			SELECT COUNT(dateline) AS pcount 
			FROM ".TABLE_PREFIX."post 
			WHERE dateline > {$vbulletin->userinfo[lastvisit]}
			AND userid != 13476
		");
	}
I added the bold text. The userid is my RSS poster bot userid. You can exclude any of the following by changing my "userid" to one on the list below and my "13476" to whatever floats your boat.

I don't recommend anyone do this unless you know what your doing!

I'm only showing you the query used and possibilities to tweak it and the only reason I'm doing that is because Paul M has stated he's not adding any features to this kick ass mod.

Here are the fields than can be played with:
postid
threadid
parentid
username
userid
title
dateline
pagetext
allowsmilie
showsignature
ipaddress
iconid
visible
attach
infraction
reportthreadid


Paul M ~ if you don't like what I've posted here, I totally understand and will delete the post. Just let me know.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01208 seconds
  • Memory Usage 1,780KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_code
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • 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
  • showpost_complete