displayParamsで指定可能なパラメータ(1)
editviewdefs.php等では表示フィールドに対して"displayParams"というパラメータを設定することが出来ます。このパラメータを指定すると、画面表示時のテキストフィールドのサイズを変えたり、ボタンを非表示にすることができます。ある程度抑えておくと、ロジックが減らせるケースもでてくる(かも)知れないので、調べた範囲でまとめてみます。ただ、指定可能なパラメータは量が結構多いので、3回くらいのエントリに分けてまとめます。
displayParamsの指定方法
指定したいフィールドに対して、連想配列で記述します。
'displayParams' => array( 'パラメータ1' => '値1', 'パラメータ2' => '値2', ...)
パラメータに指定する値については、パラメータ名がそのままHTMLタグの属性名になっている場合には対応する値を記述します。それ以外は基本的にtrueを指定すると対象のパラメータが有効となります。例えばmodules/Accounts/metadata/editviewdefs.phpでは、次のように記述されています。
array( 'name'=>'name', 'label'=>'LBL_NAME', 'displayParams'=>array('required'=>true) ),
このように通常の定義に追加する形で'displayParams'を追加して記述します。
それでは、各パラメータについて簡単にまとめます。まとめは↓な感じで
パラメータ名
- 説明
- パラメータの説明
- 定義例
- 実際に利用されているファイル
- 利用しているテンプレート
- パラメータを実際に利用しているSmartyテンプレート
size
- 説明
- 対象のフィールドにsize属性を追加する。値の指定は数値で行う。
- 本パラメータ未指定時、以下の値がsize属性のデフォルト値となる。(例外あり)
- テキストフィールド => 30
- Sugarのフィールドがdatetime => 11
- select,その他 => 6
- 定義例
- ほとんどのモジュールのeditviewdefs.phpで指定
maxlength
- 説明
- input type=text, textareaに対してmaxlength属性を追加する。値の指定は数値で行う。未指定の場合には、vardefのlenの値が指定される。(されない場合もあり)また、このパラメータを指定してもvardefのlenの値が優先される場合もある。
- 定義例
- modules/Contacts/metadata/editviewdefs.php
- 利用しているテンプレート
class
- 説明
- class属性を追加する。値の指定は文字列でclass名を記述する。対象のSugarフィールドがrelateの場合、"sqsEnabled"を同時に指定しない限りクイックサーチはoffとなる。(入力フィールドのクイックサーチの指定がclass属性で行われているため)
- 定義例
- modules/Cases/metadata/popupdefs.php
- 利用しているテンプレート
rows
cols
selectOnly
- 説明
- relateフィールドに対して、クリアボタンを非表示にする(検索ボタンのみ表示)。値はtrueで記述する。
- 定義例
- modules/Accounts/metadata/sidecreateviewdefs.php
- 利用しているテンプレート
clearOnly
- 説明
- 検索エリアのrelateフィールドに対して、検索ボタンを非表示にする(クリアボタンのみ表示)。値はtrueで記述する。ポップアップ画面の検索エリアでは、このパラメータが自動的に追加される。
- 定義例
- なし(標準モジュールはこのパラメータを指定していない)
- 利用しているテンプレート
- include/SugarFields/Fields/Relate/SearchView.tpl