Field(); } function performReadonlyTransformation() { $clone = clone $this; $clone->setReadonly(true); return $clone; } function IsHidden() { return true; } function getAttributes() { return array_merge( parent::getAttributes(), array('type' => 'hidden') ); } static function create($name) { return new HiddenField($name); } }