diff --git a/code/editor/EditableLiteralField.php b/code/editor/EditableLiteralField.php new file mode 100644 index 0000000..18226d2 --- /dev/null +++ b/code/editor/EditableLiteralField.php @@ -0,0 +1,64 @@ + 'Text' + ); + + static $singular_name = 'Literal Field'; + static $plural_name = 'Literal Fields'; + + function __construct( $record = null, $isSingleton = false ) { + + parent::__construct( $record, $isSingleton ); + } + + function ExtraOptions() { + + // eventually replace hard-coded "Fields"? + $baseName = "Fields[$this->ID]"; + + $extraFields = new FieldSet(); + $extraFields->push(new TextareaField($baseName . "[Content]", "Text", 4, 20, $this->Content)); + + return $extraFields; + } + + function populateFromPostData($data) { + + $this->Content = $data['Content']; + parent::populateFromPostData($data); + } + + function getFormField() { + return $this->createField(); + } + + function getFilterField() { + return $this->createField(true); + } + + function createField() { + return new LiteralField("LiteralField[$this->ID]", + "