1
0
Fork 0
mirror of https://github.com/documize/community.git synced 2025-07-24 15:49:44 +02:00

[WIP] moved start-document functionality, reworked folder view

WIP -- import files still BROKEN
This commit is contained in:
Harvey Kandola 2017-09-25 19:14:33 +01:00
parent 8f80673cde
commit a0a1dd396a
20 changed files with 2820 additions and 2039 deletions

View file

@ -10,58 +10,19 @@
// https://documize.com
import Ember from 'ember';
import NotifierMixin from '../../../mixins/notifier';
export default Ember.Controller.extend(NotifierMixin, {
documentService: Ember.inject.service('document'),
folderService: Ember.inject.service('folder'),
localStorage: Ember.inject.service('localStorage'),
selectedDocuments: [],
hasSelectedDocuments: Ember.computed.gt('selectedDocuments.length', 0),
const {
inject: { service }
} = Ember;
export default Ember.Controller.extend({
documentService: service('document'),
folderService: service('folder'),
localStorage: service('localStorage'),
queryParams: ['tab'],
tab: 'index',
actions: {
onMoveDocument(folder) {
let self = this;
let documents = this.get('selectedDocuments');
documents.forEach(function (documentId) {
self.get('documentService').getDocument(documentId).then(function (doc) {
doc.set('folderId', folder);
doc.set('selected', !doc.get('selected'));
self.get('documentService').save(doc).then(function () {
self.get('target._routerMicrolib').refresh();
});
});
});
this.set('selectedDocuments', []);
this.send("showNotification", "Moved");
},
onDeleteDocument() {
let documents = this.get('selectedDocuments');
let self = this;
let promises = [];
documents.forEach(function (document, index) {
promises[index] = self.get('documentService').deleteDocument(document);
});
Ember.RSVP.all(promises).then(() => {
let documents = this.get('model.documents');
documents.forEach(function (document) {
document.set('selected', false);
});
this.set('model.documents', documents);
this.set('selectedDocuments', []);
this.send("showNotification", "Deleted");
this.get('target._routerMicrolib').refresh();
});
},
onAddSpace(payload) {
let self = this;
this.showNotification("Added");
@ -72,15 +33,7 @@ export default Ember.Controller.extend(NotifierMixin, {
});
},
onDeleteSpace() {
this.get('folderService').delete(this.get('model.folder.id')).then(() => { /* jshint ignore:line */
this.showNotification("Deleted");
this.get('localStorage').clearSessionItem('folder');
this.transitionToRoute('application');
});
},
onImport() {
onRefresh() {
this.get('target._routerMicrolib').refresh();
}
}

View file

@ -21,7 +21,12 @@ export default Ember.Route.extend(AuthenticatedRouteMixin, {
permissions: this.modelFor('folder').permissions,
folders: this.modelFor('folder').folders,
documents: this.modelFor('folder').documents,
templates: this.modelFor('folder').templates
templates: this.modelFor('folder').templates,
showStartDocument: false,
});
},
activate() {
this.set('model.showStartDocument', false);
}
});

View file

@ -1,21 +1,20 @@
{{#layout/zone-container}}
{{#layout/zone-sidebar}}
{{folder/sidebar-zone folders=model.folders folder=model.folder
permissions=model.permissions tab=tab onAddSpace=(action 'onAddSpace')}}
{{/layout/zone-sidebar}}
{{#layout/zone-content}}
{{folder/folder-heading folder=model.folder permissions=model.permissions}}
{{folder/space-view
folders=model.folders
folder=model.folder
templates=model.templates
permissions=model.permissions
documents=model.documents
onRefresh=(action 'onRefresh')}}
{{folder/folder-toolbar folders=model.folders folder=model.folder
permissions=model.permissions hasSelectedDocuments=hasSelectedDocuments
onDeleteDocument=(action 'onDeleteDocument') onMoveDocument=(action 'onMoveDocument')
onDeleteSpace=(action 'onDeleteSpace')}}
<div class="margin-bottom-20 clearfix" />
{{folder/documents-list documents=model.documents folders=model.folders folder=model.folder templates=model.templates
permissions=model.permissions selectedDocuments=(mut selectedDocuments)
onDeleteSpace=(action 'onDeleteSpace') onImport=(action 'onImport')}}
{{/layout/zone-content}}
{{/layout/zone-container}}