Exemple #1
0
 /**
  * Add element to the form.
  *
  * @param string              $name
  * @param \Rapid\Form\Element $element
  *
  * @return Form
  */
 public function addElement($name, \Rapid\Form\Element $element)
 {
     $element->setAttribute('name', $this->elementName($name));
     $element->setAttribute('id', $this->elementId($name));
     if ($this->model && $this->model->property($name)) {
         $element->setValue($this->model->property($name));
     }
     $this->elements[$name] = $element;
     return $this;
 }
Exemple #2
0
 /**
  * @depends testCreate
  */
 public function testSetProperties()
 {
     $model = new \Rapid\Model();
     $this->assertEquals(array(), $model->properties(), 'Properties of new model are not empty');
     $properties = array('my' => 1, 'another' => 'string');
     $model->setProperties($properties, true);
     $this->assertEquals($properties, $model->properties(), 'Properties don\\t match');
     $this->assertEquals(array(), $model->modifiedProperties(), 'Modified properties are incorrect');
     $modifiedProperties = array('my' => 2);
     $model->setProperties($modifiedProperties);
     $this->assertEquals(array_merge($properties, $modifiedProperties), $model->properties(), 'Properties don\\t match');
     $this->assertEquals($modifiedProperties, $model->modifiedProperties(), 'Modified properties are incorrect');
     $model->setProperty('new', 1);
     $this->assertEquals(1, $model->property('new'), 'Property not set');
     $this->assertEquals(array_merge($modifiedProperties, array('new' => 1)), $model->modifiedProperties(), 'Modified properties are incorrect');
 }