Нужно добавить пользовательский javascript в диалоговое окно в SugarCRM.

Мне нужна помощь с пользовательским модулем для SugarCRM 6.5 CE. Вот чего я хочу. На странице контактов есть раздел активности. В раскрывающемся списке есть опция «Создать письмо». Я создал несколько файлов, которые добавляют новую опцию. Я хочу, чтобы эта опция открывала одно и то же сообщение электронной почты, а затем, после отправки электронной почты, я хочу выполнять некоторые дополнительные функции. Вот моя проблема, мне удалось добавить новую опцию и сделать ее безопасной для обновления, а также добавить хук after_save для выполнения дополнительных функций. С чем у меня возникли проблемы Я не могу понять, как отличить обычное составление электронного письма от нового варианта составления электронного письма.

Я думаю, что самым простым способом может быть добавление нового javascript в диалоговое окно электронной почты и отправка на сервер дополнительного параметра, указывающего, что можно сделать что-то еще. Я не могу понять, как включить этот дополнительный javascript в диалоговое окно создания электронной почты. Похоже, что диалоговое окно создания электронной почты построено иначе, чем другие представления. Я думаю, что знаю, как изменить некоторые файлы ядра, но я хочу сделать обновление безопасным, чтобы не трогать ядро.

Любая помощь будет принята с благодарностью. Спасибо


person Kareed    schedule 06.08.2012    source источник


Ответы (1)


Подход, который я бы рекомендовал, заключается в расширении класса, используемого для составления электронной почты. Вам нужно будет добавить новую точку входа (пошаговые инструкции см. на форуме SugarCRM) в файл в новом каталоге. Этот файл должен расширять базовый класс электронной почты, и единственное, что вам нужно будет сделать, это переопределить метод по умолчанию для сохранения или отправки электронной почты (предполагая, что это то место, где должны быть дополнительные функции).

Получив расширение, вы просто измените URI, чтобы он указывал на эту новую точку входа, и все остальное должно работать так же.

Надеюсь это поможет!

person BayssMekanique    schedule 06.08.2012