Source of file EditableRadioField.php
Size: 1,371 Bytes - Last Modified: 2018-07-16T11:15:18+00:00
/var/www/docs.ssmods.com/process/src/code/model/editableformfields/EditableRadioField.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 | <?php /** * EditableRadioField * * Represents a set of selectable radio buttons * * @package userforms */ class EditableRadioField extends EditableMultipleOptionField { private static $singular_name = 'Radio Group'; private static $plural_name = 'Radio Groups'; /** * @return FieldList */ public function getCMSFields() { $fields = parent::getCMSFields(); $fields->removeByName('Default'); return $fields; } public function getFormField() { $field = OptionsetField::create($this->Name, $this->EscapedTitle, $this->getOptionsMap()) ->setFieldHolderTemplate('UserFormsMultipleOptionField_holder') ->setTemplate('UserFormsOptionSetField'); // Set default item $defaultOption = $this->getDefaultOptions()->first(); if ($defaultOption) { $field->setValue($defaultOption->Value); } $this->doUpdateFormField($field); return $field; } public function getSelectorField(EditableCustomRule $rule, $forOnLoad = false) { // We only want to trigger on load once for the radio group - hence we focus on the first option only. $first = $forOnLoad ? ':first' : ''; return "$(\"input[name='{$this->Name}']{$first}\")"; } public function isRadioField() { return true; } } |