1 | <?php |
||
21 | class HtmlForm extends HtmlSemCollection { |
||
22 | |||
23 | use FieldsTrait,FormTrait; |
||
24 | /** |
||
25 | * @var array |
||
26 | */ |
||
27 | protected $_fields; |
||
28 | |||
29 | /** |
||
30 | * @var array |
||
31 | */ |
||
32 | protected $_validationParams; |
||
33 | |||
34 | public function __construct($identifier, $elements=array()) { |
||
42 | |||
43 | protected function getForm(){ |
||
46 | |||
47 | /** |
||
48 | * @param string $title |
||
49 | * @param number $niveau |
||
50 | * @param string $dividing |
||
51 | * @return HtmlHeader |
||
52 | */ |
||
53 | public function addHeader($title, $niveau=1, $dividing=true) { |
||
59 | |||
60 | /** |
||
61 | * @param string $caption |
||
62 | * @return \Ajax\semantic\html\collections\form\HtmlForm |
||
63 | */ |
||
64 | public function addDivider($caption=NULL){ |
||
67 | |||
68 | public function addFields($fields=NULL, $label=NULL) { |
||
69 | if (isset($fields)) { |
||
70 | if (!$fields instanceof HtmlFormFields) { |
||
71 | if (!\is_array($fields)) { |
||
72 | $fields=\func_get_args(); |
||
73 | $end=\end($fields); |
||
74 | if (\is_string($end)) { |
||
75 | $label=$end; |
||
76 | \array_pop($fields); |
||
77 | } else |
||
78 | $label=NULL; |
||
79 | } |
||
80 | $this->_fields=\array_merge($this->_fields, $fields); |
||
81 | $fields=new HtmlFormFields("fields-" . $this->identifier . "-" . $this->count(), $fields); |
||
82 | } |
||
83 | if (isset($label)) |
||
84 | $fields=new HtmlFormField("", $fields, $label); |
||
85 | } else { |
||
86 | $fields=new HtmlFormFields("fields-" . $this->identifier . "-" . $this->count()); |
||
87 | } |
||
88 | $this->addItem($fields); |
||
89 | return $fields; |
||
90 | } |
||
91 | |||
92 | public function addItem($item) { |
||
99 | |||
100 | public function getField($index) { |
||
108 | |||
109 | /** |
||
110 | * automatically divide fields to be equal width |
||
111 | * @return \Ajax\semantic\html\collections\form\HtmlForm |
||
112 | */ |
||
113 | public function setEqualWidth() { |
||
116 | |||
117 | /** |
||
118 | * Adds a field (alias for addItem) |
||
119 | * @param HtmlFormField $field |
||
120 | * @return \Ajax\common\html\HtmlDoubleElement |
||
121 | */ |
||
122 | public function addField($field) { |
||
125 | |||
126 | /** |
||
127 | * |
||
128 | * @param string $identifier |
||
129 | * @param string $content |
||
130 | * @param string $header |
||
131 | * @param string $icon |
||
132 | * @param string $type |
||
133 | * @return \Ajax\semantic\html\collections\HtmlMessage |
||
134 | */ |
||
135 | public function addMessage($identifier, $content, $header=NULL, $icon=NULL, $type=NULL) { |
||
145 | |||
146 | |||
147 | |||
148 | public function compile(JsUtils $js=NULL,&$view=NULL){ |
||
153 | |||
154 | public function run(JsUtils $js) { |
||
178 | |||
179 | public function addValidationParam($paramName,$paramValue){ |
||
183 | |||
184 | public function setValidationParams(array $_validationParams) { |
||
188 | |||
189 | public function getValidationParams() { |
||
192 | |||
193 | public function removeValidationParam($param){ |
||
197 | |||
198 | } |