Как условно скрыть кнопку подробного просмотра в SugarCRM?

Как условно скрыть кнопку подробного просмотра в SugarCRM?

конкретная деталь:

Предположим, что в модуле «Учетная запись» я хочу скрыть кнопку «Удалить» условно со страницы DetailView, так где же я могу поставить условие для отображения / скрытия.

Заранее спасибо.


person Yogesh Rathod    schedule 11.09.2012    source источник


Ответы (2)


вы должны иметь возможность изменить это в /custom/modules/Account/metadata/detailviewdefs.php

Добавьте к этому что-то вроде:

if (your condition) {
    unset($viewdefs['Accounts']['DetailView']['templateMeta']['form']['buttons'][2])
    //2 being the index of the DELETE button
}

Затем вам нужно будет запустить: Admin -> Repair -> Quick Repair and Rebuild.

person femtoRgon    schedule 26.09.2012

Для версии SugarCRM Pro

Вам следует отредактировать файл custom / modules / MODULE_NAME / metadata / detailviewdefs.php и изменить $ viewdefs [$ module_name] ['DetailView'] ['templateMeta'] ['form'] массив в соответствии с вашими потребностями. По умолчанию этот массив пуст почти для всех модулей.

Пример:

// Place this code on the end of a file.

// This line remove all buttons
$viewdefs[$module_name]['DetailView']['templateMeta']['form']['buttons'] = array();

// This will add some buttons according to your conditions:
if (condition for edit button = true)
    $viewdefs[$module_name]['DetailView']['templateMeta']['form']['buttons'][] = 'EDIT';
if (condition for duplicate button = true)
    $viewdefs[$module_name]['DetailView']['templateMeta']['form']['buttons'][] = 'DUPLICATE';
if (condition for delete button = true)
    $viewdefs[$module_name]['DetailView']['templateMeta']['form']['buttons'][] = 'DELETE';

Не забывайте запускать Admin -> Repair -> Quick Repair and Rebuild каждый раз, когда вы меняете этот файл.

person Kostanos    schedule 26.04.2013