copyright_since

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
from django import template
import datetime

register = template.Library ()

@register.simple_tag
def copyright_since(since):
    now = datetime.datetime.now().year
    if since != now:
        return u'© %d—%d' % (int(since), now)
    return u'© %d' % now

More like this

  1. isoutc template filter by japerk 4 years, 1 month ago
  2. A GET string modifier templatetag by cogat 4 years, 5 months ago
  3. Date/time util template filters by marinho 5 years, 6 months ago
  4. SplitSelectDateTimeWidget by bradmontgomery 4 years, 6 months ago
  5. Inspect object debugging tag by dballanc 5 years, 10 months ago

Comments

david_bgk (on March 12, 2009):

© 2008—{% now "Y" %} is even faster?

("stolen" from http://code.djangoproject.com/browser/djangoproject.com/django_website/templates/base.html#L49)

#

bartTC (on March 12, 2009):

I don't see any need for this. I just use: © 2008—{% now "Y" %}

#

David (on March 12, 2009):

You could probably simplify this even further by using a simple_tag. Something like:

@register.simple_tag
def copyright_since(since):
    now = datetime.datetime.now().year
    if since != now:
        return (u'© %d—%d' % (int(since), now)
    else:
        return (u'© %d' % now)

#

david_bgk (on March 12, 2009):

@David: a filter looks even more simple to me.

#

xplozive (on March 12, 2009):

david_bgk, bartTC: lol, 2009-2009?

#

xplozive (on March 12, 2009):

David: thanks, didn't know about simple_tag

#

xplozive (on March 12, 2009):

David: I've replaced my original snippet code with yours one, works fine

#

adamlofts (on March 12, 2009):

Don't you actually have to make changes to the site to (legally) update the copyright label?

#

xplozive (on March 12, 2009):

adamlofts: I think it's just the notice so it doesn't have any legal power

#

Killarny (on March 13, 2009):

This is handy, thanks :)

Improved formatting slightly and fixed some problems with HTML output:

@register.simple_tag
def copyright_since(since):
    now = datetime.datetime.now().year
    if since != now:
        return u'© %d—%d' % (int(since), now)
    return u'© %d' % now

#

(Forgotten your password?)