BitTorrent Трекер RusTrek.ru
http://5.45.70.241/

Меняем размер оставляемых изображений в постах
http://5.45.70.241/viewtopic.php?f=817&t=14610
Страница 1 из 1

Автор:  oartemka178 [ 2011-06-11 17:06 ]
Заголовок сообщения:  Меняем размер оставляемых изображений в постах

Позволяет изменять размер оставляемых изображений в постах с тегом , когда они превышают определённые размеры.

В админке выставляем максимальный размер. Затестить можно здесь http://test.rustrek.ru/viewtopic.php?p=24116#24116

Установка

Открываем includes/bbcode.php

Находим

Код:
// [img]image_url_here[/img] code..
// This one gets first-passed..
$patterns[] = "#\[img:$uid\](.*?)\[/img:$uid\]#si";
$replacements[] = $bbcode_tpl['img'];


Заменяем

Код:
// [img]image_url_here[/img] code..
// This one gets first-passed..
//$patterns[] = "#\[img:$uid\](.*?)\[/img:$uid\]#si";
//$replacements[] = $bbcode_tpl['img'];


Находим

Код:
// [email]user@domain.tld[/email] code..
$patterns[] = "#\[email\]([a-z0-9&\-_.]+?@[\w\-]+\.([\w\-\.]+\.)?[\w]+)\[/email\]#si";
$replacements[] = $bbcode_tpl['email'];


Ниже добавляем

Код:
global $bb_cfg;
$max_image_width = intval($bb_cfg['max_img_width']);

if ( preg_match_all("#\[img:$uid\](.*?)\[/img:$uid\]#si", $text, $images) )
{
     $image_patterns = array();
     $image_replacements = array();
 
     
     while ( list($index, $image_source) = each($images[1]) ) 
     {
         if ( intval($max_image_width) != 0 )         
         {
             list($image_width, $image_height) = @getimagesize($image_source);
             
             if ( $image_width && $image_width > $max_image_width )
             {
                 $image_patterns[] = $images[0][$index];
                 $image_replacements[] = '<a href="#" onClick="javascriptwindow.open(\'' . $images[1][$index] . '\',\'limit_image_mod_popup_img' . $index . '\',\'height=' . $image_height . ',width=' . $image_width . ',status=yes,toolbar=no,menubar=no,location=no,resizable=yes\');"><img src="' . $images[1][$index] .'" width="' . $max_image_width . '" alt="' . $lang['LIW_click_image'] . '" border="0"></a><br /><span class="gensmall">' . $lang['LIW_click_image_explain'] . '</span>';
             }
             else
             {
                 $image_patterns[] = $images[0][$index];
                 $image_replacements[] = '<img src="' . $images[1][$index] . '" alt="" border="0">';
             }
         }
         else
         {
             $image_patterns[] = $images[0][$index];
             $image_replacements[] = '<img src="' . $images[1][$index] . '" alt="" border="0">';
         }
     }
     
     $text = str_replace($image_patterns, $image_replacements, $text);



Открываем admin_board.php

Находим

Код:
"L_MAX_SIG_LENGTH_EXPLAIN" => $lang['Max_sig_length_explain'],


Ниже добавляем

Код:
"L_MAX_IMG_WIDTH" => $lang['Max_img_width'],
"L_MAX_IMG_WIDTH_EXPLAIN" => $lang['Max_img_width_explain'],


Находим

Код:
"SIG_SIZE" => $new['max_sig_chars'],


Ниже добавляем

Код:
"MAX_IMG_WIDTH" => $new['max_img_width'],


Открываем admin_board.tpl

Находим

Код:
<tr>
   <td><h4>{L_ALLOW_SIG}</h4></td>
   <td><input type="radio" name="allow_sig" value="1" {SIG_YES} /> {L_YES}&nbsp;&nbsp;<input type="radio" name="allow_sig" value="0" {SIG_NO} /> {L_NO}</td>
</tr>


Ниже добавляем

Код:
<tr>
    <td class="row1">{L_MAX_IMG_WIDTH}<br /><span class="gensmall">{L_MAX_IMG_WIDTH_EXPLAIN}</span></td>
    <td class="row2"><input class="post" type="text" size="5" maxlength="4" name="max_img_width" value="{MAX_IMG_WIDTH}" /></td>
</tr>


Открываем language/lang_russian/lang_admin.php

В самый низ добавляем

Код:
$lang['Max_img_width'] = 'Максимальная ширина изображений в портале';
$lang['Max_img_width_explain'] = 'Укажите максимальную ширину изображений, добавляемых, используя [img] тег. Значение в пикселах.<br />Установите 0, чтобы отменить уменьшение изображений.';


Открываем language/lang_russian/lang_main.php

В самый низ добавляем

Код:
$lang['LIW_click_image'] = 'Нажмите на изображение, чтобы увидеть его в полном размере.';
$lang['LIW_click_image_explain'] = 'Нажмите на изображение, чтобы увидеть его в полном размере.';


Файл с архива распаковываем и запускаем с браузера

Все готово!

Автор:  krumax [ 2011-06-12 02:27 ]
Заголовок сообщения: 

admin
Спасибо :az:
Протестировал - всё ок.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/