function __construct($context) { parent::__construct($context); $field = new INTEGER_FIELD(); $field->id = 'radio'; $field->caption = 'Radio'; $this->add_field($field); $field = new TEXT_FIELD(); $field->id = 'name'; $field->caption = 'Name'; $field->required = true; $this->add_field($field); $this->set_value('name', 'Filler text'); $field = new MUNGER_TEXT_FIELD(); $field->id = 'description'; $field->caption = 'Description'; $this->add_field($field); $this->set_value('description', 'Filler text that demonstrates which font is being used in longer, wrapping text.'); $field = new DATE_TIME_FIELD(); $field->id = 'date'; $field->caption = 'Date'; $this->add_field($field); $this->set_value('date', new DATE_TIME()); $field = new BOOLEAN_FIELD(); $field->id = 'bool1'; $field->set_value(1); $field->caption = 'Option 1'; $this->add_field($field); $field = new BOOLEAN_FIELD(); $field->id = 'bool2'; $field->caption = 'Option 2'; $this->add_field($field); $field = new ENUMERATED_FIELD(); $field->id = 'select'; $field->caption = 'Select'; $field->add_value(0); $field->add_value(1); $field->add_value(2); $field->add_value(3); $field->required = true; $this->add_field($field); }
/** * Update the name of the form. * @access private */ protected function _update_name() { foreach ($this->_form_based_field_names as $field_name) { $field = new BOOLEAN_FIELD(); $field->id = $this->form_based_field_name($field_name); $field->caption = ucfirst($field_name); $field->set_value(false); $field->visible = false; $this->add_field($field); } }
/** * Initialize the form with a search object. * If the search is <c>null</c>, the form will be shown in "quick search" * mode. This shows only the text search and a drop-down to select the type * of object to search. * @param APPLICATION $context Main application. * @param SEARCH $search Build the form based on this search object. */ public function __construct($context, $search) { parent::__construct($context); $this->_search = $search; $entry_type_infos = $this->app->entry_type_infos(); $type = $entry_type_infos[0]->id; if (isset($this->_search)) { $search->fields->add_fields($this); } else { $this->action_anchor = ''; $field = new TEXT_FIELD(); $field->id = 'search_text'; $field->caption = ''; $this->add_field($field); $search_template = $this->app->make_search($type); $search_template->fields->add_fields($this, false); } $field = new BOOLEAN_FIELD(); $field->id = 'quick_search'; $field->caption = 'Quick Search'; $field->visible = false; $field->set_value(true); $this->add_field($field); $field = new ENUMERATED_FIELD(); $field->id = 'type'; $field->caption = ''; $field->visible = !isset($this->_search); /* Fill with all the registered search types. */ $type_infos = $this->app->search_type_infos(); foreach ($type_infos as $t) { $field->add_value($t->id); } $this->add_field($field); /* Set the first entry type as the default search. */ if (!empty($entry_type_infos)) { $this->set_value('type', $type); } }