Chez |
25th March 2013 16:06 |
SITE OPEN/CLOSED
THANKS GOES TO SOFTOVIC FOR THE MOD, AND RUFFNECK FOR TRANSLATING
ADD THE MYSQL INTO YOUR DATABASE
PHP Code:
CREATE TABLE `siteonline` ( `onoff` INT( 1 ) NOT NULL DEFAULT '1', `reason` VARCHAR( 255 ) NOT NULL DEFAULT '', `class` INT( 2 ) NOT NULL DEFAULT '6', `class_name` VARCHAR( 255 ) NOT NULL DEFAULT '', PRIMARY KEY (`onoff`) ) ENGINE = MYISAM; INSERT INTO `siteonline` VALUES (1, 'Under construction', 6, 'SysOP');
NOTE: CHANGE YOUR NUMBER TO MATCH YOUR SYSOP CLASS ON YOUR SITE IN THE MYSQL
IN bittorent.php FIND
PHP Code:
function stdhead($title = "", $msgalert = true) { global $CURUSER, $SITE_ONLINE, $FUNDS, $SITENAME, $DEFAULTBASEURL
AND ADD THIS UNDERNEATH
PHP Code:
//++++++++++++++++++++++++++++++++++ //******** Моd site close ********* //++++++++++++++++++++++++++++++++++
$res = sql_query("SELECT * FROM siteonline") or sqlerr(__FILE__, __LINE__);//Выбираем значения из базы $row = mysql_fetch_array($res);
//Переменные для уведомления о закрытии сайта (см stdhead.php) if ($row["onoff"] !=1){ $my_siteoff = 1; $my_siteopenfor = $row['class_name']; } //
//================================================================================ ========// //$row["onoff"] = 1;//АВАРИЙНЫЙ ВХОД: Раскомментировать строку, если не можете войти !!! // //================================================================================ ======//
if (($row["onoff"] !=1) && (!$CURUSER)){ //Проверяем: закрыт ли сайт и, если гость: die("<title>Site CLOSED!</title> <table width='100%' height='100%' style='border: 8px ridge #FF0000'><tr><td align='center'> <h1 style='color: #CC3300;'>".$row['reason']."</h1> <h1 style='color: #CC3300;'> Please, try later...</h1> <center><form method='post' action='takesiteofflogin.php'> <table border='1' cellspacing='1' id='table1' cellpadding='3' style='border-collapse: collapse'> <tr><td colspan='2' align='center' bgcolor='#CC3300'> <font color='#FFFFFF'><b>For Users:</b></font></td></tr> <tr><td><b>Name:</b></td> <td><input type='text' size=20 name='username'></td></tr><tr> <td><b>Password:</b></td> <td><input type='password' size=20 name='password'></td> </tr><tr> <td colspan='2' align='center'> <input type='submit' value='Gooo!'></td> </tr></table> </form></center> </td></tr></table>"); } elseif (($row["onoff"] !=1) and (($CURUSER["class"] < $row["class"]) && ($CURUSER["id"] != 1))){ //Проверяем: закрыт ли сайт, класс юзера меньше, //чем допустимый и не являетесь ли Вы Админом (ID=1) die("<title>Site CLOSED!</title> <table width='100%' height='100%' style='border: 8px ridge #FF0000'><tr><td align='center'> <h1 style='color: #CC3300;'>".$row['reason']."</h1> <h1 style='color: #CC3300;'> Please, try later...</h1></td></tr></table>"); } //++++++++++++++++++++++++++++++++++ //******** Моd site close ********* //++++++++++++++++++++++++++++++++++
MAKE siteonoff.php AND ADD IT TO YOUR ROOT
PHP Code:
<?php require "include/bittorrent.php";
dbconn(); loggedinorreturn();
if (get_user_class() < UC_SYSOP) { stdhead("Error!"); $iduser= ($CURUSER["id"]); $addusername = $CURUSER['username']; $link_touser = "<a target='_blank' href='userdetails.php?id=$iduser'>$addusername</a>";//Получаем данные пользователя write_log("$link_touser is have message:Permission denied! (Попытка входа в Open/Close site).","FF9900","error");//Пишем в лог stdmsg('Error',"Permission denied!", error); stdfoot(); die(); }
if ($HTTP_SERVER_VARS["REQUEST_METHOD"] == "POST") { if (!$_POST["reason"]){ stdhead("Error!"); stdmsg("Error", "You must add reason!", error); stdfoot(); die; }
$reason = sqlesc("".$_POST['reason']."");//Причина отключения $class = $_POST["class"]; //Номер класса, меньше которого - доступ закрыт $onoff = $_POST["onoff"]; $cname = $class; //Присваиваем переменной значение из выборки НОМЕР_КЛАССА
//Определяем имена классов, меньше которого - доступ закрыт switch ($cname) { case '0': $cname = "just for USER"; break; case '1': $cname = "ust for POWER USER"; break; case '2': $cname = "just for VIP"; break; case '3': $cname = "ust for COM_VIP"; break; case '4': $cname = "just for UPLOADER"; break; case '5': $cname = "just for MODERATOR"; break; case '6': $cname = "just for ADMINISTRATOR"; break; case '7': $cname = "just for SYSOP"; break; case '8': $cname = "ust for STAFF LEADER"; break; case '9': $cname = "ust for CODER"; break; case '10': $cname = "ust for OWNER"; break; //имя не найдено? default: $cname = "for all"; }
$class_name = sqlesc("$cname"); //Имя класса, меньше которого - доступ закрыт
sql_query("UPDATE siteonline SET onoff = $onoff, reason = $reason, class = $class, class_name = $class_name") or sqlerr(__FILE__, __LINE__);//Записываем новые значения в базу
header("Location: $DEFAULTBASEURL/siteonoff.php");
}
stdhead("Open / Close site");
$res = sql_query("SELECT * FROM siteonline") or sqlerr(__FILE__, __LINE__);//Выбираем значения из базы $row = mysql_fetch_array($res); //
if ($row["onoff"] !=1){ $stroka = ("<td colspan='2' class=myhighlight style='padding:4px; background-color: #FF0000; color:#FFFFFF'> <b>Site CLOSED</b>! Class access: <b>".$row['class']."</b> (Access ".$row['class_name']."). Your class: <b>".$CURUSER['class']."</b>.</td>"); } else { $stroka = ("<td colspan='2' class=myhighlight style='padding:4px; background-color: #EAFFD5; color:#008000'> <b>Site right now is ОPEN</b>! Access is have all classes. Your class: <b>".$CURUSER['class']."</b>.</td>"); }
?> <form method="POST" action="siteonoff.php"> <table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse"> <tr> <td class=colhead><center><font size='3'>:: OPEN site : CLOSE site ::</font></center></td> </tr><tr><td><table border="0" cellspacing="1"> <tr><td class=embedded> <table border="0" cellspacing="2"><tr><?=$stroka?></tr><tr> <td class=embedded colspan="2" height="3"></td></tr><tr> <td class=colhead> MESSAGE FOR CLOSE SITE (allow HTML):</td> <td class=colhead></td></tr><tr> <td class=embedded valign="top"> <textarea rows="9" name="reason" cols="60"><?=($row["reason"])?></textarea></td> <td class=embedded align="left" valign="top"> <table border="0" cellspacing="1" id="table1" align="left"> <tr><td class=embedded height="2" colspan="2"></td></tr> <tr><td class=colhead colspan="2"> SITE RIGHT NOW:</td></tr><tr> <td class=myhighlight width="50%"><b><font color=green> OPEN</font></b><input type="radio" name="onoff" <?=($row["onoff"] == "1" ? "checked" : "")?> value="1"></td> <td class=myhighlight width="50%"><b><font color=red> Close</font></b><input type="radio" name="onoff" <?=($row["onoff"] == "0" ? "checked" : "")?> value="0"></td> </tr><tr><td class=embedded height="5" colspan="2"></td></tr><tr> <td class=colhead colspan="2"> ACCESS IS HAVE:</td></tr><tr> <td class=myhighlight colspan="2"> <select size="1" name="class" " style="<?=($row["onoff"] != 1 ? "color: #FFFFFF; background-color: #FF0000;" : "")?>"> <option <?=($row["class"] == "10" ? "selected" : "")?> value="10">OWNER</option> <option <?=($row["class"] == "9" ? "selected" : "")?> value="9">CODER</option> <option <?=($row["class"] == "8" ? "selected" : "")?> value="8">STAFFLEADER</option> <option <?=($row["class"] == "7" ? "selected" : "")?> value="7">SYSOP</option> <option <?=($row["class"] == "6" ? "selected" : "")?> value="6">ADMINISTRATOR</option> <option <?=($row["class"] == "5" ? "selected" : "")?> value="5">MODERATOR</option> <option <?=($row["class"] == "4" ? "selected" : "")?> value="4">UPLOADER</option> <option <?=($row["class"] == "3" ? "selected" : "")?> value="3">COM_VIP</option> <option <?=($row["class"] == "2" ? "selected" : "")?> value="2">VIP</option> <option <?=($row["class"] == "1" ? "selected" : "")?> value="1">POWER USER</option> <option <?=($row["class"] == "0" ? "selected" : "")?> value="0">USER</option> </select> </td></tr><tr><td class=embedded height="5" colspan="2"></td></tr><tr> <td class=embedded colspan="2"> <p align="center"><input type="submit" value="SAVE"></p></td></tr></table></td></tr> </table></td></tr></table></td></tr></table> </form>
<? stdfoot(); ?>
CHANGE THE NUMBERS AND CLASSES TO MATCH WHAT YOU ARE USING ON YOUR SITE ABOVE
THEN CREATE takesiteofflogin.php AND ADD IT TO YOUR ROOT
PHP Code:
<? require_once("include/bittorrent.php"); dbconn();
if (!mkglobal("username:password")) die();
function bark($text) { print("<title>Error!</title>"); print("<table width='100%' height='100%' style='border: 8px ridge #FF0000'><tr><td align='center'>"); print("<center><h1 style='color: #CC3300;'>Error:</h1><h2>$text</h2></center>"); print("<center><INPUT TYPE='button' VALUE='Back' onClick=\"history.go(-1)\"></center>"); print("</td></tr></table>"); die; }
if (!$_POST['username'] or !$_POST['password']) bark("You have not specified username or password!");
$res = sql_query("SELECT id, passhash, secret, enabled, status FROM users WHERE username = " . sqlesc($username)); $row = mysql_fetch_array($res);
if (!$row) bark("You are not logged in!");
if ($row["status"] == 'pending') bark("You have not yet activated your account! Activate your account and try again .");
if ($row["passhash"] != md5($row["secret"] . $password . $row["secret"])) bark("Username or password is incorrect!");
if ($row["enabled"] == "no") bark("This account has been disabled.");
$peers = sql_query("SELECT COUNT(id) FROM peers WHERE userid = $row[id]"); $num = mysql_fetch_row($peers); $ip = getip(); if ($num[0] > 0 && $row[ip] != $ip && $row[ip]) bark("This user is active at the moment!");
logincookie($row["id"], $row["passhash"]); header("Refresh: 0; url='$DEFAULTBASEURL'"); ?>
HERE'S AN EXAMPLE
http://i28.tinypic.com/2q3uc84.jpg
|