Загрузка файлов в папку шаблона из админпанели | Techno-Co

Иногда приходится быстро отредактировать шаблон, в том числе залить новую картинку в шаблон или новый css/js файл. Для этого приходится запускать FTP-клиент и подключаться к нужному серверу. Бывают случаи, когда находишься не на рабочем месте и нет доступа по FTP. Для таких случаев создан маленький хак, который добавляет возможность загрузить файлы в папку с шаблоном (и под папки) непосредственно из раздела редактирования шаблонов в админпанели.

Установка:
Открыть файл /engine/inc/templates.php и найти:

Исходный код    
  {$lang['opt_edteil']} {$do_template} {$lang['templates_help']} http://dle-news.ru/extras/online/all2.html

Ниже вставить:

Исходный код    
HTML;
// Загрузка файлов в папку с шаблоном
echo "
Загрузка файлов в папку шаблонаВыберите папку для загрузки «; $tplpath = «/templates/».$do_template; showTree(«./».$tplpath, «»); function showTree($folder, $space) { $files = scandir($folder); foreach($files as $file) { if (($file == ‘.’) || ($file == ‘..’)) continue; $f0 = $folder.’/’.$file; if (is_dir($f0)) { echo «».$space.$file.»\n»; } } } echo » «; $dirname = htmlspecialchars(stripslashes($_POST[‘dirname’])); $file = $_FILES[‘file’][‘tmp_name’]; $filename = $_FILES[‘file’][‘name’]; if(!empty($file)) { ini_set(‘memory_limit’, ’32M’); $maxsize = «20000000»; $extentions = array(«gif»,»jpg»,»jpeg»,»png»,»swf»,»js»,»css»,»tpl»); $size = filesize ($_FILES[‘file’][‘tmp_name’]); $type = strtolower(substr($filename, 1 + strrpos($filename, «.»))); if($size > $maxsize) { echo ‘Вы загружаете слишком большой по объёму файл.’; } elseif(!in_array($type,$extentions)) { echo ‘ Данный файл запрещен к загрузке.‘; } else { if (copy($file, ROOT_DIR.$tplpath.»/».$dirname.»/».$filename)) echo » Файл «.$filename.» загружен в папку «.$tplpath.»/».$dirname.»/setTimeout(‘location.replace(\»{$PHP_SELF}?mod=templates\»)’, 3000);»; } } echo «

"; // конец загрузки echo