# Карта: Контакты (forbion, мобильная веб-версия) Снято 2026-07-12 наблюдением мобильной вёрстки forbion (вьюпорт 390px, аккаунт `cloude`, строго read-only по mail/073). Пишущие элементы («Создать контакт», «Импорт», «+» у групп/команд, «Сохранить», «Удалить», «⋯» адресных книг) НЕ нажимались — их наличие и подписи сняты с экрана/DOM. ## Вход Нижняя панель шелла → кнопка навигации (стрелка `<`, подпись раздела «Контакты») открывает шторку приложения; либо прямой URL `/apps/contacts/`. Приложение открывается сразу списком «Все контакты» (первый контакт автовыбран на широком экране; в мобильной вёрстке — только список). Нижняя панель шелла (общая, зона лида, для ориентира): `<`/`>` — открыть/закрыть шторку навигации приложения · конверт → Почта · «карточки» → Задачи · камера → Конференции · `≡` → шторка приложений. Панель плавающая поверх контента. ## Экран: Список контактов («Все контакты») **Шапка:** только поле поиска (pill на всю ширину). Заголовка экрана и кнопки «создать» в шапке НЕТ (создание — в шторке навигации). **Тело:** плоский список: аватар (фото или инициалы на цветном круге) + имя (16, тёмный) + email (второй строкой, серый). Разделители-линии. Сортировка — по отображаемому имени (настраивается в «Параметрах контактов»). **Действия:** - Ввод в поиск → фильтрация списка на лету (имя/email); справа в поле появляется `×` — очистить. - Тап по контакту → «Экран: Карточка контакта». - Тап `<` на нижней панели → «Экран: Шторка навигации». ## Экран: Шторка навигации (drawer слева, поверх списка) **Верх:** - «Создать контакт» (зелёная, слева иконка) + отдельный сегмент `+` справа — (не нажималось, read-only; по аналогии с десктопом `+` = быстрое создание). - В контексте команды над ней появляется вторая зелёная кнопка «Импорт контактов» + `+`. **Пункты:** - «Все контакты» [бейдж: 105] → список всех. - «Организационная структура» → «Экран: Организационная структура». - «Без группы» [105] → список контактов без групп (у `cloude` все 105 без групп). - Секция «Группы контакта» [`+`] — пусто (групп нет); `+` = создать группу (не нажималось). - Секция «Команды» [`+`]: «Тест», «admin», «all», «Администраторы поддержки», «Маркетинг», «Показать все команды». У активной команды справа `⋯` (меню; не раскрывалось). Тап по команде → «Экран: Команда». - Кнопка «Параметры контактов» (внизу шторки) → «Экран: Параметры контактов». **Закрытие:** тап по контенту правее шторки (или `>` на нижней панели — кнопка-стрелка меняет направление). NB: кнопка панели при открытой шторке имеет aria «Закрыть навигацию». ## Экран: Карточка контакта (просмотр) **Шапка:** `←` (назад к списку) слева сверху. **Тело (по центру):** большой аватар; имя крупно; подпись — должность/организация (например «ооо--форбион», «Ген.дир»); ряд круглых кнопок-действий; секции полей. **Кнопки-действия (круглые, состав зависит от контакта):** - видеокамера → звонок/беседа Talk с пользователем (у системных контактов-пользователей), - силуэт → профиль пользователя на сервере, - конверт → написать письмо. У обычного (не системного) контакта была только кнопка-конверт. **Секции полей (просмотр; показываются только заполненные):** - «Эл. почта» (значение в рамке-поле), - «Социальная сеть» (ссылка на профиль `…/index.php/u/`), - «Подробное имя» (Имя, Фамилия отдельными строками), - «ID в объединении облачных хранилищ» (federated cloud ID `user@forbion.f7cloud.ru`), - «Адрес» (подтип, напр. «Город»), - «Личные даты» (день рождения), - «Адресная книга» (какой книге принадлежит: «Учётные записи» / «Контакты»). **Действия:** - «✏️ Править» (рядом с именем; ЕСТЬ только у контактов из редактируемых книг, у системных из «Учётных записей» отсутствует) → «Экран: Правка контакта». - `⋯` (справа от имени) → меню: - системный контакт («Учётные записи»): «Скачать», «Копировать контакт», «Создать QR-код»; - обычный контакт: те же + «Исключить контакт из календаря Дней Рождений», «Удалить» (не нажималось). ## Экран: Правка контакта (после «Править») Заголовок вверху — «Создание нового контакта» (похоже, баг вебки: открыт существующий контакт, все данные на месте). **Тело (форма):** - Большой аватар + зелёная кнопка «Добавить фото»; - Поле имени; два поля должности (placeholder «Должност…» + значение, напр. «Ген.дир»); - Кнопки: «✓ Сохранить…», `⋯`; - «Телефон»: строка типа (дропдаун «Домашний» с `×` и `∨`) + поле значения; - «Эл. почта»: тип + значение (та же пара); - «Адрес»: подтип «Город» + поле; - «Личные даты»: поле с датой (дата-пикер); - «О себе»: многострочное поле; - «Часовой пояс»: дропдаун; - «Группы контакта»: дропдаун «Добавить контакт в гру…». **Выход:** `←` — назад без сохранения (проверено, изменений не делалось). ## Экран: Организационная структура **Шапка:** «График:» + селектор. **Тело:** вертикальное дерево-граф: карточки сотрудников (аватар-инициал, имя зелёным, счётчики «Управляет: N» / «Наблюдает: N»), связи линиями, узлы сворачиваются бейджем `^N` на ребре. Пример: admin → g.kuts@proorder.ru. ## Экран: Команда (например «Тест») **Тело:** - Аватар-инициал команды, название, «Владелец» + чип с аватаром (`you`); - Кнопки: «✏️ Править» (зелёная), «Копировать ссылку»; - Секция «Создавать»: кнопки-пилюли «Папка», «Конференции», «Календарь» — создание общих ресурсов команды (не нажималось); - Секция «Члены»: «Добавить» (не нажималось) + список участников (аватар, имя, роль «Владелец»). - «Показать все команды» в шторке ведёт на список команд (у `cloude` контент совпал с экраном команды — все команды и так в шторке). ## Экран: Параметры контактов (модальный шит, `×` для закрытия) - Секция «Общие»: «Сортировать контракты по» — дропдаун: Имя / Фамилия / Имя (фонетическое написание) / Фамилия (фонетическое написание) / Отображаемое имя (текущее) / Последнее изменение; - Кнопка «Импорт контактов» (не нажималось); - Секция «Адресные книги», у каждой `⋯` (не раскрывалось): - «Контакты» — 1 контакт, 0 групп; - «Недавние контакты» — 0 контактов, 0 групп; - «Учётные записи» — «Системная адресная книга, в которой хранятся все учетные записи», 104 контакта, 0 групп; - Кнопка «Новая адресная книга» (не нажималось). ## Пустые состояния / ошибки - Поиск без совпадений: список пустеет (отдельной заглушки на 390px не замечено). - Секция «Группы контакта» без групп — просто пустая (без заглушки). - Состояния ошибок сети не воспроизводились (read-only, боевой сервер). ## Расхождения с нативным клиентом (бэклог b-mob-contacts) - расхождение: **редактирование/удаление контакта** — в вебе «Править» (полная форма: фото, имя, должность, телефон/почта С ТИПАМИ, адрес, даты, о себе, часовой пояс, группы) и «Удалить» в `⋯`; в нативе ничего этого нет (план mail/072 п.1). - расхождение: **типы полей** (Домашний/…) у телефона/почты — натив не парсит TYPE. - расхождение: **группы контакта** (секция в шторке, поле в форме) — в нативе нет (план п.2). - расхождение: **шторка навигации** (Все контакты/Орг.структура/Без группы/Группы/Команды/ Параметры) — в нативе только плоский список с поиском. - расхождение: **организационная структура** (граф) — в нативе нет. - расхождение: **команды** (экран команды, создание ресурсов, члены) — в нативе нет. - расхождение: **параметры** (сортировка, импорт, управление адресными книгами, новая книга) — в нативе нет; создание пишет в первую книгу без выбора. - расхождение: **карточка**: соц.сеть, federated cloud ID, «Исключить из календаря ДР», QR-код, «Скачать», «Копировать контакт» — в нативе нет; зато в нативе есть прямые «Email»/«Позвонить» (системные интенты) — в вебе звонок идёт через Talk-кнопку у системных контактов. - расхождение: **меню `⋯` карточки различается по книге** (системная без «Удалить») — нативу при реализации правки учесть read-only книги. - наблюдение: заголовок формы правки в вебе — «Создание нового контакта» (баг вебки, в нативе не повторять). ## Примечания к методике Снималось через same-origin iframe 390px внутри Chrome (окно 2560px нельзя ужать) — media queries отрабатывают по ширине iframe, тема отдаёт мобильную вёрстку (`header__mobile`, `header__mobile-bottom`, `app-content-wrapper--no-split`). Артефакт: плавающая нижняя панель в iframe не отрисовывается (visibility:hidden не снимается темой), состав панели снят из DOM; на реальном телефоне панель видна.