ავტორი: tumoxa (my-dle.ru)
ვერსია CMS DLE: 9.x
აღწერა:ამ ხაკის მეშვეობით თქვენ შეგიძლიათ უფრო მეტად დახვეწოთ თქვენი attachment-ი
დაყენების ინსტრუქცია:
1. ატვირთეთ არქივის შემცველიფ აილები, ფაილი filetypes, შაბლონის პაპკაში (მაგ: /თქვენი შაბლონი/filetypes)
2. ფაილში
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['http_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['http_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['http_home_url']}engine/download.php?id={$row['id']}{$area}" >{$row['name']}</a> [{$size}]</span>";
$replace_2[] = "<span class="attachment"><a href="{$config['http_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': $icon = '{THEME}/filetypes/word.png'; break;
case 'bmp': $icon = '{THEME}/filetypes/word.png'; break;
case 'jpg': $icon = '{THEME}/filetypes/jpg.png'; break;
case 'jpeg': $icon = '{THEME}/filetypes/jpg.png'; break;
case 'png': $icon = '{THEME}/filetypes/png.png'; break;
case 'gif': $icon = '{THEME}/filetypes/gif.png'; break;
case 'psd': $icon = '{THEME}/filetypes/photoshop.png'; break;
case 'mp3': case 'wav': case 'ogg': $icon = '{THEME}/filetypes/music.png'; break;
case 'avi': case 'flv': case 'wmv': $icon = '{THEME}/filetypes/music.png'; break;
case 'pdf': $icon = '{THEME}/filetypes/finerider.png'; break;
case 'exe': $icon = '{THEME}/filetypes/exe.png'; break;
case 'txt': $icon = '{THEME}/filetypes/txt.png'; break;
case 'phps': $icon = '{THEME}/filetypes/php.png'; break;
case 'html': case 'htm': $icon = '{THEME}/filetypes/code.png'; break;
case 'rar': case 'zip': case '7z': $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['http_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['http_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['http_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['http_home_url']}engine/download.php?id={$row['id']}{$area}" >\1</a> [{$size}]
</span>";
}
}
სურვილის შემთხვევაში შეგიძლიათ დაამატოთ ფაილის ახალი ტიპი, შესაბამისად ღილაკი მისთვის. ამისთვის საჭიროა:
case 'rar': case 'zip': case '7z': $icon = '{THEME}/filetypes/rar.png'; break;
შემდეგ ჩავსვათ:case 'ფაილის ფორმატი, მაგალიტად mp4': $icon = 'ფაილის ფორმატის სურათამდე გზა, მაგალითად {THEME}/filetypes/mp4.png'; break;
გადაწერე: თქვენ არ შეგიძლიათ ფაილების გადმოწერა სერვერიდან
+3
ავტორი:
admin ნანახია: 2296 | კომენტარი: 2 | Hacks | 21-04-2012, 16:47