サブパネル上部のボタンをカスタマイズする
出典: SugarForum.jp
サブパネル上部に表示するボタンの指定は、
- 親モジュールのサブパネル定義
- 子モジュールのサブパネル定義
のいずれかに、記述することができます。
目次 |
指定できるボタンの種類
指定できるボタンは
- SubPanelTopCreateButton
- SubPanelTopButtonQuickCreate
- SubPanelTopSelectButton
などです。下記のように、widget_classにボタンの種類を指定すればOKです。
array('widget_class' => 'SubPanelTopButtonQuickCreate')
オブションの設定が必要な場合は、下記のように複数の項目が続くこともあります。
array('widget_class' => 'SubPanelTopSelectButton', 'mode'=>'MultiSelect')
ボタンのカスタマイズ
ボタンは、SugarWidgetとして用意されているので、ウィジェットを新たに作成されば、独自のボタンを配置することも可能です。
SugarRoot/include/generic/SugarWidget/
内に多数のウィジェットがあるので、それを参考にしましょう。
も参考にしてください。
設定ファイル
親モジュールで指定する場合
SugarRoot/modules/@親モジュール名/metadata/subpaneldefs.php
のサブパネル定義内、top_buttons の部分で指定します。
$layout_defs['@親モジュール名'] = array(
'subpanel_setup' => array(
'contacts' => array(
'module' => '@子モジュール名',
...省略...
'top_buttons' => array(
array('widget_class' => 'SubPanelTopButtonQuickCreate'),
array('widget_class' => 'SubPanelTopSelectButton', 'mode'=>'MultiSelect')
),
),
),
);
子モジュールで指定する場合
SugarRoot/modules/@子モジュール名/metadata/subpanels/@サブパネル名.php
のサブパネル定義内、top_buttons の部分で指定します。
$subpanel_layout = array(
'top_buttons' => array(
array('widget_class' => 'SubPanelTopCreateButton'),
array('widget_class' => 'SubPanelTopSelectButton', 'popup_module' => '@子モジュール名'),
),
'where' => "",
'list_fields' => array(
'object_image'=>array(
'widget_class' => 'SubPanelIcon',
'width' => '2%',
),
'first_name'=>array(
'name'=>'first_name',
'usage' => 'query_only',
),
...省略...
),
);