Name: Require Minimum Posts for U2U Version: v2.0 Description: This hack will add the functionality to specify a minimum amount of posts before a user is able to send U2U's. Compatibility: XMB v1.9.11 Author: Jamie Updates by: Curuncula (stressed-designs.com), Robert Chapin (miqrogroove) License Note: Released under the General Public License (GPL). Notes: Original hack for 1.9.1 by Jamie. This hack is provided without guarantee or warranty. Take care when installing this hack and ensure you back up all affected files, templates and databases as detailed below. Affected: Database, 3 files* (cp.php, u2u.php, header.php) ------------------------------------------------------------------------------------------------ ================ Step 1: Database ================ =============================================================== Go To Administration Panel -> Database Tools -> Insert Raw SQL =============================================================== ============================= Add SQL data & Submit Changes ============================= ALTER TABLE `$table_settings` ADD `sd_rmpu2ustatus` SET('on','off') DEFAULT 'on' NOT NULL; ALTER TABLE `$table_settings` ADD `sd_rmpu2u` SMALLINT(5) DEFAULT '25' NOT NULL; ------------------------------------------------------------------------------------------------ ========================================= Step 2: Edit File (header.php) ========================================= ===== Find: ===== /* Set Up HTML Templates and Themes */ ========== Add Above: ========== // Start Require Minimum Posts for U2U Hack if (!isset($lang['sd_rmpu2umsg'])) { require_once(ROOT.'include/translation.inc.php'); $phrases = array(); $phrases['sd_rmpu2ustatus'] = "Require Minimum Posts for U2U:"; $phrases['sd_rmpu2u'] = "Required Posts to Send U2U's:"; $phrases['sd_rmpu2umsg'] = "A minimum of *posts* posts is required in order to send U2U messages on this board."; setManyLangValues($phrases, $langfile); loadLang($langfile); } // End Require Minimum Posts for U2U Hack ------------------------------------------------------------------------------------------------========================== ========================== Step 3: Edit File (cp.php) ========================== ===== Find: ===== $remoteimageson = $remoteimagesoff = ''; settingHTML('attach_remote_images', $remoteimageson, $remoteimagesoff); ========== Add Below: ========== // Start Require Minimum Posts for U2U Hack $sd_rmpu2ustatuson = $sd_rmpu2ustatusoff = ''; settingHTML('sd_rmpu2ustatus', $sd_rmpu2ustatuson, $sd_rmpu2ustatusoff); // End Require Minimum Posts for U2U Hack ===== Find: ===== printsetting2($lang['u2uquota'], 'u2uquotanew', ((int)$SETTINGS['u2uquota']), 3); ========== Add Below: ========== // Start Require Minimum Posts for U2U Hack printsetting1($lang['sd_rmpu2ustatus'], 'sd_rmpu2ustatusnew', $sd_rmpu2ustatuson, $sd_rmpu2ustatusoff); printsetting2($lang['sd_rmpu2u'], "sd_rmpu2unew", ((int)$SETTINGS['sd_rmpu2u']), 5); // End Require Minimum Posts for U2U Hack ===== Find: ===== $onlinetoday_statusnew = formOnOff('onlinetoday_statusnew'); ========== Add Below: ========== // Start Require Minimum Posts for U2U Hack $sd_rmpu2unew = formInt('sd_rmpu2unew'); $sd_rmpu2ustatusnew = formOnOff('sd_rmpu2ustatusnew'); // End Require Minimum Posts for U2U Hack ===== Find: ===== $sql = "UPDATE ".X_PREFIX."settings SET ========== Add Below: ========== sd_rmpu2ustatus='$sd_rmpu2ustatusnew', sd_rmpu2u='$sd_rmpu2unew', ------------------------------------------------------------------------------------------------ =========================== Step 4: Edit File (u2u.php) =========================== ===== Find: ===== $msgto = postedVar('msgto', 'javascript', TRUE, FALSE, TRUE); ========== Add Above: ========== // Start Require Minimum Posts for U2U Hack if ($SETTINGS['sd_rmpu2ustatus'] == 'on') { if (!X_STAFF && $self['postnum'] < $SETTINGS['sd_rmpu2u']) { $msg = str_replace('*posts*', $SETTINGS['sd_rmpu2u'], $lang['sd_rmpu2umsg']); error($msg, FALSE, $u2uheader, $u2ufooter, FALSE, TRUE, FALSE, FALSE); } } // End Require Minimum Posts for U2U Hack ------------------------------------------------------------------------------------------------