Новости — декабрь 2019

С момента прошлой публикации в программе произошли следующие изменения:

  • Изменения в веб-интерфейсе Easyhotspot («черной админке»);
  • Обновления и изменения страницы авторизации
  • Обновления и исправления модулей
  • Обновления и исправления скрипта-инсталятора
  • Изменения в документации

Изменения в веб-интерфейсе Easyhotspot («черной админке»)

  • Версия фреймворка Codeigniter (на котором написана «черная админка») обновлена до 3.1.11. Что при этом изменилось в самом Codeigniter можно прочесть в «Change Log» на сайте Codeigniter. Для Easyhotspot это же просто поддержание базового фреймворка в актуальном состоянии;
  • В процедуры создания и редактирования Тарифных пакетов была добавлена проверка того, что срок годности указан меньше, чем номинал. Если Администратор настраивает Тариф именно таким образом, то ему выводится предупредительное сообщение. (Функция была добавлена после перепуганного звонка одного из Администраторов о «неправильно работающем и криво написанном биллинге»! При этом, он поведал мне, что выдал клиентам ваучеры на три месяца, но через 3 дня система перестала пускать их в интернет, рассказывая об «израсходованных лимитах времени»! Как, думаю, всем вам стало ясно из описания добавленной проверки, этот Администратор, создавая тариф, номинал посчитал таки правильно (как и хотел, на три месяца), а вот на срок годности даже и не глянул! В итоге, тот остался именно таким, каким биллинг «рисует» его «по умолчанию» — те самые трое суток!);
  • Исправлена ошибка, возникавшая, когда при экспорте результатов работы платежных модулей была включена птичка «Удалить после экспорта», и заключавшаяся в том, что становились нерабочими попавшие в этот отчет аккаунты «клиентов с оплатой по счету», которые «помесячным» платежом продлевали срок обслуживания своего аккаунта.
  • В «черной админке» вычищены остатки использования «чистого» $_POST в качестве источника данных (с целью повышения безопасности). Теперь используются только данные, «очищенные» функцией Input фреймворка Codeigniter;
  • Добавлен «малогабаритный» формат при генерации PDF документа с ваучерами. В таком формате на страницу помещается 45 «маленьких талончиков» (с дополнительной «подсказкой», что делать клиенту, если страницу хотспота не видно). Ссылка на PDF-файл с примером ваучеров «малого формата»;
  • В форме для создания новой валюты рядом с полем «Аббревиатура» была добавлена кнопочка «?», нажав на которую можно прочесть что именно и в каком виде там нужно вводить (специально для тех, кому лень инструкции читать!), а заодно там ещё и ссылочку можно щелкнуть, да в гуглах разных почитать, «что ж это за стандарт-то такой ISO4217 !?»...
  • В «Журнале действий пользователей программы» добавлена кнопка «Очистить журнал». Цель её, полагаю, ясна из названия — при нажатии на эту кнопку из базы программы Easyhotspot удаляются записи о действиях пользователей (персонала), выполненных ими год назад и ранее;
  • Была проведена оптимизация целого ряда процедур «черной админки», относящихся к работе с ваучерами (включая SQL_запросы). Причиной послужило письмо от одного из клиентов, в котором он пожаловался на скорость показа страниц биллинга, которая по его словам была ужасающей (как было сказано в письме, «список ваучеров открывался минут пять...»). И что немаловажно, этот клиент согласился скинуть мне дамп своей базы, чтобы я смог с ним поэкспериментировать на своем домашнем сервере, за что ему отдельное спасибо! Справедливости ради, считаю нужным уточнить — речь шла о «тормозах» базы, в которой было (на минуточку!!!) «всего-то» 105 тысяч ваучерв (плюс более трехсот тысяч записей о сеансах доступа клиентов в интернет). Изменения, внесенные в процедуры и запросы, в паре с чисткой базы от старых и ставших уже ненужными ваучеров (см. следующий абзац) позволили этому заказчику снова весьма комфортно работать с биллингом, не взирая на число оставшихся в базе используемых ваучеров (а число все-равно не малое — 39 с лишним тысяч!!!). Под «комфортностью» в данном случае подразумевается тот факт, что время, затрачиваемое программой на формирование страниц пришло в норму. Например, список ваучеров (с которого собственно и начиналась претензия) теперь открывается менее чем за секунду! Дублировать тут все, внесенные в программу изменения, считаю излишним. Особенно, с учетом того, что все они описаны в соответствующем посте, размещенном у меня на форуме, и вы в любой момент без проблем сможете прочесть их там...;
  • Проверка программы «толстой базой» (см. абзац выше) в том числе показала, что процедуры Инкассации и последующего Удаления израсходованных ваучеров абсолютно не приемлемы в случае, когда ваучеров в базе — многие тысячи! Поэтому, указанные процедуры были переписаны. Теперь они в Easyhotspot-е стали, скажем так, «пакетными». То есть, сама «идеология не изменилась» — первым делом Администратор должен выполнить Инкассацию. Но теперь, он должен сначала выбрать сотрудника (кассира или другого админа), и указать даты начала и окончания того периода, за который хочет провести Инкассацию. В ответ на его запрос биллинг отбирает из базы все ваучеры, отвечающие указанным критериям, а именно: (а) их выписал указанный сотрудник, (б) ваучеры были активированы клиентами в указанный промежуток времени. В результате он получает вот такой отчет:

Отчет по инкассации сотрудника

Получив этот список, Администратор должен нажать кнопочку «Инкассация» (внизу слева), после чего программа отметит все ваучеры, попавшие в данный отчет, как инкассированные.

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

Список израсходованных ваучеров, подлежащих удалению

Администратору остается всего лишь нажать кнопку «Удалить все», и все эти ваучеры будут удалены! На всякий случай, чтобы вы не переживали, напоминаю, что данные о сеансах тех ваучеров, которыми клиенты пользовались (ходили по ним в интернет), не будут «безвозвратно» удалены! Вместо этого они будут перенесены в архив программы, чтобы не мешать нормальной работе биллинга. А уж из архива вы в любое время сможете их экспортировать в экселевский файл, коим безмерно порадуете горячо любимых сотрудников ФСБ!

Обновления и изменения страницы авторизации

  • В форме ввода номера телефона, используемой страницей авторизации для «Авторизации по СМС/телефонному звонку» реализовано форматирование номера. Посмотреть примеры можно либо на картинке ниже, либо «живьем» — по ссылкам 1 или 2.

новое визуальное форматирование номера телефона, который вводи клиент

  • Параметр, в котором Администратор при желании мог принудительно установить «код страны», перенесен из кода файла javascript в «стандартный» файл настроек страницы авторизации (conf.txt).
  • В настройки страницы авторизации добавлен параметр, меняющий местами вкладки «Пароль» и «Бесплатно». Также, в этом случае, открывающейся по умолчанию вкладкой становится именно «Бесплатно». Данная возможность может оказаться полезной для тех хотспотов, которые используют авторизацию клиентов по СМС или звонку. Благодаря этому, первой клиенту открывается именно та закладка («Бесплатно»), которая предлагает ему ввести свой номер телефона, чтобы получить доступ в интернет! Внешний вид меню страницы авторизации с «переставленными» вкладками:

Внешний вид меню с переставленными вкладкми Пароль и Бесплатно

Обновления и исправления модулей

  • В число «агрегаторов», используемых для отправки СМС, добавлен сервис SemySMS. Сервис интересен тем, что в отличие от традиционных «агрегаторов», он рассылает СМС через ваши «гаджеты», работающие под управлением Android, с помощью установленного на них приложения;
  • Внесен ряд изменений в модуль Liqpay: во первых, модулю достался код, «красиво» форматирующий номер телефона, который вводит клиент. Клиент вводит только цифры, а уже сам скрипт преобразует телефон вот в такой «красивый вид»: +38 (066) 583-6592. Также, был добавлен файл текстовых сообщений на украинском языке (модуль теперь поддерживает три языка интерфейса — английский, украинский и русский). Далее — сообщения об ошибках теперь выводятся popup-окнами, а не функцией alert языка javascript (выглядит и симпатичней, и «более единообразно» в разных браузерах) И напоследок, были внесены небольшие «косметические» изменения в CSS и сами скрипты;
  • Обновлен платежный модуль для п/с Robokassa. Фактически, все внесенные в модуль изменения аналогичны тем, которые были выполнены для модуля Liqpay и описаны в предыдущем абзаце;

Обновления и исправления скрипта-инсталятора

  • В число поддерживаемых скриптом-инсталятором биллинга Easyhotspot включен новый релиз ОС Debian - buster (10-ка). Для установки Coova-chilli на дистрибутив debian 10 (buster) пришлось использовать «костыль» — в систему устанавливается заранее скомпилированный deb-пакет.
  • Изменены способы определения версии дистрибутива Linux, а также методы выбора тех или иных версий пакетов, используемых при установке. Проделано все это было всвязи с выходном новой версии дистрибутива Debian — buster. А точнее — с целью облегчения последующих адаптаций скрипта при включении в число поддерживаемых очередных новых релизов ОС Linux;

Изменения в документации

Обновлена инструкция по быстрой установке программы EASYHOTSPOT скриптом-инсталятором. В инструкцию добавлены подробные описания, включая информацию о:

  • требованиях к железу;
  • выборе ОС и скачивании ее;
  • смысле и возможных значениях тех параметров, вопросы про которые скрипт задает пользователю в процессе своего выполнения;

Обновленная инструкция доступна по ссылке:

Инструкция «Процедура быстрой установки программы EASYHOTSPOT»


Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123)

На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.

Список предыдущих анонсов новостей программы Easyhotspot доступен тут.

 
FB Twitter