3) { Deprecation::notice( '3.0', 'Use setMaxLength() instead of constructor arguments', Deprecation::SCOPE_GLOBAL ); } parent::__construct($name, $title, $value); } /** * @param bool $bool * @return $this */ public function setAllowValuePostback($bool) { $this->allowValuePostback = (bool) $bool; return $this; } /** * @return bool */ public function getAllowValuePostback() { return $this->allowValuePostback; } /** * {@inheritdoc} */ public function getAttributes() { $attributes = []; if (!$this->getAllowValuePostback()) { $attributes['value'] = null; } $autocomplete = $this->config()->get('autocomplete'); if ($autocomplete) { $attributes['autocomplete'] = 'on'; } else { $attributes['autocomplete'] = 'off'; } return array_merge( parent::getAttributes(), $attributes ); } /** * Creates a read-only version of the field. * * @return FormField */ public function performReadonlyTransformation() { $field = $this->castedCopy('SilverStripe\\Forms\\ReadonlyField'); $field->setValue('*****'); return $field; } /** * {@inheritdoc} */ public function Type() { return 'text password'; } }