<?php
$t = "Сброс сайта в исходное состояние";
include_once '../core/core.php';
include_once '../core/_navbar_policy.php';
$navbar["reset.lm"]["active"] = true;
if (!$user->auth()){
	$core->GoToPage("/login.lm");
	die();
}

function removeDir($p){
	$p = rtrim($p,"/");
	$array = [];
	if (is_dir($p)){
		$os = scandir($p);
		foreach ($os as $o){
			if ($o != "." && $o != ".."){
				if (filetype($p."/".$o) == "dir"){
					removeDir($p."/".$o);
				} else {
					$array[] = ["path"=>$p."/".$o,"type"=>"file"];
					#var_dump("del file: ".$p."/".$o);
					unlink($p."/".$o);
				}
			}
		}
		reset($os);
		rmdir($p);
		return $array[] = ["path"=>$p,"type"=>"dir"];
	}
}

if (isset($_POST["reset"])){
	if (!isset($_POST["code"]) || empty($_POST["code"])){
		$core->regError("Не введен код с картинки","Не введен код с картинки",6,"Auth");
	} elseif ($_POST["code"] != $_SESSION['captcha']){
		$core->regError("Неправильно введен код с картинки","Неправильно введен код с картинки",12,"Auth");
	} else {
		$_tmp = SERVER_ROOT."default/sites/default.zip";
		$_pth = SERVER_ROOT."sites/".$user->getData()->domain."/";
		$_zip = new ZipArchive();
		$_res = $_zip->open($_tmp);
		if ($_res === TRUE){
			$rmdirs = removeDir($_pth);
			// Отчистка гостевой книги
			$db->Query("DELETE FROM `gb` WHERE `sid` = '".$user->uid."'");
			// Отчистка новостей
			$db->Query("DELETE FROM `news` WHERE `sid` = '".$user->uid."'");
			// Отчистка чата
			$db->Query("DELETE FROM `chat` WHERE `sid` = '".$user->uid."'");
			// Отчистка пользователей
			$db->Query("DELETE FROM `users` WHERE `sid` = '".$user->uid."'");
			// Отчистка комментариев
			$db->Query("DELETE FROM `comments` WHERE `sid` = '".$user->uid."'");
			// Отчистка Форума
			$db->Query("DELETE FROM `forum_topics` WHERE `sid` = '".$user->uid."'");
			$db->Query("DELETE FROM `forum_cat` WHERE `sid` = '".$user->uid."'");
			$db->Query("DELETE FROM `forum_message` WHERE `sid` = '".$user->uid."'");
			// Добавление новой новости
			$db->Query("INSERT INTO `news`(`sid`, `uid`, `ntitle`, `ntext`, `ntime`) VALUES ('".$user->uid."','-1','Сайт был успешно сброшен.','Сайт ".$user->getData()->domain." был успешно сброшен в исходное состоянии.','".time()."')");
			$_zip->extractTo($_pth);
			$_zip->close();
			
			include_once '../core/head.php';
			echo '<div class="alert alert-success">Вы успешно сбросили сайт в исходное состояние!</div>';
		} else {
			$core->regError("Ошибка! Распоковки серверного приложения.","У панели управления недостаточно доступа к файловой системе сервера. Обратитесь к администратору для решения проблемы!",13,"Server");
		}
	}
}
include_once '../core/head.php';
if ($core->isBooleanError()){
	foreach ($core->showError() as $csE){
		echo '<div class="alert alert-danger">#Err'.$csE["code"].'</b> | '.$csE["utxt"].'</div>';
	}	
}
echo '<div class="alert alert-warning">ВНИМАНИЕ! Сброс сайта обозначает удаление полностью всего контента и переустановка стартового дизайна.<br>Будут <b>УДАЛЕНЫ ВСЕ ФАЙЛЫ</b>, новости, записи с гостевой книги.</div>';
echo '<div class="panel panel-default"><div class="panel-body"><form method="POST">
Если вы действительно хотите отчистить сайт<br>
Введите код с картинки и нажмите продолжить<br>
Код с картинки:<br>
<img src="/captcha.lm" alt="Код с картинки"><br><input class="form-control" type="text" name="code" value="" placeholder=""><br>
<input type="submit" name="reset" value="Сбросить" class="btn btn-danger">
</form></div></div>';
include_once '../core/foot.php';
?>