ChatX 2.4.0
Скрипт был обновлен до версии 2.4.0, которая, пожалуй, стала самым масштабным обновлением за весь период разработки чата. В новой версии мы приблизились к тому желаемому «идеальному» результату, о котором задумывались еще на ранних этапах проекта.
ChatX прошел цикл эволюции и развития и теперь может похвастаться как новыми функциями, так и значительными важнейшими улучшениями. Конечно, достигнув запланированной цели разработки, мы не замораживаем развитие. Чат продолжит качественно и количественно улучшаться и впереди перед нами стоят безумные и не очень идеи и варианты нового функционала, которые еще предстоит реализовать. Но пока мы подробнее остановимся на том, что уже было сделано в этой версии:
- Одной из приоритетных задач был полный отказ от библиотеки jQuery. В версии 2.4.0 ChatX использует исключительно нативный JavaScript. Это большой шаг вперед, который значительно облегчает скрипт и избавляет от необходимости использовать тяжеловесные, устаревшие библиотеки.
- С отказом от jQuery и, в частности, от библиотеки jquery-ui, были переписаны функции перетаскивания и изменения размера чата. Приятным бонусом стала работоспособность функционала и на мобильных устройствах. Кроме того, мы немного обновили визуальные эффекты при задействовании данных функций.
- Значимым недостатком серверной части приложения была невозможность долговременного хранения сессий, из-за чего авторизованные пользователи автоматически выходили из аккаунтов по прошествии N часов. В данной версии эта недоработка устранена использованием JWT-ключей.
- К сожалению, основная проблема которая мешала самой концепции чата — возможности его встраивания на третьи сайты — была связана с отказом современных браузеров от third-party cookies. Таким образом, нам пришлось отказаться от безопасного хранения идентификационного токена в cookies в пользу localstorage при использовании виджета на сторонних сайтах. Такой вариант не отличается защищенностью, но на данный момент мы видим его единственным достижимым решением проблемы. Если Вы будете использовать чат внутри одного домена, то в таком случае будут использованы cookies с параметрами httpsonly, secure, strict.
- Из менее глобальных изменений можно отметить обновление внешнего вида чата. Кроме того, теперь гость, при использовании приложения в публичном режиме, сможет видеть свои сообщения в соответствии с гостевым ником. Такие сообщения, как и для авторизованных пользователей, будут отображаться справа и помечаться отличным от обычных сообщений цветом.
- Мы отказались от jQuery-библиотеки featherlight для просмотра загруженных изображений в пользу собственного скрипта. Нововведением стала возможность приближать фотографию с помощью колесика мыши или тачпада.
- Была добавлена возможность загружать изображения из буфера обмена, например с помощью сочетания горячих клавиш Ctrl+V.
- В модераторской панели появилась функция проверки последней версии скрипта. Если в официальном репозитории github появляется более свежая версия, вы увидите уведомление о ней.
- Также в модерпанели появилась возможность выбирать стиль оформления из преустановленных цветовых схем. Осталась возможность создавать и собственный шаблон.
- В целом, обновили модераторскую панель, добавили как красивостей, так новый функционал.
- Обновлен скрипт интеграции чата с сервисом MyBB. Теперь для аккаунтов генерируется случайный пароль и записывается в форумное хранилище.
- Была проведена определённая работа, чтобы оптимизировать скрипт под различные сервернве настройки.
Это неполный, но отражающий наиболее важные и заметные изменения для версии 2.4.0 список.
Новое обновление, однако, наложило и новые требования для оптимального функционирования чата. Мы настоятельно рекомендуем использовать современные версии PHP (7.0+). Кроме того, для корректной работы потребуется подключение вашего сайта по протоколу https (как обойти ограничение читайте в базе знаний ChatX).
В целом, версия 2.4.0 стала величайшим событием в жизни проекта. Чат стал лучше, современнее и стабильнее в каждом аспекте своей работы. Мы настоятельно рекомендуем именно эту, последнюю, версию к установке.