Exemplo n.º 1
0
    /**
     * Method to test create().
     *
     * @return void
     *
     * @covers Windwalker\Form\FieldHelper::create
     */
    public function testCreate()
    {
        $xml = <<<XML
<field
\tname="flower"
\ttype="text"
\tlabel="Flower"
\tdescription=""
\tclass="stub-flower"
\tdefault="default-value"
\t/>
XML;
        $field = FieldHelper::create($xml);
        $this->assertInstanceOf('Windwalker\\Form\\Field\\TextField', $field);
        // Add namespace
        $xml = <<<XML
<field
\tname="flower"
\ttype="stub"
\tlabel="Flower"
\tdescription=""
\tclass="stub-flower"
\tdefault="default-value"
\t/>
XML;
        // Get default
        $field = FieldHelper::create($xml);
        $this->assertInstanceOf('Windwalker\\Form\\Field\\TextField', $field);
        // Get custom
        FieldHelper::addNamespace('Windwalker\\Form\\Test\\Stub');
        $field = FieldHelper::create($xml);
        $this->assertInstanceOf('Windwalker\\Form\\Test\\Stub\\StubField', $field);
    }
Exemplo n.º 2
0
 /**
  * addField
  *
  * @param string|AbstractField|\SimpleXMLElement  $field
  * @param string                                  $fieldset
  * @param string                                  $group
  *
  * @return  AbstractField|ListField
  */
 public function addField($field, $fieldset = null, $group = null)
 {
     $field = FieldHelper::create($field);
     // B/C
     $group = str_replace('.', '/', $group);
     $fieldset = $fieldset ?: $this->wrap['fieldset'];
     $group = $group ?: $this->wrap['group'];
     if ($fieldset) {
         $field->setFieldset($fieldset);
     }
     if ($group) {
         $field->setGroup($group);
     }
     $group = $field->getGroup();
     $fieldset = $field->getFieldset();
     if ($group && !in_array($group, $this->groups)) {
         $this->groups[] = $group;
     }
     if ($fieldset && !in_array($fieldset, $this->fieldsets)) {
         $this->fieldsets[] = $fieldset;
     }
     $field->setControl($this->control);
     $this->fields[$field->getName(true)] = $field;
     return $field;
 }
Exemplo n.º 3
0
 /**
  * addField
  *
  * @param string|AbstractField|\SimpleXMLElement  $field
  * @param string                                  $fieldset
  * @param string                                  $group
  *
  * @return  AbstractField|ListField
  */
 public function addField($field, $fieldset = null, $group = null)
 {
     $field = FieldHelper::create($field);
     if ($fieldset) {
         $field->setFieldset($fieldset);
     }
     if ($group) {
         $field->setGroup($group);
     }
     $group = $field->getGroup();
     $fieldset = $field->getFieldset();
     if ($group && !in_array($group, $this->groups)) {
         $this->groups[] = $group;
     }
     if ($fieldset && !in_array($fieldset, $this->fieldsets)) {
         $this->fieldsets[] = $fieldset;
     }
     $field->setControl($this->control);
     $this->fields[$field->getName(true)] = $field;
     return $field;
 }