Хак: Свои иконки категорий и разделов ФОРУМА

1335
Давно не писал ничего, в общем созрел у меня ХАК и думаю многим он будет интересен и полезный.
Суть модуля заключается в добавлении иконок изображений для категорий и разделов форума чего нет в дефолте.
Можно очень красиво разукрасить форум.
Скрин как выглядит



Значит что делаем.

Открываем файл admin\components\forum\backend.php
находим
Код PHP:
$title          = $inCore->request('title', 'str');
ниже вставляем
Код PHP:
if(!empty($_REQUEST['icon_cat'])) {$icon_cat = $_REQUEST['icon_cat'];} else {$icon_cat = "/components/forum/images/forum.gif";}
ищем
Код PHP:
title='$title',
ниже вставляем
Код PHP:
icon_cat='$icon_cat',
находим
Код PHP:
$title          = $inCore->request('title', 'str');
ниже вставляем
Код PHP:
if(!empty($_REQUEST['icon_cat'])) {$icon_cat = $_REQUEST['icon_cat'];} else {$icon_cat = "/components/forum/images/forum.gif";}
ищем
Код PHP:
title='$title',
ниже вставляем
Код PHP:
icon_cat='$icon_cat',
найти
Код PHP:
if (!empty($_REQUEST['title'])) { $title = $_REQUEST['title']; } else { error("Укажите заголовок категории!"); }
ниже вставить
Код PHP:
if(!empty($_REQUEST['icon_cat'])) {$icon_cat = $_REQUEST['icon_cat'];} else {$icon_cat = "";}

ищем
Код PHP:
		$sql = "INSERT INTO cms_forum_cats (title, published, auth_group, ordering)
				VALUES ('$title', '$published', '$auth_group', '$ordering')";
заменить на
Код PHP:
		$sql = "INSERT INTO cms_forum_cats (title, icon_cat, published, auth_group, ordering)
				VALUES ('$title', '$icon_cat', '$published', '$auth_group', '$ordering')";

найти
Код PHP:
if (!empty($_REQUEST['title'])) { $title = $_REQUEST['title']; } else { error("Укажите заголовок категории!"); }
ниже вставить
Код PHP:
if(!empty($_REQUEST['icon_cat'])) {$icon_cat = $_REQUEST['icon_cat'];} else {$icon_cat = "";}
найти
Код PHP:
SET title='$title',
ниже вставить
Код PHP:
icon_cat='$icon_cat',
найти
Код PHP:
                <tr>
                    <td width="211" valign="top">Заголовок категории: </td>
                    <td width="195" valign="top"><input name="title" type="text" id="title" size="30" value="<?php echo @$mod['title'];?>"/></td>
                    <td width="168" valign="top">&nbsp;</td>
                </tr>
ниже вставить
Код PHP:
                                <tr>
                    <td width="211" valign="top">Иконка категории: </td>
                    <td width="195" valign="top"><input name="icon_cat" type="text" id="icon_cat" size="30" value="<?php echo @$mod['icon_cat'];?>"/></td>
                    <td width="168" valign="top">&nbsp;</td>
                </tr>
найти
Код PHP:
                <tr>
                    <td valign="top"><strong>Описание форума:</strong></td>
                    <td><textarea name="description" cols="35" rows="2" id="description" style="width:250px"><?php echo @$mod['description']?></textarea></td>
                </tr>
ниже вставить
Код PHP:
                <tr>
                    <td width="236"><strong>Иконка форума:</strong></td>
                    <td width="259"><input name="icon_cat" type="text" id="icon_cat" size="30" value="<?php echo @$mod['icon_cat'];?>" style="width:254px"/></td>
                </tr>

открываем файл components\forum\frontend.php

находим
Код PHP:
echo '<div class="forum_cattitle">'.$cat['title'].'</div>';
заменить на
Код PHP:
			if($cat['icon_cat']) $icon_img = '<img src="'.$cat['icon_cat'].'" border="0" align="absmiddle"/> '; else $icon_img = '';
            echo '<div class="forum_cattitle">'.$icon_img.$cat['title'].'</div>';
находим
Код PHP:
<img src="/components/forum/images/forum.gif" border="0" />
заменить на
Код PHP:
<img src="'.$f['icon_cat'].'" border="0" />
Скрытый текст виден только зарегистрированным пользователям


Вот и все, теперь из самой админки можно добавлять или изменять иконки к категориям и разделам.
Скрины админки не выкладываю, сами увидите как все выглядит.

Важно: роботоспособность проверялась только на ICMS 1.8, желающие могут в комментах написать на каких версиях еще работает

Если желаете отблагодарить, прошу.

WebMoney
Скрытый текст виден только зарегистрированным пользователям
Плагин "Похожие записи в блогах" v1.2 | Модуль "Статистика материалов v0.1.3"
Комментарии (12)
Greener 20 февраля 2012 в 20:27 0
Скрин молчит и ничего не показывает ((
Ilekor 20 февраля 2012 в 20:33 +1
Поправил
Greener 20 февраля 2012 в 20:55 0
Ага. Теперь видно.
Лучше, конечно, подбирать серии иконок в одном стиле. Но тут уж, кто во что горазд - каждый сам разберется...
А сама возможность менять иконки, думаю, многим пригодится... Плюс
Ilekor 20 февраля 2012 в 21:22 +1
Я лишь демонстрирую пример использования хака, а не дизайн иконок или форума.
Greener 20 февраля 2012 в 23:16 0
Всё верно.
Я и не критикую. Просто по теме мысли "вслух" )
Джехутимери 20 февраля 2012 в 22:24 0
Спасибо за столь полезный Хак! А есть ли заглушка на случай, если изображение не выбрано?
Ilekor 20 февраля 2012 в 23:38 +2
Если не заполняете, вставляется изображение по дефолту.
LonelyCat 20 февраля 2012 в 22:44 0
а не проще обновиться до 1.9? В ней и так все есть))) или я чего-то не понимаю?
͡﴾͡๏̯͡๏﴿ 20 февраля 2012 в 23:13 0
Не всегда можно обновиться!Я знаю что некоторые еще на 1.6 версии работают...так как уже куча хаков и колосальное количество времени,сил и финансов потрачено!
Ilekor 20 февраля 2012 в 23:28 0
Понятия не имею, что есть в 1.9
Ilekor 20 февраля 2012 в 23:46 +1
Посмотрел я версию 1.9, все равно немного не то. Там есть только для разделов. У меня же и для категорий. В общем каждому свое. Кому то нужно, кому то нет.
Protomoto 21 февраля 2012 в 13:00 +1
>Понятия не имею, что есть в 1.9
вся прелесть опенсорса - пишет кто хочет и как хочет, переписывая переписанное

Вот с категориями - да, внести бы в основной релиз, как и сотни других полезных доработок. Но нет, надо все копья сломать чтоб что-то сдвинулось..