From 4167ab91084f59a80d96e1c476db8176a12e6a89 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Sun, 16 Sep 2007 02:28:14 +0000 Subject: [PATCH] elofgren: BUGFIX: Don't save new Newsletter drafts as soon as they are created to prevent TinyMCE Javascript errors in IE. Always save Newsletter drafts before sending to prevent unsaved newsletter drafts from being sent out completely blank because change detection for new newsletter drafts does not work in IE. (merged from branches/gsoc) git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/trunk@42053 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- javascript/NewsletterAdmin_left.js | 3 --- javascript/NewsletterAdmin_right.js | 15 ++++++--------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/javascript/NewsletterAdmin_left.js b/javascript/NewsletterAdmin_left.js index c1f85117..23dad899 100755 --- a/javascript/NewsletterAdmin_left.js +++ b/javascript/NewsletterAdmin_left.js @@ -304,9 +304,6 @@ AddForm.prototype = { } else { $('sitetree').addTypeNode('New newsletter type', $('Form_EditForm_ID').value ); } - // Save it so that change detection will work - $('Form_EditForm').save(); - statusMessage('Added new ' + type); }, diff --git a/javascript/NewsletterAdmin_right.js b/javascript/NewsletterAdmin_right.js index e63af8d7..b3965b96 100755 --- a/javascript/NewsletterAdmin_right.js +++ b/javascript/NewsletterAdmin_right.js @@ -284,10 +284,9 @@ Behaviour.register({ } this.sendingText.style.display = ''; - var form = $('Form_EditForm'); - - if( form.isChanged() ) - form.save(); + // Save always because change detection doesn't work for IE on newly created drafts. + // Use onclick instead of form.save() to make things work in IE. + $('Form_EditForm_action_save').onclick(); // Send the request ajaxSubmitForm(false, this.onCompleteTest.bind(this), this, '', 'sendnewsletter') @@ -327,11 +326,9 @@ Behaviour.register({ } this.sendingText.style.display = '';*/ - var form = $('Form_EditForm'); - - if( form.isChanged() ) - form.save(); - + // Save always because change detection doesn't work for IE on newly created drafts. + // Use onclick instead of form.save() to make things work in IE. + $('Form_EditForm_action_save').onclick(); if( $('SendProgressBar') ) $('SendProgressBar').start();