diff --git a/forms/HtmlEditorField.php b/forms/HtmlEditorField.php index ead1d5ff0..8cfabd8d4 100644 --- a/forms/HtmlEditorField.php +++ b/forms/HtmlEditorField.php @@ -422,14 +422,19 @@ class HtmlEditorField_Toolbar extends RequestHandler { $fields = new FieldList( new LiteralField( 'Heading', - sprintf('

%s

', _t('HtmlEditorField.IMAGE', 'Insert Image')) + sprintf('

%s

', _t('HtmlEditorField.INSERTIMAGE', 'Insert Image')). + sprintf('

%s

', _t('HtmlEditorField.UpdateIMAGE', 'Update Image')) ), $allFields ); $actions = new FieldList( FormAction::create('insertimage', _t('HtmlEditorField.BUTTONINSERT', 'Insert')) - ->addExtraClass('ss-ui-action-constructive') + ->addExtraClass('ss-ui-action-constructive image-insert') + ->setAttribute('data-icon', 'accept') + ->setUseButtonTag(true), + FormAction::create('insertimage', _t('HtmlEditorField.BUTTONUpdate', 'Update')) + ->addExtraClass('ss-ui-action-constructive image-update') ->setAttribute('data-icon', 'accept') ->setUseButtonTag(true) ); diff --git a/javascript/HtmlEditorField.js b/javascript/HtmlEditorField.js index a2a3af7e9..944924473 100644 --- a/javascript/HtmlEditorField.js +++ b/javascript/HtmlEditorField.js @@ -653,6 +653,21 @@ ss.editorWrappers['default'] = ss.editorWrappers.tinyMCE; * of remove files as well. */ $('form.htmleditorfield-mediaform').entwine({ + onmatch: function() { + this.toggleLooks(); + this._super(); + }, + toggleLooks: function(){ + var updateExisting = Boolean(this.find('.ss-htmleditorfield-file').length); + this.find('.htmleditorfield-mediaform-heading.insert')[updateExisting ? 'hide' : 'show'](); + this.find('.Actions .image-insert')[updateExisting ? 'hide' : 'show'](); + this.find('.htmleditorfield-mediaform-heading.update')[updateExisting ? 'show' : 'hide'](); + this.find('.Actions .image-update')[updateExisting ? 'show' : 'hide'](); + }, + toggleCloseButton: function(){ + var updateExisting = Boolean(this.find('.ss-htmleditorfield-file').length); + this.find('.overview .action-delete')[updateExisting ? 'hide' : 'show'](); + }, onsubmit: function() { var self = this, ed = this.getEditor(); @@ -674,15 +689,15 @@ ss.editorWrappers['default'] = ss.editorWrappers.tinyMCE; if(node.is('img')) { this.showFileView(node.attr('src'), function() { $(this).updateFromNode(node); + self.toggleCloseButton(); self.redraw(); }); } - + this.toggleLooks(); this.redraw(); }, redraw: function() { this._super(); - var ed = this.getEditor(), node = $(ed.getSelectedNode()), hasItems = Boolean(this.find('.ss-htmleditorfield-file').length), editingSelected = node.is('img');