From ad7771fe5a1d80941184622d8eaa4204e17e4e80 Mon Sep 17 00:00:00 2001 From: Chris Dodge Date: Tue, 2 Oct 2012 11:06:28 -0400 Subject: [PATCH 1/2] always load in a new instance of the edit module. It appeared as though on multiple edits (w/o refreshing page) without creating a new data model, we were always referencing stale content from the previous edit --- cms/static/coffee/src/views/module_edit.coffee | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cms/static/coffee/src/views/module_edit.coffee b/cms/static/coffee/src/views/module_edit.coffee index 882be98dee..ce0904f7fa 100644 --- a/cms/static/coffee/src/views/module_edit.coffee +++ b/cms/static/coffee/src/views/module_edit.coffee @@ -15,10 +15,9 @@ class CMS.Views.ModuleEdit extends Backbone.View $component_editor: => @$el.find('.component-editor') loadDisplay: -> - XModule.loadModule(@$el.find('.xmodule_display')) + XModule.loadModule(@$el.find('.xmodule_display')) loadEdit: -> - if !@module @module = XModule.loadModule(@$el.find('.xmodule_edit')) metadata: -> From 425e840e7db260689cc744422879c854cadf56cf Mon Sep 17 00:00:00 2001 From: Chris Dodge Date: Tue, 2 Oct 2012 11:37:27 -0400 Subject: [PATCH 2/2] in order to avoid using stale modules when editing, clear out the @module variable after a save(). Then on a subsequent edit, it'll get recreated --- cms/static/coffee/src/views/module_edit.coffee | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cms/static/coffee/src/views/module_edit.coffee b/cms/static/coffee/src/views/module_edit.coffee index ce0904f7fa..fd38ba10a8 100644 --- a/cms/static/coffee/src/views/module_edit.coffee +++ b/cms/static/coffee/src/views/module_edit.coffee @@ -18,6 +18,7 @@ class CMS.Views.ModuleEdit extends Backbone.View XModule.loadModule(@$el.find('.xmodule_display')) loadEdit: -> + if not @module @module = XModule.loadModule(@$el.find('.xmodule_edit')) metadata: -> @@ -56,7 +57,7 @@ class CMS.Views.ModuleEdit extends Backbone.View data.metadata = @metadata() @model.save(data).done( => alert("Your changes have been saved.") - + @module = null @render() @$el.removeClass('editing') ).fail( ->