6 Fakoli::usingFeature(
"field_renderers");
34 if ($form->data->hasField(
$field))
49 $this->table =
new DataListView($this->data,
"{$field}_table");
50 $this->table->rowId =
true;
52 $this->table->pageSize = 5;
53 $this->table->filter =
true;
54 $this->table->emptyMessage = $this->emptyMessage;
56 $this->table->selectable =
true;
57 $this->table->selector(array($this,
'formatSelector'));
59 call_user_func_array($this->handler, array($this->table));
64 $pk = $item->getPrimaryKey();
65 $pkval = $item->get($pk);
70 $control =
"checkbox";
71 $name =
"{$this->field}[]";
81 $checked = array_key_exists($pkval, $this->related) ?
" checked='checked'" :
"";
83 return $item->format(
"<input type='{$control}' class='{$control}' name='{$name}' id='{$this->field}_{{$pk}}' value='{{$pk}}'{$checked}/>");
95 echo $this->table->writeScript();
109 echo $this->table->drawView();
118 if ($this->processor)
120 call_user_func_array($this->processor, array(
$field));
DataListView displays a list of DataItems (or InnerJoinResults) in tabular format.
FieldRenderer is the abstract base class for all FieldRenderers.
_startField($field, $styles="")
Internal method to generate the starting HTML for the field (including the label)
_endField($field)
Internal method to generate the closing HTML for the field.
FieldRenderer($parent)
Constructor.
__construct($form, $field, $label, $handler, $processor=null, $mode="single", $data=null)
renderScript($field)
FieldRenderers can override this method to provide any Javascript that their control requires for an ...
postProcess($field="")
FieldRenderers can override this method to provide behavior that occurs after the parent form's targe...
renderField($field)
FieldRenderers must override this method to provide the HTML implementation of the control used to ed...
$mode
"single" or "multi" selection