View Full Version : Report post to moderator -> PM or e-mail
JohnM
05-26-2001, 10:00 PM
This hack allows you to select the method of delivery for the report to moderator message.
Rename the attached script to JohnMinstall.php and run it. It will make the necessary database modification and give you further instructions. Delete the script when you're done.
I hope this helps some people :)
DEMOLiTiON
05-27-2001, 10:10 AM
But I get this when installing.
Parse error: parse error in /usr/local/etc/httpd/sites/demolition/htdocs/vb/admin/johnminstall.php on line 10
JohnM
05-28-2001, 02:39 PM
not in admin, just your normal directory
works for me :-(
JohnM
05-28-2001, 02:48 PM
If you're using PHP3 use the attached script instead and do the following:
Database update complete.
You must now find the following code in <b>report.php</b>:
//check usergroup of user to see if they can use PMs
if ($bbuserinfo[userid]==0) {
show_nopermission();
}
After it add:
//if reporting is disabled, show an error
if ($reporttomoderator == 0) {
eval("standarderror(\"".gettemplate("error_noreportpost")."\");");
}
Find:
$moderators=$DB_site->query("SELECT DISTINCT user.email FROM moderator,user WHERE user.userid=moderator.userid AND moderator.forumid IN ($foruminfo[parentlist])");
Replace with:
$moderators=$DB_site->query("SELECT DISTINCT userid, user.email FROM moderator,user WHERE user.userid=moderator.userid AND moderator.forumid IN ($foruminfo[parentlist])");
Find:
if ($DB_site->num_rows($moderators)==0) {
// get admins if no mods
$moderators=$DB_site->query("SELECT DISTINCT user.userid, user.email FROM user,usergroup WHERE user.usergroupid=usergroup.usergroupid AND usergroup.cancontrolpanel=1");
}
Replace with:
if ($DB_site->num_rows($moderators)==0) {
// get admins if no mods
$moderators=$DB_site->query("SELECT user.userid, user.email FROM user,usergroup WHERE user.usergroupid=usergroup.usergroupid AND usergroup.cancontrolpanel=1");
}
Find:
eval("$message = \"".gettemplate("email_reportbadpost",1,0)."\";");
eval("$subject = \"".gettemplate("emailsubject_reportbadpost",1,0)."\";");
mail ($moderator[email],$subject,$message,"From: \"$bbtitle Mailer\" <$webmasteremail>");
Replace with:
if ($reporttomoderator == 1 || $reporttomoderator == 3) {
eval("\$message = \"".gettemplate("email_reportbadpost",1,0)."\";");
eval("\$subject = \"".gettemplate("emailsubject_reportbadpost",1,0)."\";");
mail ($moderator[email],$subject,$message,"From: \"$bbtitle Mailer\" <$webmasteremail>");
}
if ($reporttomoderator == 2 || $reporttomoderator == 3) {
eval("\$message = \"".gettemplate("pm_reportbadpost",1,0)."\";");
eval("\$subject = \"".gettemplate("pmsubject_reportbadpost",1,0)."\";");
$DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','$message',".time().",0,0,0,0)");
}
Now, add a new template called 'error_noreportpost':
Sorry, this feature is disabled.
And templates 'pm_reportbadpost' and 'pmsubject_reportbadpost', based on the email_reportbadpost and emailsubject_reportbadpost templates.
Finally, upload the files and go into your control panel and select an option :)
JohnM
05-28-2001, 02:55 PM
Err, forgot to attach it :O
DEMOLiTiON
05-28-2001, 04:10 PM
ok the installing is working now :)
but when reporting a post I get this in my e-mail:
Database error in vBulletin: Invalid SQL: SELECT DISTINCT userid, user.email FROM moderator,user WHERE user.userid=moderator.userid AND moderator.forumid IN (4,3,-1)
mysql error: Column: 'userid' in field list is ambiguous
mysql error number: 1052
Date: Monday 28th of May 2001 07:09:27 PM
Script: /vb/report.php
:(
Psycho
05-28-2001, 09:42 PM
ive installed everything just like you laid it out. but when i test it, i get a parse error on the last line on the report.php
the last line is the ?>
any suggestions?
JohnM
05-28-2001, 11:37 PM
demolition:
change:
$moderators=$DB_site->query("SELECT DISTINCT userid, user.email FROM moderator,user WHERE user.userid=moderator.userid AND moderator.forumid IN ($foruminfo[parentlist])");
to:
$moderators=$DB_site->query("SELECT DISTINCT user.userid, user.email FROM moderator,user WHERE user.userid=moderator.userid AND moderator.forumid IN ($foruminfo[parentlist])");
Psycho: make sure you didn't overwrite the } for the while() loop
Psycho
05-29-2001, 03:15 AM
I changed that section of code, but still receive the same error code. the } is still there for the while loop, made sure there were 3 open and closing.
I attached the file for you to look at if you so wish, Maybe I set something wrong in it. Reason I tried to set this hack up is because the report didnt work on its own as an email, now it still isnt working.
<file removed>
DEMOLiTiON
05-29-2001, 12:36 PM
ok I got this working now :)
but the reports are only send to one moderator.. is there a way to send it to all moderators and admins?
thnx
JohnM
05-29-2001, 04:29 PM
First of all, it's against the license to post files. Please remove it.
for your question, your tags were a bit messed up :p
your while() loop part should be:
while ($moderator=$DB_site->fetch_array($moderators)) {
if ($reporttomoderator == 1 || $reporttomoderator == 3) {
eval("\$message = \"".gettemplate("email_reportbadpost",1,0)."\";");
eval("\$subject = \"".gettemplate("emailsubject_reportbadpost",1,0)."\";");
mail ($moderator[email],$subject,$message,"From: \"$bbtitle Mailer\" <$webmasteremail>");
}
if ($reporttomoderator == 2 || $reporttomoderator == 3) {
eval("\$message = \"".gettemplate("pm_reportbadpost",1,0)."\";");
eval("\$subject = \"".gettemplate("pmsubject_reportbadpost",1,0)."\";");
$DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','$message',".time().",0,0,0,0)");
}
}
JohnM
05-29-2001, 04:32 PM
Originally posted by DEMOLiTiON
ok I got this working now :)
but the reports are only send to one moderator.. is there a way to send it to all moderators and admins?
thnx
it should send it to all of them... I don't see why it wouldn't... PM me your while loop part of report.php
Psycho
05-29-2001, 10:16 PM
I wasnt thinking on the file, but I appreciate your help. It works great now. Thank you very much :)
Psycho
05-31-2001, 09:10 PM
I know your probably getting sick of me. Ive put that code into my file which seemed to have fixed it. However, when I look at the private message it give me this
("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title
,message,dateline,showsignature,iconid,messageread
,folderid) VALUES (NULL,1,1,1,',',".time().",0,0,0,0)");
DEMOLiTiON
06-01-2001, 05:17 AM
JohnM, I emailed you my report.php, please look at it :)
JohnM
06-01-2001, 10:51 PM
"Look at the private message"?
Demolition: it shouldn't be doing that. are you sure you have more than one moderator? ;)
kdog316
06-02-2001, 03:13 AM
i keep getting parase error and here is what my code looks like
oh and the parase is on line 68 which is ?>
while ($moderator=$DB_site->fetch_array($moderators)) {
if ($reporttomoderator == 1 || $reporttomoderator == 3) {
eval("\ = \"".gettemplate("email_reportbadpost",1,0)."\";");
eval("\ = \"".gettemplate("emailsubject_reportbadpost",1,0)."\";");
mail ($moderator[email],$subject,$message,"From: \"$bbtitle Mailer\" <$webmasteremail>");
}
if ($reporttomoderator == 2 || $reporttomoderator == 3) {
eval("\ = \"".gettemplate("pm_reportbadpost",1,0)."\";");
eval("\ = \"".gettemplate("pmsubject_reportbadpost",1,0)."\";");
$DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','$message',".time().",0,0,0,0)");
}
$url = str_replace("\"", "", $url);
eval("standardredirect(\"".gettemplate("redirect_reportthanks")."\",\"$url\");");
}
? >
with out the space after the question mark
jojo85
06-02-2001, 04:14 AM
Good idea,nice hack,
CONGRATS :D
daydreamer
06-28-2001, 01:15 AM
"go into your control panel and select an option"
You lost me there... select an option where?
dd
daydreamer
06-28-2001, 01:51 AM
Duh, found it.
Foxtroter
07-02-2001, 01:04 AM
Originally posted by kdog316
i keep getting parase error and here is what my code looks like
oh and the parase is on line 68 which is ?>
while ($moderator=$DB_site->fetch_array($moderators)) {
if ($reporttomoderator == 1 || $reporttomoderator == 3) {
eval("\ = \"".gettemplate("email_reportbadpost",1,0)."\";");
eval("\ = \"".gettemplate("emailsubject_reportbadpost",1,0)."\";");
mail ($moderator[email],$subject,$message,"From: \"$bbtitle Mailer\" <$webmasteremail>");
}
if ($reporttomoderator == 2 || $reporttomoderator == 3) {
eval("\ = \"".gettemplate("pm_reportbadpost",1,0)."\";");
eval("\ = \"".gettemplate("pmsubject_reportbadpost",1,0)."\";");
$DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','$message',".time().",0,0,0,0)");
}
$url = str_replace("\"", "", $url);
eval("standardredirect(\"".gettemplate("redirect_reportthanks")."\",\"$url\");");
}
? >
with out the space after the question mark
add another } after this $DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','$message',".time().",0,0,0,0)"); there should be two.
anyway i believe two other people have answered ur question.
ptegan
08-14-2001, 12:48 PM
Thx !!
Nice hack.
idban
09-18-2001, 04:57 AM
i just modified report.php to make this possible
JJR512
09-19-2001, 08:24 AM
Originally posted by daydreamer
"go into your control panel and select an option"
You lost me there... select an option where?
dd
Originally posted by daydreamer
Duh, found it.
Sorry, I haven't found it yet! What option am I looking for and on which control panel (admin cp, my own user cp, what?) I can't find anything anywhere!
Also...maybe this is related to the option that I haven't set because I don't know what the option is or where it is, but after installing it, I try clicking the Report link in any thread in any forum and I get the new error message "Sorry, this feature is disabled" or whatever.
Sephi
01-22-2002, 07:42 PM
Originally posted by idban
i just modified report.php to make this possible
Thank You :D
This hack works perfectly :p
See 4 Later !
Omero
02-06-2002, 10:53 AM
Bug found! If ' or " is present in the report text and the notify with PM is active, the mysql INSERT into private messages fail with mysql error!
Here is the workaround:
Change this:
if ($reporttomoderator == 2 || $reporttomoderator == 3) {
eval("\$message = \"".gettemplate("pm_reportbadpost",1,0)."\";");
eval("\$subject = \"".gettemplate("pmsubject_reportbadpost",1,0)."\";");
$DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','$message',".time().",0,0,0,0)");
}
into this
if ($reporttomoderator == 2 || $reporttomoderator == 3) {
eval("\$message = \"".gettemplate("pm_reportbadpost",1,0)."\";");
eval("\$subject = \"".gettemplate("pmsubject_reportbadpost",1,0)."\";");
$DB_site->query("INSERT INTO privatemessage (privatemessageid,userid,touserid,fromuserid,title ,message,dateline,showsignature,iconid,messageread ,folderid) VALUES (NULL,$moderator[userid],$moderator[userid],$bbuserinfo[userid],'$subject','".addslashes($message)."',".time().",0,0,0,0)");
}
This will fix the bug, by adding the proper slashes where they are needed ;)
Stoned Gecko
02-08-2002, 12:04 AM
Works great!!! Thanks!
Does this hack work also with 2.2.4?
Thanks
Erwin
04-08-2002, 01:09 AM
Yes. Also with 2.2.5 - it's one of the best hacks around and should be standard in 3.0 methinks.
Thanks Erwin
I followed the instructions, but I could not find some of the Text I was asked to replace.
I must be doing something wrong :D
I will try again today :)
mas404
04-09-2002, 07:49 AM
hi
it is work but nothing apper on the PM (no message )
only the temp. which I install ..
and the email working good
why??
Dylan Leblanc
07-03-2002, 02:35 AM
This hack sounds cool, I was looking for something kind of like it. What I was looking for is something that would take the Report a Post messages and automatically post them into a private moderators forum.
Would this be possible?
Pilot
07-08-2002, 08:01 PM
Is the original attachment updated with the fixes?
Seifer
07-09-2002, 04:54 AM
Parse error: parse error, unexpected '=' in /home/plasmic/www/forums/report.php(66) : eval()'d code on line 1
Parse error: parse error, unexpected '=' in /home/plasmic/www/forums/report.php(67) : eval()'d code on line 1
Uh...help?
Seifer
07-09-2002, 05:06 AM
Also, when I tested it, the moderator said the PM is there, but there's no subject or link or anything. The PM said it was from me, but that's it she said.
Seifer
07-09-2002, 05:11 AM
She sent me this image:
Edit: Also, when tried with e-mails, the e-mails are blank too.
same here
Parse error: parse error in /home/www/web3/html/report.php(62) : eval()'d code on line 1
Parse error: parse error in /home/www/web3/html/report.php(63) : eval()'d code on line 1
Parse error: parse error in /home/www/web3/html/report.php(62) : eval()'d code on line 1
Parse error: parse error in /home/www/web3/html/report.php(63) : eval()'d code on line 1
Zelda-King
11-27-2002, 09:23 PM
I'm using vBulletin 2.2.9 and the last three report.php edits don't exist. The script is different. I tried installing the hack. Looked promising then I got untold parse errors and though the PMs/emails would send they would be blank.
Sebastian
11-29-2002, 01:10 AM
Originally posted by Zelda-King
I'm using vBulletin 2.2.9 and the last three report.php edits don't exist. The script is different. I tried installing the hack. Looked promising then I got untold parse errors and though the PMs/emails would send they would be blank.
I wouldn't even bother installing it, this is one of the worst poorly written hacks I've ever seen. It would be nice if someone could rewrite it.
alamuae
06-08-2003, 08:55 AM
i ned tehs hacks for (Version 2.3.0)
Erwin
06-08-2003, 11:11 AM
This hack works for 2.3.0, but you need to know how to edit the instructions to make it work.
alamuae
06-08-2003, 11:56 AM
ok thank you Erwin
........
which Attachment i have to downlod
alamuae
06-08-2003, 12:13 PM
plz someone help
((you need to know how to edit the instructions to make it work.))
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, vBulletin Solutions Inc.