<?php

$path_source 	= $_SERVER['DOCUMENT_ROOT'] . '/';
$path_tmp 		= ROOT . 'tmp/';

function listFolderFiles($dir){
	$ffs = scandir($dir);

	unset($ffs[array_search('.', $ffs, true)]);
	unset($ffs[array_search('..', $ffs, true)]);

	// prevent empty ordered elements
	if (count($ffs) < 1)
		return;

	echo '<ol>';
	foreach($ffs as $ff){
		echo '<li style="display:block;">';
		echo ' <span style="margin-right:10px;'; if(date ("d.m.Y", filemtime($dir.'/'.$ff)) == date('d.m.Y', strtotime("-0 day"))){echo 'color:#e00000;';} echo '">' . date ("d.m.Y", filemtime($dir.'/'.$ff)).'</span>';
		if(is_dir($dir.'/'.$ff)){echo '<i class="fa fa-folder-open" aria-hidden="true"></i> <b>' . $ff . '</b>'; listFolderFiles($dir.'/'.$ff);} else {echo $ff;}
		echo '</li>';
	}
	echo '</ol>';
}

if(isset($_POST['UpdateCRM'])){
	/* Загрузка бекапа */
	$path_file = $path_tmp;
	// ограничение размера файла
	$limit_size = 10*1024*1024; // 10 Mb
	// корректные форматы файлов
	$valid_format = array('zip');
	// имя нового файла
	//$info = pathinfo();
	$rand_name = $_FILES['upload_update']['name'];

	// если есть отправленные файлы
	if($_FILES['upload_update']){
		// валидация размера файла
		if($_FILES['upload_update']['size'] > $limit_size){
			$notices_er[] = 'Вес файла больше 10 Мб!';
		}
		// валидация формата файла
		$format = end(explode(".", $_FILES['upload_update']['name']));
		if(!in_array($format, $valid_format)){
			$notices_er[] = 'Формат файла не допустимый!';
		}
		// если не было ошибок
		if(empty($notices_er)){
			// проверяем загружен ли файл
			if(is_uploaded_file($_FILES['upload_update']['tmp_name'])){
				// сохраняем файл
				move_uploaded_file($_FILES['upload_update']['tmp_name'], $path_file . $rand_name);
				$notices[] = 'Файл успешно загружен';
			}else{
				// Если файл не загрузился
				$notices_er[] = 'Ошибка загрузки!';
			}
		}		
	}
	UnZip( $path_source , $path_tmp . $rand_name);

	unlink($path_tmp . $rand_name);
	
	unlink(ROOT . 'install.php');

	$notices[] = 'Обновление выполнено';
}
?>