wdfm, согласен, с картинками уже давно что-то надо делать.
К сожалению, движок форума в этом отношении крайне неудобен. Во-первых, можно добавить только один файл на сообщение, а иногда нужно несколько картинок. Во-вторых, загруженная картинка отображается только в конце сообщения, что неудобно. В-третьих, движок как-то странно делает превью - в них портятся цвета. Поэтому, IMHO, тут нужно дорабатывать движок. Я над этим сейчас как раз думаю...
Из более простых нововведений предлагаю добавить тэг-спойлер, чтобы можно было скрывать "простыни" вроде
таких.
Выглядеть это будет примерно так:
http://someforum.e3w.ru/forum/index.php?t=2
Что нужно сделать.
Первое, добавляем в конец parser.php после:
Код: Выделить всё
$text = preg_replace("/\[group=(\d+?)\](.*?)\[\/group\]/esi","check_group($1,\"$2\")",$text);
строчки:
Код: Выделить всё
$text = str_replace("[spoiler]",'<div class="spoil">
<div class="smallfont"><input type="button" value="Спойлер - нажмите, чтобы показать скрытый текст" class="input-button" onclick="if (this.parentNode.parentNode.getElementsByTagName(\'div\')[1].getElementsByTagName(\'div\')[0].style.display != \'\') { this.parentNode.parentNode.getElementsByTagName(\'div\')[1].getElementsByTagName(\'div\')[0].style.display = \'\'; this.innerText = \'\'; this.value = \'Свернуть\'; } else { this.parentNode.parentNode.getElementsByTagName(\'div\')[1].getElementsByTagName(\'div\')[0].style.display = \'none\'; this.innerText = \'\'; this.value = \'Спойлер - нажмите, чтобы показать скрытый текст\'; }"/>
</div>
<div class="alt2">
<div style="display: none;">',$text);
$text = str_replace("[/spoiler]",'</div>
</div>
</div>',$text);
Собственно, после этого тэг уже работает. Но можно ещё добавить его в панель инструментов.
Для этого:
1) Загружаем файл-значок для спойлера в папку forum/images.
Я использовал вот эту иконку:
http://dgmag.in/other/spoiler.png
2) Модифицируем файл forum/langs/ru/post.js (в конце):
Было:
Код: Выделить всё
...
['s','З','Тег [s] -- перечеркуный текст. Пример: [s]перечеркнутый[/s] (Alt+S)','Введите текст, который должен быть перечеркнут']
]
Стало:
Код: Выделить всё
...
['s','З','Тег [s] -- перечеркуный текст. Пример: [s]перечеркнутый[/s] (Alt+S)','Введите текст, который должен быть перечеркнут'],
['spoiler','Спойлер','Скрыть часть текста под спойлером','Введите текст, который должен быть скрыт']
]
Не забываем про запятую перед добавленной строкой!
3) Модифицируем post.js в папках стилей forum/styles/имя_стиля/post.js
Для Gradient Blue это папка gradblue, к примеру. Т.е. forum/styles/gradblue/post.js
Модифицируем так (добавляем одну строчку):
Было:
Код: Выделить всё
...
document.write('<img style="width: 26px; height: 26px;'+HAND+'" src="'+dir+'table.png" alt="'+codes_array[13][1]+'" onClick="custom(13,3);" title="'+codes_array[13][2]+'">');
document.write('<img alt="|" style="width: 26px; height: 26px;" src="'+dir+'end.png" >');
...
Стало:
Код: Выделить всё
...
document.write('<img style="width: 26px; height: 26px;'+HAND+'" src="'+dir+'table.png" alt="'+codes_array[13][1]+'" onClick="custom(13,3);" title="'+codes_array[13][2]+'">');
document.write('<img style="width: 26px; height: 26px;'+HAND+'" src="'+dir+'spoiler.png" alt="'+codes_array[19][1]+'" onClick="custom(19,3);" title="'+codes_array[19][2]+'">');
document.write('<img alt="|" style="width: 26px; height: 26px;" src="'+dir+'end.png" >');
...
Собственно, всё.
Как это выглядит:
1. Свёрнутый:
2. Развёрнутый: