Datatypes\Mixed\PrevalueEditor::save PHP Method

save() public method

Save mixed prevalue editor
public save ( ) : void
return void
    public function save()
    {
        $post = $this->getRequest()->getPost();
        $datatypes = $post->get('datatypes');
        $model = $post->get('add-model');
        if (!empty($datatypes)) {
            foreach ($datatypes as $datatypeId => $datatype) {
                foreach ($datatype as $name => $value) {
                    $post->set($name, $value);
                }
                //Get datatypes
                $object = $this->loadDatatype($datatype['name']);
                $object->getPrevalueEditor()->save();
                $datatypes[$datatypeId] = array('name' => $datatype['name'], 'label' => $datatype['label'], 'config' => $object->getPrevalueEditor()->getDatatype()->getConfig());
            }
        }
        if (!empty($model)) {
            $datatypes[] = array('name' => $model);
        }
        $this->setConfig(array('datatypes' => $datatypes));
    }

Usage Example

Example #1
0
 /**
  * Test
  *
  * @return void
  */
 public function testSave()
 {
     $post = $this->object->getRequest()->getPost();
     $post->set('add-model', 'Textstring');
     $post->set('datatypes', array(1 => array('name' => 'Textstring', 'label' => 'TextstringTest', 'length' => 25)));
     $this->assertNull($this->object->save());
 }