From 935ac5ea82c12366aa6b82f3409b5845f0fce3c6 Mon Sep 17 00:00:00 2001 From: Ananya Sen Date: Mon, 13 Feb 2012 21:37:47 -0800 Subject: integrating save functionality Signed-off-by: Ananya Sen --- js/controllers/document-controller.js | 13 +++++++++++-- js/mediators/io-mediator.js | 5 ++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/js/controllers/document-controller.js b/js/controllers/document-controller.js index 21445214..2e8b8abe 100755 --- a/js/controllers/document-controller.js +++ b/js/controllers/document-controller.js @@ -104,9 +104,15 @@ DocumentController = exports.DocumentController = Montage.create(Component, { handleExecuteSave: { value: function(event) { //Text and HTML document classes should return the same save object for fileSave - this.application.ninja.ioMediator.fileSave(this.activeDocument.save()); + this.application.ninja.ioMediator.fileSave(this.activeDocument.save(), this.clearDocumentDirtyFlag().bind(this)); } }, + + clearDocumentDirtyFlag:{ + value: function(){ + this.activeDocument.dirtyFlag = false; + } + }, //////////////////////////////////////////////////////////////////// @@ -135,8 +141,11 @@ DocumentController = exports.DocumentController = Montage.create(Component, { openNewFileCallback:{ value:function(doc){ var response = doc || null;//default just for testing - if(!!response && response.success && !!response.uri){ + if(!!response && response.success && (response.status!== 500) && !!response.uri){ this.application.ninja.ioMediator.fileOpen(response.uri, this.openFileCallback.bind(this)); + }else if(!!response && !response.success){ + //Todo: restrict directory path to the sandbox, in the dialog itself + alert("Unable to create file.\n [Error: Forbidden directory]"); } } }, diff --git a/js/mediators/io-mediator.js b/js/mediators/io-mediator.js index 47069cfb..95e775a0 100644 --- a/js/mediators/io-mediator.js +++ b/js/mediators/io-mediator.js @@ -154,7 +154,10 @@ exports.IoMediator = Montage.create(Component, { break; } // - save = this.fio.saveFile({uri: file.document.uri, contents: contents}) + save = this.fio.saveFile({uri: file.document.uri, contents: contents}); + if(save.status === 204){ + callback(); + } } }, //////////////////////////////////////////////////////////////////// -- cgit v1.2.3