from app import app, db from app.models.attachment import Attachment from app.models.comment import Comment from app.models.forum import Forum from app.models.post import Post from app.models.program import Program from app.models.thread import Thread from app.models.topic import Topic from app.models.user import Member from app.utils.render import render from app.utils.check_csrf import check_csrf from app.utils.priv_required import priv_required from app.forms.forum import CommentEditForm, AnonymousCommentEditForm, TopicEditForm from app.forms.post import MovePost, SearchThread from wtforms import BooleanField from urllib.parse import urlparse from flask import redirect, url_for, abort, request, flash from flask_login import login_required, current_user from sqlalchemy import text @app.route('/post/', methods=['GET', 'POST']) def redirect_post(postid): print(postid) c = Comment.query.filter_by(id=postid).first_or_404() owner = c.thread.owner_post if hasattr(owner, 'forum'): # Is a topic comments = owner.thread.comments.order_by(Comment.date_created.asc()).where( Comment.date_created >= c.date_created ).paginate(0, Thread.COMMENTS_PER_PAGE, True) url = url_for('forum_topic', f=owner.forum, page=(owner, comments.pages)) else: # Is a program url = url_for('program_view', page=owner.name) return redirect(url, 301)