aboutsummaryrefslogtreecommitdiff
path: root/app/template_filters.py
blob: 6f31ea05ec0982b2f5563fd520e9e38637dbe330 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from . import app
from .models import Permission, Package, PackageState, PackageRelease
from .utils import abs_url_for, url_set_query
from flask_user import current_user
from urllib.parse import urlparse

@app.context_processor
def inject_debug():
	return dict(debug=app.debug)

@app.context_processor
def inject_functions():
	check_global_perm = Permission.checkPerm
	return dict(abs_url_for=abs_url_for, url_set_query=url_set_query, check_global_perm=check_global_perm)

@app.context_processor
def inject_todo():
	todo_list_count = None
	if current_user and current_user.is_authenticated and current_user.canAccessTodoList():
		todo_list_count = Package.query.filter_by(state=PackageState.READY_FOR_REVIEW).count()
		todo_list_count += PackageRelease.query.filter_by(approved=False, task_id=None).count()

	return dict(todo_list_count=todo_list_count)

@app.template_filter()
def throw(err):
	raise Exception(err)

@app.template_filter()
def domain(url):
	return urlparse(url).netloc

@app.template_filter()
def date(value):
	return value.strftime("%Y-%m-%d")

@app.template_filter()
def datetime(value):
	return value.strftime("%Y-%m-%d %H:%M") + " UTC"