From: Clinton Ecker Date: Sun, 5 Apr 2009 21:20:37 +0000 (-0500) Subject: moving things around so this app is deployable X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=8cbc735c31d73d22a68cb5454897595093f02a6a;p=django-google-tools.git moving things around so this app is deployable --- diff --git a/__init__.py b/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/google_analytics/__init__.py b/google_analytics/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/google_analytics/models.py b/google_analytics/models.py new file mode 100644 index 0000000..1c245f3 --- /dev/null +++ b/google_analytics/models.py @@ -0,0 +1,11 @@ +from django.db import models +from django.conf import settings +from django.contrib.sites.models import Site + +if getattr(settings, 'GOOGLE_ANALYTICS_MODEL', False): + class Analytics(models.Model): + site = models.ForeignKey(Site, edit_inline=models.TABULAR, max_num_in_admin=1, min_num_in_admin=1) + analytics_code = models.CharField(blank=True, max_length=100, core=True) + + def __unicode__(self): + return u"%s" % (self.analytics_code) diff --git a/google_analytics/templates/google_analytics/analytics_template.html b/google_analytics/templates/google_analytics/analytics_template.html new file mode 100644 index 0000000..5fb5df1 --- /dev/null +++ b/google_analytics/templates/google_analytics/analytics_template.html @@ -0,0 +1,9 @@ + + \ No newline at end of file diff --git a/google_analytics/templatetags/__init__.py b/google_analytics/templatetags/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/google_analytics/templatetags/analytics.py b/google_analytics/templatetags/analytics.py new file mode 100644 index 0000000..a1b29af --- /dev/null +++ b/google_analytics/templatetags/analytics.py @@ -0,0 +1,54 @@ +from django import template +from django.db import models +from django.contrib.sites.models import Site + +from django.template import Context, loader + + +register = template.Library() +Analytics = models.get_model('googleanalytics', 'analytics') + +def do_get_analytics(parser, token): + try: + # split_contents() knows not to split quoted strings. + tag_name, code = token.split_contents() + except ValueError: + code = None + + if not code: + current_site = Site.objects.get_current() + else: + if not (code[0] == code[-1] and code[0] in ('"', "'")): + raise template.TemplateSyntaxError, "%r tag's argument should be in quotes" % tag_name + code = code[1:-1] + current_site = None + return AnalyticsNode(current_site, code) + +class AnalyticsNode(template.Node): + def __init__(self, site=None, code=None): + self.site = site + self.code = code + + def render(self, context): + content = '' + if self.site: + code_set = self.site.analytics_set.all() + if code_set: + code = code_set[0].analytics_code + else: + return '' + elif self.code: + code = self.code + else: + return '' + + if code.strip() != '': + t = loader.get_template('google_analytics/analytics_template.html') + c = Context({ + 'analytics_code': code, + }) + return t.render(c) + else: + return '' + +register.tag('analytics', do_get_analytics) diff --git a/models.py b/models.py deleted file mode 100644 index 1c245f3..0000000 --- a/models.py +++ /dev/null @@ -1,11 +0,0 @@ -from django.db import models -from django.conf import settings -from django.contrib.sites.models import Site - -if getattr(settings, 'GOOGLE_ANALYTICS_MODEL', False): - class Analytics(models.Model): - site = models.ForeignKey(Site, edit_inline=models.TABULAR, max_num_in_admin=1, min_num_in_admin=1) - analytics_code = models.CharField(blank=True, max_length=100, core=True) - - def __unicode__(self): - return u"%s" % (self.analytics_code) diff --git a/templates/google_analytics/analytics_template.html b/templates/google_analytics/analytics_template.html deleted file mode 100644 index 5fb5df1..0000000 --- a/templates/google_analytics/analytics_template.html +++ /dev/null @@ -1,9 +0,0 @@ - - \ No newline at end of file diff --git a/templatetags/__init__.py b/templatetags/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/templatetags/analytics.py b/templatetags/analytics.py deleted file mode 100644 index a1b29af..0000000 --- a/templatetags/analytics.py +++ /dev/null @@ -1,54 +0,0 @@ -from django import template -from django.db import models -from django.contrib.sites.models import Site - -from django.template import Context, loader - - -register = template.Library() -Analytics = models.get_model('googleanalytics', 'analytics') - -def do_get_analytics(parser, token): - try: - # split_contents() knows not to split quoted strings. - tag_name, code = token.split_contents() - except ValueError: - code = None - - if not code: - current_site = Site.objects.get_current() - else: - if not (code[0] == code[-1] and code[0] in ('"', "'")): - raise template.TemplateSyntaxError, "%r tag's argument should be in quotes" % tag_name - code = code[1:-1] - current_site = None - return AnalyticsNode(current_site, code) - -class AnalyticsNode(template.Node): - def __init__(self, site=None, code=None): - self.site = site - self.code = code - - def render(self, context): - content = '' - if self.site: - code_set = self.site.analytics_set.all() - if code_set: - code = code_set[0].analytics_code - else: - return '' - elif self.code: - code = self.code - else: - return '' - - if code.strip() != '': - t = loader.get_template('google_analytics/analytics_template.html') - c = Context({ - 'analytics_code': code, - }) - return t.render(c) - else: - return '' - -register.tag('analytics', do_get_analytics)