Files
pelican-plugins/gravatar/gravatar.py
Talha Mansoor d3495d0249 Update article_generate_context to article_generator_context
getpelican/pelican@f2d6f77462 changed
`article_generate_context` to `article_generator_context`. This commit
updates the plugin to reflect the change.
2013-08-11 02:14:54 +05:00

32 lines
854 B
Python

"""
Gravatar plugin for Pelican
===========================
This plugin assigns the ``author_gravatar`` variable to the Gravatar URL and
makes the variable available within the article's context.
"""
import hashlib
import six
from pelican import signals
def add_gravatar(generator, metadata):
#first check email
if 'email' not in metadata.keys()\
and 'AUTHOR_EMAIL' in generator.settings.keys():
metadata['email'] = generator.settings['AUTHOR_EMAIL']
#then add gravatar url
if 'email' in metadata.keys():
email_bytes = six.b(metadata['email']).lower()
gravatar_url = "http://www.gravatar.com/avatar/" + \
hashlib.md5(email_bytes).hexdigest()
metadata["author_gravatar"] = gravatar_url
def register():
signals.article_generator_context.connect(add_gravatar)