diff --git a/src/models/dataModels.js b/src/models/dataModels.js index 009c9057..cf71408b 100644 --- a/src/models/dataModels.js +++ b/src/models/dataModels.js @@ -45,4 +45,19 @@ var LoginData = function (response, userId) { this.favorite = response.favorite; this.revisionDate = response.revisionDate; + + if (response.attachments) { + this.attachments = []; + for (var i = 0; i < response.attachments.length; i++) { + this.attachments.push(new AttachmentData(response.attachments[i])); + } + } }; + +var AttachmentData = function (response) { + this.id = response.id; + this.url = response.url; + this.fileName = response.fileName; + this.size = response.size; + this.sizeName = response.sizeName; +}; \ No newline at end of file diff --git a/src/models/domainModels.js b/src/models/domainModels.js index 10c2cb66..fb08a9ac 100644 --- a/src/models/domainModels.js +++ b/src/models/domainModels.js @@ -112,6 +112,30 @@ var Login = function (obj, alreadyEncrypted) { this.notes = obj.notes ? new CipherString(obj.notes) : null; this.totp = obj.totp ? new CipherString(obj.totp) : null; } + + if (response.attachments) { + this.attachments = []; + for (var i = 0; i < response.attachments.length; i++) { + this.attachments.push(new Attachment(response.attachments[i], alreadyEncrypted)); + } + } + else { + this.attachments = null; + } +}; + +var Attachment = function (obj, alreadyEncrypted) { + this.id = obj.id ? obj.id : null; + this.url = obj.url ? obj.url : null; + this.size = obj.size ? obj.size : null; + this.sizeName = obj.sizeName ? obj.sizeName : null; + + if (alreadyEncrypted === true) { + this.fileName = obj.fileName ? obj.fileName : null; + } + else { + this.fileName = obj.fileName ? new CipherString(obj.fileName) : null; + } }; var Folder = function (obj, alreadyEncrypted) {