1. Имхо, отсутствие свойств заказа в OnOrderAdd - не комильфо.
2. Часть отправки письма будет дергаться только если isset($GLOBALS['LAST_CREATED_ORDER_ID']), поэтому о скорости можно не думать. Можно эту переменную еще массивом сделать, для двух и более заказов на одной странице.
3. Это недостаток любого описанного в данном топике метода, хотя наверное хендлер OnBeforeEventAdd было бы проще обнаружить. Прозрачно было бы, если бы автор CSaleOrder сделал передачу хэша параметров заказа прямо в метод его добавления, и параметры стали доступны в хендлере OnOrderAdd. Надеюсь, на это обратят внимание.
2. Часть отправки письма будет дергаться только если isset($GLOBALS['LAST_CREATED_ORDER_ID']), поэтому о скорости можно не думать. Можно эту переменную еще массивом сделать, для двух и более заказов на одной странице.
3. Это недостаток любого описанного в данном топике метода, хотя наверное хендлер OnBeforeEventAdd было бы проще обнаружить. Прозрачно было бы, если бы автор CSaleOrder сделал передачу хэша параметров заказа прямо в метод его добавления, и параметры стали доступны в хендлере OnOrderAdd. Надеюсь, на это обратят внимание.
Экс-битриксоид.
Компонент (и.с.) - существительное мужского рода (ГОСТ 34.003-90).
Компонент (и.с.) - существительное мужского рода (ГОСТ 34.003-90).