addOption('value_attribute_value'); parent::__construct($options, $attributes); } /** * * @param array $options An array of options * @param array $attributes An array of default HTML attributes * @see sfWidgetFormInput */ protected function configure($options = array(), $attributes = array()) { parent::configure($options, $attributes); $this->setOption('type', 'checkbox'); if (isset($attributes['value'])) { $this->setOption('value_attribute_value', $attributes['value']); } } /** * * @param string $name The element name * @param string $value The this widget is checked if value is not null * @param array $attributes An array of HTML attributes to be merged with the default HTML attributes * @param array $errors An array of errors for the field * @return string An HTML tag string * @see sfWidgetForm */ public function render($name, $value = null, $attributes = array(), $errors = array()) { if (!empty($this->options['default'])) { $attributes['checked'] = 'checked'; } if (!isset($attributes['value']) && !is_null($this->getOption('value_attribute_value'))) { $attributes['value'] = $this->getOption('value_attribute_value'); } return parent::render($name, null, $attributes, $errors); } }