Страница 1 из 1

Публичная форма - формирование уникальной ссылки (по типу реферальной)

Добавлено: 03 окт 2021, 22:52
alcompstudio
Добрый день!

Есть структура:

Коллцентры
- Клиенты
- - Заявки

Хочу для Заявок создать публичную форму, через которую будут создаваться записи. Мысль в том, чтобы для каждого "Клиента" (родительской сущности) была своя "уникальная" публичная форма в подсущности Заявки, которую мог формировать сам пользователь. Ну т.е. Клиент создал форму для регистрации новых Заявок, которые должны быть у него вложены - и по этой ссылке-поубличной форме создаются записи, которые подключаются только к данному конкретному Клиенту.

http://joxi.ru/1A50vppCzvxjV2

viewtopic.php?p=9966#p9966 - в этой теме нечто похожее, т.е. можно эту возможность использовать просто для формирования самой ссылки (например, через поле текст по шаблону). Но как написать правильно параметр родительской сущности в строке ссылки в браузере? как он "называется"? В указаной выше теме - там поле текущей сущности (т.е. той, которая в публичной ссылке), а мне нужно поле типа parent_item_id, чтобы прописать для строки браузера что-то типа:

Код: Выделить всё

https://мой_адрес_сайта/crm/callcentre/index.php?module=ext/public/form&id=1&fields[parent_item_id]=1
http://joxi.ru/RmzDNkkHjQ3EyA
И чтобы ссылка в браузере имела какой-то зашифрованный вид, чтобы не был стандартным из системы Руководителя, чтобы не было возможности как-то подменить данные в ссылке по ID или еще какому-то параметру. Может будут у кого-то идеи?

Re: Публичная форма - формирование уникальной ссылки (по типу реферальной)

Добавлено: 03 окт 2021, 23:37
alcompstudio
Первая часть вопроса решена, оказывается все есть в документации))

Код с предустановленной родительской записью так будет

Код: Выделить всё

https://мой_адрес_сайта/crm/callcentre/index.php?module=ext/public/form&id=1&parent_item_id=1
А теперь бы еще как-то зашифровать ссылку, чтобы она была по типу такого:

Код: Выделить всё

https://мой_адрес_сайта/crm/callcentre/LKJHkljhlkuylh123213
чтобы скрыть от "искушенного" пользователя и намек на какие-то "изменяемые" параметры

"index.php?module=ext/public/form&id=1&parent_item_id=1"

Может как-то через поле JS , которое в настройках публичной формы есть - какой-то шифрующе-дешифрующий код написать, который в момент отправки скрытно "дешифрует" ссылку в стандартную для Руководителя и заполнит поля нужными данными? Или какие-то другие идеи?

Re: Публичная форма - формирование уникальной ссылки (по типу реферальной)

Добавлено: 04 окт 2021, 00:03
Develop-Soft
Можно кодировать [типа "шифровать"] в base64. В принципе можно в самой форме написать скрипт кнопки "поделиться".

Код: Выделить всё

https://мой_адрес_сайта/crm/callcentre/index.php?request_id=base64-кракозябры
но для этого нужно дописывать парсер в index.php.
Ну или если шифровать по-настоящему тогда должна присутствовать таблица сопоставления с гуидами и url + сам генератор гуидов + какой-то роутер на отдачу содержимого. Но это сложнее...

Re: Публичная форма - формирование уникальной ссылки (по типу реферальной)

Добавлено: 04 окт 2021, 00:19
alcompstudio
Develop-Soft писал(а): 04 окт 2021, 00:03 Можно кодировать [типа "шифровать"] в base64. В принципе можно в самой форме написать скрипт кнопки "поделиться".

Код: Выделить всё

https://мой_адрес_сайта/crm/callcentre/index.php?request_id=base64-кракозябры
но для этого нужно дописывать парсер в index.php.
Ну или если шифровать по-настоящему тогда должна присутствовать таблица сопоставления с гуидами и url + сам генератор гуидов + какой-то роутер на отдачу содержимого. Но это сложнее...
Ясно, спасибо, подумаю над этим)