Commit 7d7f2aeb authored by Tristan Cavelier's avatar Tristan Cavelier

Updating localstorage.js get method

parent 197468c6
...@@ -384,34 +384,54 @@ var newLocalStorage = function ( spec, my ) { ...@@ -384,34 +384,54 @@ var newLocalStorage = function ( spec, my ) {
/** /**
* Loads a document from the local storage. * Loads a document from the local storage.
* It will load file in 'jio/local/USR/APP/FILE_NAME'. * It will load file in 'jio/local/USR/APP/FILE_NAME'.
* You can add an 'options' object to the job, it can contain:
* - metadata_only {boolean} default false, retrieve the file metadata
* only if true.
* @method get * @method get
*/ */
that.get = function (command) { that.get = function (command) {
setTimeout(function () { setTimeout(function () {
var secured_docid = priv.secureDocId(command.getDocId()), var docid, doc, docpath, attmtid, attmt;
doc = null; docid = command.getDocId();
docpath = 'jio/local/'+priv.secured_username+'/'+
if (!priv.checkSecuredDocId( priv.secured_applicationname+'/'+docid;
secured_docid,command.getDocId(),'get')) {return;} attmtid = command.getAttachmentId();
doc = localStorage.getItem( if (attmtid) {
'jio/local/'+priv.secured_username+'/'+ // this is an attachment
priv.secured_applicationname+'/'+secured_docid); attmt = localstorage.getItem(docpath+'/'+attmtid);
if (!attmt) {
// there is no attachment to get
that.error({
status:404,statusText:'Not found',error:'not_found',
message:'Document is missing attachment.',
reason:'document is missing attachment'
});
return;
}
// send the attachment content
that.success(attmt);
} else {
// this is a document
doc = localstorage.getItem(docpath);
if (!doc) { if (!doc) {
that.error ({status:404,statusText:'Not Found.', // the document does not exist
that.error ({
status:404,statusText:'Not Found.',
error:'not_found', error:'not_found',
message:'Document "'+ command.getDocId() + message:'Document "'+ docid + '" not found.',
'" not found.', reason:'missing'
reason:'missing'}); });
} else { } else {
if (command.getOption('metadata_only')) { if (!command.getDocInfo('revs')) {
delete doc.content; delete doc._revisions;
}
if (!command.getDocInfo('revs_info')) {
delete doc._revs_info;
}
if (command.getDocInfo('conflicts')) {
doc._conflicts = {total_rows:0,rows:[]};
} }
that.success (doc); that.success (doc);
} }
}
}); });
}; // end get }; // end get
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment