123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- <?php
- class wpWidgetFormInputCheckbox extends sfWidgetFormInput {
- /**
- * Constructor.
- *
- * Available options:
- *
- * - value_attribute_value: The "value" attribute value to set for the checkbox
- *
- * @param array $options An array of options
- * @param array $attributes An array of default HTML attributes
- * @see sfWidgetFormInput
- */
- public function __construct($options = array(), $attributes = array()) {
- $this->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);
- }
- }
|