Модальные окна

Добавление или редактирование договора

Вы можете добавить в стороннюю систему модальное окно с добавлением или редактированием договора из Про.рент. Для этого разместите на странице следующий код:

<iframe src="https://portal.pro.rent/external/contracts/new?token={token}&clientId={clientId}&roomId={roomId}"></iframe>
  • tokenтокен авторизации сотрудника, обязателен.

  • clientId – идентификатор заказчика по умолчанию. Если не указан, то заказчик не будет выбран в форме.

  • roomId – идентификатор помещения, которое добавить в договор. Если не указан, то форма будет без помещений по умолчанию.

Для редактирования договора используйте следующий код:

<iframe src="https://portal.pro.rent/external/contracts/edit/{id}?token={token}"></iframe>

По окончании добавления или редактирования договора в основном окне будет вызвано событие, которое можно обработать следующим образом:

window.addEventListener('message', receiveMessage, false); function receiveMessage(event) { const message = event.data; if (message.event == 'prorentContractAdd') { // при добавлении договора const contract = message.data; // созданный договор ApiContract } else if (message.event == 'prorentContractEdit') { // при редактировании договора const contract = message.data; // измененный договор ApiContract } }

Выбор помещений

Вы можете открыть модальное окно выбора помещений на плане или списке следующим кодом:

<iframe src="https://portal.pro.rent/external/rooms-selector?token={token}&rooms={roomIds}"></iframe>

При любом изменении выбранных помещений будет вызвано событие в основном окне:

window.addEventListener('message', receiveMessage, false); function receiveMessage(event) { const message = event.data; if (message.event == 'prorentRoomsSelect') { const rooms = message.data; // массив выбранных помещений ApiRoomInfo[] } }