Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: 2011-01-23 16:27 
Не в сети
Администратор
Администратор
Аватара пользователя
Раздал: 51.58 ТБ
Скачал: 620.08 ГБ
Ратио: 85.182


Зарегистрирован: 2010-11-09 02:24
Сообщения: 44886
Откуда: Земля Санникова
Мод позволяет устанавливать максимальную ширину миниатюры через админку, предотвращает увеличение изображения в случае, когда его размер меньше установленной максимальной ширины миниатюры.

Установка

Запрос в базу

[hide]
Код:
INSERT INTO bb_attachments_config (config_name, config_value) VALUES ('img_max_thumb_size','400');
INSERT INTO bb_attachments_config (config_name, config_value) VALUES ('img_thumb_quality','90');
[/hide]

открываем

admin/admin_attachments.php

находим

Код:
'L_MIN_THUMB_FILESIZE_EXPLAIN'   => $lang['Image_min_thumb_filesize_explain'],


ниже добавить

[hide]
Код:
'L_MAX_THUMB_SIZE'            => $lang['Image_max_thumb_size'],
      'L_MAX_THUMB_SIZE_EXPLAIN'      => $lang['Image_max_thumb_size_explain'],
      'L_THUMB_QUALITY'            => $lang['Image_thumb_quality'],
      'L_THUMB_QUALITY_EXPLAIN'      => $lang['Image_thumb_quality_explain'],
[/hide]

находим

Код:
'IMAGE_MIN_THUMB_FILESIZE'   => $new_attach['img_min_thumb_filesize'],


ниже добавить

[hide]
Код:
      'IMAGE_MAX_THUMB_SIZE'      => $new_attach['img_max_thumb_size'],
      'IMAGE_THUMB_QUALITY'      => $new_attach['img_thumb_quality'],
[/hide]

открываем

templates/ваш стиль/admin/admin_attachments.tpl

находим

[hide]
Код:
   <tr>
      <td class="row1" width="80%">{L_MIN_THUMB_FILESIZE}<br /><span class="gensmall">{L_MIN_THUMB_FILESIZE_EXPLAIN}</span></td>
      <td class="row2"><input type="text" size="7" maxlength="15" name="img_min_thumb_filesize" value="{IMAGE_MIN_THUMB_FILESIZE}" class="post" /> {L_BYTES}</td>
   </tr>
[/hide]

ниже добавить

[hide]
Код:
   <tr>
      <td class="row1" width="80%">{L_MAX_THUMB_SIZE} <br /><span class="gensmall">{L_MAX_THUMB_SIZE_EXPLAIN}</span></td>
      <td class="row2"><input type="text" size="3" maxlength="4" name="img_max_thumb_size" value="{IMAGE_MAX_THUMB_SIZE}" class="post" /></td>
   </tr>
   <tr>
      <td class="row1" width="80%">{L_THUMB_QUALITY} <br /><span class="gensmall">{L_THUMB_QUALITY_EXPLAIN}</span></td>
      <td class="row2"><input type="text" size="2" maxlength="3" name="img_thumb_quality" value="{IMAGE_THUMB_QUALITY}" class="post" /></td>
   </tr>
[/hide]

открываем

attach_mod/includes/functions_thumbs.php

находим

[hide]
Код:
function get_img_size_format($width, $height)
{
[/hide]

ниже добавить

[hide]
Код:
global $attach_config;
[/hide]

находим

Код:
$max_width = 400;


заменить

[hide]
Код:
$max_width = (int) $attach_config['img_max_thumb_size'];
[/hide]

находим

Код:
if ($width > $height)


выше добавить

Код:
if ($width > $max_width || $height > $max_width)
   {


находим

[hide]
Код:
      else
      {
         return array(
            round($width * ($max_width / $height)),
            round($height * ($max_width / $height))
         );
      }
[/hide]

ниже добавить

Код:
   }
   
   return array($width, $height);


находим

Код:
   $img_filesize = (@file_exists($source)) ? @filesize($source) : false;


ниже добавить

[hide]
Код:
   $thumbnail_quality = (int) $attach_config['img_thumb_quality'];
   $thumbnail_quality = ( ($thumbnail_quality > 100) || ($thumbnail_quality < 0) ) ? 90 : $thumbnail_quality;
[/hide]

находим

Код:
list($new_width, $new_height) = get_img_size_format($width, $height);


ниже добавить

[hide]
Код:
   if ( ($width <= $new_width) && ($height <= $new_height) )
   {
      return false;
   }
[/hide]

находим

Код:
imagejpeg($new_image, $new_file, 90);


заменить

Код:
imagejpeg($new_image, $new_file, $thumbnail_quality);


открываем

language/lang_russian/lang_admin.php

в самый низ добавить

[hide]
Код:
$lang['Image_max_thumb_size'] = 'Максимальная ширина миниатюры';
$lang['Image_max_thumb_size_explain'] = 'Если ширина или высота изображения меньше установленной, будет создана миниатюра с размерами, равными размерам исходного изображения.';
$lang['Image_thumb_quality'] = 'Качество миниатюры';
$lang['Image_thumb_quality_explain'] = 'Установка качества миниатюры, от 0 (наихудшее качество, наименьший размер файла миниатюры) до 100 (наилучшее качество, наибольший размер файла миниатюры).';
[/hide]


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 58


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Переместиться наверх
 Главная |  Список форумов |   Time : 2.671s | 14 Queries | GZIP : Off |