documents categories
This commit is contained in:
1 parent
923ee9b069
commit
47a077e0c1
2 files changed
+28
-5
No files matched your search
@@ -1,14 +1,34 @@
|
||||
import template from '../../templates/components/page-documents.html';
|
||||
|
||||
let unique = fn => list => [...new Set(list.map(fn))];
|
||||
|
||||
export default function (app) {
|
||||
app.component('pageDocuments', {
|
||||
template: template,
|
||||
controller: function (api) {
|
||||
this.pageClass = 'page-documents';
|
||||
let categories = unique(i => i.category);
|
||||
|
||||
this.collections = [];
|
||||
|
||||
api.document.documents()
|
||||
.success(data => {
|
||||
this.documents = data;
|
||||
.success(documents => {
|
||||
let cats = categories(documents)
|
||||
.map(cat => new Object({
|
||||
name: cat,
|
||||
documents: []
|
||||
}));
|
||||
|
||||
let docCollections = documents.reduce(
|
||||
(cats, doc) => {
|
||||
let c = cats.find(i => i.name === doc.category);
|
||||
c.documents.push(doc);
|
||||
return cats;
|
||||
},
|
||||
cats
|
||||
);
|
||||
|
||||
this.collections = this.collections.concat(docCollections);
|
||||
});
|
||||
|
||||
api.document.awards()
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
<div class="content content_wide">
|
||||
<h2>Устав, Лицензия, пр.</h2>
|
||||
<div class="documents-container">
|
||||
<document ng-repeat="i in $ctrl.documents" document="i"></document>
|
||||
<div ng-repeat="c in $ctrl.collections">
|
||||
<h2>{{c.name}}</h2>
|
||||
|
||||
<div class="documents-container">
|
||||
<document ng-repeat="i in c.documents" document="i"></document>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h2>Награды</h2>
|
||||
|
||||
Reference in new issue
Block a user