4dle.ru > Хаки > DLE Files SubFolder

DLE Files SubFolder


30 ноября 2012. Разместил: MSW
DLE Files SubFolder


Автор: MSW
Сайт поддержки: http://0-web.ru/
Версия DLE: 8.*-9.*

Хак раскидывает новые загружаемые файлы на сервер по подпапкам вида Год-Месяц, например /2012-11/.


1. Файлы:
- /engine/download.php
- /engine/ajax/clean.php
Удалить:
$row['onserver'] = totranslit( $row['onserver'], false );


Для DLE 9.5 и ниже
2. Файл: /engine/inc/files.php
Удалить:
$row['onserver'] = totranslit( $row['onserver'], false );


Найти:
if( $serverfile == '' ) {


Добавить ниже:
#****** DLE Files SubFolder *** by MSW ******#
                if( ! is_dir( ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX ) ) {
                    @mkdir( ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX, 0777 );
                    @chmod( ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX, 0777 );
                }
                $file_prefix = FOLDER_PREFIX.$file_prefix;
#****** DLE Files SubFolder *** by MSW ******#


DLE 9.6 и выше
2.1. Файл: /engine/classes/uploads/upload.class.php
Найти:
$uploaded_filename = $this->file->saveFile(ROOT_DIR . "/uploads/files/", $filename);


Заменить на:
#****** DLE Files SubFolder *** by MSW ******#
            if( ! is_dir( ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX ) ) {
                @mkdir( ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX, 0777 );
                @chmod( ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX, 0777 );
            }
            $uploaded_filename = $this->file->saveFile(ROOT_DIR . "/uploads/files/" . FOLDER_PREFIX, $filename);
#****** DLE Files SubFolder *** by MSW ******#


Найти (первый ~435 строка): (сразу ниже прошлой строки поиска)
if ( $uploaded_filename ) {


Добавть ниже:
#****** DLE Files SubFolder *** by MSW ******#
                $uploaded_filename = FOLDER_PREFIX.$uploaded_filename;
#****** DLE Files SubFolder *** by MSW ******#


2.2. Файл: /engine/ajax/upload.php
Удалить:
$row['onserver'] = totranslit( $row['onserver'], false );

[removed][removed] [removed] (adsbygoogle = window.adsbygoogle || []).push({}); [removed]