mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
add util.get_vote -> get_vote
Jinja2 filter
This filter gets a vote of a request's user toward a voteinfo. Example: {% set vote = (voteinfo | get_vote(request)) %} Signed-off-by: Kevin Morris <kevr@0cost.org>
This commit is contained in:
parent
d606ebc0f1
commit
a6bba601a9
2 changed files with 8 additions and 0 deletions
|
@ -29,6 +29,7 @@ env.filters["dt"] = util.timestamp_to_datetime
|
|||
env.filters["as_timezone"] = util.as_timezone
|
||||
env.filters["dedupe_qs"] = util.dedupe_qs
|
||||
env.filters["urlencode"] = quote_plus
|
||||
env.filters["get_vote"] = util.get_vote
|
||||
|
||||
# Add captcha filters.
|
||||
env.filters["captcha_salt"] = captcha.captcha_salt_filter
|
||||
|
|
|
@ -10,6 +10,8 @@ from datetime import datetime
|
|||
from urllib.parse import quote_plus, urlparse
|
||||
from zoneinfo import ZoneInfo
|
||||
|
||||
import fastapi
|
||||
|
||||
from email_validator import EmailNotValidError, EmailUndeliverableError, validate_email
|
||||
from fastapi.responses import Response
|
||||
from jinja2 import pass_context
|
||||
|
@ -143,6 +145,11 @@ def dedupe_qs(query_string: str, *additions):
|
|||
return '&'.join([f"{k}={quote_plus(v)}" for k, v in reversed(qs.items())])
|
||||
|
||||
|
||||
def get_vote(voteinfo, request: fastapi.Request):
|
||||
from aurweb.models.tu_vote import TUVote
|
||||
return voteinfo.tu_votes.filter(TUVote.User == request.user).first()
|
||||
|
||||
|
||||
def jsonify(obj):
|
||||
""" Perform a conversion on obj if it's needed. """
|
||||
if isinstance(obj, datetime):
|
||||
|
|
Loading…
Add table
Reference in a new issue