README.md

Tot Message Box v2.27beta (ToMB)

СОДЕРЖАНИЕ:
1. Инструкция по установке
2. Инструкция по настройке
3. Что изменилось в версии 2.27beta ?
4. Описание файлового архива
5. Краткое описание стилей чата
6. Краткое описание js-функций чата
7. Краткое описание РНР-функций чата
8. F.A.Q. : часто задаваемые вопросы
9. Контактная информация

ИНСТРУКЦИЯ ПО УСТАНОВКЕ ЧАТА :

ВНИМАНИЕ ! Перед тем, как устанавливать чат на Ваш сайт, убедитесь, что Ваш сервер поддерживает технологию РНР 4.3.0 и выше.

  1. Разархивируйте файлы чата в каталог tomb на Вашем компьютере.
  2. С помощью любого FTP-клиента выложите папку tomb (вместе с её содержимым внутри) в корневой каталог Вашего сайта.
  3. Выставьте права доступа (CHMOD) на следующие файлы:

    archive.php - 0755 ( или rwxrw-rw-)
    chat.php - 0755 ( или rwxrw-rw- )
    data.php - 0777 ( или rwx-rwx-rwx )
    post_form.php - 0755 ( или rwxrw-rw- )

    Если Вы собираетесь использовать “ToMBAdmin” Для администрирования своего мини-чата ToMB через web-интерфейс, то Проставьте дополнительно права доступа (CHMOD) следующим файлам:

    config.php - 0666 ( или rw-rw-rw- )
    admin/error.log - 0666 ( или rw-rw-rw- )
    admin/index.php - 0755 ( или rwxrw-rw- )
    admin/help.php - 0755 ( или rwxrw-rw- )

ИНСТРУКЦИЯ ПО НАСТРОЙКЕ ЧАТА :

  1. Введите в адресной строке Вашего браузера адрес, по которому находится Ваш мини-чат.
    Например, http://my_site/tomb/admin , где my_site - название Вашего сайта, а tomb - папка, в которую установлен ТоМВ.
    Введите в поля Логин и пароль следующие данные:
    Логин: admin
    Пароль: 123456
    Нажмите “Войти”. Если Всё было сделано правильно, Вы увидите панель администрирования ТоМВAdmin.
    По имеющимся ссылкам Вы можете переходить в модули, входящие в комплект поставки утилиты администрирования ТоМВ и там менять какие-либо специфические настройки (в т.ч. модерировать чат)

    (!) Обязательно зайдите по ссылке “Конфигурирование” и смените пароль и логин администратора! Это поможет Вам обезопасить свой мини-чат и, возможно, сайт от угрозы взлома.

  2. Для добавления Вашего чата в HTML-код любого Вашего проекта добавьте следующие строки :

     <iframe src="http://Ваш_сайт/Папка_чата/chat.php" scrolling=no width="Ширина_чата" height="Высота_чата" name=chat></iframe><br>
     <iframe src="http://Ваш_сайт/Папка_чата/post_form.php" scrolling=no width="Ширина_чата" height="Высота_чата" name=post_form></iframe>

Значения ширины и высоты фреймов чата указывать в пикселях.
Разумеется, эти фреймы можно вставлять в таблицы, отделять их друг от друга; можно вставлять только один фрейм а можно и создавать отдельные шаблоны, читающие информацию из файлов чата.
Важно, чтобы Вы помнили о назначении файлов чата:

chat.php — Показывает отображаемые сообщения чата
post_form.php — Показывает форму отправления сообщения
archive.php — Показывает архив сообщений чата

  1. В чате доступны смайлики ( по умолчанию - 24 )
    Вы можете настроить свои смайлики. Для этого настройте массивы sm_code[] и sm_url[] в файле smiles.js
    sm_code[] - массив, содержащий коды вызова смайликов из чата. (Эти коды будут заменены на картинки смайликов)
    sm_url[] - массив, хранящий адреса картинок смайликов. (Адреса должны соответствовать кодам смайликов из массива sm_code[] )
    Или, если Вы используете интерфейс ToMBAdmin, перейдите по ссылке “Смайлики”.

ЧТО ИЗМЕНИЛОСЬ В ВЕРСИИ 2.27 ?

(или что обновить без переустановки.) Для обновления версии c 2.2х до 2.27 следует: 1. Обновить в каждом скине файлы chat.js и chat.css
(Это можно сделать, скачав новые версии шкурок для чата с офиц. сайта производителя ToMB)
2. Удалить все файлы из директории /tomb Вашего сайта, в которой раньше располагался чат, и залить в неё дистрибутив версии 2.27
(!) Если Вы хотите сохранить сообщения, оставлявшиеся в Вашем чате до текущего апдейта, обновите все файлы, КРОМЕ data.php .

================== === Изменения, коснувшиеся чата в версии 2.27 :

  1. Теперь новые окна корректно открываются в Microsoft Internet Explorer 6.0 и выше, а также в Mozilla FireFox 1.5.0.6 и выше.
  2. Сокращены, по возможности, размеры файлов, разработаны и применены менее ресурсоёмкие алгоритмы чата.
  3. В сообщения чата теперь возможно вставлять гиперссылки!
  4. Слегка изменена структура таблиц в файлах archive.php и chat.php . Теперь, если страница будет растягиваться в ширину из-за малого количества пробелов в сообщениях чата, ссылки на архив и обновление фрейма сообщений будут оставаться на месте и не будут “уплывать” вправо (Если, конечно, размер фрейма не будет слишком маленьким в ширину).
  5. Добавлена возможность управлять максимальным размером слова в сообщении (Полезно, когда в чат отправляется какое-нибудь сообщение без пробелов, а фрейм сообщений чата растягивается в ширину)
  6. Закрыта дырка в алгоритме заполнения базы данных чата. Теперь ник и сообщение пользователя обрезаются по длине не только при отображении формы отправки сообщения, но и при получении отправленных данных.
  7. Закрыта дырка в обработке запроса на отправку сообщения в чат. При использовании для отправки поста сторонних форм или такой программы, как InetCrack, некорректно обрабатывался символ перевода строки. В результате на стороне клиента сообщения не показывались, хотя база данных была цела.
  8. Теперь возможно разделять слишком длинные слова на меньшие по размеру. Это сделано для того, чтобы слишком длинные слова не растягивали черезчур в ширину фрейм сообщений.
  9. Если раньше файловый манипулятор по отношению к базе данных чата открывался один раз за обновление страницы (или два раза, если при этом была перед обновлением страницы отправка сообщения), то теперь файловый манипулятор открывается тогда и только тогда, когда необходимо произвести изменения (добавление сообщения), а сама база данных автоматически вставляется в текущий экземпляр chat.php .
  10. Теперь форма отправки сообщения не генерируется скриптом на стороне клиента, а поступает статчным HTML-кодом в браузер. Это позволило сократить минимально необходимый для работы чата размер JS-файлов до 2.13 КБ .
  11. Вместо перекрывающих друг друга подпрограмм в чате реализован Объектно-ориентированный движок, включающий в себя единый класс $database. Разработка дополнительных библиотек к чату стала гораздо проще и качественнее.

ОПИСАНИЕ ФАЙЛОВОГО АРХИВА ToMB v2.20-3

admin : папка модуля ToMBAdmin
__units : папка, в которой лежат вспомогательные модули, обеспечивающие комфортное управление мини-чатом
____moderation.php : модуль ModeRAT - модерирование чата
____tombconf.php : модуль Configurator - конфигурирование чата
____preview.php : модуль Previewer - превью мини-чата
____login.php : вход в админ-панель
____logout.php : выход из админ-панели
____smiles.php : (В некоторых версиях) модуль Smiler - управление смайликами мини-чата
__source : папка с ресурсными файлами админ-панели
__im : папка с изображениями для админ-панели
__helpfiles : папка с файлами справки, вызываемыми из админ-панели
__error.log : журнал ошибок, произошедших во время работы админ-панели
__index.php : главный “рабочий” файл админ-панели
__help.php : файл справки по админ-панели
skins : папка, в которой хранятся файлы скинов чата
__original : скин чата по умолчанию
____chat.css : файл CSS-форматирования
____chat.js : файл JS-сценариев (определение функций, переменных)
modules : папка, в которой будут храниться доп. модули чата
sm : папка со смайликами
chat.php : фрейм сообщений
post_form.php : фрейм формы отправки сообщения
archive.php : фрейм сообщений архива чата
viewhelp.js : файл, показывающий инструкцию к чату
smiles.js : файл с массивами sm_code[] и sm_url[] , хранящими информацию о смайликах
viewsmiles.js : файл, строящий таблицу со смайликами для ссылки “Показать смайлики”
index.htm : страница с примерами использования чата (вводный пример)
data.php : База Данных Сообщений
library1.php : файл-библиотека функций (Для “бесплатного” хостинга)
library2.php : файл-библиотека функций (Для “платного” хостинга)
config.php : файл с массивом $tomb[] настроек чата
.htaccess : файл с настройками отображения ошибок скрипта. При необходимости - удалить.

КРАТКОЕ ОПИСАНИЕ СТИЛЕЙ ЧАТА

#chatTable {} — Стиль таблицы сообщениямй
#chatTable TR {} — Стиль строк таблицы сообщений
.tableAdd {} — Стиль расположения таблицы сообщений
.light {} — Стиль “светлый” сообщений чата
.dark {} — Стиль “тёмный” сообщений чата
span.nick {} — Стиль отображения ника
span.date {} — Стиль отображения даты сообщения
body {} — Стиль отображения тела документа (для всех фреймов)
table.form {} — Стиль отображения таблицы с формой отправки сообщения
input.nick {} — Стиль поля ввода ника
input.message {} — Стиль поля ввода сообщения
input.submit {} — Стиль кнопки отправления сообщения
a:link, a:visited, a:active {} — Стиль всех ссылок в чате
.archive_link a:hover {} — Стиль ссылки “Архив” и всех, находящихся в соответствующей строке
.archive_link {} — Стиль Строки с ссылками “Архив” и “Обновить”
#msglink:hover {} — Стиль гиперссылки в сообщении (указатель над ссылкой)
#msglink:link {} — Стиль гиперссылки в сообщении (непосещённая ссылка)
#msglink:visited {} — Стиль гиперссылки в сообщении (посещённая ссылка)
#msglink:active {} — Стиль гиперссылки в сообщении (текущая ссылка)

КРАТКОЕ ОПИСАНИЕ JS-ФУНКЦИЙ ЧАТА

show_archive() — Отображение нового окна с архивом сообщений
show_smiles () — Отображение нового окна со смайликами
show_help() — Отображение нового окна с инструкцией пользователю
isForm() — Проверяет, существует ли в окне-родителе фрейма ссылка на фрейм с формой отправки сообщения в чат
addNick() — Добавляет в форму отправки сообщения (если она есть) ник пользователя, на который кликнул посетитель чата во фрейме сообщений
cm() — Отображение сообщения

КРАТКОЕ ОПИСАНИЕ РНР-ФУНКЦИЙ ЧАТА

$database — Класс, представляющий собой объект Базы Данных чата
$database->read_db() — Чтение сообщений из Базы Данных (Возвращается массив $data)
$database->write_db() — Запись сообщений в Базу Данных (Вовращает изменённый массив $data с текущим состоянием БД)
$database->lock_file() — Заимствованная функция блокировки файлов из скрипта ExBB ( http://exbb.net )
$database->print_msgs() — Отвечает за отображение сообщений чата, расположенных в множестве [min;max].
$database->init() — Создание экземпляра Базы Данных. На входе принимает массив имеющегося экземпляра, количество элементов для создаваемого экземпляра и адрес файла БД (если последний не указан - метод возвращает сериализованный массив БД)

Пример использования из archive.php :

$value = $database->read_db($tomb[database]);
$min = $tomb[max_view]-1;
$database->print_msgs($min, $tomb[max_total], $value);

F.A.Q. : ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ

  1. Я забыл пароль от админ-панели. Как получить к ней доступ?
    • Админ-панель получает информацю о логине и пароле администратора из файла config.php , расположенного в корневой директории чата. Просто откройте этот файл для чтения и посмотрите пароль.
  2. В чём различия у библиотек для “платного” и “бесплатного” хостинга?
    • Различие состоит в алгоритме работы. Если “бесплатный” хостинг зачастую позволяет кому-то ид своих клиентов догадаться о структуре каталогов на сервере, а значит, получить к ним доступ, то “платный” хостинг разрешает своему клиенту самому решать, как будет выглядеть структура каталогов на сервере.
      Разумеется, эти библиотеки не позволяют получать привилегии того или иного хостинга, но работают в соответствии с представлениями автора о системе безопасности и степени повышения производительности.
      Так, библиотека для “бесплатного” хостинга разрешает хранить Базу Данных в виде сериализованного массива, а сам массив используется в чате только после того, как считан, обработан и проверен на целостность.
      Библиотека для “платного” хостинга же вставляет экземпляр Базы Данных прямо в код приложения, что существенно снижает затраты ресурсов на работу с Базой Данных, но минуется такой важный процесс, как проверка массива на целостность. Это значит, что вместо Базы Данных может быть вставлен любой произвольный код, возможно, дающий стороннему человеку контроль над сервером.
  3. Чат выдаёт ошибку “База Данных Повреждена”. Что мне делать?
    • Зайдите в панель администрирования чата и выберите меню “модерирование”. Скрипт автоматически определит целостность Базы Данных, и если она повреждена, выдаст об этом сообщение внизу страницы. Выделите все “пустые” сообщения, которые показывает Вам панель модерирования и нажмите “удалить выделенное”. Скрипт автоматически создаст новую, пустую Базу Данных для чата.
      По крайней мере, в большинстве случаев этот метод может помочь.
Описание

Очень старый проект (2006) - мини-чаты, предназначавшиеся для встраивания на страницы форумов. Использовался PHP 4.3.2.

Конвейеры
0 успешных
0 с ошибкой