mirror of
https://github.com/jazzband/django-avatar.git
synced 2026-03-16 22:20:30 +00:00
Provide Gravatar default url in settings.AVATAR_GRAVATAR_DEFAULT - will be used by Gravatar if the user has no avatar for that email address.
This commit is contained in:
parent
ed21e5a907
commit
073e9a9c10
2 changed files with 8 additions and 4 deletions
|
|
@ -11,6 +11,7 @@ AUTO_GENERATE_AVATAR_SIZES = getattr(settings, 'AUTO_GENERATE_AVATAR_SIZES', (80
|
|||
AVATAR_RESIZE_METHOD = getattr(settings, 'AVATAR_RESIZE_METHOD', Image.ANTIALIAS)
|
||||
AVATAR_STORAGE_DIR = getattr(settings, 'AVATAR_STORAGE_DIR', 'avatars')
|
||||
AVATAR_GRAVATAR_BACKUP = getattr(settings, 'AVATAR_GRAVATAR_BACKUP', True)
|
||||
AVATAR_GRAVATAR_DEFAULT = getattr(settings, 'AVATAR_GRAVATAR_DEFAULT', None)
|
||||
AVATAR_DEFAULT_URL = getattr(settings, 'AVATAR_DEFAULT_URL',
|
||||
settings.MEDIA_URL + os.path.join(os.path.dirname(__file__), 'default.jpg'))
|
||||
|
||||
|
|
@ -23,4 +24,4 @@ def create_default_thumbnails(instance=None, created=False, **kwargs):
|
|||
if created:
|
||||
for size in AUTO_GENERATE_AVATAR_SIZES:
|
||||
instance.create_thumbnail(size)
|
||||
signals.post_save.connect(create_default_thumbnails, sender=Avatar)
|
||||
signals.post_save.connect(create_default_thumbnails, sender=Avatar)
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ from django.contrib.auth.models import User
|
|||
from django.utils.translation import ugettext as _
|
||||
from django.utils.hashcompat import md5_constructor
|
||||
|
||||
from avatar import AVATAR_DEFAULT_URL, AVATAR_GRAVATAR_BACKUP
|
||||
from avatar import AVATAR_DEFAULT_URL, AVATAR_GRAVATAR_BACKUP, AVATAR_GRAVATAR_DEFAULT
|
||||
|
||||
register = template.Library()
|
||||
|
||||
|
|
@ -29,9 +29,12 @@ def avatar_url(user, size=80):
|
|||
return avatar.avatar_url(size)
|
||||
else:
|
||||
if AVATAR_GRAVATAR_BACKUP:
|
||||
params = {'s': str(size)}
|
||||
if AVATAR_GRAVATAR_DEFAULT:
|
||||
params['d'] = AVATAR_GRAVATAR_DEFAULT
|
||||
return "http://www.gravatar.com/avatar/%s/?%s" % (
|
||||
md5_constructor(user.email).hexdigest(),
|
||||
urllib.urlencode({'s': str(size)}),)
|
||||
urllib.urlencode(params))
|
||||
else:
|
||||
return AVATAR_DEFAULT_URL
|
||||
register.simple_tag(avatar_url)
|
||||
|
|
@ -57,4 +60,4 @@ def render_avatar(avatar, size=80):
|
|||
avatar.create_thumbnail(size)
|
||||
return """<img src="%s" alt="%s" width="%s" height="%s" />""" % (
|
||||
avatar.avatar_url(size), str(avatar), size, size)
|
||||
register.simple_tag(render_avatar)
|
||||
register.simple_tag(render_avatar)
|
||||
|
|
|
|||
Loading…
Reference in a new issue