<?php
error_reporting(E_ALL & ~E_NOTICE);
define('SKRIPT_DIR', $_SERVER['DOCUMENT_ROOT']);
define('WBVER', '1.0.3');
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="themes/light/style.css">
<title>WBCAT v2.4.0 repuck by bodja v '.WBVER.'</title></head>
<html><body>
<div class="menu">
<div class="head"><img src="images/logo.png" alt="logo"/></div>';
echo '<div class="zag2">WBCAT v2.4.0 repuck by bodja v '.WBVER.'</div>';
switch($_GET['act']) {
case 'set' :
////////////////////////////////////////////////////////////
// Создание таблиц в базе данных MySQL //
////////////////////////////////////////////////////////////
echo '<div class="zag"><img src="images/green.png" alt="on"/> Установка каталога</div>';
require_once ("inc/db.php");
$dbcnx = mysql_connect($db_host,$db_user,$db_pass);
if (!$dbcnx) {
exit ("Сервер базы данных не доступен");
}
if (!mysql_select_db($db_name , $dbcnx)){
exit ("База данных не доступна");
}
mysql_query("SET NAMES 'utf8'", $dbcnx);
$sql = parse_sql('install.sql');
if (!empty($sql)) {
echo '<br /><div class="error"><img src="images/red.png" alt="off"/>Error!<br />При создании таблиц возникла ошибка.<br />Продолжение невозможно.</div>';
foreach ($sql as $val) echo $val . '<br />';
echo '</body></html>';
exit;
}
echo '<div class="success"><img src="images/green.png" alt="on"/> - Таблицы созданы</div>';
// Профиль админа
############################
$admin = mysql_real_escape_string($_POST['admin']);
$pass = mysql_real_escape_string($_POST['pass']);
$email = mysql_real_escape_string($_POST['email']);
$array = array('admin' => $admin,'pass' => $pass,'email' => $email);
$ser = serialize($array);
mysql_query("UPDATE `modules` SET `set` = '$ser' WHERE `name` = 'logon'") or die('Ошибка настройки администратора');
############################
// Общие настройки
############################
$url = mysql_real_escape_string($_POST['home']);
$reg = 'mod';
$on_page = 5;
$rate = 1;
$review = 1;
$search = 1;
$news = 1;
$captcha = 1;
$correct_url = 0;
$cat_bb =1;
$cat_smile=1;
$mainupdetes=1;
$admcaptcha=intval($_POST['admcaptcha']);
$rate_log_status = 1;
$auth_log_status = 1;
$array = array('url' => $url,
'reg' => $reg,
'on_page' => $on_page,
'rate' => $rate,
'review' => $review,
'search' => $search,
'news' => $news,
'captcha' => $captcha,
'correct_url' => $correct_url,
'rate_log_status' => $rate_log_status,
'auth_log_status' => $auth_log_status,
'cat_bb'=>$cat_bb,
'cat_smile'=>$cat_smile,
'mainupdetes'=>$mainupdetes,
'admcaptcha'=>$admcaptcha);
$ser = serialize($array);
mysql_query("UPDATE `modules` SET `set` = '$ser' WHERE `name` = 'system'")or die('Ошибка настройки "Общих настроек"');
############################
echo '<div class="success"><img src="images/green.png" alt="on"/> - Профиль администратора НАСТРОЕН<br/>';
echo '<img src="images/green.png" alt="on"/> - Общие настройки системы НАСТРОЕНЫ<br/>';
echo '<img src="images/green.png" alt="on"/> Установка каталога <b>WBCAT (v2.0.0RC) repuck by bodja v '.WBVER.'</b> завершена</div>';
echo '<div class="error"><b>УДАЛИТЕ ФАЙЛ install.php !</b></div>';
echo '<div class="func"><a href="logon.php">Вход в админ-панель</a></div>';
break;
case 'admin' :
////////////////////////////////////////////////////////////
// Настройки сайта и Администратора //
////////////////////////////////////////////////////////////
$dblocation = trim($_POST['host']);
$duser = trim($_POST['user']);
$dpasswd = trim($_POST['pass']);
$dname = trim($_POST['name']);
$error = false;
$dbcnx = mysql_connect($dblocation,$duser,$dpasswd);
if (!$dbcnx) {
$error = true;
}
if (!mysql_select_db($dname , $dbcnx)){
$error = true;
}
if ($error) {
echo '<div class="error"><img src="images/red.png" alt="off"/> Ошибка соединения с базой данных . Проверьте правильность настроек (название базы,пароль и т.д)</div>';
echo '<div class="main"><a href="install.php">Повторить</a></div>';
echo "<div class='foot'>(c) wapweb</div>";
echo '</div>';
echo '</body></html>';
exit;
}
if (decoct(fileperms('inc/')) % 1000 == 777 && decoct(fileperms('images/')) % 1000 == 777 && decoct(fileperms('images/captcha/')) % 1000 == 777)
{
$text = "<?php\r\n". "$" . "db_host=\"$dblocation\";\r\n" . "$" . "db_user=\"$duser\";\r\n" . "$" . "db_pass=\"$dpasswd\";\r\n" . "$" . "db_name=\"$dname\";\r\n"
. "\r\n?>";
$fp = @ fopen("inc/db.php", "w");
fputs($fp, $text);
fclose($fp);
}
else {
echo '<div class="error"><img src="images/red.png" alt="off"/> Установите права доступа <b>777</b> на папку <b>inc/</b><br/>
<img src="images/red.png" alt="off"/> Установите права доступа <b>777</b> на папку <b>images/</b><br/>
<img src="images/red.png" alt="off"/> Установите права доступа <b>777</b> на папку <b>images/captcha</b></div>';
echo '<div class="main"><a href="install.php">Повторить</a></div>';
echo "<div class='foot'>(c) wapweb</div>";
echo '</div>';
echo '</body></html>';
exit;
}
echo '<div class="zag">Профиль администратора</div>';
echo '<div class="title"><form method="post" action="install.php?act=set">';
echo '<b>Логин</b><br/><input name="admin" maxlength="50" value="Admin" /><br />';
echo '<b>Пароль</b><br/><input name="pass" maxlength="50" value="password" /><br />';
echo '<b>E-mail</b><br/><input name="email" maxlength="50" value="[email protected]" /><br />';
echo '<b>Адрес где установлен скрипт</b> без слэша в конце<br/><input name="home" maxlength="100" value="http://' . $_SERVER["SERVER_NAME"] . '" /><br/>';
echo '<b>Каптча при авторизации в админ панели</b> <br/>
<input type="radio" value="1" name="admcaptcha" checked="checked" />Вкл<br />
<input type="radio" value="0" name="admcaptcha"/>Выкл<br />';
echo '<input value="Продолжить" type="submit" class="button" /></form></div>';
break;
default :
////////////////////////////////////////////////////////////
// Настройка соединения с MySQL //
////////////////////////////////////////////////////////////
$dirname=str_replace('/install.php','',$_SERVER['SCRIPT_FILENAME']);
if($dirname==SKRIPT_DIR){
echo '<div class="success">Установка каталога WBCAT<br/>
<b>#1.</b> Ниже вы должны ввести настройки соединения с базой данных MySQL.<br />Если вы не уверенны в них, свяжитесь с вашим хостинг-провайдером.</div>';
echo '<div class="title"><form action="install.php?act=admin" method="post"><b>Адрес сервера</b><br /><input type="text" name="host" value="localhost"/><br/>';
echo '<b>Название базы</b><br /><input type="text" name="name" value=""/><br/>';
echo '<b>Имя пользователя</b><br /><input type="text" name="user" value=""/><br/>';
echo '<b>MySQL пароль</b><br /><input type="text" name="pass"/><br/>';
echo '<input type="submit" class="button" value="Продолжить"/></form></div>';
echo '<div class="main"><a href="index.html">На главную</a></div>';
}else{
echo '<div class="error"><img src="images/red.png" alt="off"/> <b>Каталог можно установить только в корень сайта </b></div>
Нынешняя папка: <b>'.$dirname.'</b><br />
Необходимая папка: <b>'.SKRIPT_DIR.'</b><br />
Исправьте это тогда инстоляция продолжится
';
}
break;
}
function parse_sql($file = false)
{
$errors = array();
if ($file && file_exists($file)) {
$query = fread(fopen($file, 'r'), filesize($file));
$query = trim($query);
$query = preg_replace("/\n\#[^\n]*/", '', "\n" . $query);
$buffer = array();
$ret = array();
$in_string = false;
for ($i = 0; $i < strlen($query) - 1; $i++) {
if ($query[$i] == ";" && !$in_string) {
$ret[] = substr($query, 0, $i);
$query = substr($query, $i + 1);
$i = 0;
}
if ($in_string && ($query[$i] == $in_string) && $buffer[1] != "\\") {
$in_string = false;
} elseif (!$in_string && ($query[$i] == '"' || $query[$i] == "'") && (!isset($buffer[0]) || $buffer[0] != "\\")) {
$in_string = $query[$i];
}
if (isset($buffer[1])) {
$buffer[0] = $buffer[1];
}
$buffer[1] = $query[$i];
}
if (!empty($query)) {
$ret[] = $query;
}
for ($i = 0; $i < count($ret); $i++) {
$ret[$i] = trim($ret[$i]);
if (!empty($ret[$i]) && $ret[$i] != "#") {
if (!mysql_query($ret[$i])) {
$errors[] = mysql_error();
}
}
}
} else {
$errors[] = 'Fatal error!';
}
return $errors;
}
echo "<div class='foot'>(c) wapweb</div>";
echo '</div>';
echo '</body></html>';
?>