<?php

/*
	====================================================

	Скрипт установки CSFile.Info Anti-Cheat Web-Inerface
	Версия: 1.07b

   Версия 1.07 включает в себя отображение OpenGL32 логов и переделанный дизайн.

   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 2 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.

	====================================================
*/

$version = '1.07b';

/* Шаг установки */

if (empty($_GET["step"])) $step="0";
if (!empty($_GET["step"])) $step=strip_tags(htmlspecialchars($_GET["step"])); 

/* Вывод */

echo '<head>
<meta http-equiv="content-type" content="text/html; charset=Windows-1251" />
<title>Установка CSFile.Info Anti-Cheat Web-Interface</title>
<link rel="stylesheet" href="csf_ac_logs/csf_ac_logs.css" type="text/css" />
</head>
<br>


<table class="theme" cellpadding="0" cellspacing="0" width="1000" align="center">
					<tr>
						<td width="31" class="theme-top-left">&nbsp;</td>
						<td class="theme-top">
							<table cellpadding="0" cellspacing="0" width="100%">
							<tr>
								<td width="273" height="90"><a href="/"><img src="csf_ac_logs/img/logo.png" alt="CSFile.Info Anti-Cheat Innovation" height="90" border="0"/></a></td><td align="right"></td>
							</tr>
							</table>						   
						</td>
						<td width="26" class="theme-top-right">&nbsp;</td>
					</tr>


</table></div>';

echo '			<table  class="theme" cellpadding="0" cellspacing="0" width="1000" align="center">
					<tr valign="top">
						<td class="theme-left"></td>
						<td>
						    <table cellpadding="2" cellspacing="0" width="100%">
						        <tr>
						            <td valign="top" width="100%">

	<table class="publisher" cellpadding="0" cellspacing="0" align="center" width="825">
	<tr>
				<td width="7"><img src="csf_ac_logs/img/publisher_left_top.gif" width="7" height="7" alt="" /></td>
				<td class="publisher-top"><img src="csf_ac_logs/img/pixel.gif" width="1" height="7" alt="" /></td>
				<td width="7"><img src="csf_ac_logs/img/publisher_right_top.gif" width="7" height="7" alt="" /></td>
	</tr>
	<tr valign="top">
		<td class="publisher-left"></td>
		<td>	<table border="0" width="825"><tr><td height="30" width="1%">
	</td>
	<td valign="middle">
';

if ($step == '1'){

	if(file_exists("csf_ac_logs/config_main.php") && is_writeable( "csf_ac_logs/config_main.php" )){
		$cfgmain="<strong style=\"color:green\">Найден, Допускает запись</strong>";
	}else if(!file_exists("csf_ac_logs/config_main.php")) {
		$cfgmain="<span style=\"color:red\">Файл не найден</span>";
	}else if(file_exists("csf_ac_logs/config_main.php") && !is_writeable( "csf_ac_logs/config_main.php" )){
		$cfgmain="<span style=\"color:red\">Найден, Не допускает запись | Необходимо выставить права на запись [777]</span>";
	}

	if(file_exists("csf_ac_logs/config.php") && is_writeable( "csf_ac_logs/config.php" )){
		$cfg="<strong style=\"color:green\">Найден, Допускает запись</strong>";
	}else if(!file_exists("csf_ac_logs/config.php")) {
		$cfg="<span style=\"color:red\">Файл не найден</span>";
	}else if(file_exists("csf_ac_logs/config.php") && !is_writeable( "csf_ac_logs/config.php" )){
		$cfg="<span style=\"color:red\">Найден, Не допускает запись | Необходимо выставить права на запись [777]</span>";
	}

	if(is_writeable( "csf_ac_logs/config.php" ) && is_writeable( "csf_ac_logs/config_main.php" )){
		$configs_write="";
	}else{
		$configs_write="disabled";
	}


echo '
<form id="nextstep2" method="post" action="'.$_SERVER["SCRIPT_NAME"].'?step=2">
<br><div align="left"><h1>Проверка файлов на запись</h1></div>
<p>Для правильной работы [CSF-AC] Web-Interface необходим доступ на чтение и запись определённых файлов. Если вы увидите надпись «Не найден», то необходимо проверить правильность установки файлов на сервер. А если увидите надпись «Нет прав на запись», то необходимо изменить права на файл (777), чтобы разрешить [CSF-AC] Web-Interface запись в них.
<br><hr/><br>
<b>config_main.php</b>		|		'.$cfgmain.'<br><br>
<b>config.php</b>			|		'.$cfg.'
</p>

<div align="right"><input type="submit" id="submit" name="submit" value="Следующий шаг >>" '.$configs_write.'/></div>
</form>
';

$antinoob='1';

}



if ($step == '2'){


echo '
<form id="nextstep3" method="post" action="'.$_SERVER["SCRIPT_NAME"].'?step=3">
<br><div align="left"><h1>Настройки базы данных</h1></div>
<p>Для правильной работы [CSF-AC] Web-Interface необходима база данных mySQL, в которую будут записываться обнаружения от подключенных серверов с предустановленным плагином AMXX - <b>CSFile.Info Anti-Cheat</b>.
<br><hr/>
	<p>
		Адрес mySQL:<br>
		<input name="mysql_adress" type="text" size="40" value="localhost">
	</p>
	<p>
		Название БД:<br>
		<input name="mysql_db_name" type="text" size="40" value="csf_anticheat">
	</p>
	<p>
		Имя пользователя:<br>
		<input name="mysql_db_username" type="text" size="40" value="root">
	</p>
	<p>
		Пароль пользователя:<br>
		<input name="mysql_db_password" type="text" size="40">
	</p>
	<p>
		Использовать постоянное подключение: <input type="checkbox" name="mysql_persistent" value="1" checked>
	</p>
</p>

<div align="right"><input type="submit" id="submit" name="submit" value="Следующий шаг >>" '.$configs_write.'/></div>
</form>
';

$antinoob='1';

}

if ($step == '3'){


	if(($_POST['mysql_persistent']) == 1){
		$link = @mysql_pconnect($_POST['mysql_adress'], $_POST['mysql_db_username'], $_POST['mysql_db_password']) or $die="<br><p><h1>Не возможно подключиться к mySQL серверу</h1></p><p>Проверьте правильность ввода `Адрес mySQL`, `Имя пользователя`, `Пароль пользователя`<br><a href=\"javascript:history.go(-1)\">Вернитесь назад, чтобы исправить ошибку ввода.</a></p><br>";
	}else{
		$link = @mysql_connect($_POST['mysql_adress'], $_POST['mysql_db_username'], $_POST['mysql_db_password']) or $die="<br><p><h1>Не возможно подключиться к mySQL серверу</h1></p><p>Проверьте правильность ввода `Адрес mySQL`, `Имя пользователя`, `Пароль пользователя`<br><a href=\"javascript:history.go(-1)\">Вернитесь назад, чтобы исправить ошибку ввода.</a></p><br>";
	}



	if($link!="") @mysql_select_db($_POST['mysql_db_name'],$link) or $die="<br><p><h1>Неверное имя базы данных!</h1></p><p>Проверьте правильность ввода `Название БД`<br><a href=\"javascript:history.go(-1)\">Вернитесь назад, чтобы исправить ошибку ввода.</a></p><br>";
	if($link!="") mysql_close($link);
	if(isset($die)){
		echo $die;
	}else{

	if(($_POST['mysql_persistent'])=='1'){ $persistent = "true"; }else{ $persistent = "false"; }

echo '
<form id="nextstep4" method="post" action="'.$_SERVER["SCRIPT_NAME"].'?step=4">
<br><div align="left"><h1>Создание Администратора</h1></div>
<p>Для управления [CSF-AC] Web-Interface необходимо создать пользователя с правами Администратора. Дальнейшее управление будет проводиться по-адресу где была произведена установка с префиксом ?module=Admin [ Например: http://site.ru/logs/index.php?module=Admin ].
<br><hr/>
	<p>
		Имя пользователя:<br>
		<input name="admin_username" type="text" size="40" value="Admin">
	</p>
	<p>
		Пароль пользователя:<br>
		<input name="admin_password" type="text" size="40" value="'.rand(1000000000, 9999999999).'">
	</p>
</p>

<input name="mysql_adress" type="hidden" value="'.$_POST['mysql_adress'].'">
<input name="mysql_persistent" type="hidden" value="'.$persistent.'">
<input name="mysql_db_name" type="hidden" value="'.$_POST['mysql_db_name'].'">
<input name="mysql_db_username" type="hidden" value="'.$_POST['mysql_db_username'].'">
<input name="mysql_db_password" type="hidden" value="'.$_POST['mysql_db_password'].'">


<div align="right"><input type="submit" id="submit" name="submit" value="Следующий шаг >>" '.$configs_write.'/></div>
</form>
';

	}

$antinoob='1';

}


if ($step == '4'){



echo '
<form id="nextstep5" method="post" action="'.$_SERVER["SCRIPT_NAME"].'?step=5">
<br><div align="left"><h1>Сохранение конфигураций</h1></div>
<p>На этом этапе сохраняются данные подключения к mySQL, а так же данные для входа Администратора.
<br><hr/>';

	$fp = fopen('csf_ac_logs/config_main.php','w'); 
	$line = "<? \r\n\r\n	// Использовать постоянное соединение";
	$line .= "\r\n	define(\"MYSQL_PERSISTENT\", ".$_POST['mysql_persistent'].");";
	$line .= "\r\n\r\n	// Адрес mySQL сервера";
	$line .= "\r\n	define(\"MYSQL_ADDR\", \"".$_POST['mysql_adress']."\");";
	$line .= "\r\n\r\n	// Логин от БД";
	$line .= "\r\n	define(\"MYSQL_USER\", \"".$_POST['mysql_db_username']."\");";
	$line .= "\r\n\r\n	// Пароль от БД";
	$line .= "\r\n	define(\"MYSQL_PASS\", \"".$_POST['mysql_db_password']."\");";
	$line .= "\r\n\r\n	// Имя базы данных";
	$line .= "\r\n	define(\"MYSQL_DB\", \"".$_POST['mysql_db_name']."\");";
	$line .= "\r\n\r\n	// Список админов, через запятую (логин => пароль)";
	$line .= "\r\n	\$LOGIN_INFORMATION = array('".$_POST['admin_username']."' => '".$_POST['admin_password']."');";
	$line .= "\r\n \r\n?>"; 
	fwrite($fp,$line);
	fclose($fp);

	if(file_exists("csf_ac_logs/config_main.php") && is_writeable( "csf_ac_logs/config_main.php" )){
		$cfg="<strong style=\"color:green\">Данные успешно сохранены.</strong>";
	}
	if(isset($cfg)){
		echo $cfg;
	}else{
		echo '<span style=\"color:red\">Данные не были сохранены, причиной может быть отсутствие файла или нет прав на запись.</span>';
	}

echo '
</p>
<input name="mysql_adress" type="hidden" value="'.$_POST['mysql_adress'].'">
<input name="mysql_persistent" type="hidden" value="'.$_POST['mysql_persistent'].'">
<input name="mysql_db_name" type="hidden" value="'.$_POST['mysql_db_name'].'">
<input name="mysql_db_username" type="hidden" value="'.$_POST['mysql_db_username'].'">
<input name="mysql_db_password" type="hidden" value="'.$_POST['mysql_db_password'].'">
<div align="right"><input type="submit" id="submit" name="submit" value="Следующий шаг >>" '.$configs_write.'/></div>
</form>
';



$antinoob='1';

}

if ($step == '5'){

if(isset($_POST['mysql_adress'])){

echo '
<form id="nextstep6" method="post" action="'.$_SERVER["SCRIPT_NAME"].'?step=6">
<br><div align="left"><h1>Создание таблиц</h1></div>
<p>На этом этапе создаются таблицы в базе данных mySQL.
<br><hr/>';

	if ($_POST['mysql_persistent']){
	  $link = @mysql_pconnect($_POST['mysql_adress'], $_POST['mysql_db_username'], $_POST['mysql_db_password']);
	}else{
	  $link = @mysql_connect($_POST['mysql_adress'], $_POST['mysql_db_username'], $_POST['mysql_db_password']);
	}
	@mysql_select_db($_POST['mysql_db_name'],$link);

	function sql_create_table($table, $sql)
	{

		$result = mysql_query($sql) or $error=1;
		@mysql_free_result($result);

		if($error==1){
			return '<p><strong style="color:red">Не возможно создать таблицу: &nbsp;'.$table.'</strong></p>';
		}else{
			return '<p><strong style="color:green">Таблица успешно создана: &nbsp;'.$table.'</strong></p>';
		}

	}

	echo sql_create_table("csf_ac_speedhack","CREATE TABLE `csf_ac_speedhack` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Ping` bigint(5) default NULL,  `Map` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_spinhack","CREATE TABLE `csf_ac_spinhack` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Timetest` varchar(3) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_fastfire","CREATE TABLE `csf_ac_fastfire` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Ping` bigint(5) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_cdhack","CREATE TABLE `csf_ac_cdhack` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Version` varchar(10) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_ffx","CREATE TABLE `csf_ac_ffx` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Version` varchar(10) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_cheatlist","CREATE TABLE `csf_ac_cheatlist` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Cheat` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_namespam","CREATE TABLE `csf_ac_namespam` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `FirstNick` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_cheatnames","CREATE TABLE `csf_ac_cheatnames` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `CheatTag` varchar(32) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_bunnyhop","CREATE TABLE `csf_ac_bunnyhop` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_zoneguard","CREATE TABLE `csf_ac_zoneguard` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `Map` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_cmdflood","CREATE TABLE `csf_ac_cmdflood` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `CmdFlood` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_cheatkey","CREATE TABLE `csf_ac_cheatkey` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `CheatKey` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_cheatsay","CREATE TABLE `csf_ac_cheatsay` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `CheatSay` varchar(192) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_filescheck","CREATE TABLE `csf_ac_filescheck` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `BadFile` varchar(192) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");
	echo sql_create_table("csf_ac_opengl32","CREATE TABLE `csf_ac_opengl32` (  `Date` datetime default '0000-00-00 00:00:00',  `ServerName` varchar(255) default NULL,  `Nick` varchar(48) default NULL,  `IP` varchar(255) default NULL,  `SteamID` varchar(35) default NULL,  `OpenGL32` varchar(48) default NULL,  PRIMARY KEY  (`Date`)) ENGINE=MyISAM DEFAULT CHARSET=cp1251;");

echo '
</p>
<input name="mysql_adress" type="hidden" value="'.$_POST['mysql_adress'].'">
<input name="mysql_persistent" type="hidden" value="'.$_POST['mysql_persistent'].'">
<input name="mysql_db_name" type="hidden" value="'.$_POST['mysql_db_name'].'">
<input name="mysql_db_username" type="hidden" value="'.$_POST['mysql_db_username'].'">
<input name="mysql_db_password" type="hidden" value="'.$_POST['mysql_db_password'].'">
<div align="right"><input type="submit" id="submit" name="submit" value="Следующий шаг >>" '.$configs_write.'/></div>
</form>
';



mysql_close($link);
$antinoob='1';
}
}

if ($step == '6'){


echo '
<br><div align="left"><h1>Установка завершена!</h1></div>
<p>Программа установки [CSF-AC] Web-Interface завершила установку. Теперь вам необходимо удалить файл установки install.php и выставить права доступа для файла <b>csf_ac_logs\config_main.php (640)</b>
</p><br>';

$antinoob='1';

}



if ($step == '0' || $antinoob != '1'){
echo '
<form id="nextstep1" method="post" action="'.$_SERVER["SCRIPT_NAME"].'?step=1">
<br><div align="left"><h1>Вас приветствует программа установки CSFile.Info Anti-Cheat Web-Interface</h1></div>
<p>С помошью этой программы установки Вы сможете установить [CSF-AC] Web-Inerface на сервер.
<br><br>
Для этого вам необходимо знать реквизиты доступа к базе данных. Если вы не знаете их, то свяжитесь с компанией, предоставляющей вам услуги хостинга, и узнайте их у неё. Вы не сможете продолжить установку без этих данных. Также вам нужно знать следующее:
<br><br>
	<ul>
		<li>Имя сервера БД - адрес сервера базы данных.</li>
		<li>Название базы данных - имя базы данных на сервере.</li>
		<li>Имя пользователя БД и Пароль к БД - данные для доступа к базе данных.</li>
	</ul>

<br>
</p>
<div align="right"><input type="submit" id="submit" name="submit" value="Следующий шаг >>" /></div>
</form>
';
$antinoob='1';
}


echo '</td>
</tr></table></td>
		<td class="publisher-right"></td>
	</tr>

	<tr>
		<td width="7"><img src="csf_ac_logs/img/publisher_left_bottom.gif" width="7" height="7" alt="" /></td>
		<td class="publisher-bottom"><img src="csf_ac_logs/img/images/pixel.gif" width="1" height="7" alt="" /></td>
		<td width="7"><img src="csf_ac_logs/img/publisher_right_bottom.gif" width="7" height="7" alt="" /></td>
	</tr>


</table>
';



echo '</td>
						        </tr>
						    </table>
                            		<div class="footmenu"><br /><b><a href="http://fruit-style.ru/">Web Interface v.'.$version.' | Powered by wWw.fruit-style.Ru</a>';
echo '			</b></div></td>
						<td class="theme-right"></td>
					</tr>
				</table>
				<table class="theme" cellpadding="0" cellspacing="0" width="1000" align="center"">	
					<tr>
						<td width="26" class="theme-bottom-left">&nbsp;</td>
						<td class="theme-bottom">
 							<table width="100%" cellpadding="15" cellspacing="0">
 								<tr>
 									<td class="pageinfo">Web-интерфейс для отображения логов [CSF-AC]<br>Copyright © 2007-2009 CSFile.Info. All rights reserved.</td>
									<object type="application/x-shockwave-flash" width="88" height="31" data="csf_ac_logs/img/banner.swf"><param name="movie" value="csf_ac_logs/img/banner.swf" /><param name="wmode" value="transparent"></object></td>
 								</tr>	
 							</table>	
						</td>
						<td width="26" class="theme-bottom-right"></td>
					</tr>
				</table>';


echo '</table>';


?>