mirror of
https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
synced 2025-06-12 17:10:41 +00:00
getUser back to CorpusList
This commit is contained in:
@ -20,6 +20,43 @@ class CorpusList extends ResourceList {
|
||||
if (this.isInitialized) {this.onPatch(patch);}
|
||||
});
|
||||
});
|
||||
app.getUser(this.userId).then((user) => {
|
||||
this.add(this.equalizer(user));
|
||||
this.isInitialized = true;
|
||||
});
|
||||
}
|
||||
|
||||
equalizer(user) {
|
||||
const equalizedData = [];
|
||||
for (let corpus of Object.values(user.corpora)) {
|
||||
equalizedData.push(
|
||||
{
|
||||
'id': corpus.id,
|
||||
'creation-date': corpus.creation_date,
|
||||
'description': corpus.description,
|
||||
'status': corpus.status,
|
||||
'title': corpus.title,
|
||||
'owner': user.username,
|
||||
'is-owner': true,
|
||||
'current-user-is-following': false
|
||||
}
|
||||
);
|
||||
}
|
||||
for (let cfa of Object.values(user.corpus_follower_associations)) {
|
||||
equalizedData.push(
|
||||
{
|
||||
'id': cfa.corpus.id,
|
||||
'creation-date': cfa.corpus.creation_date,
|
||||
'description': cfa.corpus.description,
|
||||
'status': cfa.corpus.status,
|
||||
'title': cfa.corpus.title,
|
||||
'owner': cfa.corpus.user.username,
|
||||
'is-owner': false,
|
||||
'current-user-is-following': true
|
||||
}
|
||||
);
|
||||
}
|
||||
return equalizedData;
|
||||
}
|
||||
|
||||
// #region Mandatory getters and methods to implement
|
||||
@ -93,17 +130,8 @@ class CorpusList extends ResourceList {
|
||||
`.trim();
|
||||
}
|
||||
|
||||
mapResourceToValue(corpus) {
|
||||
return {
|
||||
'id': corpus.id,
|
||||
'creation-date': corpus.creation_date,
|
||||
'description': corpus.description,
|
||||
'status': corpus.status,
|
||||
'title': corpus.title,
|
||||
'owner': corpus.user.username,
|
||||
'is-owner': corpus.user.id === this.userId ? true : false,
|
||||
'current-user-is-following': Object.values(corpus.corpus_follower_associations).some(association => association.follower.id === currentUserId)
|
||||
};
|
||||
mapResourceToValue(equalizedData) {
|
||||
return equalizedData;
|
||||
}
|
||||
|
||||
sort() {
|
||||
|
@ -1,6 +1,6 @@
|
||||
class PublicCorpusList extends CorpusList {
|
||||
get item() {
|
||||
return (values) => {
|
||||
return (values) => {
|
||||
return `
|
||||
<tr class="list-item clickable hoverable">
|
||||
<td><b class="title"></b><br><i class="description"></i></td>
|
||||
@ -14,6 +14,19 @@ class PublicCorpusList extends CorpusList {
|
||||
};
|
||||
}
|
||||
|
||||
mapResourceToValue(corpus) {
|
||||
return {
|
||||
'id': corpus.id,
|
||||
'creation-date': corpus.creation_date,
|
||||
'description': corpus.description,
|
||||
'status': corpus.status,
|
||||
'title': corpus.title,
|
||||
'owner': corpus.user.username,
|
||||
'is-owner': corpus.user.id === this.userId ? true : false,
|
||||
'current-user-is-following': Object.values(corpus.corpus_follower_associations).some(association => association.follower.id === currentUserId)
|
||||
};
|
||||
}
|
||||
|
||||
initListContainerElement() {
|
||||
if (!this.listContainerElement.hasAttribute('id')) {
|
||||
this.listContainerElement.id = Utils.generateElementId('corpus-list-');
|
||||
|
Reference in New Issue
Block a user