def result(): name = request.form["name"] type = request.form["type"] year = request.form["year"] language = request.form["language"] results = db.find_results(name) moderator = check_moderator() final_results = copy(results) for result in results: if type != "Any": if result[2] != type: final_results.remove(result) continue if year != "Any": if result[3] != int(year): final_results.remove(result) continue if language != "Any": if result[4] != language: final_results.remove(result) final_results.sort(key=name_order) return render_template("results.html", results=final_results, moderator=moderator)
def edit_work(id): moderator = check_moderator() work = db.find_work(id) report = db.find_report(id, "work") return render_template("edit_work.html", moderator=moderator, work=work, report=report)
def edit_review(id): review = db.find_review_edit(id) writer = check_author(review[3]) moderator = check_moderator() moderator2 = moderator if writer: moderator = False report = db.find_report(id, "review") return render_template("edit_review.html", moderator=moderator, moderator2=moderator2, writer=writer, review=review, report=report)
def edit_reply(id): moderator = check_moderator() moderator2 = moderator reply = db.find_reply(id) writer = check_author(reply[0]) if writer: moderator = False report = db.find_report(id, "reply") return render_template("edit_reply.html", moderator=moderator, moderator2=moderator2, reply=reply, id=id, writer=writer, report=report)
def edit_comment(id): comment = db.find_comment_edit(id) writer = check_author(comment[0]) moderator = check_moderator() moderator2 = moderator if writer: moderator = False report = db.find_report(id, "comment") return render_template("edit_comment.html", moderator=moderator, moderator2=moderator2, comment=comment, id=id, writer=writer, report=report)
def work(id): moderator = check_moderator() work = db.find_work(id) reviews = db.find_reviews(id) if reviews: score = round(db.find_average_score(id), 1) if int(score) == score: score = int(score) else: score = "?" return render_template("work.html", work=work, reviews=reviews, score=score, moderator=moderator)
def replies(id, comment_id): comment = db.find_comment(comment_id) replies = db.find_replies(comment_id) moderator = check_moderator() final_replies = [] for reply in replies: if check_author(reply[0]): final_replies.append([reply[0], reply[1], reply[2], True]) else: final_replies.append([reply[0], reply[1], reply[2], False]) return render_template("reply.html", id=id, comment_id=comment_id, comment=comment, replies=final_replies, moderator=moderator)
def create_account(): username = request.form["username"] password = request.form["password"] password2 = request.form["password2"] moderator = check_moderator() user_id = db.find_user_id(username) if user_id != None: return render_template("create.html", error="Username taken", moderator=moderator) if password != password2: return render_template("create.html", error="Passwords not identical", moderator=moderator) password = generate_password_hash(password2) db.insert_user(username, password) return redirect("/login")
def reports(): work_reports = [] review_reports = [] comment_reports = [] reply_reports = [] reports = db.find_reports() moderator = check_moderator() for report in reports: if report[0] != None: work_reports.append([f"/work/{report[0]}", report[5]]) elif report[1] != None: review_reports.append([f"/review/{report[1]}", report[5]]) elif report[2] != None: comment_reports.append([f"/edit/comment/{report[2]}", report[5]]) elif report[3] != None: reply_reports.append([f"/edit/reply/{report[3]}", report[5]]) return render_template("reports.html", work_reports=work_reports, review_reports=review_reports, comment_reports=comment_reports, reply_reports=reply_reports, moderator=moderator)
def review(id): review = db.find_review(id) writer = check_author(review[1]) moderator = check_moderator() moderator2 = moderator if writer: moderator = False comments = db.find_comments(id) final_comments = [] for comment in comments: replies = db.find_replies(comment[2]) if check_author(comment[0]): final_comments.append( [comment[0], comment[1], comment[2], replies, True]) else: final_comments.append( [comment[0], comment[1], comment[2], replies, False]) return render_template("review.html", review=review, comments=final_comments, id=id, writer=writer, moderator=moderator, moderator2=moderator2)
def search(): moderator = check_moderator() return render_template("search.html", moderator=moderator)
def write(): moderator = check_moderator() return render_template("write.html", moderator=moderator)
def create(): moderator = check_moderator() return render_template("create.html", error=False, moderator=moderator)
def report(type, id): moderator = check_moderator() return render_template("report.html", type=type, id=id, moderator=moderator)
def login(): moderator = check_moderator() return render_template("login.html", moderator=moderator)
def index(): moderator = check_moderator() return render_template("index.html", moderator=moderator)