На удивление стандартный функционал SugarCRM не предусматривает возможности загрузки изображений к записям, а нам просто крайне необходимо, чтобы мы могли любоваться на наших любимых клиентов. Если вам это тоже нужно, давайте разберемся вместе, как это сделать просто и легко.
Способов добавления такого функционала несколько. Можно, конечно, сделать все вручную и реализовать возможность загрузки не только фотографий, но и документов, как у меня сделано в одном из модулей. Но этот способ неискушенному разработчику пока рассказывать рано. Позже я его обязательно опишу подробно, а сейчас воспользуемся готовым модулем Photo field by SYNOLIA, который предоставляет нам возможность загружать изображения к следующим родным модулям SugarCRM: Account, Bugs, Calls, Campaigns, Cases, Contacts, Documents, Leads, Meetings, Notes, Opportunities, Project, ProjectTask, Prospects, Tasks. В основном, нас интересует модуль контактов и контрагентов.
К сожалению, данный модуль не предполагает наличия русского языка, поэтому можете воспользоваться моим русифицированным вариантом, скачав его по ссылке: SynoFieldPhoto-RU. Либо если вы работает в англоязычной версии, скачать оригинал по следующей ссылке: http://www.sugarforge.org/frs/download.php/6643/SynoFieldPhoto-20100326.zip. Этот модуль будет работать без дополнительных модификаций на версии SugarCRM 5.5 — 6.0.
Переходим в панель администрирования -> загрузка модулей. Загружаем и устанавливаем данный модуль. Далее добавим для примера поле фотографии для контакта. Для этого заходим в sugar студию, выбираем модуль контакты –> поля -> добавить поле, и тип — photo. Задаем любое имя поля, например, photo. Указываем максимальную длину и ширину, до которой будет обрезаться фотография после загрузки. Также можем дополнительно задать стиль и сделать это обязательным полем. Кроме того, обратите внимание на мои русифицированные подсказки по поводу того, что поля с изображениями не импортируемые и не могут использоваться для объединения дубликатов. Добавляем данное поле в макет просмотра и редактирования.
На этом все. Осталось только сказать начальству, что вы проделали сложнейшую работу по изменению функционала SugarCRM и попросить премию. Чем я сейчас и займусь.
Обновление от 12 августа 2010.
На днях обновился до версии php 5.3.2. Модуль сразу перестал работать. Оказалась причина в том что с версии 5.3 eregi считается deprecated функцией, а в файле phpThumb выставлено предупреждение обо все ошибках. Итак выключаем отображение об ошибках (можно выключить только отображение deprecated ошибок) в самом начале файла custom/SynoFieldPhoto/phpThumb/phpThumb.php
- Код:
-
error_reporting(0);
ini_set('display_errors', '0');
Статья взята с http://sugartalk.ru/