mirror of
				https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
				synced 2025-11-04 04:12:45 +00:00 
			
		
		
		
	Add public switch without form
This commit is contained in:
		@@ -63,19 +63,9 @@ def corpus(corpus_id):
 | 
			
		||||
            or current_user.is_following_corpus(corpus)
 | 
			
		||||
            or corpus.is_public):
 | 
			
		||||
        abort(403)
 | 
			
		||||
    corpus_settings_form = ChangeCorpusSettingsForm(
 | 
			
		||||
        data=corpus.to_json_serializeable(),
 | 
			
		||||
        prefix='corpus-settings-form'
 | 
			
		||||
    )
 | 
			
		||||
    if corpus_settings_form.validate_on_submit():
 | 
			
		||||
        corpus.is_public = corpus_settings_form.is_public.data
 | 
			
		||||
        db.session.commit()
 | 
			
		||||
        flash('Your changes have been saved')
 | 
			
		||||
        return redirect(url_for('.corpus', corpus_id=corpus.id))
 | 
			
		||||
    if corpus.user == current_user:
 | 
			
		||||
        return render_template(
 | 
			
		||||
            'corpora/corpus.html.j2',
 | 
			
		||||
            corpus_settings_form=corpus_settings_form,
 | 
			
		||||
            corpus=corpus,
 | 
			
		||||
            title='Corpus'
 | 
			
		||||
        )
 | 
			
		||||
@@ -89,18 +79,26 @@ def corpus(corpus_id):
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@bp.route('/<hashid:corpus_id>/enable_is_public', methods=['POST'])
 | 
			
		||||
@login_required
 | 
			
		||||
def enable_corpus_is_public(corpus_id):
 | 
			
		||||
    corpus = Corpus.query.get_or_404(corpus_id)
 | 
			
		||||
    if not (corpus.user == current_user or current_user.is_administrator()):
 | 
			
		||||
        abort(403)
 | 
			
		||||
    corpus.is_public = True
 | 
			
		||||
    db.session.commit()
 | 
			
		||||
    return '', 204
 | 
			
		||||
 | 
			
		||||
# @bp.route('/<hashid:corpus_id>/update')
 | 
			
		||||
# @login_required
 | 
			
		||||
# def update_corpus(corpus_id):
 | 
			
		||||
#     corpus = Corpus.query.get_or_404(corpus_id)
 | 
			
		||||
#     if not (corpus.user == current_user or current_user.is_administrator()):
 | 
			
		||||
#         abort(403)
 | 
			
		||||
#     return render_template(
 | 
			
		||||
#         'corpora/update_corpus.html.j2',
 | 
			
		||||
#         corpus=corpus,
 | 
			
		||||
#         title='Corpus'
 | 
			
		||||
#     )
 | 
			
		||||
 | 
			
		||||
@bp.route('/<hashid:corpus_id>/disable_is_public', methods=['POST'])
 | 
			
		||||
@login_required
 | 
			
		||||
def disable_corpus_is_public(corpus_id):
 | 
			
		||||
    corpus = Corpus.query.get_or_404(corpus_id)
 | 
			
		||||
    if not (corpus.user == current_user or current_user.is_administrator()):
 | 
			
		||||
        abort(403)
 | 
			
		||||
    corpus.is_public = False
 | 
			
		||||
    db.session.commit()
 | 
			
		||||
    return '', 204
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@bp.route('/<hashid:corpus_id>', methods=['DELETE'])
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user