This is a wiki-based Developers Guide for In-Portal Open Source CMS. The purpose of this guide is to provide advanced users, web developers and programmers with documentation on how to expand, customize and improve the functionality and the code the In-Portal software. Please consider contributing to our documentation writing effort.
Данное событие косвенно (через метод kTempTablesHandler::DoCopyTempToOriginal) вызывается из события OnSave в процессе копирования данных из временной таблицы в оригинальную.
Данный необязательный для главных записей параметр содержит значение поля, по которому удаляемый объект связан его родительской записью. Данное значение получается из метода kTempTablesHandler::GetForeignKeys.
Объекты, которые будут получены из событий, вызываемых из класса kTempTablesHandler никогда не содержат достоверной информации.
Поэтому в случае, когда нужен объект, загруженный по ID скопированной записи, то его нужно загружать самому. Это будет показано на ниже приведённом примере.
Данное событие можно использовать для сохранения данных, которые находятся в оригинальной таблице. К примеру можно сохранить оригинальные данные и далее сравнить их с новыми и выслать оповещения о каких либо критичных изменениях. Если id меньше или равно нулю, то запись ещё не была скопирована в оригинальную таблицу и оповещать никого конечно не нужно. Это будет показано на ниже приведённом примере.
Данное событие будет вызываться только при использовании события OnSave, и следовательно будет работать только в случае, когда используются временные таблицы.