function index($locator) { // get parameter object from controller $this->addField($param1 = new A_Controller_Form_Field('field1')); $param1->addFilter(new A_Filter_Regexp('/[^0-9]/', '')); $param1->addRule(new A_Rule_Notnull('field1', 'Please enter Field 1')); $param1->addRule(new A_Rule_Range(1, 10, 'field1', 'Field 1 must be 1-10')); $param1->setType(array('renderer' => 'A_Html_Form_Select', 'values' => array(5, 10, 15), 'labels' => array('five', 'ten', 'fifteen'))); $this->addField($param2 = new A_Controller_Form_Field('field2')); $param2->addFilter(new A_Filter_Regexp('/[^0-9]/', '')); $param2->addRule(new A_Rule_Notnull('field2', 'Please enter Field 2')); $param2->addRule(new A_Rule_Match('field1', 'field2', 'Field 2 must match Field 1')); $param2->setType(array('renderer' => 'A_Html_Form_Text', 'size' => '10')); $this->addField($param3 = new A_Controller_Form_Field('field3')); $param3->addFilter(new A_Filter_Regexp('/[^a-zA-Z]/', '')); $param3->addRule(new A_Rule_Length(5, 20, 'field3', 'Field 3 must be 5-20 characters')); // create parameter object then add it to the controller $this->addField($param4 = new A_Controller_Form_Field('field4')); $param4->addFilter(new A_Filter_Regexp('/[^a-zA-Z]/', '')); $param4->addFilter(new A_Filter_ToUpper()); $param4->addRule(new A_Rule_Notnull('field4', 'Please enter Field 4')); parent::run($locator); }