dynamicweb/utils/context_processor.py

32 lines
1.1 KiB
Python
Raw Normal View History

from django.conf import settings
def google_analytics(request):
"""
Use the variables returned in this function to
render your Google Analytics tracking code template.
2018-07-21 11:28:43 +00:00
Also check whether the site is a tenant site and create a corresponding
variable to indicate this
"""
host = request.get_host()
ga_prop_id = getattr(settings, 'GOOGLE_ANALYTICS_PROPERTY_IDS', False).get(
host)
2018-07-21 11:28:43 +00:00
which_urlspy = settings.MULTISITE_CMS_URLS.get(host)
if ga_prop_id is None:
# Try checking if we have a www in host, if yes we remove
# that and check in the dict again
if host.startswith('www.'):
2017-08-24 14:10:53 +00:00
ga_prop_id = getattr(settings, 'GOOGLE_ANALYTICS_PROPERTY_IDS',
False).get(host[4:])
2018-07-21 11:28:43 +00:00
which_urlspy = settings.MULTISITE_CMS_URLS.get(host[4:])
return_dict = {}
2017-06-29 22:33:12 +00:00
if not settings.DEBUG and ga_prop_id:
2018-07-21 11:28:43 +00:00
return_dict['GOOGLE_ANALYTICS_PROPERTY_ID'] = ga_prop_id
if which_urlspy:
if which_urlspy.endswith("multi"):
return_dict['IS_TENANT_SITE'] = True
return return_dict