Browse Source

Blank avatar support added

Rafał Pitoń 11 years ago
parent
commit
b8a047dd48

BIN
misago/project_template/avatar_cache/1401/blank_100.png


BIN
misago/project_template/avatar_cache/1401/blank_150.png


BIN
misago/project_template/avatar_cache/1401/blank_20.png


BIN
misago/project_template/avatar_cache/1401/blank_30.png


BIN
misago/project_template/avatar_cache/1401/blank_50.png


BIN
misago/project_template/avatar_cache/1401/blank_64.png


BIN
misago/project_template/media/avatars/blank.png


+ 3 - 1
misago/users/avatars/cache.py

@@ -5,6 +5,8 @@ from PIL import Image
 
 from misago.conf import settings
 
+from misago.users.avatars.paths import AVATARS_CACHE
+
 
 def store_avatar(user, image):
     avatar_dir = get_existing_avatars_dir(user)
@@ -34,7 +36,7 @@ def store_new_avatar(user, image):
 
 def get_existing_avatars_dir(user):
     date_dir = unicode(user.joined_on.strftime('%y%m'))
-    avatars_dir = path(os.path.join(settings.MISAGO_AVATAR_CACHE, date_dir))
+    avatars_dir = path(os.path.join(AVATARS_CACHE, date_dir))
 
     if not avatars_dir.exists():
         avatars_dir.mkdir()

+ 10 - 0
misago/users/avatars/paths.py

@@ -0,0 +1,10 @@
+import os
+
+from path import path
+
+from misago.conf import settings
+
+
+AVATARS_CACHE = settings.MISAGO_AVATAR_CACHE
+MEDIA_AVATARS = os.path.join(settings.MEDIA_ROOT, 'avatars')
+BLANK_AVATAR = os.path.join(MEDIA_AVATARS, 'blank.png')

+ 22 - 0
misago/users/management/commands/cacheblankavatar.py

@@ -0,0 +1,22 @@
+from datetime import date
+
+from PIL import Image
+
+from django.core.management.base import BaseCommand
+
+from misago.users.avatars import cache
+from misago.users.avatars.paths import BLANK_AVATAR
+
+
+class FakeUser(object):
+    pk = 'blank'
+    id = 'blank'
+    joined_on = date(2014, 1, 1)
+
+
+class Command(BaseCommand):
+    help = 'Overwrites cached blank avatar with new one.'
+
+    def handle(self, *args, **options):
+        cache.store_new_avatar(FakeUser, Image.open(BLANK_AVATAR))
+        self.stdout.write('Blank avatar cache was refreshed.')