PDA

View Full Version : An alternative to banning: Miserable Users


Pages : 1 [2]

Zachery
01-09-2004, 05:22 AM
Anyone figured out a way to put it in the mod CP?
theyd need to be able to edit users

SloppyGoat
01-09-2004, 11:15 PM
I absolutely love this hack!!!! This has got to be the best damn hack I've ever seen!!! *Goes to click install button!* LOL

y2krazy
01-15-2004, 03:12 PM
I just installed the hack on 2.3.0, but when I go to edit a user, I don't see anything about making them "miserable". How would I go about making them a miserable user?

-y2k-

SloppyGoat
01-15-2004, 03:15 PM
There should be a yes/no checkbox in your admin CP, under the user's settings.

y2krazy
01-15-2004, 07:55 PM
There are no checkboxes in my entire Edit User page in the ACP. Not a single checkbox for anything. Anyone know why it wouldn't be showing up?

-y2k-

SloppyGoat
01-15-2004, 08:49 PM
There are no checkboxes in my entire Edit User page in the ACP. Not a single checkbox for anything. Anyone know why it wouldn't be showing up?
Do what? You're not even on the right page then! :rolleyes:

AdminCP > Users > Find > List all users (or specify search) > Edit

There should be all kinds of check boxes, groups and permissions info in there. If you're an admin, you really should know this.

Rob Weaver
01-15-2004, 08:52 PM
Sounds like a similar problem to mine. I can't see any place to make someone 'miserable'.

y2krazy
01-15-2004, 09:50 PM
Do what? You're not even on the right page then! :rolleyes:
That is the what I meant by "Edit User" page...

Edit User - y2krazy (userid: 1) <- the heading of the main table to edit the user. That is the location I was looking for this "checkbox", and it's still nowhere to be found... :(

I am guessing that it has something to do with the admin/user.php edits, maybe?

-y2k-

Boofo
01-15-2004, 09:52 PM
Then you might have missed a step. Re-check the code and see if it shows up in there. ;)

SloppyGoat
01-15-2004, 11:30 PM
Maybe I misunderstood. You said there were no checkboxes, right? None at all? Or did you mean only the miserable user box? If the miserable user box is missing, then you missed something. Go through every step again. I usually try it four times before I decide a hack just isn't working on my board. That way, I figure, there's no possible way I could've screwed up that many times. :nervous: :lick:

y2krazy
01-16-2004, 02:18 AM
Maybe I misunderstood. You said there were no checkboxes, right? None at all? Or did you mean only the miserable user box? If the miserable user box is missing, then you missed something.
I just went in and did all the edits twice and found no errors in them. I have attached a screen of my ACP - Edit User page to show you that no checkbox comes up where it should. Don't know what is going wrong... :(

-y2k-

Rob Weaver
01-16-2004, 02:37 AM
Mine is fixed. The programmers checked ... don't know what they did ... but the miserable user radio button is now right, just below number of posts.

SloppyGoat
01-16-2004, 03:47 AM
It has to be in the admin/user.php file (your sure you edited the one in your admin folder?) where you screwed up. Check that part of the instructions again very carefully. Pay particular attention to these:

Replace it with:
Add the following directly below it:
Add the following directly above it:

And if it still doesn't work, don't feel bad, because I can't get the new version of this hack to work right on my RC2 board. It works, but it seems to put me into miserable mode too, then lock me out of my own CP! :confused:

I'm sure you made a copy of the three files before you edited them, right?

cindyd
01-17-2004, 07:33 PM
Great hack! I'll enjoy watching a few of my miserable users.....bwahahahhaa

SloppyGoat
01-19-2004, 01:23 AM
IS it possible to make all "guests" miserable?

http://home.bham.rr.com/sloppygoat/laugh.gif

cindyd
01-24-2004, 04:51 PM
Hi: I tried to make this change, but I keep getting a parse error on line 460. Which is this:

$onlinestat = "";

Any ideas on how to fix this?
Thanks


Change this:

$onlinestat = "";
if(($post[miserable] == 1) || ($post[stunned] & 4)){
if(($bbuserinfo[usergroupid] == 5) or ($bbuserinfo[usergroupid] == 6) or ($bbuserinfo[usergroupid] == 7)) {
$onlinestat = "$onlinestat<br><font color=\"red\"><b>Miserable User</b></font>";
}
}


To This:

$onlinestat = "";
if(($post[miserable] == 1) || ($post[stunned] & 4)){
if($bbuserinfo[usergroupid] == 6) {
$onlinestat = "$onlinestat<br><font color=\"red\"><b>Miserable User</b></font>";
}
}


And it will be visible only to the admins. ;)

cindyd
01-24-2004, 11:27 PM
Would someone please show mercy on me. I have been trying to fix this hack (which I love BTW) so that only the Admins can see the miserable title.

Everytime I think I have found the problem it makes an error on some other line further up.

Thanks

EricGT
01-30-2004, 02:53 AM
I think this is a great idea, but wouldn't it be simpler to just create a new user group for these users, rather than adding a new db field and having to modify the db calls? Eric

Sweet Evil
02-29-2004, 03:06 PM
Ganna give this a go as someone pointed me to it to deal with a lame little one.. Seems like this is going to be fun! :) Thanks.

David Coutts
03-07-2004, 05:50 AM
What a bloody fantastic idea. It looks good, I'm sure my admins will use it a lot. :D

* David Coutts clicks install.

subu1
03-08-2004, 11:48 AM
Lol, cool hack!!
Install it later on... ;)
thanks man!!

Hi Kars, bist Du bitte so lieb und kannst mir den Hack nochmal auf deutsch erkl?ren, wei?t doch ich und mein Oxfort eng. *g*

chrisvonc
03-16-2004, 12:40 AM
This is sweet! Thank you!
I just installed it on my test forum. vB2.3.2 and worked like a charm. My test account I am trying this on right now, is being brutalized nicely. This is going to be great for trouble makers on my production forum!

*Clicked install*

Thank you again.

chrisvonc
03-16-2004, 12:45 AM
How can I dial this down a bit?

I kind of would like to know if this is possible as well. Just so they dont catch on too fast. :)

Thanks again,

Chris

TechGuy
03-17-2004, 02:55 PM
This is too great... I changed some of the numbers a little so that it's not so obvious that we're messing with the guy, and I set it up so that it effects his whole IP range, rather than just his username(s)...

To do that, I just copied the global part of the hack (between the if statements) into the checkipban() function in the functions.php file... quote out the eval for the normal error_ipban and we're all set. It's great, man. I laughed for hours.

To keep from making it too obvious, I changed the if glitch numbers down a bit. For example:

$glitch = rand(0,100);
if($glitch < 50) {
eval("standarderror(\"".gettemplate('error_toobusy')."\");");
exit;
}

Will give the error 50% of the time. As opposed to:

$glitch = rand(0,100);
if($glitch < 80) {
eval("standarderror(\"".gettemplate('error_toobusy')."\");");
exit;
}

Which would do it 80% of the time.

EMiNENCE
03-29-2004, 02:30 AM
That is the what I meant by "Edit User" page...

Edit User - y2krazy (userid: 1) <- the heading of the main table to edit the user. That is the location I was looking for this "checkbox", and it's still nowhere to be found... :(

I am guessing that it has something to do with the admin/user.php edits, maybe?

-y2k-

That's my problem too. I checked all hacked files twice, step by step, and everything seems to be ok. But there's still no radiobutton in the user's EDIT profile. No checkbox underneath 'Number of posts', so... I'm not able to set up anyone to be Miserable. Any ideas where's the bug hidden?

EMiNENCE
03-29-2004, 05:01 AM
I have finally found the bug!

Just look for inputcode("Number of Posts","posts",$user[posts]); twice in the source code of admin\user.php. There are two simillar sections that match to the description. The first is determined for the ADD USER section in CP, the 2nd is the right for EDIT User.

Just such a small mistake but every install faq should be better commented for this possibility next time.
;]

Thanx for this hack anyway! It really rocks!!

chrisvonc
03-29-2004, 11:04 AM
??
Maybe I dont get what you guys are saying but to me it looks like you guys were using too short of a search value. Its not a bug or mistake on the authors part if one doesnt fully read the directions or search for the full code they were told to be looking for.

When I searched my admin/user.php, I only found 1 section with block of code he tells you to look for that includes the line "makeinputcode("Number of Posts","posts",$user[posts]);" in it, and then I put the code under that, like the directions said to.

Now if you were doing your searches for just "$user[posts]", then you would have run into problems that you are describing as there are multiple entrys in the page of "$user[posts]", but again, thats not what the directions were telling you to look for.

Again, maybe I am on the wrong track here and dont understand what you were referancing and if I am, I apologize, but as to the directions, if an idiot like me can install it and have it going on the first try, the directions are pretty much right on.


I have finally found the bug!

Just look for inputcode("Number of Posts","posts",$user[posts]); twice in the source code of admin\user.php. There are two simillar sections that match to the description. The first is determined for the ADD USER section in CP, the 2nd is the right for EDIT User.

Just such a small mistake but every install faq should be better commented for this possibility next time.
;]

Thanx for this hack anyway! It really rocks!!

EMiNENCE
03-29-2004, 05:50 PM
??
When I searched my admin/user.php, I only found 1 section with block of code he tells you to look for that includes the line "makeinputcode("Number of Posts","posts",$user[posts]);" in it, and then I put the code under that, like the directions said to.

Now if you were doing your searches for just "$user[posts]", then you would have run into problems that you are describing as there are multiple entrys in the page of "$user[posts]", but again, thats not what the directions were telling you to look for.


It's possible you really have just only one section like that, but some people [inlcuding me] have two...;]

Look at the sample fragment of my admin/user.php [vB 2.2.7]:


// ###################### Start add #######################
if ($action=="add") {

echo "Add New User";

doformheader("user","insert");
maketableheader("User Profile");
makechoosercode("User Group","usergroupid","usergroup",2);
makeinputcode("User Name","ausername");
makeinputcode("Password","apassword");
makeinputcode("Email Address","email");
makeinputcode("User Title","usertitle");
makeyesnocode("Use Custom Title<br><font size='1'>(This forces the title that you put in the field above to be used)</font>","customtitle",0);
makestylecode("Style set","userstyleid",$user[styleid]);
makeinputcode("Home Page","homepage","http://www.");
makeinputcode("Birthday<br>(Format yyyy-mm-dd)","birthday");
maketextareacode("Signature","signature","",8,45);
makeinputcode("ICQ Number","icq");
makeinputcode("AIM Handle","aim");
makeinputcode("Yahoo Messenger Handle","yahoo");
makeyesnocode("COPPA user","coppauser",0);
makeinputcode("Parent Email Address","parentemail");
maketableheader("Options");
makeyesnocode("Receive mailings from admins","adminemail",1);
makeyesnocode("Show email address","showemail",1);
makeyesnocode("Invisible on 'Online users' list","invisible",0);
makeyesnocode("Receive PMs","receivepm",1);
makeyesnocode("Email on PM","emailonpm",0);
makeyesnocode("PM Popup","pmpopup",0);
makeyesnocode("Show Signatures","showsignatures",1);
makeyesnocode("Show Avatars","showavatars",1);
makeyesnocode("Show Images","showimages",1);
makeyesnocode("Show VBcode","showvbcode",1);
makeyesnocode("Use email notification by default","emailnotification",1);
makeyesnocode("Remember Username and password","cookieuser",1);
makeyesnocode("Browse boards with cookies","nosessionhash",1);
makeinputcode("Join Date<br>(Format yyyy-mm-dd, leave blank for today)","joindate");
makeinputcode("Default view age<br>'Select threads from last x days'<br>Recommended values: 1, 2, 5, 10, 20, 30, 45, 60, 75, 100, 365, 1000 (ie all). -1 gives default forum selection","daysprune","-1");
makeinputcode("Last Visit<br>(Format yyyy-mm-dd hh:mm:ss, leave blank for today)","lastvisit");
makeinputcode("Last Activity<br>(Format yyyy-mm-dd hh:mm:ss, leave blank for today)","lastactivity");
makeinputcode("Last Post<br>(Format yyyy-mm-dd hh:mm:ss, leave blank for today)","lastpost");
makeinputcode("Number of Posts","posts","0");
makeyesnocode("Miserable user","miserable",$user[miserable]);
makeinputcode("Time Zone Offset (hours)","timezoneoffset","0");
makeinputcode("IP Address","aipaddress",$ipaddress);
maketableheader("Custom Profile Fields");
$profilefields=$DB_site->query("SELECT profilefieldid,title FROM profilefield");
while ($profilefield=$DB_site->fetch_array($profilefields)) {
makeinputcode($profilefield[title],"field".$profilefield[profilefieldid]);
}

doformfooter("Save");
}




...and 82 lines below:



doformheader("user","doupdate");
makehiddencode("userid","$userid");

maketableheader("Useful Links");
makedescription("<table width='90%' border='0' align='center'><tr valign='top'><td>
<li>".makelinkcode("Send email to $user[username]","mailto:$user[email]")."</li>
<li>".makelinkcode("Send a private message to $user[username]","../private.php?s=$session[sessionhash]&action=newmessage&userid=$user[userid]",1)."</li>
<li>".makelinkcode("Find posts by $user[username]","../search.php?s=$session[sessionhash]&action=finduser&userid=$user[userid]",1)."</li>
<li>".makelinkcode("View the profile for $user[username]","../member.php?s=$session[sessionhash]&action=getinfo&userid=$userid",1)."</li>
</td><td>
<li>".makelinkcode("Edit forum access for $user[username]","user.php?s=$session[sessionhash]&action=editaccess&userid=$user[userid]")."</li>
<li>".makelinkcode("View IPs for $user[username]","user.php?s=$session[sessionhash]&action=doips&username=".urlencode($user[username]))."</li>
<li>".makelinkcode("Email this user their password","user.php?s=$session[sessionhash]&action=emailpassword&email=$user[email]")."</li>
<li>".makelinkcode("Remove User","user.php?s=$session[sessionhash]&action=remove&userid=$user[userid]")."</li>
</td></tr></table>");
restarttable();

maketableheader("Edit User - $user[username] (userid: $user[userid])");
makechoosercode("User Group","usergroupid","usergroup",$user[usergroupid]);
makeinputcode("User Name","ausername",$user[username],0);
makeinputcode("Password<br>Leave blank unless you want to change it","apassword");
makeinputcode("Email Address","email",$user[email],0);
makeinputcode("User Title","usertitle",$user[usertitle]);
makeyesnocode("Use Custom Title<br><font size='1'>(This forces the title that you put in the field above to be used)</font>","customtitle",$user[customtitle]);
makestylecode("Style set","userstyleid",$user[styleid]);
makeinputcode("Home Page","homepage",$user[homepage],0);
makeinputcode("Birthday<br>(Format yyyy-mm-dd)","birthday",$user[birthday],0);
maketextareacode("Signature","signature",$user[signature],8,45);
makeinputcode("ICQ Number","icq",$user[icq],0);
makeinputcode("AIM Handle","aim",$user[aim],0);
makeinputcode("Yahoo Messenger Handle","yahoo",$user[yahoo],0);
makeyesnocode("COPPA user","coppauser",$user[coppauser]);
makeinputcode("Parent Email Address","parentemail",$user[parentemail],0);
makeinputcode("Number of Posts","posts",$user[posts]);
makeyesnocode("Miserable user","miserable",$user[miserable]);
maketableheader("Options");
makeyesnocode("Receive mailings from admins","adminemail",$user[adminemail]);
makeyesnocode("Show email","showemail",$user[showemail]);
makeyesnocode("Invisible on 'Online users' list","invisible",$user[invisible]);
makeyesnocode("Receive PMs","receivepm",$user[receivepm]);
makeyesnocode("Email on PM","emailonpm",$user[emailonpm]);
makeyesnocode("PM Popup","pmpopup",$user[pmpopup]);
makeyesnocode("Show Signatures","showsignatures",$user[showsignatures]);
makeyesnocode("Show Avatars","showavatars",$user[showavatars]);
makeyesnocode("Show Images","showimages",$user[showimages]);
makeyesnocode("Show VBcode","showvbcode",$user[showvbcode]);
makeyesnocode("Use email notification by default","emailnotification",$user[emailnotification]);
makeyesnocode("Remember Username and password","cookieuser",$user[cookieuser]);
makeyesnocode("Browse boards with cookies","nosessionhash",$user[nosessionhash]);
makeinputcode("Join Date<br>(Format yyyy-mm-dd, leave blank for today)","joindate",$user[joindate]);
makeinputcode("Default view age<br>'Select threads from last x days'<br>Recommended values: 1, 2, 5, 10, 20, 30, 45, 60, 75, 100, 365, 1000 (ie all). -1 gives default forum selection","daysprune",$user[daysprune]);
makeinputcode("Last Visit<br>(Format yyyy-mm-dd hh:mm:ss, leave blank for today)","lastvisit",$user[lastvisit]);
makeinputcode("Last Activity<br>(Format yyyy-mm-dd hh:mm:ss, leave blank for today)","lastactivity",$user[lastactivity]);
makeinputcode("Last Post<br>(Format yyyy-mm-dd hh:mm:ss, leave blank for today)","lastpost",$user[lastpost]);
makeinputcode("Time Zone Offset (hours)","timezoneoffset",$user[timezoneoffset]);
makeinputcode("IP Address","aipaddress",$user[ipaddress]);
maketableheader("User Avatar");
if ($user[avatarid]!=0) {
$avatarurl= "../" . $user[avatarpath];
} else {
if ($user[hascustomavatar]) {
$avatarurl="../avatar.php?s=$session[sessionhash]&userid=$user[userid]";
} else {
$avatarurl="";
}
}
echo "<tr class='".getrowbg()."'><td>Avatar</td><td nowrap>";
if ($avatarurl!="") {
echo "<img src=\"$avatarurl\">&nbsp;&nbsp;&nbsp;";
}
echo "<input type=\"submit\" name=\"modifyavatar\" value=\"Change Avatar\">";
echo "<input type=\"hidden\" name=\"userid\" value=\"$user[userid]\">";
echo "</td></tr>";

maketableheader("Custom Profile Fields");
$userfield=$DB_site->query_first("SELECT * FROM userfield WHERE userid=$userid");

$profilefields=$DB_site->query("SELECT profilefieldid,title FROM profilefield");
while ($profilefield=$DB_site->fetch_array($profilefields)) {
$varname="field$profilefield[profilefieldid]";
makeinputcode($profilefield[title],"field".$profilefield[profilefieldid],$userfield[$varname]);
}

doformfooter("Save Changes");

}



So, as you can see, there are really two sections in admin/user.php.... ;] But you're right. I searched for a shorter string cos my admin/user.php is hacked thoroughly and many strings don't match today at all, so I have to look for parts of them instead of using those exact samples from install faq.

chrisvonc
03-29-2004, 06:13 PM
Doh! I do apologize. I installed this on my v2.3.2 and it only has the one.
:)

[email protected] vbmenu_register("postmenu_524759", true);
06-21-2004, 12:32 AM
Anyone know if this works on 2.3.5?

Blue91
07-08-2004, 11:05 AM
Has anyone made this work on 3.0.3 yet?

Sting3r
07-08-2004, 09:27 PM
yea any plans for 3.0+ version. Sounds like a nice idea.

Blue91
07-10-2004, 05:24 PM
Anyone?

dr.science
07-12-2004, 01:36 AM
I am very interested in a 3.0 version as well.

Andreas
07-12-2004, 01:39 AM
*cough* search function *cough*

https://vborg.vbsupport.ru/showthread.php?t=59727

Blue91
07-12-2004, 02:56 AM
Thanks! Not sure how I missed it (other than by being a goof)!

AquilaEagle
12-26-2005, 09:01 AM
Great idea!! downloaded and will try it

Destroyed Soul
01-13-2006, 07:50 PM
Any chance for 2.3.x support?

Zzed
03-28-2006, 08:05 AM
Any chance for 2.3.x support?
I am still on 2.3.4 on my main forum. Feel free to PM me if you need help with anything. :)

Roms
04-02-2006, 05:20 AM
Good idea! Cheers!