Данный хак улучшит вид attachment для DLE, дополнив ссылку форматом в виде изображения.
Установка хака:1. Открыть engine\modules\functions.php
найти:while ( $row = $db->get_row() ) {
$size = formatsize( @filesize( ROOT_DIR . '/uploads/files/' . $row['onserver'] ) );
$row['name'] = explode( "/", $row['name'] );
$row['name'] = end( $row['name'] );
$find_1[] = '[attachment=' . $row['id'] . ']';
$find_2[] = "#\[attachment={$row['id']}:(.+?)\]#i";
if ( ! $user_group[$member_id['user_group']]['allow_files'] ) {
$replace_1[] = "<span class=\"attachment\">{$lang['att_denied']}</span>";
$replace_2[] = "<span class=\"attachment\">{$lang['att_denied']}</span>";
} elseif( $config['files_count'] == 'yes' ) {
$replace_1[] = "<span class=\"attachment\"><a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$row['name']}</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";
$replace_2[] = "<span class=\"attachment\"><a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";
} else {
$replace_1[] = "<span class=\"attachment\"><a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$row['name']}</a> [{$size}]</span>";
$replace_2[] = "<span class=\"attachment\"><a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}]</span>";
}
}
Заменить:while ( $row = $db->get_row() ) {
$size = formatsize( @filesize( ROOT_DIR . '/uploads/files/' . $row['onserver'] ) );
$row['name'] = explode( "/", $row['name'] );
$row['name'] = end( $row['name'] );
$path_info = pathinfo(ROOT_DIR . '/uploads/files/' . $row['onserver']);
$format = $path_info['extension'];
switch($format){
default: $icon = '{THEME}/filetypes/blank.png'; break;
case 'doc': case 'docx': $icon = '{THEME}/filetypes/word.png'; break;
case 'pdf': $icon = '{THEME}/filetypes/pdf.png'; break;
case 'exe': $icon = '{THEME}/filetypes/exe.png'; break;
case 'zip': $icon = '{THEME}/filetypes/zip.png'; break;
case 'swf': $icon = '{THEME}/filetypes/flash.png'; break;
case 'rar': $icon = '{THEME}/filetypes/rar.png'; break;
}
$find_1[] = '[attachment=' . $row['id'] . ']';
$find_2[] = "#\[attachment={$row['id']}:(.+?)\]#i";
if ( ! $user_group[$member_id['user_group']]['allow_files'] ) {
$replace_1[] = "<span class=\"attachment\">{$lang['att_denied']}</span>";
$replace_2[] = "<span class=\"attachment\">{$lang['att_denied']}</span>";
} elseif( $config['files_count'] == 'yes' ) {
$replace_1[] = "<span class=\"attachment\"><img src=\"$icon\" alt=\"$format\" align=\"middle\">Скачать<a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" > {$row['name']}</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";
$replace_2[] = "<span class=\"attachment\"><img src=\"$icon\" alt=\"$format\" align=\"middle\">Скачать<a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" > \\1</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";
} else {
$replace_1[] = "<span class=\"attachment\"><img src=\"$icon\" alt=\"$format\" align=\"middle\">Скачать<a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" > {$row['name']}</a> [{$size}]</span>";
$replace_2[] = "<span class=\"attachment\"><img src=\"$icon\" alt=\"$format\" align=\"middle\">Скачать<a href=\"{$config['https_home_url']}engine/download.php?id={$row['id']}{$area}\" > \\1</a> [{$size}]</span>";
}
}
2. Загрузить папку filetypes в /templates/ваш_шаблон/.
Готово.
P.S.: для того что-бы добавить новый формат с иконкой, делаем следующую операцию, находим:
case 'rar': $icon = '{THEME}/filetypes/rar.png'; break;
копируем данный код, вставляем ниже этого кода и заменяем формат на нужный вам, например:
case 'txt': $icon = '{THEME}/filetypes/txt.png'; break;
Добавив при этом в папку filetypes изображением с символом нужного формата.
Так-же не забудьте добавить в настройках DLE необходимый вам формат.
Внимание! У вас нет прав для просмотра скрытого текста.