2019-01-08 22:59:23 +00:00
|
|
|
from datetime import datetime as DateTime
|
|
|
|
from pytz import utc as UTC
|
|
|
|
|
2017-11-06 18:01:10 +00:00
|
|
|
import conservancy.settings
|
2015-12-01 02:49:50 +00:00
|
|
|
from conservancy.apps.fundgoal.models import FundraisingGoal as FundraisingGoal
|
|
|
|
|
2019-11-24 21:01:57 +00:00
|
|
|
SITE_FUNDGOAL = 'cy2019-end-year-match'
|
2019-01-08 22:59:23 +00:00
|
|
|
# FIXME: Move this information into the model.
|
|
|
|
FUNDGOAL_ENDTIMES = {
|
2019-11-24 21:01:57 +00:00
|
|
|
# Noon UTC = the end of the previous day anywhere on Earth (AOE)
|
2019-01-08 22:59:23 +00:00
|
|
|
'cy2018-end-year-match': DateTime(2019, 1, 16, 12, tzinfo=UTC),
|
2019-11-24 21:01:57 +00:00
|
|
|
'cy2019-end-year-match': DateTime(2020, 1, 16, 12, tzinfo=UTC),
|
2019-01-08 22:59:23 +00:00
|
|
|
}
|
|
|
|
|
2015-12-01 02:49:50 +00:00
|
|
|
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):
|
2019-01-08 22:59:23 +00:00
|
|
|
return {
|
2019-11-22 14:46:07 +00:00
|
|
|
'datetime_now': DateTime.now(UTC),
|
2019-01-08 22:59:23 +00:00
|
|
|
'sitefundgoal': fundgoal_lookup(SITE_FUNDGOAL),
|
2019-11-22 14:46:07 +00:00
|
|
|
'sitefundgoal_endtime': FUNDGOAL_ENDTIMES[SITE_FUNDGOAL],
|
2019-01-08 22:59:23 +00:00
|
|
|
}
|
2017-11-06 18:01:10 +00:00
|
|
|
|
|
|
|
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('/')}
|