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

Размер файла: 10.12Kb
<?
			        //Если пользователь не является автором файла ему остальные функции ограничены
                    if($id_user != $view_file['id_user']) {
					    echo engine::error(Lang::__('Доступ ограничен'));
						echo engine::home(array('Назад','view.php?id='.$id.''));
						exit;
					}			
		if (!empty($_FILES['screen'])) {
    		if ($_FILES['screen']['error'])
       			echo engine::error(Lang::__('Ошибка при загрузке'));
    		elseif (!$_FILES['screen']['size'])
        		echo engine::error(Lang::__('Содержимое файла пусто')); 
			else {
        		
				$info = pathinfo($_FILES['screen']['name']);
				
		        switch (strtolower($info['extension'])) {
				    //JPG
                    case 'jpg':
                        $screen = @imagecreatefromjpeg($_FILES['screen']['tmp_name']);
                    break;
                    //JPEG
					case 'jpeg':
                        $screen = @imagecreatefromjpeg($_FILES['screen']['tmp_name']);
                    break;
				    //GIF
                    case 'gif':
                        $screen = @imagecreatefromgif($_FILES['screen']['tmp_name']);
                    break;
					//PNG
                    case 'png':
                        $screen = @imagecreatefrompng($_FILES['screen']['tmp_name']);
                    break;
					//По умолчанию
                    default:
                        echo engine::error(Lang::__('Расширение файла не опознано'));
                    break;
                }
				if (!empty($screen)) {
				        //Создаем $trans для объекта Totranslit
						$trans = new ToTranslit();
						    //Категория куда попадет скриншот
                            $uploaddir = H.'upload/download/screen/';
							//Название транслированное
							$end_name = $trans->replace(engine::format_r($_FILES["screen"]["name"],'.'));				
							//Выполняем добавление
		                    $handle = new upload($_FILES['screen']);
							    //если скрин доступен выполняем следующее ....
                                if ($handle->uploaded) {
								    //даем название
                                    $handle->file_new_name_body   = $end_name;
									//размеры
                                    $handle->image_resize         = true;
                                    $handle->image_x              = 640;
                                    $handle->image_ratio_y        = true;
									//Конвертируем все изображение в jpg для качественности
									$handle->image_convert = 'jpg';									
									//Водяной знак
									$handle->image_text            = 'SHCMS Engine'; //Временно не менять 
                                    $handle->image_text_opacity    = 80;
									//Установка цвета к водяному знаку
                                    $handle->image_text_color      = '#0000FF';
                                    $handle->image_text_background = '#FFFFFF';
									//Установим значем в какой угол пойдет знак
                                    $handle->image_text_x          = -5;
                                    $handle->image_text_y          = -5;
                                    $handle->image_text_padding    = 5;
									//Если загрузилась то выводит 
                                    $handle->process($uploaddir);
                                        if ($handle->processed) {
                                            //echo engine::success(Lang::__('Скриншот успешно загружен'));
                                            $handle->clean();
                                        } else {
										    //При ошибке
                                            echo 'error : ' . $handle->error;
                                        }
                                }
								
								//Добавляем путь к скриншоту в базу
								if($view_file['screen'] == false) {
								    $db->query("UPDATE `files` SET `screen` = '".$db->safesql($end_name).".jpg' WHERE `id` = '".$id."'");
								}elseif($view_file['screen_2'] == false) {
								    $db->query("UPDATE `files` SET `screen_2` = '".$db->safesql($end_name).".jpg' WHERE `id` = '".$id."'");								
								}elseif($view_file['screen_3'] == false) {
								    $db->query("UPDATE `files` SET `screen_3` = '".$db->safesql($end_name).".jpg' WHERE `id` = '".$id."'");								
								}else {
								    echo engine::error('Загрузили максимальное количество!');
								}
								//Если скриншот сохранился то выводит это
                                engine::success(Lang::__('Скриншот успешно добавлен'));
								header('Refresh: 1; url=view.php?act=screen&id='.$id.'');
								echo engine::home(array(Lang::__('Назад'),'view.php?id='.$id.''));
								exit;
                            }
							//Если нет то эта
                            else {
                                engine::error(Lang::__('Скриншот не добавлен'));
								header('Refresh: 1; url=view.php?act=screen&id='.$id.'');
                                exit;
							}
				}
    		}
		
			//Если скриншоты отсутствуют
			if($view_file['screen'] == false) {
			    echo engine::error(Lang::__('Скриншотов нет!'));
			}else {
				//Если имеется хотя бы один скриншот выведится это функция и дополнительные скриншоты тоже
				for ($i = 0; $i < 1; $i++) {
			    	if($view_file['screen'] == true) { 
						$count = '<div class="subpost">Скриншот №('.($i + 1).')
						<span class="time"><a href="view.php?act=screen&id='.$id.'&delete=1"><img src="/engine/template/icons/delete.png"></a></span>
						<br/><img width="45" title="Скриншот № '.($i + 1).'" src="/upload/download/screen/'.$view_file['screen'].'"></div>';
					}if($view_file['screen_2'] == true) {
						$count .= '<div class="subpost">Скриншот №('.($i + 2).')
						<span class="time"><a href="view.php?act=screen&id='.$id.'&delete=2"><img src="/engine/template/icons/delete.png"></a></span>
						<br/><img width="45" title="Скриншот № '.($i + 2).'" src="/upload/download/screen/'.$view_file['screen_2'].'"></div>';	
					}if($view_file['screen_3'] == true) {
						$count .= '<div class="subpost">Скриншот №('.($i + 3).')
						<span class="time"><a href="view.php?act=screen&id='.$id.'&delete=3"><img src="/engine/template/icons/delete.png"></a></span>
						<br/><img width="45" title="Скриншот № '.($i + 3).'" src="/upload/download/screen/'.$view_file['screen_3'].'"></div>';
					}
					//Выведит по назначению
				echo $count;
				}
			}
			
            //Удаление скриншотов $_GET[delete]
			if(isset($_GET['delete'])) {
				//Удаляем основной скрин			
				if($_GET['delete'] == 1) {
					if(@unlink(H.'upload/download/screen/'.$view_file['screen'].'')) {
				   		$db->query("UPDATE `files` SET  `screen` =  '' WHERE `id` = '".$id."'");
						echo engine::success(Lang::__('Скриншот удален успешно'));		
						//Переадресации
						echo engine::home(array('Назад','?id='.$id.''));
                    	exit;					
					}
			    }
				//Удаляем второй скрин
				if($_GET['delete'] == 2) {
					if(@unlink(H.'upload/download/screen/'.$view_file['screen_2'].'')) {
				   		$db->query("UPDATE `files` SET  `screen_2` =  '' WHERE `id` = '".$id."'");
						echo engine::success(Lang::__('Скриншот удален успешно'));		
						//Переадресации
						echo engine::home(array('Назад','?id='.$id.''));
                    	exit;					
					}
			    }
				//Удаляем третий скрин				
				if($_GET['delete'] == 3) {
					if(@unlink(H.'upload/download/screen/'.$view_file['screen_3'].'')) {
				   		$db->query("UPDATE `files` SET  `screen_3` =  '' WHERE `id` = '".$id."'");
						echo engine::success(Lang::__('Скриншот удален успешно'));		
						//Переадресации
						echo engine::home(array('Назад','?id='.$id.''));
                    	exit;					
					}
			    }				
			}
			
			    //Если все скриншоты загружены то выведит это
                if($view_file['screen']== true and $view_file['screen_2']== true and $view_file['screen_3'] == true) {
			        echo engine::error(Lang::__('Загружено максимальное количество скриншотов'));
					//Переадресации
					echo engine::home(array('Назад','?id='.$id.''));
					echo engine::home(array('На главную','index.php'));			  
			  exit;
			  }
				//Форма загрузки скриншотов
		echo '<div class="mainpost">';	
			$form = new form('?act=screen&id='.$id.'','','','enctype="multipart/form-data"');
			//Выводит форма добавление скриншотов
			if($view_file['screen'] == false) {
				$form->input('Выберите скриншот:','screen','file');
			} elseif($view_file['screen_2'] == false) {			
				$form->input('Выберите скриншот:','screen','file');
			}elseif($view_file['screen_3'] == false) {			
				$form->input('Выберите скриншот:','screen','file');
				}
    		//Отправляем данные	
	    	$form->submit('Отправить','submit');
		    $form->display();
            echo '</div>';		
		
		//Переадресации
		echo engine::home(array('Назад','?id='.$id.''));
		echo engine::home(array('На главную','index.php'));