PDA

View Full Version : [RELEASE v2] 0-Posters, active posters, inactive posters display hack.


DEMOLiTiON
08 Jul 2001, 21:19
Hello,
This hack will display members that have 0 posts, or are inactive, or are active in the memberlist.
(members that are longer than one month registered, and haven't been posted for a month will be displayed)

Tested on php 4.0.4pl1 and vB 2.0.1
I am still trying to make a hack to display the top 10 thread starters, if somebody can make this, please reply.

01. memberlist.php

Find, if ($what=="datejoined") {
$orderby="joindate";
$direction="DESC";
}Under it add,// memberlist hack v1.0 by demolition, aka addict
if ($what=="0-posters") {
$condition.=" AND posts<'1'";
$orderby="";
$direction="";
}
if ($what=="active") {
$condition.=" AND posts>'0'";
$orderby="posts";
$direction="DESC";
}
if ($what=="inactive") {
$lastmonth = mktime (0,0,0,date("m")-1,date("d"),date("Y"));
$lastmonth2 = date("Y-m-d", $lastmonth);
$condition.=" AND joindate<UNIX_TIMESTAMP('".addslashes(strtolower($lastmonth2))."') AND lastpost<UNIX_TIMESTAMP('".addslashes(strtolower($lastmonth2))."')";
$orderby="posts";
$direction="DESC";
}
// end memberlist hack v1.0 by demolition, aka addict02. open index.php

Find,$numbermembers=$numbersmembers['users'];Under it add,// memberlist hack v1.0 by demolition, aka addict
$snonposters=$DB_site->query_first('SELECT COUNT(*) AS users,MAX(userid) AS max FROM user WHERE posts=0');
$nonposters=$snonposters['users'];
$activemembers=$numbermembers-$nonposters;

$lastmonth = mktime (0,0,0,date("m")-1,date("d"),date("Y"));
$lastmonth2 = date("Y-m-d", $lastmonth);
$sinactive=$DB_site->query_first("SELECT COUNT(*) AS users,MAX(userid) AS max FROM user WHERE joindate<UNIX_TIMESTAMP('".addslashes(strtolower($lastmonth2))."') AND lastpost<UNIX_TIMESTAMP('".addslashes(strtolower($lastmonth2))."')");
$inactive=$sinactive['users'];
// end memberlist hack v1.0 by demolition, aka addict03. open your forumhome template, and place this code somewhere.<A HREF="memberlist.php?s=$session[sessionhash]&what=0-posters">$nonposters 0-posters</A> |
<A HREF="memberlist.php?s=$session[sessionhash]&what=active">$activemembers active members</A> |
<A HREF="memberlist.php?s=$session[sessionhash]&what=inactive">$inactive non-active members</A>04. done

AS_Eagle_1
08 Jul 2001, 23:29
Nice Hack,
If u wanna see it visit our Board (http://www.as2001.f2s.com/board/index.php)
(its on f2s till our webserver is rdy for php4)
i've translate it in german but u can see it working.

but there ist a small error in your code:

<A HREF="memberlist.php?s=$session[sessionhash]&what=lamers">$nonposters 0-posters</A> |

it must be:

<A HREF="memberlist.php?s=$session[sessionhash]&what=0-posters">$nonposters 0-posters</A> |

sorry for my bad english

greets
AS_Eagle_1
(Sascha)

DEMOLiTiON
09 Jul 2001, 00:08
lol, forgot that sorry :D

btw, how did you do that clan listing in your memberlist?

AS_Eagle_1
09 Jul 2001, 00:37
this clan listing is verry simple.
i've greated a user profile field and make it as a necesarry field.
then i've added a new colume in the memberlist template and added in the memberlistbit
<td bgcolor="#DFDFDF" align="center"><normalfont>$userinfo[field5]</normalfont></td>
[field5] must be replace with the id of the userfield.

if u wanna show the content of this field in the posts under the usrs name like location read this thread:
http://www.vbulletin.com/forum/showthread.php?s=&threadid=10240&highlight=profile+field+%24userinfo

DEMOLiTiON
09 Jul 2001, 00:44
cool thnx :)

Kengan
20 Jul 2001, 03:40
COOL HACK !!

stefanh3
20 Jul 2001, 06:17
Maybe you'de like to combine it with my activity rate hack posted some time ago:
http://www.vbulletin.com/forum/showthread.php?threadid=19227

Ajnabi
20 Jul 2001, 06:59
this could be a nice hack to add to my board..

thx

ShadowTech
23 Jul 2001, 02:52
One small bug I noticed ... the Active users also counts the Non-Active in the total number.

I dunno if it is just me.. so someone else who installed this .. add up the 3 numbers (0-posters, Active + Non active) and see if it's the same as your total registered members.

I tried changing the

$activemembers=$numbermembers-$nonposters;

to

$activemembers=$numbermembers-$nonposters-$inactive;

or

$activemembers=$numbermembers-($nonposters+$inactive);


but it still didn't give me the right number for Active - inactive. All the original code is doing i removing the 0-posters from the total registered to get active.. so if a board has a lot of inactive members that have at least posted one.. you'll get some numbers that add up to a lot higher than total registered.

Again.. it's just a small bug.. but would be great to see a fix.

Sinclair
27 Jul 2001, 14:08
Ive modified this hack, now it shows users with one post.

01. memberlist.php

find


if ($what=="0-posters") {
$condition.=" AND posts<'1'";
$orderby="";
$direction="";
}


under it add


if ($what=="oneposters") {
$condition.=" AND posts<'2' AND posts>'0'";
$orderby="";
$direction="";
}


02. index.php

find


$snonposters=$DB_site->query_first('SELECT COUNT(*) AS users,MAX(userid) AS max FROM user WHERE posts=0');
$nonposters=$snonposters['users'];
$activemembers=$numbermembers-$nonposters;


under it add:


$soneposters=$DB_site->query_first('SELECT COUNT(*) AS users,MAX(userid) FROM user WHERE posts=1');
$oneposters=$soneposters['users'];


03. forumhome template

find:

<A HREF="memberlist.php?s=$session[sessionhash]&what=0-posters">$nonposters 0-posters</A> |
<A HREF="memberlist.php?s=$session[sessionhash]&what=active">$activemembers active members</A> |
<A HREF="memberlist.php?s=$session[sessionhash]&what=inactive">$inactive non-active members</A>


under it add:


<A HREF="memberlist.php?s=$session[sessionhash]&what=oneposters">$oneposters Users with one post</A>

Chen
06 Aug 2001, 11:15
Originally posted by ShadowTech
One small bug I noticed ... the Active users also counts the Non-Active in the total number.

I dunno if it is just me.. so someone else who installed this .. add up the 3 numbers (0-posters, Active + Non active) and see if it's the same as your total registered members.

I tried changing the

$activemembers=$numbermembers-$nonposters;

to

$activemembers=$numbermembers-$nonposters-$inactive;

or

$activemembers=$numbermembers-($nonposters+$inactive);


but it still didn't give me the right number for Active - inactive. All the original code is doing i removing the 0-posters from the total registered to get active.. so if a board has a lot of inactive members that have at least posted one.. you'll get some numbers that add up to a lot higher than total registered.

Again.. it's just a small bug.. but would be great to see a fix.
I'm having the same problem. :(

Clueless
18 Aug 2001, 22:50
How do you reset this hack for a new month ??

I mean i've just been setting the board up and installed this hack and it shows 9 of my members as 0-posters ??? which i need to reset it to so 0 0-posters ???????

mister
11 Oct 2001, 19:48
Originally posted by FireFly

I'm having the same problem. :(

Yea.
I'm having the problem with the active + inactive != total

mister
11 Oct 2001, 20:03
i changed the calculation to this:

$activemembers=$numbermembers-$inactive;

and it seems to work, that is, inactive+active=total

DarkManX_19
14 Oct 2001, 21:41
would it be possible to add the number of users that have been banned or restricted???

wolfe
22 Jul 2002, 23:18
erm well its not working right because some of the inactive members are in the active members screen aswell someone help :D