Модификации для RotorCMS

Печать RSS
3445
Кураторы темы:


Чатланин
0
Я сделал, но версия сырая, и сделал на сайте только для себя.

Последний из могикан
0
331. Marsellkin, я тоже для себя делал много чего,
но таки выкладываю же для всех )))

Что там сырого ?

Чатланин
0
Я имею ввиду, на сайте только один человек может воспользоваться загрузкой картинки ) Сам загрузчик на JS и на сколько я понял нет проверки по миме типу тут пример
Изменил: Андрей (08.06.2015 / 23:37)

Чатланин
0
К самому загрузчику я добавил генерацию имени, готовое имя вставляю в тело статьи с помощью бб кода, вывод картинки дописывал в functions.php, а именно в "Функция вставки BB-кода"
<?php 
if (isset($_POST['upload'])){
    //Список разрешенных файлов
    $whitelist = array(".gif", ".jpeg", ".jpg", ".png");         
	$data = array();
	$error = true;
	
	//Проверяем разрешение файла
    foreach  ($whitelist as  $item) {
		if(preg_match("/$item\$/i",$_FILES['userfile']['name'])) $error = false;
    }

    //если нет ошибок, грузим файл
    if(!$error) { 
    	   	  
		$folder =  'upload/img/';//директория в которую будет загружен файл
		
	// Получаем расширение файла
$file_ext = strtolower(strrchr($_FILES['userfile']['name'],'.'));
// Генерируем случайное число
$file_name = uniqid(rand(10000,99999));
// Формируем путь на сервере
$uploadedFile  = $folder.$file_name.$file_ext;	
		if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
			if(move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadedFile)){
		
		        $data = $_FILES['userfile'];
		        $data['name'] = $file_name.$file_ext;
			} else {	
				$data['errors'] = "Во время загрузки файла произошла ошибка";
			}
		} else {	
			$data['errors'] = "Файл не  загружен";
		}
    } else {
    	
		$data['errors'] = 'Вы загружаете запрещенный тип файла';
    }
    
    
    //Формируем js-файл    
    $res = '<script type="text/javascript">';
    $res .= "var data = new Object;";
    foreach($data as $key => $value){
    	$res .= 'data.'.$key.' = "'.$value.'";';
    }
    $res .= 'window.parent.handleResponse(data);';
    $res .= "</script>";
    
    echo $res;


} else {
	die("ERROR");
}

?>

Добавлено через 03:27 сек.
Скрытый контент: Для выполнения действия необходимо авторизоваться!

Последний из могикан
0
334. Marsellkin, что именно в functions.php прописывал ? Какой код ?
Просто думаю доработать можно, чтоб после загрузки уже выводил пути к файлам уже в тегах,
И кнопкой вставить, например так, как в ДЛЕ организовано.
Там даже превьюшки есть.

Чатланин
0
335. ®_GodZiIIa_€, посмотрю как сделано на дле может смогу доработать.

Чатланин
0
Это то что в функции.
<?php
//------------------ Вспомогательная функция для img bb-кода --------------------//
function img_replace($img) {
	global $config;
	
	resize_image('/upload/img/', $img[1], 200, '%TITLE%');

return '<a href="/upload/img/'.$img[1].'" target="_blank"><img class="img_bb" src="/upload/thumbnail/_upload_img_'.$img[1].'" alt="%TITLE%" /></a>';
}
//------------------ Функция вставки BB-кода (нужно дописать строчку)--------------------//
	$msg = preg_replace_callback('/\[img\](.*?)\[\/img\]/is', 'img_replace', $msg); 
?>

Чатланин
0
Что бы сделать как на dle, нужно делать всплывающие окна, не буду заморачиваться с этим, мне моего хватает, чтобы добавлять статьи с картинками. Очень удобно, вывел загрузчик для админки, и загружаю в любой момент, копирую только название и вставляю в нужном месте.
Прикрепленные файлы:

Чатланин
0
Где то у меня был multiupload прикрутить его надо будет. Как организовать в блогах подкатегории? Жаль что такого функционала нет

Последний из могикан
0
339. DeLUXXMAO, какой мультиуплоад ? На ДжиЭс ?

А зачем подкатегории в блоги ? Книги писать ? ))
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск