Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.147.67.48] |
|
Сообщ.
#1
,
|
|
|
Несколько релизов:
1. Song - 13.03.04 2. Tishaishii 3. Leprecon 4. Mixxx Program MySuperProgram; Begin WriteLn('This is line'); End. |
Сообщ.
#2
,
|
|
|
4) Mixxx (скрипт) + Song (внедрение в форум)
Реализована клиентская подсветка. Отличается от серверной тем, что работа по подсветке (обрамление текста программы в BB теге code цветовыми HTML тегами) производится не php парсером на серверной стороне, а самим браузером клиента (участника форума). Оставлена возможность переключения на серверную подсветку для медленных машин, браузеров, не поддерживающия Java Script, в случаях когда использование ява скрипта невозможно. Подсветка реализована на тех же регулярных выражениях что и серверная, поэтому не пришлось писать отдельную админку для настроек правил подсветки. Просто при редактировании правил подсветки модератором изменяется специальный js файл. Подсветка реализована из файла ява скрипта - ядро подсветки + файлы данных (тоже js) с правилами подсветки. При выводе топика клиента форум собирает информацию о том, какие типы подсветок встречаются на выводимой странице. Позже, когда HTML поток страницы собран, форум включает в него в заголовок только те js файлы с правилами подсветки, которые были использованы. Таким образом достигается минимальный трафик. В среднем в топиках используется максимум 1 или 2 подсветки и трафик от скрипта составляет не более 5 кб. После загрузки скрипта в кеш браузера, скрипт кешируется и при последующих загрузках используется уже из кеша, не тратя трафик на загрузку скрипта в следующий раз. При изменении правил подсветки имя файла скрипта меняется, чтобы браузер подгрузил и закешировал уже новую версию файла правил подсветки. Посмотреть на работу скрипта можно по этой ссылке (используются все допустимые подсветки): http://forum.sources.ru/index.php?act=legends&CODE=bbcode На данной странице используется скрипт ядра клиентской подсветки + все правила подсветки, которые есть на форуме. |