mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-02 23:48:47 +00:00
Clean avatar code
This commit is contained in:
@@ -22,7 +22,6 @@ class UploadAvatarForm(forms.Form):
|
|||||||
avatar = forms.ImageField()
|
avatar = forms.ImageField()
|
||||||
|
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
# self.user = kwargs.pop('user')
|
|
||||||
self.emailuser = kwargs.pop('user').email
|
self.emailuser = kwargs.pop('user').email
|
||||||
super(UploadAvatarForm, self).__init__(*args, **kwargs)
|
super(UploadAvatarForm, self).__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
@@ -34,10 +34,8 @@ def avatar_file_path(instance=None, filename=None, size=None, ext=None):
|
|||||||
tmppath = [AVATAR_STORAGE_DIR]
|
tmppath = [AVATAR_STORAGE_DIR]
|
||||||
if AVATAR_HASH_USERDIRNAMES:
|
if AVATAR_HASH_USERDIRNAMES:
|
||||||
tmp = md5_constructor(instance.user.username).hexdigest()
|
tmp = md5_constructor(instance.user.username).hexdigest()
|
||||||
# tmppath.extend([tmp[0], tmp[1], instance.user.username])
|
|
||||||
tmppath.extend([tmp[0], tmp[1], instance.emailuser])
|
tmppath.extend([tmp[0], tmp[1], instance.emailuser])
|
||||||
else:
|
else:
|
||||||
# tmppath.append(instance.user.username)
|
|
||||||
tmppath.append(instance.emailuser)
|
tmppath.append(instance.emailuser)
|
||||||
if not filename:
|
if not filename:
|
||||||
# Filename already stored in database
|
# Filename already stored in database
|
||||||
@@ -69,7 +67,6 @@ def find_extension(format):
|
|||||||
return format
|
return format
|
||||||
|
|
||||||
class Avatar(models.Model):
|
class Avatar(models.Model):
|
||||||
# user = models.ForeignKey(User)
|
|
||||||
emailuser = models.CharField(max_length=255)
|
emailuser = models.CharField(max_length=255)
|
||||||
primary = models.BooleanField(default=False)
|
primary = models.BooleanField(default=False)
|
||||||
avatar = models.ImageField(max_length=1024, upload_to=avatar_file_path, blank=True)
|
avatar = models.ImageField(max_length=1024, upload_to=avatar_file_path, blank=True)
|
||||||
|
@@ -5,7 +5,6 @@ from django.utils.translation import ugettext as _
|
|||||||
from django.utils.hashcompat import md5_constructor
|
from django.utils.hashcompat import md5_constructor
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
|
|
||||||
#from django.contrib.auth.models import User
|
|
||||||
from seahub.base.accounts import CcnetUser
|
from seahub.base.accounts import CcnetUser
|
||||||
from seaserv import get_ccnetuser
|
from seaserv import get_ccnetuser
|
||||||
|
|
||||||
@@ -38,11 +37,9 @@ def avatar_url(user, size=AVATAR_DEFAULT_SIZE):
|
|||||||
def avatar(user, size=AVATAR_DEFAULT_SIZE):
|
def avatar(user, size=AVATAR_DEFAULT_SIZE):
|
||||||
if not isinstance(user, CcnetUser):
|
if not isinstance(user, CcnetUser):
|
||||||
try:
|
try:
|
||||||
# user = User.objects.get(username=user)
|
|
||||||
user = get_ccnetuser(username=user)
|
user = get_ccnetuser(username=user)
|
||||||
alt = unicode(user)
|
alt = unicode(user)
|
||||||
url = avatar_url(user, size)
|
url = avatar_url(user, size)
|
||||||
# except User.DoesNotExist:
|
|
||||||
except:
|
except:
|
||||||
url = get_default_avatar_url()
|
url = get_default_avatar_url()
|
||||||
alt = _("Default Avatar")
|
alt = _("Default Avatar")
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.core.cache import cache
|
from django.core.cache import cache
|
||||||
|
|
||||||
#from django.contrib.auth.models import User
|
|
||||||
from seahub.base.accounts import CcnetUser
|
from seahub.base.accounts import CcnetUser
|
||||||
|
|
||||||
from seaserv import get_ccnetuser
|
from seaserv import get_ccnetuser
|
||||||
@@ -47,10 +46,6 @@ def invalidate_cache(user, size=None):
|
|||||||
cache.delete(get_cache_key(user, size, prefix))
|
cache.delete(get_cache_key(user, size, prefix))
|
||||||
|
|
||||||
def get_default_avatar_url():
|
def get_default_avatar_url():
|
||||||
"""(e.g.)
|
|
||||||
base_url = '/media/'
|
|
||||||
AVATAR_DEFAULT_URL = '/avatars/default.png'
|
|
||||||
"""
|
|
||||||
base_url = getattr(settings, 'STATIC_URL', None)
|
base_url = getattr(settings, 'STATIC_URL', None)
|
||||||
if not base_url:
|
if not base_url:
|
||||||
base_url = getattr(settings, 'MEDIA_URL', '')
|
base_url = getattr(settings, 'MEDIA_URL', '')
|
||||||
@@ -69,9 +64,7 @@ def get_default_avatar_url():
|
|||||||
def get_primary_avatar(user, size=AVATAR_DEFAULT_SIZE):
|
def get_primary_avatar(user, size=AVATAR_DEFAULT_SIZE):
|
||||||
if not isinstance(user, CcnetUser):
|
if not isinstance(user, CcnetUser):
|
||||||
try:
|
try:
|
||||||
# user = User.objects.get(username=user)
|
|
||||||
user = get_ccnetuser(username=user)
|
user = get_ccnetuser(username=user)
|
||||||
# except User.DoesNotExist:
|
|
||||||
except:
|
except:
|
||||||
return None
|
return None
|
||||||
try:
|
try:
|
||||||
@@ -79,7 +72,6 @@ def get_primary_avatar(user, size=AVATAR_DEFAULT_SIZE):
|
|||||||
# it will be first, and then ordered by date uploaded, otherwise a
|
# it will be first, and then ordered by date uploaded, otherwise a
|
||||||
# primary=False avatar will be first. Exactly the fallback behavior we
|
# primary=False avatar will be first. Exactly the fallback behavior we
|
||||||
# want.
|
# want.
|
||||||
# avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]
|
|
||||||
from seahub.avatar.models import Avatar
|
from seahub.avatar.models import Avatar
|
||||||
avatar = Avatar.objects.filter(emailuser=user.email, primary=1)[0]
|
avatar = Avatar.objects.filter(emailuser=user.email, primary=1)[0]
|
||||||
except IndexError:
|
except IndexError:
|
||||||
|
@@ -36,7 +36,6 @@ def _get_next(request):
|
|||||||
|
|
||||||
def _get_avatars(user):
|
def _get_avatars(user):
|
||||||
# Default set. Needs to be sliced, but that's it. Keep the natural order.
|
# Default set. Needs to be sliced, but that's it. Keep the natural order.
|
||||||
# avatars = user.avatar_set.all()
|
|
||||||
avatars = Avatar.objects.filter(emailuser=user.email)
|
avatars = Avatar.objects.filter(emailuser=user.email)
|
||||||
|
|
||||||
# Current avatar
|
# Current avatar
|
||||||
|
Reference in New Issue
Block a user