Files @ b4c438322cad
Branch filter:

Location: website/www/conservancy/local_context_processors.py - annotation

bsturmfels
Fix markup errors on "What We Do" causing layout issues.
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 = 'cy2021-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),
    'cy2020-end-year-match': DateTime(2021, 1, 16, 12, tzinfo=UTC),
    'cy2021-end-year-match': DateTime(2021, 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('/')}