From d080c15a4947f45da981262248396c3d39b7688e Mon Sep 17 00:00:00 2001 From: Julian Seidenberg Date: Thu, 3 Mar 2011 16:08:09 +1300 Subject: [PATCH] BUGFIX: fixed double escaping for titles on output while maintaning escaping of special characters. --- code/editor/EditableFormField.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/code/editor/EditableFormField.php b/code/editor/EditableFormField.php index 8c911c0..13b209e 100755 --- a/code/editor/EditableFormField.php +++ b/code/editor/EditableFormField.php @@ -242,16 +242,22 @@ class EditableFormField extends DataObject { * @return TextField */ function TitleField() { - $field = new TextField('Title', _t('EditableFormField.ENTERQUESTION', 'Enter Question'), $this->Title); + //do not XML escape the title field here, because that would result in a recursive escaping of the escaped text on every save + $field = new TextField('Title', _t('EditableFormField.ENTERQUESTION', 'Enter Question'), $this->getField('Title')); $field->setName($this->getFieldName('Title')); - + if(!$this->canEdit()) { return $field->performReadonlyTransformation(); } - + return $field; } + /** Returns the Title for rendering in the front-end (with XML values escaped) */ + function getTitle() { + return Convert::raw2att($this->getField('Title')); + } + /** * Return the base name for this form field in the * form builder. Optionally returns the name with the given field