CorpusFile selection+restore public_corpus page

This commit is contained in:
Inga Kirschnick
2023-05-12 13:43:38 +02:00
parent 1c47d2a346
commit 0cf955bd2f
4 changed files with 569 additions and 11 deletions

View File

@ -54,6 +54,7 @@ def corpus(corpus_id):
# TODO: Better solution for filtering admin
users = User.query.filter(User.is_public == True, User.id != current_user.id, User.id != corpus.user.id, User.role_id < 4).all()
cfa = CorpusFollowerAssociation.query.filter_by(corpus_id=corpus_id, follower_id=current_user.id).first()
cfas = CorpusFollowerAssociation.query.filter_by(corpus_id=corpus_id).all()
if cfa is None:
if corpus.user == current_user or current_user.is_administrator():
cfr = CorpusFollowerRole.query.filter_by(name='Administrator').first()
@ -61,14 +62,29 @@ def corpus(corpus_id):
cfr = CorpusFollowerRole.query.filter_by(name='Anonymous').first()
else:
cfr = cfa.role
return render_template(
'corpora/corpus.html.j2',
title=corpus.title,
corpus=corpus,
cfrs=cfrs,
cfr=cfr,
users = users
)
if corpus.user == current_user or current_user.is_administrator():
return render_template(
'corpora/corpus.html.j2',
title=corpus.title,
corpus=corpus,
cfr=cfr,
cfrs=cfrs,
users = users
)
if (current_user.is_following_corpus(corpus) or corpus.is_public):
cfas = CorpusFollowerAssociation.query.filter_by(corpus_id=corpus_id).all()
return render_template(
'corpora/public_corpus.html.j2',
title=corpus.title,
corpus=corpus,
cfrs=cfrs,
cfr=cfr,
cfas=cfas,
cfa=cfa,
users = users
)
abort(403)
@bp.route('/<hashid:corpus_id>/analysis')