Просмотр файла modules/download/dir.php

Размер файла: 6.7Kb
<?
define('SHCMS_ENGINE',true);
include_once('../../engine/system/core.php');

//Если вместо id num попытаются вставить текст то выводит ошибку
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
    $templates->template(Lang::__('Ошибка при создании выводе файлов и папок')); //Название страницы
    header('Refresh: 1; url=index.php');
    engine::error(Lang::__('Произошла ошибка при выводе файлов')); //При ошибке
    exit;
}
    //Из $_GET в обычную 
    $id = (int) $_GET['id'];
	
    //Выводит папки где $id = true
    $dir_file = $db->get_array($db->query("SELECT * FROM `files_dir` WHERE `id` = '".$id."'")); 
			//Название страницы
    		$templates->template(Lang::__('Загрузки - '.$dir_file['name']));
			
	//Если файла из выбранного $id
        $view = $db->query('SELECT * FROM `files_dir` WHERE `id` = '.$id.'');
		if(!$db->num_rows($view)){
		    header('Refresh: 1; url=index.php');
            engine::error(Lang::__('Произошла ошибка не найдена папка')); //При ошибке
            exit;
		}		
		switch($act):
		    //По умолчанию default
			default:
			$dir_action = $db->get_array($view);
		    //Доступ у кого имеются права 15
		        if($groups->setAdmin($user_group) == 15) {
		            //Создание новых разделов
			        echo '<div class="mainname">'.Lang::__('Администраторская').'</div>
					<div class="mainpost">
				    <img src="/engine/template/icons/add.png">
				    <a href="dir.php?act=new_dir&id='.$id.'">'.Lang::__('Создать папку').'</a></div>';
				}
				
				//Если `load` = 2 то разрешается загружать файлы
				//Если авторизован администратор то он может воспользоваться всеми действиями
				if($dir_action['load'] == 2 or $groups->setAdmin($user_group) == 15) {
				    if(isset($id_user)) {
						echo '<div class="mainpost"><img src="/engine/template/icons/upload.png">
						<a href="upload.php?id='.$id.'">'.Lang::__('Загрузить').'</a> </div>';
					}
				}
				
                //Загружаем в $upload данные из базы 
                $upload = $db->query("SELECT * FROM `files_dir` WHERE `dir` = '".$id."'");
		        //Проверяем есть ли в данной таблице папки
				echo '<div class="mainpost">';
	            if($db->num_rows($upload) > 0) {
	                    //Выводим все данные где `upload` = 1	
                        while($file = $db->get_array($upload)) {
                            echo '<div class="subpost">';   					
				            //Пусть в подпапкам
                            echo '<b><img src="/engine/template/icons/dir.png">&nbsp;<a href="dir.php?id='.$file['id'].'">'.$file['name'].'</a></b>'; 
	                        echo '</div>';  
                        }
		        }
					$uploadf = $db->query("SELECT * FROM `files` WHERE `id_dir` = '".$id."'");
					    if($db->num_rows($upload) > 0 or $db->num_rows($uploadf) > 0) {
	                        //Открытие блока ul
							echo '<ul class="List_withminiphoto Pad_list">';						
                        while($uploadu = $db->get_array($uploadf)) {
						
						    //Если введена название файла то выведит ее иначе выведит загруженное название
							//Если существует название
							if($uploadu['name'] == true) {
							    $name_files = $uploadu['name'];
							}else {
						        //Загруженное название 
							    $name_files = $uploadu['files'];
							}
					//Открытие li
					echo '<li class="clearfix">';
					    //Путь к картинке
						echo '<a href="" title="Просмотр профиля" class="UserPhotoLink left"><img src="/engine/template/down/'.engine::format($uploadu['files']).'.png" class="UserPhoto UserPhoto_mini"></a>';	
						//Файл выводит
						echo '<div class="list_content"><a href="view.php?id='.$uploadu['id'].'"><b>'.$name_files.'</b></a>';
						//Описание
						if(!$uploadu['text2']) {
						echo '<br><span class="desc lighter">'.Lang::__('Не добавлено описание к файлу').'</span></div>';
						}else {
						echo '<br><span class="desc lighter">'.engine::input_text(engine::string($uploadu['text2'],500)).'</span></div>';
						}
					//Закрытие li					
					echo '</li><hr/>';	
					
							
						}
echo '</ul>';						
						}else {
						    echo engine::error(Lang::__('Ничего не найдено!'));
						}
				 echo '</div>';		
		    break;
        
		        case 'new_dir':	
	    	        if(isset($_POST['submit']) and isset($_POST['name'])) {
					    //Фильтруем new_file
						$new_file = intval($_POST['new_file']);
                        //Обрабатываем название		
		                $name = engine::proc_name($_POST['name']);
		                //Проверяет введена ли название
                        if(!$name) {
	                        echo engine::error(Lang::__('Введите название папки'));
	                    }else {		
					        if($new_file != 2) {
							    $new_file = 1;
							}
                //Добавлям данные в базу
	            $db->query("INSERT INTO `files_dir` (`name`,`time`,`dir`,`load`) VALUES ('".$db->safesql($name)."','".time()."','".$id."','".$new_file."')");
	            echo engine::success(Lang::__('Папка успешно создана')); // Успешно
		        echo engine::home(array(Lang::__('Создать еще'),'dir.php?act=new_dir&id='.$id.'')); //Создать еще одну папку
				echo engine::home(array(Lang::__('Назад'),'dir.php?id='.$id.'')); //На пред. страницу
	            exit;			
			}
		}
		//Форма
		echo '<div class="mainpost">';
	    $form = new form('?act=new_dir&id='.$id.'');
		$form->input(Lang::__('Название папки:'),'name','text');
		$form->input(false,'new_file','checkbox','2','','',true,'',Lang::__('Разрешение на добавление файлов'));
		$form->submit(Lang::__('Отправить'),'submit');
		$form->display();
		echo '</div>';
	break;
			endswitch;
			//Переадресация
    echo engine::home(array(Lang::__('Назад'),'/index.php'));	
?>