Файл: adm/Moderation.php
Строк: 190
<?php
##############################################################################
# * #
# * XG PROYECT #
# * #
# * @copyright Copyright (C) 2008 - 2009 Neko from xgproyect.net #
# * #
# * #
# * This program is free software: you can redistribute it and/or modify #
# * it under the terms of the GNU General Public License as published by #
# * the Free Software Foundation, either version 3 of the License, or #
# * (at your option) any later version. #
# * #
# * This program is distributed in the hope that it will be useful, #
# * but WITHOUT ANY WARRANTY; without even the implied warranty of #
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# * GNU General Public License for more details. #
# * #
##############################################################################
define('INSIDE' , true);
define('INSTALL' , false);
define('IN_ADMIN', true);
$xgp_root = './../';
include($xgp_root . 'extension.inc.php');
include($xgp_root . 'common.' . $phpEx);
if ($user['authlevel'] < 3) die(message ($lang['404_page']));
$parse = $lang;
if ($_GET['moderation'] == '1')
{
$QueryModeration = doquery("SELECT * FROM {{table}} WHERE `config_name` = 'moderation'", "config", true);
$QueryModerationEx = explode(";", $QueryModeration[1]);
$Moderator = explode(",", $QueryModerationEx[0]);
$Operator = explode(",", $QueryModerationEx[1]);
$Administrator = explode(",", $QueryModerationEx[2]); // Solo sirve para el historial
// MODERADORES
if($Moderator[0] == 1){$parse['view_m'] = 'checked = "checked"';}
if($Moderator[1] == 1){$parse['edit_m'] = 'checked = "checked"';}
if($Moderator[2] == 1){$parse['config_m'] = 'checked = "checked"';}
if($Moderator[3] == 1){$parse['tools_m'] = 'checked = "checked"';}
if($Moderator[4] == 1){$parse['log_m'] = 'checked = "checked"';}
// OPERADORES
if($Operator[0] == 1){$parse['view_o'] = 'checked = "checked"';}
if($Operator[1] == 1){$parse['edit_o'] = 'checked = "checked"';}
if($Operator[2] == 1){$parse['config_o'] = 'checked = "checked"';}
if($Operator[3] == 1){$parse['tools_o'] = 'checked = "checked"';}
if($Operator[4] == 1){$parse['log_o'] = 'checked = "checked"';}
// ADMINISTRADOR (SOLO PARA EL HISTORIAL)
if($Administrator[0] == 1){$parse['log_a'] = 'checked = "checked"';}
$parse['mods'] = $lang['rank'][1];
$parse['oper'] = $lang['rank'][2];
$parse['adm'] = $lang['rank'][3];
if ($_POST['mode'])
{
if($_POST['view_m'] == 'on') $view_m = 1; else $view_m = 0;
if($_POST['edit_m'] == 'on') $edit_m = 1; else $edit_m = 0;
if($_POST['config_m'] == 'on') $config_m = 1; else $config_m = 0;
if($_POST['tools_m'] == 'on') $tools_m = 1; else $tools_m = 0;
if($_POST['log_m'] == 'on') $log_m = 1; else $log_m = 0;
if($_POST['view_o'] == 'on') $view_o = 1; else $view_o = 0;
if($_POST['edit_o'] == 'on') $edit_o = 1; else $edit_o = 0;
if($_POST['config_o'] == 'on') $config_o = 1; else $config_o = 0;
if($_POST['tools_o'] == 'on') $tools_o = 1; else $tools_o = 0;
if($_POST['log_o'] == 'on') $log_o = 1; else $log_o = 0;
if($_POST['log_a'] == 'on') $log_a = 1; else $log_a = 0;
$QueryEdit = $view_m.",".$edit_m.",".$config_m.",".$tools_m.",".$log_m.";".
$view_o.",".$edit_o.",".$config_o.",".$tools_o.",".$log_o.";".$log_a.";";
$Log .= "n".$lang['log_system_mod_title']."n";
$Log .= $lang['log_the_user'].$user['username']." ".$lang['log_modify_personal'].":n";
$Log .= $lang['log_can_view_mod']."n";
$Log .= $lang['log_tools'].": ".$lang['log_viewmod'][$tools_m]."n";
$Log .= $lang['log_edit'].": ".$lang['log_viewmod'][$edit_m]."n";
$Log .= $lang['log_view'].": ".$lang['log_viewmod'][$view_m]."n";
$Log .= $lang['log_config'].": ".$lang['log_viewmod'][$config_m]."nn";
$Log .= $lang['log_can_view_ope']."n";
$Log .= $lang['log_tools'].": ".$lang['log_viewmod'][$tools_o]."n";
$Log .= $lang['log_edit'].": ".$lang['log_viewmod'][$edit_o]."n";
$Log .= $lang['log_view'].": ".$lang['log_viewmod'][$view_o]."n";
$Log .= $lang['log_config'].": ".$lang['log_viewmod'][$config_o]."n";
LogFunction($Log, "ModerationLog", $LogCanWork);
doquery("UPDATE {{table}} SET `config_value` = '".$QueryEdit."' WHERE `config_name` = 'moderation'", "config");
header("Location: Moderation.php?moderation=1");
}
display(parsetemplate(gettemplate('adm/ModerationBody'), $parse), false, '' , true, false);
}
elseif ($_GET['moderation'] == '2')
{
for ($i = 0; $i < 4; $i++)
{
$parse['authlevels'] .= "<option value="".$i."">".$lang['rank'][$i]."</option>";
}
if ($_GET['get'] == 'adm')
$WHEREUSERS = "WHERE `authlevel` = '3'";
elseif ($_GET['get'] == 'ope')
$WHEREUSERS = "WHERE `authlevel` = '2'";
elseif ($_GET['get'] == 'mod')
$WHEREUSERS = "WHERE `authlevel` = '1'";
elseif ($_GET['get'] == 'pla')
$WHEREUSERS = "WHERE `authlevel` = '0'";
$QueryUsers = doquery("SELECT `id`, `username`, `authlevel` FROM {{table}} ".$WHEREUSERS."", "users");
while ($List = mysql_fetch_array($QueryUsers))
{
$parse['List'] .= "<option value="".$List['id']."">".$List['username']." (".$lang['rank'][$List['authlevel']].")</option>";
}
if ($_POST)
{
if ($_POST['id_1'] != NULL && $_POST['id_2'] != NULL)
{
$parse['display'] = '<tr><th colspan="3"><font color=red>'.$lang['ad_authlevel_error_2'].'</font></th></tr>';
}
elseif(!$_POST['id_1'] && !$_POST['id_2'])
{
$parse['display'] = '<tr><th colspan="3"><font color=red>'.$lang['ad_forgiven_id'].'</font></th></tr>';
}
elseif(!$_POST['id_1'] && !is_numeric($_POST['id_2']))
{
$parse['display'] = '<tr><th colspan="3"><font color=red>'.$lang['only_numbers'].'</font></th></tr>';
}
elseif($_POST['id_1'] == '1' || $_POST['id_2'] == '1')
{
$parse['display'] = '<tr><th colspan="3"><font color=red>'.$lang['ad_authlevel_error_3'].'</font></th></tr>';
}
else
{
if ($_POST['id_1'] != NULL)
$id = $_POST['id_1'];
else
$id = $_POST['id_2'];
$QueryFind = doquery("SELECT `authlevel` FROM {{table}} WHERE `id` = '".$id."'", "users", true);
if($QueryFind['authlevel'] != $_POST['authlevel'])
{
doquery("UPDATE {{table}} SET `authlevel` = '".$_POST['authlevel']."' WHERE `id` = '".$id."'", "users");
doquery("UPDATE {{table}} SET `id_level` = '".$_POST['authlevel']."' WHERE `id_owner` = '".$id."';", 'planets');
$ASD = $_POST['authlevel'];
$Log .= "n".$lang['log_system_auth_title']."n";
$Log .= $lang['log_the_user'].$user['username']." ".$lang['log_change_auth_1'].$id.",n";
$Log .= $lang['log_change_auth_2'].$lang['ad_authlevel'][$ASD]."n";
LogFunction($Log, "ModerationLog", $LogCanWork);
header ("Location: Moderation.php?moderation=2&succes=yes");
}
else
{
$parse['display'] = '<tr><th colspan="3"><font color=red>'.$lang['ad_authlevel_error'].'</font></th></tr>';
}
}
}
if ($_GET['succes'] == 'yes')
$parse['display'] = '<tr><th colspan="3"><font color=lime>'.$lang['ad_authlevel_succes'].'</font></th></tr>';
display (parsetemplate(gettemplate("adm/AuthlevelBody"), $parse), false, '', true, false);
}
else
{
die();
}
?>