Source of file FormSaveField.php
Size: 1,692 Bytes - Last Modified: 2021-12-23T10:25:24+00:00
/var/www/docs.ssmods.com/process/src/code/editableformfields/FormSaveField.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | <?php /** * A field used to allow 'save' buttons to be intersperesed in an * editable form submission * * @author Marcus Nyeholt <marcus@silverstripe.com.au> */ class FormSaveField extends EditableFormField { public static $singular_name = 'Save button'; public static $plural_name = 'Save buttons'; public function Icon() { return 'editableuserforms/images/formsavefield.png'; } /** * Return a button for saving this form if the user is logged in * * @return FormField */ public function getFormField() { if (Member::currentUserID()) { $id = $this->Name; $field = new EditableUserFormSaveButton($id, $this->Title); } else { $field = new LiteralField('NULL', ''); } return $field; } } /** * Allows users to add multiple save buttons to the form */ class EditableUserFormSaveButton extends DatalessField { protected $text; public function __construct($name, $text) { parent::__construct($name, ''); $this->text = $text; } public function Field($properties = array()) { if ($this->readonly) { return ''; } $label = $this->Title(); $id = $this->name; $title = Convert::raw2htmlatt($this->text); $fieldHtml = <<<HTML <div id="$id" class="field formaction cancel"> <label class="left" for="Form_Form_action_storesubmission">$label</label> <div class="middleColumn"> <input id="$id" class="action cancel" type="submit" title="$title" value="$title" name="action_storesubmission"/> </div> </div> HTML; return $fieldHtml; } } |