public function input($type, $name, $value = null, $options = []) { if (is_arrayish($name)) { $name = keyVal('name', $name); $value = keyVal('value', $name, $value); $options = keyVal('options', $name, $options); } $options = $this->cleanAttributes($options); $options['value'] = $this->fieldValueTemplate($name); $options['name'] = keyVal('name', $options, $name); $return = parent::input($type, $name, $value, $options); //pkdebug("Return: $return\nOptions:",$options); return $return; //return parent::input($type,$name,$value,$options); }
public function mkInputFromDef($args = []) { $name = keyVal('name', $args); $value = keyVal('value', $args); $def = keyVal('def', $args); $type = 'text'; $params = []; $options = []; #Parse $def - can be many forms if (is_string($def)) { $type = $def; } else { if (is_array($def)) { $type = keyVal('type', $def, keyVal(0, $def, 'text')); $params = keyVal('params', $def, keyVal(1, $def, $def)); $options = keyVal('options', $params, $params); } } $inp = new PkHtmlRenderer(); if ($type === 'select') { $list = keyVal('list', $params); unset($params['list']); return $inp->select($name, $list, $value, $options); } else { if ($type === 'textarea') { return $inp->textarea($name, $value, $options); } else { if ($type === 'boolean') { return $inp->boolean($name, $value, $options); } else { return $inp->input($type, $name, $value, $options); } } } }