Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Table of Contents

Набор функций по созданию дополнительных информационных полей для пользовательского аккаунта и аккаунта компании. Разрешает создавать дополнительные поля без вмешательства в код системы.

При создании информационного поля нужно указать:

  • Название поля. Поле будет показываться в описании поля;

  • Идентификатор поля. Физическое название поля в базе данных. В названии полей не допускаются пробелы ( ), дефисы (-) или другие не буквенно-числовые символы;

  • Тип поля;

  • Приоритет - номер размещения поля по порядку. От нуля и т д.;

  • Шаблон - регулярное выражение, для проверки правильности ввода (например шаблон '[0-9]+ [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]+' разрешит ввести только «число-пробел-дата-пробел-число «23 2017-12-01 66» );

  • Подсказка - текст всплывающей подсказки, который показывается при неверном вводе;

  • Заполнитель - текст отображающий внутри поля, когда значение не заполнено.

В данный момент можно создавать поля следующих типов.

  1. Строка - строка размером до 200 символов.

  2. Числовое значение.

  3. Список – используется для создания списков выбора фиксированных значений.

  4. Текстовое поле.

  5. Флаг – указание состояния информационного поля (Включено/Выключено).

  6. Blog 
  7. PCRE - Регулярное выражение.

  8. AUTOINCREMENT
  9. ICQ - ICQ.

  10. URL - url
  11. PNONE - дополнительный телефон
  12. EMAIL - E-mail.

  13. Skype - Скайп.

  14. FILE - Заливка файла на сервер.

  15. Рассылка - Согласие абонента на рассылку
  16. PHOTO - ля сохранения бинарных данных: фотографий, документов и т. д. (пока в стадии реализации).
  17. SOCIAL NETWORK - социальные

    сети (при

    сети 

    Tip

    При выборе типа Телеграм кнопка информации будет переправлять на профиль пользователя в Телеграм

    )


  18. Crypt 
  19. Язык - выбор языка, на котором будут отправляться внешние сообщения пользователю (смс, е-мейл, телеграм и др.).

  20. Time zone - Часовой пояс пользователя.

  21. Дата - дополнительное поле для внесения дат.

Для отображения полей в пользовательском интерфейсе или для изменения шаблона системы для информационных полей используются следующие обозначения %_DB_FIELD_NAME% - название поля в базе заглавными буквами

Пример:

Code Block
languagebash
<TABLE>
 <TR>
    <TD><b>_{ADDRESS}_:</b></TD>
    <TD><input type=text value='%_С_ADDRESS%' name=_С_ADDRESS></TD>
 </TR>
</TABLE>


Видео-инструкция

Widget Connector
urlhttps://www.youtube.com/watch?v=r8f1Yzm4Pxc

Дополнительно

Добавление информационных полей: сегмент, подъезд, этаж - через Sqlcmd.

Warning

Есть риск повредить данные. Не делайте, если не понимаете, что такое INSERT и ALTER TABLE.


Code Block
languagebash
INSERT INTO `config` (`param`, `value`) VALUES
('ifu_segment', '0:2:Сегмент'),
('ifu_entrance', '2:0:$_ENTRANCE'),
('ifu_flor', '3:0:$_FLOR');

ALTER TABLE users_pi ADD COLUMN `_segment` smallint(5) unsigned NOT NULL DEFAULT '0';
ALTER TABLE users_pi ADD COLUMN `_entrance` varchar(120) NOT NULL DEFAULT '';
ALTER TABLE users_pi ADD COLUMN `_flor` varchar(120) NOT NULL DEFAULT '';


$conf{ATTACH2FILE}='/usr/abills/Abills/templates/attach';Сохранять прикрепленные файлы на диск, а не в базу. Перед сохранением система смотрит нет ли такого уже файла



Новые информационные поля в кабинете пользователя

Первым делом для того что-бы новые информационные поля заработали вам надо прописать параметр в config.pl → $conf{info_fields_new}=1; после того как вы укажете данный параметр в файле конфигурации система будет работать по новых информационных полях.

Что-бы добавить информационные поля зайдите в Настройка → Другое → Информационные поля или просто напишите в поиске по меню Информационные поля после чего вы попадете в данное менюImage Removed. При нажатии на Image Added появится выпадающий список с форматам экспорта полей

Image Added


Если поле тип=список, то при редактировании будет добавлена дополнительна форма для добавления, изменения и удаления значений спискаImage Added

Поле включения новой схемы информационной полей нужно выполнить миграцию полей на новую схему, нажав на Image Added


Робота информационных полей по новой схеме показана на видео ниже

View file
nameЗапис екрана 2020-03-26 о 12.42.34.mov
height400


Информационное поле "Файл"

Данное поле позволяет прикреплять файлы.

Заполнив поле "Шаблон", можно указать формат названия файла.

С помощью %НАЗВАНИЕ_ПОЛЯ% можно задать, какие данные подставлять в зависимости от значений соответствующих полей у пользователя.

Доступные поля: UID, CONTRACT_ID, FIELD_NAME, LOGIN.

Пример приведен на изображении ниже:

Image Added

Отображение добавленного файла у пользователя:

Image Added

Многоуровневые информационные поля

Функционал позволяет настроить зависимость между полями, где выбор одного поля (например, типа услуги или тарифа) определяет доступность или видимость других полей.

Это позволяет гибко настроить интерфейс и предоставить пользователю только те опции, которые соответствуют его выбору.

Image Added

Поля, которые становятся видимыми и в зависимости от выбора, сделанного в родительском поле.

Пример:

До выбора елемента в car:

Image Added

После:
Image Added