function get_item_input_field($fieldname, $item_attribute_type_r, $item_r, $value = NULL, $dowrap = TRUE, $prompt_mask = NULL, $onchange_event = NULL, $disabled = FALSE) { if (is_array($item_attribute_type_r)) { $s_attribute_type = $item_attribute_type_r['s_attribute_type']; $order_no = $item_attribute_type_r['order_no']; $prompt = $item_attribute_type_r['prompt']; $input_type = $item_attribute_type_r['input_type']; $compulsory_ind = $item_attribute_type_r['compulsory_ind']; $widget['type'] = $item_attribute_type_r['input_type']; $widget['args'][0] = $item_attribute_type_r['input_type_arg1']; $widget['args'][1] = $item_attribute_type_r['input_type_arg2']; $widget['args'][2] = $item_attribute_type_r['input_type_arg3']; $widget['args'][3] = $item_attribute_type_r['input_type_arg4']; $widget['args'][4] = $item_attribute_type_r['input_type_arg5']; } if ($item_attribute_type_r['multi_attribute_ind'] == 'Y') { $multi_value = TRUE; if (!is_array($value)) { $old_value = ifempty($value, ""); unset($value); $value[] = $old_value; } } else { $multi_value = FALSE; // an array will be a lookup value if (!is_array($value)) { // Escape all html entities so they are displayed correctly! if (strlen($value) > 0) { $value = htmlspecialchars($value); } } } $field = NULL; $field_mask = NULL; // Now we have to work out how to parse the input_type if ($item_attribute_type_r['input_type'] == 'hidden') { return hidden_field($fieldname, $value); } else { if ($item_attribute_type_r['input_type'] == 'readonly') { $field = readonly_field($fieldname, $value); } else { if ($item_attribute_type_r['input_type'] == 'textarea' || $item_attribute_type_r['input_type'] == 'htmlarea') { // arg[0] = rows, arg[1] = cols, arg[2] = length $field = textarea_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['1'], $widget['widget']['2'], $compulsory_ind, $value, $onchange_event, $disabled); } else { if ($item_attribute_type_r['input_type'] == 'text') { // arg[0] = length of field, arg[1] = maxlength of field $field = text_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['1'], $compulsory_ind, $value, $onchange_event, $disabled, $multi_value); } else { if ($item_attribute_type_r['input_type'] == 'password') { // arg[0] = length of field, arg[1] = maxlength of field $field = password_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['1'], $compulsory_ind, $value, $onchange_event, $disabled, $multi_value); } else { if ($item_attribute_type_r['input_type'] == 'email') { // arg[0] = length of field, arg[1] = maxlength of field $field = email_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['1'], $compulsory_ind, $value, $onchange_event, $disabled, $multi_value); } else { if ($item_attribute_type_r['input_type'] == 'filtered') { // arg[0] = length of field, arg[1] = maxlength of field, arg[2] = legalChars $field = filtered_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['1'], $widget['args']['2'], $compulsory_ind, $value, $onchange_event, $disabled, $multi_value); } else { if ($item_attribute_type_r['input_type'] == 'datetime') { // arg[0] = datetime mask, arg[1] = auto_datetime $field = datetime_field($fieldname, $prompt, ifempty($widget['args']['0'], 'DD/MM/YYYY'), $widget['args']['1'], $compulsory_ind, $value, $onchange_event, $disabled, $multi_value); } else { if ($item_attribute_type_r['input_type'] == 'number') { // arg[0] = length of field, arg[0] = maxlength of field $field = number_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['0'], $compulsory_ind, $value, $onchange_event, $disabled, $multi_value); } else { if ($item_attribute_type_r['input_type'] == 'simple_checkbox') { // arg[0] = checked $field = checkbox_field($fieldname, $prompt, strcasecmp(trim($widget['args']['0']), 'CHECKED') === 0, $value, $onchange_event, $disabled); } else { if ($item_attribute_type_r['input_type'] == 'checkbox') { // arg[0] = checked, arg[1] = unchecked $field = enhanced_checkbox_field($fieldname, $prompt, $widget['args']['0'], $widget['args']['1'], $value, $onchange_event, $disabled); } else { if ($item_attribute_type_r['input_type'] == 'checkbox_grid') { $lookup_results = fetch_attribute_type_lookup_rs($s_attribute_type, 'order_no, ' . get_lookup_order_by($widget['args']['0']) . ' ASC'); if ($lookup_results) { //arg[0] = display_mask, arg[1] = orientation $field = checkbox_grid($fieldname, $lookup_results, $widget['args']['0'], $widget['args']['1'], $value, $disabled); } } else { if ($item_attribute_type_r['input_type'] == 'radio_grid') { $lookup_results = fetch_attribute_type_lookup_rs($s_attribute_type, 'order_no, ' . get_lookup_order_by($widget['args']['0']) . ' ASC'); if ($lookup_results) { //arg[0] = display_mask, arg[1] = orientation $field = radio_grid($fieldname, $lookup_results, $widget['args']['0'], $widget['args']['1'], $value, $disabled); } } else { if ($item_attribute_type_r['input_type'] == 'value_radio_grid') { //arg[0] = "comma delimited list of values" $field = value_radio_grid($fieldname, explode(',', $widget['args']['0']), $value, $disabled); } else { if ($item_attribute_type_r['input_type'] == 'single_select') { $lookup_results = fetch_attribute_type_lookup_rs($s_attribute_type, 'order_no, ' . get_lookup_order_by($widget['args']['0']) . ' ASC'); if ($lookup_results) { //arg[0] = display mask, arg[1] = max value length $field = single_select($fieldname, $lookup_results, $widget['args']['0'], $widget['args']['1'], $value, $onchange_event, $disabled); } } else { if ($item_attribute_type_r['input_type'] == 'multi_select') { $lookup_results = fetch_attribute_type_lookup_rs($s_attribute_type, 'order_no, ' . get_lookup_order_by($widget['args']['0']) . ' ASC'); if ($lookup_results) { //arg[0] = display mask, arg[1] = max value length, arg[2] = select box number of visible rows $field = multi_select($fieldname, $lookup_results, $widget['args']['0'], $widget['args']['1'], $widget['args']['2'], $value, $onchange_event, $disabled); } } else { if ($item_attribute_type_r['input_type'] == 'value_select') { //arg[0] = "comma delimited list of values"; arg[1] = number of visible rows (Defaults to single select $field = value_select($fieldname, explode(',', $widget['args']['0']), $widget['args']['1'], $value, $onchange_event, $disabled); } else { if ($item_attribute_type_r['input_type'] == 'review_options') { //arg[1] = display_mask, arg[1] = orientation $lookup_results = fetch_attribute_type_lookup_rs($s_attribute_type, 'value DESC'); //We want the rows highest value first. if ($lookup_results) { $field = review_options($fieldname, $lookup_results, $widget['args']['0'], $widget['args']['1'], $value, $disabled); } } else { if ($item_attribute_type_r['input_type'] == 'url') { //arg[0] = length of field, arg[1] = maxlength of field, arg[2] = extensions $field = url($fieldname, $item_r, $item_attribute_type_r, $prompt, $widget['args']['0'], $widget['args']['1'], $widget['args']['2'], $value, $onchange_event, $disabled, $multi_value); } else { $field = ">>> ERROR (input_type = {$input_type}) <<<"; } } } } } } } } } } } } } } } } } } } if ($dowrap) { return format_item_data_field($item_attribute_type_r, $field, $prompt_mask); } else { return $field; } }
<?php } } ?> </ul> </div> <?php } ?> <?php echo text_field($this->entity, "id"); ?> <?php echo datetime_field($this->entity, "created_at"); ?> <?php echo datetime_field($this->entity, "updated_at"); ?> <?php echo text_field($this->entity, "email"); ?> <input type ="submit" value="Save" /> <?php echo form_end_tag();
function formDate($name, $default = false, $opts = false) { if (is_numeric($this->id) && !$default) { $default = $this->{$name}; } $fname = $this->getFname($name); // Causing conflicts with displaying time selector in js calendar -- SJP 03/23/2009 09:57 AM //if($default=="0000-00-00 00:00:00" || $default=="0000-00-00") { // unset($default); //} if (is_array($opts)) { extract($opts); } // Do the output $info = $this->fieldHeader($name, $opts); datetime_field($fname, $default); $this->fieldFooter($info, $opts); }