Sugarcrm: изменить действия на кнопке Dashlet quickEdit

У меня очень специфический вопрос по Sugarcrm.

Я использую версию Enterprise 6.5.16 и захожу в тупик.

Что у меня сейчас есть:

Когда пользователь находится на своей домашней странице, у него есть дашлет под названием "Мои открытые случаи", в котором отображаются все открытые случаи, назначенные ему или созданные им.

Для каждой строки этого дашлета у нас отображается иконка быстрого редактирования. (вы знаете, маленькая ручка). Когда пользователь нажимает на этот маленький значок, он открывает всплывающее окно quickcreate (или quickedit?).

Чего я хочу достичь:

Я хочу, чтобы, когда пользователь нажимает на значок, Sugar не открывает всплывающее окно, а открывает новую вкладку браузера в EditView.

Таким образом, в основном, когда на домашней странице, когда пользователь хочет редактировать "Case01- Issue" из дашлета, вместо того, чтобы открывать форму быстрого создания (или quickedit), я хочу открыть новую вкладку браузера с полным представлением редактирования "Case01". - выпуск ".

Что мне нужно сделать? Я не видел определения значка ни в custom/modules/Cases/metadata/dashletviewdefs.php, ни где-либо еще.

Заранее спасибо за вашу помощь и время!

Gaëlle

3 ответа

Вы должны создать свой собственный дашлет (с копированием существующего в "пользовательскую" папку), заменить все стандартные записи на свои. Добавьте копию DashletGenericDisplay.tpl и назовите ее как CustomMyCasesDashlet.tpl. Нет необходимости расширять класс MyCasesDashlet. Вы можете оставить "Расширяет DashletGeneric". В функции конструктора CustomMyCasesDashlet() просто добавьте строку:

$this->displayTpl = 'custom/modules/Cases/Dashlets/CustomMyCasesDashlet/CustomMyCasesDashlet.tpl';

Обратите внимание на $ this->. Необходимо переопределить поле DashletGeneric.

Дашлет "Мои случаи" и большинство дашлетов расширяют класс DashletGeneric, найденный в /include/Dashlets/DashletGeneric.php, При этом используется файл шаблона DashletGenericDisplay.tpl в том же каталоге, и этот шаблон отображает кнопку быстрого редактирования.

Чтобы удалить или изменить кнопку быстрого редактирования, вы должны расширить Мои Случаи и настаивать на том, чтобы она использовала собственный шаблон Smarty вашего собственного создания. В /custom/modules/Cases/Dashlets/CustomMyCasesDashlet/CustomMyCasesDashlet.php у вас может быть следующее:

<?php
require_once('modules/Cases/Dashlets/MyCasesDashlet/MyCasesDashlet.php');
class CustomMyCasesDashlet extends MyCasesDashlet{
  $displayTpl = 'custom/modules/Cases/Dashlets/CustomMyCasesDashlet/CustomMyCasesDashlet.tpl';
}

Затем вы должны скопировать оригинальный шаблон в новый файл и местоположение, на которое ссылается CustomMyCasesDashlet::displayTpl, и настроить его по своему усмотрению.

Чтобы ваш Dashlet мог правильно зарегистрироваться в системе, вам также понадобится файл CustomMyCasesDashlet.meta.php. Скопируйте оригинал в свой пользовательский каталог и при необходимости измените метки - ключ должен заменить ссылки на MyCasesDashlet на CustomMyCasesDashlet.

Скопируйте файл из модулей /Cases/Dashlets/MyCasesDashlet/MyCasesDashlet.php и вставьте его в пользовательский /modules/Cases/Dashlets/MyCasesDashlet/MyCasesDashlet

Если у вас нет папки Cases внутри пользовательского каталога, создайте ее.

После копирования файла добавьте свойство для загрузки пользовательского файла TPL.

Файл DashletGenericDisplay.tpl по умолчанию находится в include / Dashlets /

class MyCasesDashlet extends DashletGeneric {

    var $displayTpl = "custom/modules/Cases/Dashlets/DashletGenericDisplay.tpl";
Другие вопросы по тегам