Записи самих посетителей
Корзина, избранное, история заказов, отзывы — то, что переживает закрытие приложения.

Обычная таблица — ваши данные: пишете вы, читают все. Корзина устроена наоборот: она у каждого своя. Поэтому у таблицы есть настройка «Записи из приложения» — она стоит в окне таблицы, рядом с её именем.
- Только я и редакторы — как было раньше. Так стоит у всех таблиц по умолчанию.
- Каждый пишет себе — корзина, избранное, «мои записи», история заказов. Свою строку видит только тот, кто её завёл.
- Каждый пишет себе, админ видит всё — то же самое, но один человек видит в этой таблице все записи. Так собирают заявки, когда разбирает их не владелец: администратору достаточно приложения, кабинет отдавать не нужно.
- Пишут все, видят все — отзывы, объявления, доска. Написанное посетителем увидит каждый, кто откроет приложение.
Кто такой админ — спрашивается тут же, под выбором: «Админ — тот, у кого [поле] равно [значение]». Поле берётся из таблицы людей («одна строка на посетителя»), обычно это «Роль», а значение — «Админ». Дальше вы просто ставите роль нужному человеку прямо в таблице, из редактора. Пока поле и значение не выбраны, правило неполное: админов нет, и таблица остаётся личной — так и должно быть, показывать чужие записи по недонастроенному правилу нельзя.
Дальше всё как обычно: кнопка «В корзину» — это действие «Добавить запись в таблицу», а показывает корзину обычный повторитель по той же таблице. Никаких особых блоков не нужно.
В таблице такие строки видны вам и помечены «Посетитель» — это ваши данные, и править их вы можете здесь. Сам посетитель меняет и убирает только то, что написал сам; рядом со своей строкой в приложении её можно отличить условием {{item.__mine}}.
У режима «пишут все, видят все» рядом стоит галочка «Показывать после проверки». С ней отзыв появляется скрытым: его видите вы и тот, кто его написал, а остальные — только после того, как вы нажмёте «глаз» на строке. Такая строка помечена «На проверке».
Тем же «глазом» убирается и уже показанный отзыв — на случай, когда о нём узнаёшь по жалобе. Это не удаление: написанное остаётся в таблице, и тот же значок возвращает строку обратно, если жалоба оказалась пустой. В самом приложении автор своей ждущей строки отличает её условием {{item.__pending}} — так рядом с ней рисуется «ждёт проверки».
Личные записи считаются отдельно от вашего каталога. Тариф называет два числа: записи — это ваши товары, афиши и услуги, а корзины и избранное покупателей идут своим счётом. Поэтому оживший магазин не отнимает у вас места под товары: раньше десяток покупателей с полными корзинами мог выбрать квоту целиком, и добавить афишу становилось некуда.
У режима «каждый пишет себе» рядом стоит поле «Хранить записи посетителей, дней». Пусто — хранятся всегда, и так у всех таблиц по умолчанию. Поставьте число — и строки старше этого срока будут удаляться сами, раз в сутки. Это про брошенные корзины: собранный и забытый заказ годичной давности занимает ваше место и никому не нужен. Избранное обычно оставляют без срока, корзину — на недели, историю заказов — по тому, сколько вам нужно её видеть.
Таблица пользователей: кто открывал приложение. У режимов записи есть галочка «Одна строка на посетителя»: повторная запись правит строку этого человека, а не добавляет новую, и поля при этом сливаются — телефон, записанный на одном экране, не стирается именем с другого. Готовая заготовка есть в «+ Таблица» → «Пользователи»: телефон, имя, ID Telegram, ID MAX и «Роль» (одно из списка), сразу с режимом «каждый пишет себе» — иначе телефоны всех посетителей видел бы каждый посетитель — и с галочкой «Заполнять таблицу самой».
Эта галочка и ведёт учёт: строка человека заводится сама, когда он открывает приложение, — в неё ложатся имя и номер на площадке (столбцы name, tgId, maxId). Переименовали ключ столбца — он перестаёт заполняться, и панель данных говорит об этом прямо под галочкой. Телефон так не записывается намеренно: им человек делится отдельным жестом, и брать его молча значило бы обойти кнопку «Поделиться номером». Галочка есть у любой таблицы с «одной строкой на посетителя», а не только у заготовки; у таблиц, собранных раньше, она снята — включите, если хотите тот же учёт.
Телефон по-прежнему пишет действие: у «Спросить телефон» есть поле «Записать номер в таблицу» — выберите там таблицу посетителей, и строка появится сразу после того, как человек поделился номером (столбец по умолчанию phone, можно назвать свой). Нужны ещё имя и id — добавьте следом «Добавить запись в таблицу» с полями {{user.tgId}}, {{user.maxId}}, {{user.name}}: форму там выбирать не нужно, значения задаются в «Что записать». Номера площадок — по отдельности: заполнен тот, откуда человек открыл приложение, второй пуст, а пустое поле чужой столбец не затирает — зашёл сначала из Telegram, потом из MAX, и в его строке собрались оба. ({{user.id}} — это «номер на той площадке, где открыто», для столбца «ID Telegram» он не годится.) А читается строка этого человека подстановкой {{me.…}}: {{me.phone}}, {{me.role}} — они есть в выборе данных, раздел «Этот посетитель». Отсюда и роли: поставьте кому-нибудь «админ» прямо в таблице, а на блок повесьте условие «показывать, если {{me.role}} равно админ». Пока человек ничего о себе не оставил, {{me.…}} пуст — и такое условие не срабатывает.