PMA\libraries\config\FormDisplay::fixErrors PHP Method

fixErrors() public method

Reverts erroneous fields to their default values
public fixErrors ( ) : void
return void
    public function fixErrors()
    {
        $this->_validate();
        if (count($this->_errors) == 0) {
            return;
        }
        $cf = $this->_configFile;
        foreach (array_keys($this->_errors) as $work_path) {
            if (!isset($this->_systemPaths[$work_path])) {
                continue;
            }
            $canonical_path = $this->_systemPaths[$work_path];
            $cf->set($work_path, $cf->getDefault($canonical_path));
        }
    }

Usage Example

 /**
  * Test for FormDisplay::fixErrors
  *
  * @return void
  */
 public function testFixErrors()
 {
     $reflection = new \ReflectionClass('PMA\\libraries\\config\\FormDisplay');
     $attrIsValidated = $reflection->getProperty('_isValidated');
     $attrIsValidated->setAccessible(true);
     $attrIsValidated->setValue($this->object, true);
     $attrIsValidated = $reflection->getProperty('_errors');
     $attrIsValidated->setAccessible(true);
     $attrIsValidated->setValue($this->object, array());
     $this->assertNull($this->object->fixErrors());
     $arr = array("Servers/1/test" => array('e1'), "Servers/2/test" => array('e2', 'e3'), "Servers/3/test" => array());
     $sysArr = array("Servers/1/test" => "Servers/1/connect_type");
     $attrSystemPaths = $reflection->getProperty('_systemPaths');
     $attrSystemPaths->setAccessible(true);
     $attrSystemPaths->setValue($this->object, $sysArr);
     $attrIsValidated->setValue($this->object, $arr);
     $this->object->fixErrors();
     $this->assertEquals(array('Servers' => array('1' => array('test' => 'tcp'))), $_SESSION['ConfigFile0']);
 }
All Usage Examples Of PMA\libraries\config\FormDisplay::fixErrors