Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons

Reply
 
Thread Tools
Report System Mod - PM instead of email Details »»
Report System Mod - PM instead of email
Version: 1.00, by rossco_2005 rossco_2005 is offline
Developer Last Online: May 2013 Show Printable Version Email this Page

Version: 3.5.0 RC1 Rating:
Released: 07-29-2005 Last Update: 07-29-2005 Installs: 10
DB Changes Uses Plugins Template Edits
Code Changes  
No support by the author.

[high]THIS MOD IS NOT SUPPORTED ANYMORE[/high]

This hack is a rerelease of Sebastian's report system mod found here: https://vborg.vbsupport.ru/showthread.php?t=59927

But it's been changed a bit.
There is no warning system in my mod, I added a "report fulfilled" system to it, and i removed the emailing mods so all it does is PM them.


[high]What is it?[/high]

This mod replaces the vbulletin report system with a new system featuring the folowing features:
  • The report post form has been redone to have user selectable "reason" for reporting, as well as an "other" box where they can type the reason
  • Reports are then PMed instead of emailed to mods and/or admins
  • vBulletin keeps the status of the report through the database...when a mod fulfills the report's request they can then change the report's status to "true"
  • The status of the report is show in the private message

[high]Installation[/high]

File Edits

Open report.php.

Find:
PHP Code:
    $forumperms fetch_permissions($threadinfo['forumid']);
    if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']) OR !($forumperms $vbulletin->bf_ugp_forumpermissions['canviewthreads']))
    {
        
print_no_permission();
    }


    if (!
$threadinfo['threadid'] OR !$postinfo['visible'] OR !$threadinfo['visible'] OR !$postinfo['postid'] OR $threadinfo['isdeleted'] OR $postinfo['isdeleted'])
    {
        eval(
standard_error(fetch_error('invalidid'$vbphrase['post'], $vbulletin->options['contactuslink'])));
    } 
Replace with:
PHP Code:
if ($_GET['do'] != 'fulfilled' and $_GET['do'] != 'notfulfilled' and $_GET['do'] != 'img')
{

    
$forumperms fetch_permissions($threadinfo['forumid']);
    if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']) OR !($forumperms $vbulletin->bf_ugp_forumpermissions['canviewthreads']))
    {
        
print_no_permission();
    }


    if (!
$threadinfo['threadid'] OR !$postinfo['visible'] OR !$threadinfo['visible'] OR !$postinfo['postid'] OR $threadinfo['isdeleted'] OR $postinfo['isdeleted'])
    {
        eval(
standard_error(fetch_error('invalidid'$vbphrase['post'], $vbulletin->options['contactuslink'])));
    }
    

Find:
PHP Code:
// draw nav bar 
Above it add:
PHP Code:
// Report System Mod
$sendto = array();
$tostring = array();
// / Report System Mod 
Find:
PHP Code:
'reason'    => TYPE_STR
Replace with:
PHP Code:
// Report System Mod
'other'     => TYPE_STR,
// / Report System Mod 
Find:
PHP Code:
if ($vbulletin->GPC['reason'] == '')
{
    eval(
standard_error(fetch_error('noreason')));
        

Replace with:
PHP Code:
if ($reason == '' and $other != '')
{
    
$reason $other;
}
elseif (
$reason == '' and $other == '')
{
    eval(
standard_error(fetch_error('noreason')));

In 2 places Find:
PHP Code:
$moderators $db->query_read("
    SELECT DISTINCT user.email, user.languageid 
Replace with:
PHP Code:
$moderators $db->query_read("
    SELECT DISTINCT user.email, user.languageid, user.userid, user.username 
In 2 places Find:
PHP Code:
while ($moderator $db->fetch_array($moderators))
{
    
$mods[] = $moderator
Replace with:
PHP Code:
while ($moderator $db->fetch_array($moderators))
{
    
$mods[] = $moderator;
    
// Report System Mod
    
$tostring["$moderator[userid]"] = $moderator['username'];
    
$sendto["$moderator[userid]"] = $moderator['userid'];
    
// / Report System Mod 
Find:
PHP Code:
foreach ($mods AS $index => $moderator)
{
    if (!empty(
$moderator['email']))
    {
        
$email_langid = ($moderator['languageid'] > $moderator['languageid'] : $vbulletin->options['languageid']);

        (
$hook vBulletinHook::fetch_hook('report_send_email')) ? eval($hook) : false;

        eval(
fetch_email_phrases('reportbadpost'$email_langid));
        
vbmail($moderator['email'], $subject$messagetrue);
    }

Replace with:
PHP Code:
// Report System Mod
$db->query("
        INSERT INTO " 
TABLE_PREFIX "`reportfulfilled`
        (status) VALUES ('false')
        "
);
$id $db->insert_id();

eval(
'$message = "' fetch_template('report_msg') . '";');

$db->query("
    INSERT INTO " 
TABLE_PREFIX " `pmtext` 
    (fromuserid, fromusername, title, message, touserarray, iconid, dateline, showsignature, allowsmilie) 
    VALUES 
    (
$vbphrase[fromuserid], '$vbphrase[fromusername]', 'Reported Post by "  .  $vbulletin->userinfo['username']  .  "', '"  .  addslashes($message)  .  "', '" addslashes(serialize($tostring)) . "', 0, " time() . ", 0, 1)");

    
$pmtextid $db->insert_id();

foreach (
$mods AS $index => $moderator)
{
        
$db -> query("
        INSERT INTO " 
TABLE_PREFIX "`pm`
                (pmtextid, userid)
                VALUES
                (
$pmtextid$moderator[userid])
                "
);

        
$db -> query("
        UPDATE " 
TABLE_PREFIX "`user` SET
                pmtotal=pmtotal+1,
                pmunread=pmunread+1
                WHERE userid=
$moderator[userid]
                "
);
}

// / Report System Mod 
Templates

Replace the template Reportbadpost with this code:

PHP Code:
$stylevar[htmldoctype]
<
html dir="$stylevar[textdirection]lang="$stylevar[languagecode]">
<
head>
<
title>$vboptions[bbtitle] - $vbphrase[report_bad_post]</title>
$headinclude
</head>
<
body>
$header
$navbar


<form action="report.php" method="post">
<
input type="hidden" name="s" value="$session[sessionhash]/>
<
table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" 

align="center">
<
tr>
    <
td class="tcat" align="$stylevar[right]">
        <
span style="float:$stylevar[left]">$vbphrase[report_bad_post]</span>
        <
span class="smallfont"><strong>$vbphrase[forum]</strong>: <a href="forumdisplay.php?$session[sessionurl]f=$foruminfo[forumid]">$foruminfo[title]</a></span>        
    </
td>
</
tr>
<
tr>
    <
td class="panelsurround" align="center">
    <
div class="panel">$usernamecode
    
<div style="width:640px" align="left">
        
  <
fieldset class="fieldset">
    <
legend>Reason</legend>
   <
table cellpadding="0" cellspacing="3" border="0">
    <
tr>
    <
td><input type="radio" name="reason" value="offensive language" /></td>
    <
td width="96%"><b>offensive language</b></td>
  </
tr>
  <
tr>
    <
td><input type="radio" name="reason" value="blatant trolling" /></td>
    <
td width="96%"><b>blatant trolling</b></td>
  </
tr>
  <
tr>
    <
td><input type="radio" name="reason" value="harassing another user" /></td>
    <
td width="96%"><b>harassing another user</b></td>
  </
tr>
  <
tr>
    <
td><input type="radio" name="reason" value="illegal warez / crack sites" /></td>
    <
td width="96%"><b>illegal warez crack sites</b></td>
  </
tr>
  <
tr>
    <
td><input type="radio" name="reason" value="repeating and or advertising" /></td>
    <
td width="96%"><b>repeating and or advertising</b></td>
  </
tr>
  <
tr>
    <
td><input type="radio" name="reason" value="pornographic material" /></td>
    <
td width="96%"><b>pornographic material</b></td>
  </
tr>
                </
table>
            </
fieldset>
            
            <
fieldset class="fieldset">
                <
legend>Other?</legend>
                <
div style="padding:3px">
                    
            <
textarea name="other" rows="6" cols="$textareacolswrap="virtual"></textarea>
            </
fieldset>
            
            </
div>
    </
div>
    
    <
div style="margin-top:6px">
        <
input type="hidden" name="p" value="$postid/>
        <
input type="hidden" name="do" value="sendemail" />
        <
input type="hidden" name="url" value="$url/>
        <
input type="submit" class="button" value="$vbphrase[send_report]accesskey="s" />
    </
div>
    </
td>
</
tr>
</
table>

</
form>

$footer

</body>
</
html
Then create a new template called report_msg with the following code:

PHP Code:
[url=$vboptions[bburl]/member.php?u=$bbuserinfo[userid]]$bbuserinfo[username][/urlhas reported this [b]post:[/b]

[
b]?[/b] [url=$vboptions[bburl]/showpost.php?p=$postinfo[postid]&postcount=$postinfo[postid]]$threadinfo[title][/url]

In this [b]Thread:[/b]

[
b]?[/b] [url=$vboptions[bburl]/showthread.php?p=$postinfo[postid]]$threadinfo[title][/url]

This is the reason that the user gave:
[
b$reason [/b]

Fulfilled Status: [phpimg]$vboptions[bburl]/report.php?id=$id&do=img[/phpimg]
Change Status to: [url=$vboptions[bburl]/report.php?do=fulfilled&id=$id]true[/url

Please respond to this post as applicable
DB Query

Run this query from either PHPmyadmin or in vbulletin to add the reportfulfilled table:
PHP Code:
CREATE TABLE `reportfulfilled` (
  `
idint(10NOT NULL auto_increment,
  `
statusvarchar(10NOT NULL default '',
  
PRIMARY KEY  (`id`)
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1
Other

Create a new bbcode called PHP Images, where the tag is "phpimg" and description can be whatever you want, with this code:
PHP Code:
<img src="{param}" alt="" border="" /> 
Create a new member on your forum called "Reporter" or whatever you'd like. He does not have to have any special privileges or anything.

Now just import the included file "Report System Mod.xml" in the product manager to add the phrases and plugins automatically.

[high]Configuration[/high]

Edit the phrases "fromuserid" and "fromusername" to the username and userid of the reporter member you created in the installation.

You can change what images are used to 'report fulfilled' and 'report not fulfilled' in the plugin added.

If you want a "false" link for the fulfill status.. (set it back to not fulfilled) replace this in report_msg:
PHP Code:
[url=$vboptions[bburl]/report.php?do=fulfilled&id=$id]true[/url
with this:
PHP Code:
[url=$vboptions[bburl]/report.php?do=fulfilled&id=$id]true[/url] | [url=$vboptions[bburl]/report.php?do=notfulfilled&id=$id]false[/url
That should be all, enjoy!

Show Your Support

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

Comments
  #2  
Old 07-30-2005, 12:40 AM
rossco_2005's Avatar
rossco_2005 rossco_2005 is offline
 
Join Date: Apr 2005
Location: Canada
Posts: 184
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I realize that the big long report.php file edit is going to be a turnoff for this mod, but I will be making 'premodded' report.php files based off of every version of vbulletin 3.5 that is released, for please using an unhacked report.php.
Reply With Quote
  #3  
Old 07-30-2005, 12:47 AM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by rossco_2005
but I will be making 'premodded' report.php files based off of every version of vbulletin 3.5 that is released
I'm not sure you are actually allowed to do that.
Reply With Quote
  #4  
Old 07-30-2005, 01:13 AM
rossco_2005's Avatar
rossco_2005 rossco_2005 is offline
 
Join Date: Apr 2005
Location: Canada
Posts: 184
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Paul M
I'm not sure you are actually allowed to do that.
Alright, then I won't. :ermm:
Reply With Quote
  #5  
Old 07-30-2005, 09:02 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Please put the instructions in a text file for those that want to download and have it in case of a future re-install or upgrade of vBulletin.
Reply With Quote
  #6  
Old 08-02-2005, 09:46 PM
Sai01 Sai01 is offline
 
Join Date: Dec 2004
Posts: 108
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

is there an esier way to do this without doing all the editing?...i mean that's alot of editing to do.
Reply With Quote
  #7  
Old 08-05-2005, 10:38 PM
rossco_2005's Avatar
rossco_2005 rossco_2005 is offline
 
Join Date: Apr 2005
Location: Canada
Posts: 184
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sai01
is there an esier way to do this without doing all the editing?...i mean that's alot of editing to do.
I know, and I think that is the biggest putoff about this hack. I will try and think of a better way to include the code tho, maybe just have a plugin with all the code then comment out teh original code. :ermm:
Reply With Quote
  #8  
Old 08-07-2005, 05:45 AM
john1744 john1744 is offline
 
Join Date: Apr 2005
Posts: 268
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Wow this thing would be so awesome if I didn't have to edit all that.

*tries to decide whether to install or not.*
Reply With Quote
  #9  
Old 09-19-2005, 05:51 PM
mtha's Avatar
mtha mtha is offline
 
Join Date: Jul 2002
Location: US
Posts: 775
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

way too complicated. You can learn from this one:

https://vborg.vbsupport.ru/showthrea...ghlight=report
Reply With Quote
  #10  
Old 09-24-2005, 09:37 AM
murrtex murrtex is offline
 
Join Date: May 2002
Location: izmir
Posts: 249
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

there is no

HTML Code:
eval('$message = "' . fetch_template('report_msg') . '";');
in report.php

sorry..what we'll do?
Reply With Quote
Reply

Thread Tools

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 06:27 PM.


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.04664 seconds
  • Memory Usage 2,431KB
  • Queries Executed 23 (?)
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_html
  • (20)bbcode_php
  • (3)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
  • (2)pagenav_pagelink
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (9)postbit
  • (10)postbit_onlinestatus
  • (10)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