Symfony\Component\Form\Extension\DataCollector\FormDataCollector::collectViewVariables PHP Method

collectViewVariables() public method

public collectViewVariables ( Symfony\Component\Form\FormView $view )
$view Symfony\Component\Form\FormView
    public function collectViewVariables(FormView $view)
    {
        $hash = spl_object_hash($view);

        if (!isset($this->dataByView[$hash])) {
            $this->dataByView[$hash] = array();
        }

        $this->dataByView[$hash] = array_replace(
            $this->dataByView[$hash],
            $this->dataExtractor->extractViewVariables($view)
        );

        foreach ($view->children as $child) {
            $this->collectViewVariables($child);
        }
    }

Usage Example

Exemplo n.º 1
0
 public function testBuildFinalFormTree()
 {
     $this->form->add($this->childForm);
     $this->view->children['child'] = $this->childView;
     $this->dataExtractor->expects($this->at(0))->method('extractConfiguration')->with($this->form)->will($this->returnValue(array('config' => 'foo')));
     $this->dataExtractor->expects($this->at(1))->method('extractConfiguration')->with($this->childForm)->will($this->returnValue(array('config' => 'bar')));
     $this->dataExtractor->expects($this->at(2))->method('extractDefaultData')->with($this->form)->will($this->returnValue(array('default_data' => 'foo')));
     $this->dataExtractor->expects($this->at(3))->method('extractDefaultData')->with($this->childForm)->will($this->returnValue(array('default_data' => 'bar')));
     $this->dataExtractor->expects($this->at(4))->method('extractSubmittedData')->with($this->form)->will($this->returnValue(array('submitted_data' => 'foo')));
     $this->dataExtractor->expects($this->at(5))->method('extractSubmittedData')->with($this->childForm)->will($this->returnValue(array('submitted_data' => 'bar')));
     $this->dataExtractor->expects($this->at(6))->method('extractViewVariables')->with($this->view)->will($this->returnValue(array('view_vars' => 'foo')));
     $this->dataExtractor->expects($this->at(7))->method('extractViewVariables')->with($this->childView)->will($this->returnValue(array('view_vars' => 'bar')));
     $this->dataCollector->collectConfiguration($this->form);
     $this->dataCollector->collectDefaultData($this->form);
     $this->dataCollector->collectSubmittedData($this->form);
     $this->dataCollector->collectViewVariables($this->view);
     $this->dataCollector->buildFinalFormTree($this->form, $this->view);
     $this->assertSame(array('forms' => array('name' => array('view_vars' => 'foo', 'config' => 'foo', 'default_data' => 'foo', 'submitted_data' => 'foo', 'children' => array('child' => array('view_vars' => 'bar', 'config' => 'bar', 'default_data' => 'bar', 'submitted_data' => 'bar', 'children' => array())))), 'nb_errors' => 0), $this->dataCollector->getData());
 }
All Usage Examples Of Symfony\Component\Form\Extension\DataCollector\FormDataCollector::collectViewVariables