mirror of
https://github.com/documize/community.git
synced 2025-08-09 07:25:23 +02:00
Refactor to ember-ajax
This commit is contained in:
parent
41fd9b68a2
commit
a2bf51d144
8 changed files with 387 additions and 818 deletions
|
@ -14,36 +14,24 @@ import models from '../utils/model';
|
|||
|
||||
export default Ember.Service.extend({
|
||||
sessionService: Ember.inject.service('session'),
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
// Returns document model for specified document id.
|
||||
getDocument(documentId) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let doc = models.DocumentModel.create(response);
|
||||
resolve(doc);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return doc;
|
||||
});
|
||||
},
|
||||
|
||||
// Returns all documents for specified folder.
|
||||
getAllByFolder(folderId) {
|
||||
let appMeta = this.get('sessionService.appMeta')
|
||||
let appMeta = this.get('sessionService.appMeta');
|
||||
let url = appMeta.getUrl(`documents?folder=${folderId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let documents = Ember.ArrayProxy.create({
|
||||
content: Ember.A([])
|
||||
});
|
||||
|
@ -53,12 +41,7 @@ export default Ember.Service.extend({
|
|||
documents.pushObject(documentModel);
|
||||
});
|
||||
|
||||
resolve(documents);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return documents;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -66,11 +49,7 @@ export default Ember.Service.extend({
|
|||
getAllByTag(tag) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents?filter=tag&tag=${tag}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let documents = Ember.ArrayProxy.create({
|
||||
content: Ember.A([])
|
||||
});
|
||||
|
@ -80,12 +59,7 @@ export default Ember.Service.extend({
|
|||
documents.pushObject(documentModel);
|
||||
});
|
||||
|
||||
resolve(documents);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return documents;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -94,277 +68,163 @@ export default Ember.Service.extend({
|
|||
let id = doc.get('id');
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${id}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'PUT',
|
||||
data: JSON.stringify(doc),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'PUT',
|
||||
data: JSON.stringify(doc)
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
getBatchedPages: function(documentId, payload) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/batch");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/batch"),
|
||||
type: 'POST',
|
||||
data: payload,
|
||||
success: function(pages) {
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'POST',
|
||||
data: payload
|
||||
}).then((pages) => {
|
||||
if (is.not.array(pages)) {
|
||||
pages = [];
|
||||
}
|
||||
|
||||
resolve(pages);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return pages;
|
||||
});
|
||||
},
|
||||
|
||||
changePageSequence: function(documentId, payload) {
|
||||
var self = this;
|
||||
var url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/sequence");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/sequence"),
|
||||
type: 'POST',
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(payload),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
contentType: 'json'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
changePageLevel(documentId, payload) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/level");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/level"),
|
||||
type: 'POST',
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(payload),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
contentType: 'json'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
deleteDocument: function(documentId) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId),
|
||||
type: 'DELETE',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'DELETE'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
updatePage: function(documentId, pageId, payload, skipRevision) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + revision);
|
||||
var revision = skipRevision ? "?r=true" : "?r=false";
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + revision),
|
||||
type: 'PUT',
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'PUT',
|
||||
data: JSON.stringify(payload),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
contentType: 'json'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// addPage inserts new page to an existing document.
|
||||
addPage: function(documentId, payload) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages"),
|
||||
type: 'POST',
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(payload),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
contentType: 'json'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// Nukes multiple pages from the document.
|
||||
deletePages: function(documentId, pageId, payload) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId),
|
||||
type: 'POST',
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(payload),
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
contentType: 'json'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// Nukes a single page from the document.
|
||||
deletePage: function(documentId, pageId) {
|
||||
var self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId),
|
||||
type: 'DELETE',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'DELETE'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
getPageRevisions(documentId, pageId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + "/revisions");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + "/revisions"),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
getPageRevisionDiff(documentId, pageId, revisionId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + "/revisions/" + revisionId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + "/revisions/" + revisionId),
|
||||
type: 'GET',
|
||||
dataType: 'text',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
dataType: 'text'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
rollbackPage(documentId, pageId, revisionId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + "/revisions/" + revisionId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("documents/" + documentId + "/pages/" + pageId + "/revisions/" + revisionId),
|
||||
type: 'POST',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').post(url).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// document meta referes to number of views, edits, approvals, etc.
|
||||
getMeta(documentId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/meta`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/meta`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// Returns all pages without the content
|
||||
getTableOfContents(documentId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages?content=0`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages?content=0`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.PageModel.create(obj));
|
||||
});
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
// Returns all document pages with content
|
||||
getPages(documentId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let pages = [];
|
||||
|
||||
_.each(response, function(page) {
|
||||
|
@ -375,90 +235,51 @@ export default Ember.Service.extend({
|
|||
Ember.set(pages[0], 'firstPage', true);
|
||||
}
|
||||
|
||||
resolve(pages);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return pages;
|
||||
});
|
||||
},
|
||||
|
||||
// Returns document page with content
|
||||
getPage(documentId, pageId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages/${pageId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages/${pageId}`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let page = models.PageModel.create(response);
|
||||
resolve(page);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return page;
|
||||
});
|
||||
},
|
||||
|
||||
// Returns document page meta object
|
||||
getPageMeta(documentId, pageId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages/${pageId}/meta`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/pages/${pageId}/meta`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let meta = models.PageMetaModel.create(response);
|
||||
resolve(meta);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return meta;
|
||||
});
|
||||
},
|
||||
|
||||
// document attachments without the actual content
|
||||
getAttachments(documentId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/attachments`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/attachments`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.AttachmentModel.create(obj));
|
||||
});
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
// nuke an attachment
|
||||
deleteAttachment(documentId, attachmentId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`documents/${documentId}/attachments/${attachmentId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`documents/${documentId}/attachments/${attachmentId}`),
|
||||
type: 'DELETE',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'DELETE'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
});
|
||||
|
|
|
@ -15,6 +15,7 @@ import BaseService from '../services/base';
|
|||
|
||||
export default BaseService.extend({
|
||||
sessionService: Ember.inject.service('session'),
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
// selected folder
|
||||
currentFolder: null,
|
||||
|
@ -25,40 +26,22 @@ export default BaseService.extend({
|
|||
let appMeta = this.get('sessionService.appMeta');
|
||||
let url = appMeta.getUrl(`folders`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
data: JSON.stringify(folder),
|
||||
contentType: 'json',
|
||||
success: function(folder) {
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(folder)
|
||||
}).then((folder)=>{
|
||||
let folderModel = models.FolderModel.create(folder);
|
||||
resolve(folderModel);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return folderModel;
|
||||
});
|
||||
},
|
||||
|
||||
// Returns folder model for specified folder id.
|
||||
getFolder(id) {
|
||||
let appMeta = this.get('sessionService.appMeta')
|
||||
let appMeta = this.get('sessionService.appMeta');
|
||||
let url = appMeta.getUrl(`folders/${id}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response)=>{
|
||||
let folder = models.FolderModel.create(response);
|
||||
resolve(folder);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return folder;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -80,57 +63,31 @@ export default BaseService.extend({
|
|||
let id = folder.get('id');
|
||||
let url = this.get('sessionService').appMeta.getUrl(`folders/${id}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'PUT',
|
||||
data: JSON.stringify(folder),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'PUT',
|
||||
data: JSON.stringify(folder)
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
remove: function(folderId, moveToId) {
|
||||
var self = this;
|
||||
var url = self.get('sessionService').appMeta.getUrl('folders/' + folderId + "/move/" + moveToId);
|
||||
var url = this.get('sessionService').appMeta.getUrl('folders/' + folderId + "/move/" + moveToId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'DELETE',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'DELETE'
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
onboard: function(folderId, payload) {
|
||||
var self = this;
|
||||
var url = self.get('sessionService').appMeta.getUrl('public/share/' + folderId);
|
||||
var url = this.get('sessionService').appMeta.getUrl('public/share/' + folderId);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: "POST",
|
||||
data: payload,
|
||||
contentType: "application/json",
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').post(url, {
|
||||
data: payload
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -138,107 +95,65 @@ export default BaseService.extend({
|
|||
getProtectedFolderInfo: function() {
|
||||
var url = this.get('sessionService').appMeta.getUrl('folders?filter=viewers');
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response)=>{
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.ProtectedFolderParticipant.create(obj));
|
||||
});
|
||||
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
// reloads and caches folders.
|
||||
reload() {
|
||||
let appMeta = this.get('sessionService.appMeta')
|
||||
let appMeta = this.get('sessionService.appMeta');
|
||||
let url = appMeta.getUrl(`folders`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response)=>{
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.FolderModel.create(obj));
|
||||
});
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
// so who can see/edit this folder?
|
||||
getPermissions(folderId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`folders/${folderId}/permissions`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`folders/${folderId}/permissions`),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response)=>{
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.FolderPermissionModel.create(obj));
|
||||
});
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
// persist folder permissions
|
||||
savePermissions(folderId, payload) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`folders/${folderId}/permissions`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`folders/${folderId}/permissions`),
|
||||
type: 'PUT',
|
||||
contentType: 'json',
|
||||
data: JSON.stringify(payload),
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'PUT',
|
||||
data: JSON.stringify(payload)
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// share this folder with new users!
|
||||
share(folderId, invitation) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl(`folders/${folderId}/invitation`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl(`folders/${folderId}/invitation`),
|
||||
type: 'POST',
|
||||
contentType: 'json',
|
||||
data: JSON.stringify(invitation),
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(invitation)
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -258,14 +173,10 @@ export default BaseService.extend({
|
|||
}
|
||||
|
||||
let url = this.get('sessionService').appMeta.getUrl('users/' + userId + "/permissions");
|
||||
let self = this;
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(folderPermissions) {
|
||||
return this.get('ajax').request(url).then((folderPermissions) => {
|
||||
// safety check
|
||||
self.set('canEditCurrentFolder', false);
|
||||
this.set('canEditCurrentFolder', false);
|
||||
|
||||
if (folderPermissions.length === 0) {
|
||||
return;
|
||||
|
@ -292,9 +203,8 @@ export default BaseService.extend({
|
|||
}
|
||||
});
|
||||
Ember.run(() => {
|
||||
self.set('canEditCurrentFolder', canEdit && self.get('sessionService').authenticated);
|
||||
this.set('canEditCurrentFolder', canEdit && this.get('sessionService').authenticated);
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
});
|
|
@ -14,23 +14,15 @@ import models from '../utils/model';
|
|||
|
||||
export default Ember.Service.extend({
|
||||
sessionService: Ember.inject.service('session'),
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
// Returns attributes for specified org id.
|
||||
getOrg(id) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`organizations/${id}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response) =>{
|
||||
let org = models.OrganizationModel.create(response);
|
||||
resolve(org);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return org;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -43,19 +35,11 @@ export default Ember.Service.extend({
|
|||
this.get('sessionService').get('appMeta').setSafe('message', org.message);
|
||||
this.get('sessionService').get('appMeta').setSafe('title', org.title);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'PUT',
|
||||
data: JSON.stringify(org),
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'PUT',
|
||||
data: JSON.stringify(org)
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
}
|
||||
});
|
|
@ -13,22 +13,14 @@ import Ember from 'ember';
|
|||
|
||||
export default Ember.Service.extend({
|
||||
sessionService: Ember.inject.service('session'),
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
// getUsers returns all users for organization.
|
||||
find(keywords) {
|
||||
let url = this.get('sessionService').appMeta.getUrl("search?keywords=" + encodeURIComponent(keywords));
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
});
|
|
@ -15,26 +15,21 @@ import BaseService from '../services/base';
|
|||
|
||||
export default BaseService.extend({
|
||||
sessionService: Ember.inject.service('session'),
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
// Returns all available sections.
|
||||
getAll() {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`sections`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url,{
|
||||
method: 'GET'
|
||||
}).then((response)=>{
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.SectionModel.create(obj));
|
||||
});
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -46,19 +41,10 @@ export default BaseService.extend({
|
|||
let endpoint = `sections?documentID=${documentId}§ion=${section}&method=${method}`;
|
||||
let url = this.get('sessionService').appMeta.getUrl(endpoint);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
data: JSON.stringify(data),
|
||||
contentType: "application/json",
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').post(url, {
|
||||
data: JSON.stringify(data)
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -66,12 +52,7 @@ export default BaseService.extend({
|
|||
refresh(documentId) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`sections/refresh?documentID=${documentId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
// resolve(response);
|
||||
return this.get('ajax').request(url).then((response)=>{
|
||||
let pages = [];
|
||||
|
||||
if (is.not.null(response) && is.array(response) && response.length > 0) {
|
||||
|
@ -80,12 +61,7 @@ export default BaseService.extend({
|
|||
});
|
||||
}
|
||||
|
||||
resolve(pages);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return pages;
|
||||
});
|
||||
}
|
||||
});
|
|
@ -24,6 +24,7 @@ export default Ember.Service.extend({
|
|||
authenticated: false,
|
||||
folderPermissions: null,
|
||||
currentFolder: null,
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
isAdmin: function() {
|
||||
if (this.authenticated && is.not.null(this.user) && this.user.id !== "") {
|
||||
|
@ -50,68 +51,48 @@ export default Ember.Service.extend({
|
|||
|
||||
// Authentication
|
||||
login: function(credentials) {
|
||||
var self = this;
|
||||
var url = self.appMeta.getUrl('public/authenticate');
|
||||
let url = this.appMeta.getUrl('public/authenticate');
|
||||
let domain = netUtil.getSubdomain();
|
||||
|
||||
this.clearSession();
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
if (is.empty(credentials.email) || is.empty(credentials.password)) {
|
||||
reject("invalid");
|
||||
return;
|
||||
return Ember.RSVP.reject("invalid");
|
||||
}
|
||||
|
||||
var encoded = encodingUtil.Base64.encode(domain + ":" + credentials.email + ":" + credentials.password);
|
||||
var header = {
|
||||
var headers = {
|
||||
'Authorization': 'Basic ' + encoded
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
headers: header,
|
||||
success: function(response) {
|
||||
self.setSession(response.token, models.UserModel.create(response.user));
|
||||
self.get('ready', true);
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').post(url, {
|
||||
headers
|
||||
}).then((response)=>{
|
||||
this.setSession(response.token, models.UserModel.create(response.user));
|
||||
this.get('ready', true);
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// SSO in the form of 'domain:email:password'
|
||||
sso: function(credentials) {
|
||||
var self = this;
|
||||
var url = self.appMeta.getUrl('public/authenticate');
|
||||
let url = this.appMeta.getUrl('public/authenticate');
|
||||
this.clearSession();
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
if (is.empty(credentials.email) || is.empty(credentials.password)) {
|
||||
reject("invalid");
|
||||
return;
|
||||
return Ember.RSVP.reject("invalid");
|
||||
}
|
||||
|
||||
var header = {
|
||||
var headers = {
|
||||
'Authorization': 'Basic ' + credentials
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
headers: header,
|
||||
success: function(response) {
|
||||
self.setSession(response.token, models.UserModel.create(response.user));
|
||||
self.get('ready', true);
|
||||
return this.get('ajax').post(url, {
|
||||
headers
|
||||
}).then((response)=>{
|
||||
this.setSession(response.token, models.UserModel.create(response.user));
|
||||
this.get('ready', true);
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -192,51 +173,35 @@ export default Ember.Service.extend({
|
|||
// this.set('popupBlocked', false);
|
||||
// }
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve) {
|
||||
$.ajax({
|
||||
url: self.get('appMeta').getUrl("public/meta"),
|
||||
type: 'GET',
|
||||
contentType: 'json',
|
||||
success: function(response) {
|
||||
self.get('appMeta').set('orgId', response.orgId);
|
||||
self.get('appMeta').setSafe('title', response.title);
|
||||
self.get('appMeta').set('version', response.version);
|
||||
self.get('appMeta').setSafe('message', response.message);
|
||||
self.get('appMeta').set('allowAnonymousAccess', response.allowAnonymousAccess);
|
||||
let url = this.get('appMeta').getUrl("public/meta");
|
||||
|
||||
let token = self.getSessionItem('token');
|
||||
return this.get('ajax').request(url)
|
||||
.then((response) => {
|
||||
this.get('appMeta').set('orgId', response.orgId);
|
||||
this.get('appMeta').setSafe('title', response.title);
|
||||
this.get('appMeta').set('version', response.version);
|
||||
this.get('appMeta').setSafe('message', response.message);
|
||||
this.get('appMeta').set('allowAnonymousAccess', response.allowAnonymousAccess);
|
||||
|
||||
let token = this.getSessionItem('token');
|
||||
|
||||
if (is.not.undefined(token)) {
|
||||
// We now validate current token
|
||||
let tokenCheckUrl = self.get('appMeta').getUrl(`public/validate?token=${token}`);
|
||||
let tokenCheckUrl = this.get('appMeta').getUrl(`public/validate?token=${token}`);
|
||||
|
||||
$.ajax({
|
||||
url: tokenCheckUrl,
|
||||
type: 'GET',
|
||||
contentType: 'json',
|
||||
success: function(user) {
|
||||
self.setSession(token, models.UserModel.create(user));
|
||||
self.set('ready', true);
|
||||
resolve();
|
||||
},
|
||||
error: function(reason) {
|
||||
return this.get('ajax').request(tokenCheckUrl, {
|
||||
method: 'GET',
|
||||
contentType: 'json'
|
||||
}).then((response) => {
|
||||
this.setSession(token, models.UserModel.create(user));
|
||||
this.set('ready', true);
|
||||
}).catch((reason) => {
|
||||
if (reason.status === 401 || reason.status === 403) {
|
||||
localStorage.clear();
|
||||
window.location.href = "/auth/login";
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
self.set('ready', true);
|
||||
resolve();
|
||||
}
|
||||
},
|
||||
error: function(reason) {
|
||||
if (reason.status === 401 || reason.status === 403) {
|
||||
window.location.href = "https://documize.com";
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
|
@ -14,50 +14,32 @@ import models from '../utils/model';
|
|||
|
||||
export default Ember.Service.extend({
|
||||
sessionService: Ember.inject.service('session'),
|
||||
ajax: Ember.inject.service(),
|
||||
|
||||
importStockTemplate: function(folderId, templateId) {
|
||||
let self = this;
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("templates/" + templateId + "/folder/" + folderId + "?type=stock"),
|
||||
type: 'POST',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
let url = this.get('sessionService').appMeta.getUrl("templates/" + templateId + "/folder/" + folderId + "?type=stock");
|
||||
|
||||
return this.get('ajax').post(url).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
importSavedTemplate: function(folderId, templateId) {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("templates/" + templateId + "/folder/" + folderId + "?type=saved");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("templates/" + templateId + "/folder/" + folderId + "?type=saved"),
|
||||
type: 'POST',
|
||||
success: function(doc) {
|
||||
return this.get('ajax').post(url).then((doc)=>{
|
||||
let docModel = models.DocumentModel.create(doc);
|
||||
resolve(docModel);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return docModel;
|
||||
});
|
||||
},
|
||||
|
||||
getSavedTemplates() {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("templates");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("templates"),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url, {
|
||||
type: 'GET'
|
||||
}).then((response) => {
|
||||
if (is.not.array(response)) {
|
||||
response = [];
|
||||
}
|
||||
|
@ -70,29 +52,17 @@ export default Ember.Service.extend({
|
|||
templates.pushObject(templateModel);
|
||||
});
|
||||
|
||||
resolve(templates);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return templates;
|
||||
});
|
||||
},
|
||||
|
||||
getStockTemplates() {
|
||||
let self = this;
|
||||
let url = this.get('sessionService').appMeta.getUrl("templates/stock");
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: self.get('sessionService').appMeta.getUrl("templates/stock"),
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
type: 'GET'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
}
|
||||
});
|
|
@ -33,17 +33,10 @@ export default Ember.Service.extend({
|
|||
getUser(userId) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`users/${userId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
resolve(models.UserModel.create(response));
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
type: 'GET'
|
||||
}).then((response) => {
|
||||
return models.UserModel.create(response);
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -62,22 +55,13 @@ export default Ember.Service.extend({
|
|||
getFolderUsers(folderId) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`users/folder/${folderId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'GET',
|
||||
success: function(response) {
|
||||
return this.get('ajax').request(url).then((response)=>{
|
||||
let data = [];
|
||||
_.each(response, function(obj) {
|
||||
data.pushObject(models.UserModel.create(obj));
|
||||
});
|
||||
|
||||
resolve(data);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return data;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -97,18 +81,10 @@ export default Ember.Service.extend({
|
|||
updatePassword(userId, password) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`users/${userId}/password`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
data: password,
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').post(url, {
|
||||
data: password
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -116,46 +92,30 @@ export default Ember.Service.extend({
|
|||
remove(userId) {
|
||||
let url = this.get('sessionService').appMeta.getUrl(`users/${userId}`);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'DELETE',
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.get('ajax').request(url, {
|
||||
method: 'DELETE'
|
||||
}).then((response) => {
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
// Request password reset.
|
||||
forgotPassword(email) {
|
||||
var url = this.get('sessionService').appMeta.getUrl('public/forgot');
|
||||
let url = this.get('sessionService').appMeta.getUrl('public/forgot');
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
if (is.empty(email)) {
|
||||
reject("invalid");
|
||||
return;
|
||||
}
|
||||
|
||||
var data = JSON.stringify({
|
||||
let data = JSON.stringify({
|
||||
Email: email
|
||||
});
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
dataType: 'json',
|
||||
data: data,
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.request('ajax').post(url, {
|
||||
data: data
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -163,23 +123,14 @@ export default Ember.Service.extend({
|
|||
resetPassword(token, password) {
|
||||
var url = this.get('sessionService').appMeta.getUrl('public/reset/' + token);
|
||||
|
||||
return new Ember.RSVP.Promise(function(resolve, reject) {
|
||||
if (is.empty(token) || is.empty(password)) {
|
||||
reject("invalid");
|
||||
return;
|
||||
return Ember.RSVP.reject("invalid");
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
data: password,
|
||||
success: function(response) {
|
||||
resolve(response);
|
||||
},
|
||||
error: function(reason) {
|
||||
reject(reason);
|
||||
}
|
||||
});
|
||||
return this.request('ajax').post(url, {
|
||||
data: password
|
||||
}).then((response)=>{
|
||||
return response;
|
||||
});
|
||||
}
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue