mirror of
https://github.com/documize/community.git
synced 2025-07-25 08:09:43 +02:00
More UI conversion to new framework
This commit is contained in:
parent
a453052087
commit
5d757c992f
17 changed files with 442 additions and 416 deletions
|
@ -9,7 +9,18 @@
|
|||
//
|
||||
// https://documize.com
|
||||
|
||||
import { inject as service } from '@ember/service';
|
||||
import Controller from '@ember/controller';
|
||||
|
||||
export default Controller.extend({
|
||||
categorySvc: service('category'),
|
||||
refresh: 0,
|
||||
|
||||
actions: {
|
||||
onAdd(c) {
|
||||
this.get('categorySvc').add(c).then(() => {
|
||||
this.set('refresh', this.get('refresh')+1);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -10,9 +10,8 @@
|
|||
// https://documize.com
|
||||
|
||||
import { hash } from 'rsvp';
|
||||
|
||||
import Route from '@ember/routing/route';
|
||||
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';
|
||||
import Route from '@ember/routing/route';
|
||||
|
||||
export default Route.extend(AuthenticatedRouteMixin, {
|
||||
model() {
|
||||
|
|
|
@ -1,9 +1,22 @@
|
|||
{{toolbar/nav-bar}}
|
||||
{{#layout/top-bar}}
|
||||
<li class="item">
|
||||
{{#link-to "folder.index" model.folder.id model.folder.slug class='link selected'}}
|
||||
{{model.folder.name}}
|
||||
{{/link-to}}
|
||||
</li>
|
||||
{{/layout/top-bar}}
|
||||
|
||||
{{#toolbar/t-toolbar}}
|
||||
{{#toolbar/t-links}}
|
||||
{{#link-to "folder" model.folder.id model.folder.slug class="link selected" tagName="li"}}{{model.folder.name}}{{/link-to}}
|
||||
{{/toolbar/t-links}}
|
||||
{{/toolbar/t-toolbar}}
|
||||
{{#layout/middle-zone}}
|
||||
{{#layout/middle-zone-content}}
|
||||
{{folder/category-admin folders=model.folders folder=model.folder refresh=refresh}}
|
||||
{{/layout/middle-zone-content}}
|
||||
|
||||
{{folder/category-admin folders=model.folders folder=model.folder}}
|
||||
{{#layout/middle-zone-sidebar}}
|
||||
<div id="sidebar" class="sidebar">
|
||||
{{folder/category-admin-sidebar space=model.folder onAdd=(action 'onAdd')}}
|
||||
</div>
|
||||
{{/layout/middle-zone-sidebar}}
|
||||
{{/layout/middle-zone}}
|
||||
|
||||
{{#layout/bottom-bar}}
|
||||
{{/layout/bottom-bar}}
|
|
@ -9,9 +9,10 @@
|
|||
//
|
||||
// https://documize.com
|
||||
|
||||
import Controller from '@ember/controller';
|
||||
import { all } from 'rsvp';
|
||||
import { inject as service } from '@ember/service';
|
||||
import NotifierMixin from '../../../mixins/notifier';
|
||||
import Controller from '@ember/controller';
|
||||
|
||||
export default Controller.extend(NotifierMixin, {
|
||||
documentService: service('document'),
|
||||
|
@ -19,6 +20,7 @@ export default Controller.extend(NotifierMixin, {
|
|||
localStorage: service('localStorage'),
|
||||
queryParams: ['category'],
|
||||
category: '',
|
||||
filteredDocs: null,
|
||||
|
||||
actions: {
|
||||
onAddSpace(payload) {
|
||||
|
@ -38,6 +40,53 @@ export default Controller.extend(NotifierMixin, {
|
|||
|
||||
onRefresh() {
|
||||
this.get('target._routerMicrolib').refresh();
|
||||
},
|
||||
|
||||
onMoveDocument(documents, targetSpaceId) {
|
||||
let self = this;
|
||||
let promises1 = [];
|
||||
let promises2 = [];
|
||||
|
||||
documents.forEach(function(documentId, index) {
|
||||
promises1[index] = self.get('documentService').getDocument(documentId);
|
||||
});
|
||||
|
||||
all(promises1).then(() => {
|
||||
promises1.forEach(function(doc, index) {
|
||||
doc.then((d) => {
|
||||
d.set('folderId', targetSpaceId);
|
||||
d.set('selected', false);
|
||||
promises2[index] = self.get('documentService').save(d);
|
||||
});
|
||||
});
|
||||
|
||||
all(promises2).then(() => {
|
||||
self.send('onRefresh');
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
onDeleteDocument(documents) {
|
||||
let self = this;
|
||||
let promises = [];
|
||||
|
||||
documents.forEach(function (document, index) {
|
||||
promises[index] = self.get('documentService').deleteDocument(document);
|
||||
});
|
||||
|
||||
all(promises).then(() => {
|
||||
let documents = this.get('documents');
|
||||
documents.forEach(function (document) {
|
||||
document.set('selected', false);
|
||||
});
|
||||
|
||||
this.set('documents', documents);
|
||||
this.send('onRefresh');
|
||||
});
|
||||
},
|
||||
|
||||
onFiltered(docs) {
|
||||
this.set('filteredDocs', docs);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -1,22 +1,53 @@
|
|||
{{toolbar/nav-bar}}
|
||||
{{#layout/top-bar}}
|
||||
<li class="item">
|
||||
{{#link-to "folder.index" model.folder.id model.folder.slug class='link selected'}}
|
||||
{{model.folder.name}}
|
||||
{{/link-to}}
|
||||
</li>
|
||||
{{/layout/top-bar}}
|
||||
|
||||
{{#layout/middle-zone}}
|
||||
{{#layout/middle-zone-content}}
|
||||
{{toolbar/for-space
|
||||
spaces=model.folders
|
||||
space=model.folder
|
||||
permissions=model.permissions
|
||||
templates=model.templates
|
||||
onRefresh=(action 'onRefresh')
|
||||
onDeleteSpace=(action 'onDeleteSpace')}}
|
||||
|
||||
{{folder/documents-list
|
||||
documents=filteredDocs
|
||||
spaces=model.folders
|
||||
space=model.folder
|
||||
templates=model.templates
|
||||
permissions=model.permissions
|
||||
onDeleteDocument=(action 'onDeleteDocument')
|
||||
onMoveDocument=(action 'onMoveDocument')}}
|
||||
{{/layout/middle-zone-content}}
|
||||
|
||||
{{#layout/middle-zone-sidebar}}
|
||||
<div id="sidebar" class="sidebar">
|
||||
{{folder/space-heading space=model.folder permissions=model.permissions}}
|
||||
|
||||
{{folder/space-view
|
||||
spaces=model.folders
|
||||
space=model.folder
|
||||
templates=model.templates
|
||||
permissions=model.permissions
|
||||
documents=model.documents
|
||||
categories=model.categories
|
||||
categorySummary=model.categorySummary
|
||||
categoryMembers=model.categoryMembers
|
||||
rootDocCount=model.rootDocCount
|
||||
categoryFilter=category
|
||||
onFiltered=(action 'onFiltered')
|
||||
onRefresh=(action 'onRefresh')}}
|
||||
</div>
|
||||
{{/layout/middle-zone-sidebar}}
|
||||
{{/layout/middle-zone}}
|
||||
|
||||
{{#layout/bottom-bar}}
|
||||
{{/layout/bottom-bar}}
|
||||
|
||||
{{toolbar/for-space
|
||||
spaces=model.folders
|
||||
space=model.folder
|
||||
permissions=model.permissions
|
||||
templates=model.templates
|
||||
onRefresh=(action 'onRefresh')
|
||||
onDeleteSpace=(action 'onDeleteSpace')}}
|
||||
|
||||
{{folder/space-view
|
||||
spaces=model.folders
|
||||
space=model.folder
|
||||
templates=model.templates
|
||||
permissions=model.permissions
|
||||
documents=model.documents
|
||||
categories=model.categories
|
||||
categorySummary=model.categorySummary
|
||||
categoryMembers=model.categoryMembers
|
||||
rootDocCount=model.rootDocCount
|
||||
categoryFilter=category
|
||||
onRefresh=(action 'onRefresh')}}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue