private function _parseFields($results) { $response = array(); foreach ($results as $result) { $field = new Field(); $field->setName($result["Field"]); $field->setType($result["Type"]); $field->setPk($result["Key"] == 'PRI'); $response[] = $field; } return $response; }
private function _parseFields($results, $pk) { $response = array(); foreach ($results as $result) { $field = new Field(); $field->setName($result["field"]); $field->setType($result["type"]); $field->setPk($result["field"] == $pk["col"]); $response[] = $field; } return $response; }
/** * Test setType exception * * @expectedException \InvalidArgumentException * @expectedExceptionMessage Invalid type */ public function testSetTypeException() { $object = new Field(); $object->setType('foo'); }
/** * Create a new field and save it to database * @param sfWebRequest $request * @return <type> */ public function executeSaveField(sfWebRequest $request) { $data = $request->getPostParameters(); $fieldClass = new FieldClass(); $data = $fieldClass->prepareSaveData($data); // prepare the data to save, set color and writeprotected flag // create parent element for the fields $fieldObj = new Field(); $fieldObj->setTitle($data['createFileWindow_fieldname']); $fieldObj->setType($data['createFileWindow_fieldtype']); $fieldObj->setwriteprotected($data['createFileWindow_writeprotected']); $fieldObj->setColor($data['createFileWindow_color']); $fieldObj->save(); $id = $fieldObj->getId(); // add the child elements to the field, with the selected field type switch ($data['createFileWindow_fieldtype']) { case 'TEXTFIELD': $textfield = new FieldTextfield(); $textfield->setFieldId($id); $textfield->setRegex($data['fieldTextfield_regularexpression']); $textfield->setDefaultvalue($data['fieldTextfield_standard']); $textfield->save(); break; case 'CHECKBOX': // do nothing break; case 'NUMBER': $numberfield = new FieldNumber(); $numberfield->setRegex($data['fieldNumber_regularexpression']); $numberfield->setDefaultvalue($data['fieldNumber_standard']); $numberfield->setComboboxvalue($data['fieldNumber_regularexpressioncombo']); $numberfield->setFieldId($id); $numberfield->save(); break; case 'DATE': $datefield = new FieldDate(); $datefield->setRegex($data['fieldDate_regularexpression']); $datefield->setDateformat($data['fieldDate_format']); $datefield->setDefaultvalue($data['fieldDate_date']); $datefield->setFieldId($id); $datefield->save(); break; case 'TEXTAREA': $data['fieldTextarea_content'] = $data['fieldTextarea_contenttype'] == 'plain' ? $data['fieldTextarea_textarea']: $data['fieldTextarea_htmlarea']; $textarea = new FieldTextarea(); $textarea->setContent($data['fieldTextarea_content']); $textarea->setContenttype($data['fieldTextarea_contenttype']); $textarea->setFieldId($id); $textarea->save(); break; case 'RADIOGROUP': $fieldClass->saveRadiogroup($id, $data); // save radiogroup break; case 'CHECKBOXGROUP': $fieldClass->saveCheckboxgroup($id, $data); // save checkboxgroup break; case 'COMBOBOX': $fieldClass->saveCombobox($id, $data); // save combobox break; case 'FILE': $file = new FieldFile(); $file->setRegex($data['fieldFile_regularexpression']); $file->setFieldId($id); $file->save(); break; } $this->renderText('{success:true}'); return sfView::NONE; }
/** * Unit Test case-9 to test Check Boxes */ public function testAdminCheckbox() { $test = new Field(6); $test->setType("checkbox"); $test->setIsRequired(true); $test->setTextBefore("CHECK BOX!"); $test->setOptions("option1|-etm-|option2|-etm-|option3"); $html = $test->getAdminHtml(); /** * test to see the textbeforechanges */ preg_match_all('/CHECK BOX!/', $html, $matches); $this->assertEquals(2, count($matches[0])); /** * test to see we see the id 6 */ preg_match_all('/etm_element_(\\d+)/', $html, $matches); $this->assertEquals(6, $matches[1][0]); /** * test to see we see input types of type select */ preg_match_all('/<input type=\'checkbox\'/', $html, $matches); $this->assertEquals(3, count($matches[0])); }