Source of file EditableCheckbox.php
Size: 1,685 Bytes - Last Modified: 2021-12-23T10:38:03+00:00
/var/www/docs.ssmods.com/process/src/code/Model/EditableFormField/EditableCheckbox.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | <?php namespace SilverStripe\UserForms\Model\EditableFormField; use SilverStripe\Forms\CheckboxField; use SilverStripe\UserForms\Model\EditableFormField; /** * EditableCheckbox * * A user modifiable checkbox on a UserDefinedForm * * @package userforms */ class EditableCheckbox extends EditableFormField { private static $singular_name = 'Checkbox Field'; private static $plural_name = 'Checkboxes'; protected $jsEventHandler = 'click'; private static $db = [ 'CheckedDefault' => 'Boolean' // from CustomSettings ]; private static $table_name = 'EditableCheckbox'; /** * @return FieldList */ public function getCMSFields() { $fields = parent::getCMSFields(); $fields->replaceField('Default', CheckboxField::create( "CheckedDefault", _t('SilverStripe\\UserForms\\Model\\EditableFormField.CHECKEDBYDEFAULT', 'Checked by Default?') )); return $fields; } public function getFormField() { $field = CheckboxField::create($this->Name, $this->Title ?: false, $this->CheckedDefault) ->setFieldHolderTemplate(__CLASS__ . '_holder') ->setTemplate(__CLASS__); $this->doUpdateFormField($field); return $field; } public function getValueFromData($data) { $value = (isset($data[$this->Name])) ? $data[$this->Name] : false; return ($value) ? _t('SilverStripe\\UserForms\\Model\\EditableFormField.YES', 'Yes') : _t('SilverStripe\\UserForms\\Model\\EditableFormField.NO', 'No'); } public function isCheckBoxField() { return true; } } |