website/www/conservancy/local_context_processors.py

36 lines
1.2 KiB
Python
Raw Normal View History

from datetime import datetime as DateTime
from pytz import utc as UTC
import conservancy.settings
from conservancy.apps.fundgoal.models import FundraisingGoal as FundraisingGoal
SITE_FUNDGOAL = 'cy2019-end-year-match'
# FIXME: Move this information into the model.
FUNDGOAL_ENDTIMES = {
# Noon UTC = the end of the previous day anywhere on Earth (AOE)
'cy2018-end-year-match': DateTime(2019, 1, 16, 12, tzinfo=UTC),
'cy2019-end-year-match': DateTime(2020, 1, 16, 12, tzinfo=UTC),
}
def fundgoal_lookup(fundraiser_sought):
try:
return FundraisingGoal.objects.get(fundraiser_code_name=fundraiser_sought)
except FundraisingGoal.DoesNotExist:
# we have no object! do something
return None
def sitefundraiser(request):
return {
'datetime_now': DateTime.now(UTC),
'sitefundgoal': fundgoal_lookup(SITE_FUNDGOAL),
'sitefundgoal_endtime': FUNDGOAL_ENDTIMES[SITE_FUNDGOAL],
}
if conservancy.settings.FORCE_CANONICAL_HOSTNAME:
_HOST_URL_VAR = {'host_url': 'https://' + conservancy.settings.FORCE_CANONICAL_HOSTNAME}
def host_url(request):
return _HOST_URL_VAR
else:
def host_url(request):
return {'host_url': request.build_absolute_uri('/').rstrip('/')}