This will change the white and blacklist.
Increment the date. reason and email.
the email on whitelist are an real email if you need to contact back the site owner or an email to be blacklisted (that need others editions).
Module
PHP Code:
<?php
if(!defined("WCDDL_GUTS"))
exit;
/*
ALTER TABLE wcddl_blacklist ADD COLUMN reason VARCHAR(255)
ALTER TABLE wcddl_whitelist ADD COLUMN reason VARCHAR(255)
ALTER TABLE wcddl_blacklist ADD COLUMN dat VARCHAR(15) NOT NULL
ALTER TABLE wcddl_whitelist ADD COLUMN dat VARCHAR(15) NOT NULL
ALTER TABLE wcddl_blacklist ADD COLUMN email varchar(50)
ALTER TABLE wcddl_whitelist ADD COLUMN email varchar(50)
or somethin, lol
*/
// Config
$modEnabled = true; //Change to false if don't use
if($modEnabled) {
function bwReason($query) {
// If another mod changes this query, it could probably break this mod :o
global $core;
if(!isset($_POST['bwreason']))
return $query;
$reason = $_POST['bwreason'];
$reason = $core->processURL($reason,' ');
if(!isset($_POST['bwemail']))
return $query;
$email = $_POST['bwemail'];
// INSERT INTO wcddl_blacklist VALUES ('someurl')
$query = substr($query,0,strlen($query)-1) . ",'".$reason."','".date("d-m-Y")."','".mysql_real_escape_string($email)."')";
return $query;
}
function bwReasonForm($html)
{
// This is quick and dirty
// May need recoding to be better
$html_original = array('<tr><td>URL</td><td align="right">Remove</td></tr>',
'<tr><td align="center"><input type="submit"',
'<form action="" method="post"><table width="100%">'
);
$html_modificado = array('<tr><td>DATE</td><td>URL</td><td>EMAIL</td><td>REASON</td><td align="right">Remove</td></tr>',
'<tr><td align="center">Reason (Blank for none. 255 max chars.):<br /><input type="text" name="bwreason" /><br />Email:<br /><input type="text" name="bwemail" /><tr><td align="center"><input type="submit"',
'<table width="100%"><form action="" method="post">');
$html = str_replace($html_original, $html_modificado, $html);
return $html;
}
function bwReasonFetch($url,$bw="white") {
$count = mysql_query("SELECT COUNT(0) FROM wcddl_".mysql_real_escape_string($bw)."list WHERE url = '".mysql_real_escape_string($url)."'");
$count = mysql_result($count,0);
if($count < 1)
return false;
$get = mysql_query("SELECT url,reason FROM wcddl_".mysql_real_escape_string($bw)."list WHERE url = '".mysql_real_escape_string($url)."'");
$get = mysql_fetch_assoc($get);
return $get;
}
$core->attachDataHook("bwlistQuery","bwReason");
$core->attachDataHook("bwlistForm","bwReasonForm");
}
?>
EDIT on funcs.php (replace the blacklist, whitelist functions)
PHP Code:
protected function admin_blacklist() {
if(isset($_POST['bwurl']))
$bwurl = $_POST['bwurl'];
if(isset($_POST['bwsub']))
$bwsub = $_POST['bwsub'];
if(isset($_POST['remove']))
$remove = $_POST['remove'];
if(isset($bwsub)) {
if(isset($bwurl)) {
$bwquery = "INSERT INTO wcddl_".mysql_real_escape_string($this->blackorwhite)."list VALUES ('".mysql_real_escape_string($bwurl)."')";
$bwquery = $this->processDataHook("bwlistQuery",$bwquery);
@mysql_query($bwquery);
if($this->blackorwhite == "black") {
$sid = @mysql_query("SELECT id FROM wcddl_sites WHERE url = '".mysql_real_escape_string($bwurl)."'");
if(mysql_num_rows($sid)) {
$sid = @mysql_result($sid,0);
@mysql_query("DELETE FROM wcddl_downloads WHERE sid = '".mysql_real_escape_string($sid)."'");
}
echo 'URL has been blacklisted and all related downloads deleted.';
} elseif($this->blackorwhite == "white") {
echo 'URL has been whitelisted.';
}
}
if(isset($remove)) {
$fishpan = 0;
foreach($remove as $url) {
mysql_query("DELETE FROM wcddl_".mysql_real_escape_string($this->blackorwhite)."list WHERE url = '".mysql_real_escape_string($url)."'");
$fishpan++;
}
echo $fishpan.' Sites were Removed from the '.$this->blackorwhite.'list.';
}
}
$bwform = '<form action="" method="post"><table width="100%">
<tr><td>URL</td><td align="right">Remove</td></tr>';
$get = mysql_query("SELECT * FROM wcddl_".mysql_real_escape_string($this->blackorwhite)."list ORDER by url ASC");
while($row = mysql_fetch_assoc($get)) {
$bwform .= '<tr><td>'.$row['dat'].'</td><td><a href="http://'.$row['url'].'" target="_blank">'.$row['url'].'</a></td><td>'.$row['email'].'</td><td>'.$row['reason'].'</td><td align="right"><input type="checkbox" name="remove[]" value="'.$row['url'].'"></td></tr>';
}
$bwform .= '<tr><td colspan="2" align="right"><input type="submit" value="Remove Selected" name="bwsub"></td></tr>
</table></form><br>
<form action="" method="post"><table width="100%">
<tr><td align="center">'.ucfirst($this->blackorwhite).'list an URL</td></tr>
<tr><td align="center">DO NOT INCLUDE http://WWW., HTTP:// or a directory! ONLY THE HOST NAME<br><input type="text" name="bwurl"></td></tr>
<tr><td align="center"><input type="submit" value="'.ucfirst($this->blackorwhite).'list" name="bwsub"></td></tr></table></form>';
$bwform = $this->processDataHook('bwlistForm',$bwform);
echo $bwform;
}
protected function admin_whitelist() {
$this->admin_blacklist();
}