+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
from django import template
+from ssify import ssi_variable
+from ssify.utils import ssi_cache_control
from ..models import Offer
+from ..utils import sanitize_payment_title
register = template.Library()
-@register.inclusion_tag("funding/tags/funding.html", takes_context=True)
-def funding(context, offer=None, link=False, closeable=False, add_class=""):
- if offer is None and context.get('funding_no_show_current') is None:
- offer = Offer.current()
- if offer is None:
- return {}
-
- offer_sum = offer.sum()
- return {
- 'offer': offer,
- 'sum': offer_sum,
- 'is_current': offer.is_current(),
- 'is_win': offer_sum >= offer.target,
- 'missing': offer.target - offer_sum,
- 'percentage': 100 * offer_sum / offer.target,
- 'link': link,
- 'closeable': closeable,
- 'add_class': add_class,
- }
-
-
-@register.inclusion_tag("funding/tags/offer_status.html")
-def offer_status(offer):
- return {
- 'offer': offer,
- }
-
-@register.inclusion_tag("funding/tags/offer_status_more.html")
-def offer_status_more(offer):
- return {
- 'offer': offer,
- }
+@ssi_variable(register, patch_response=[ssi_cache_control(must_revalidate=True, max_age=0)])
+def current_offer(request):
+ offer = Offer.current()
+ return offer.pk if offer is not None else None
+register.filter(sanitize_payment_title)