public static function restore($props) { $rv =& FormInputFabrication::createNew($props['type'], $props['name']); $rv->_value = $props['value']; $rv->_default_value = $props['default_value']; $rv->_configuration = StoreObject::restore($props['configuration']); return $rv; }
System::import('System.Context.HttpContext'); System::import('System.FormInput.FormInputFabrication'); System::import('System.FormInput.FormInput'); System::import('System.FormInput.FormInputConfiguration'); System::import('System.FormInput.Configurations.FormInputLengthConfiguration'); System::import('System.FormInput.Configurations.FormInputSelectedConfiguration'); //System::import( 'System.StoreObject' ); $context =& new HttpContext(); FormInput::setContext($context); $configNom =& new FormInputConfiguration(); $configNom->add(new FormInputLengthConfiguration(10)); $configCheckbox =& new FormInputConfiguration(); $configCheckbox->add(new FormInputSelectedConfiguration(false)); $inputs = array('nom' => array('type' => FormInputEnumeration::TYPE_TEXT, 'defaultValue' => 'Ab\'r"aham', 'configuration' => $configNom), 'case_a_cocher' => array('type' => FormInputEnumeration::TYPE_CHECKBOX, 'defaultValue' => 1, 'configuration' => $configCheckbox)); foreach ($inputs as $name => $struct) { ${$name} =& FormInputFabrication::createNew($struct['type'], $name); if (array_key_exists('defaultValue', $struct)) { ${$name}->setDefaultValue($struct['defaultValue']); } if (array_key_exists('configuration', $struct)) { ${$name}->setConfiguration($struct['configuration']); } } /* System::export( StoreObject::restore( 'a:2:{s:5:"class";s:9:"TextField";s:5:"props";a:5:{s:4:"name";s:8:"nom_copy";s:4:"type";s:4:"text";s:5:"value";N;s:13:"default_value";s:7:"Abraham";s:13:"configuration";s:200:"a:2:{s:5:"class";s:22:"FormInputConfiguration";s:5:"props";a:1:{s:5:"items";a:1:{s:6:"length";s:95:"a:2:{s:5:"class";s:28:"FormInputLengthConfiguration";s:5:"props";a:1:{s:10:"max_length";i:10;}}";}}}";}}' ), 'restore TextField' ); */