Merge branch 'master' of github.com:fergalmoran/dss.api

This commit is contained in:
Fergal Moran
2015-07-27 22:05:05 +01:00
3 changed files with 18 additions and 17 deletions

View File

@@ -1,7 +1,10 @@
from allauth.socialaccount.models import SocialAccount
from azure.storage import BlobService
from django.core.files.base import ContentFile
from django.core.management.base import NoArgsCommand
from requests import request, ConnectionError
from dss import storagesettings
from spa.models.userprofile import UserProfile
@@ -12,10 +15,16 @@ def save_image(profile, url):
except ConnectionError:
pass
else:
profile.avatar_image.save(u'',
ContentFile(response.content),
save=False)
profile.save()
service = BlobService(
account_name=storagesettings.AZURE_ACCOUNT_NAME,
account_key=storagesettings.AZURE_ACCOUNT_KEY)
service.put_block_blob_from_bytes(
'avatars',
profile.id,
response.content,
x_ms_blob_content_type=response.headers['content-type']
)
class Command(NoArgsCommand):

View File

@@ -102,4 +102,6 @@ try:
from south.modelsinspector import add_introspection_rules
add_introspection_rules([], ['^spa\.models.fields\.MultiSelectField'])
except ImportError:
pass
pass

View File

@@ -168,6 +168,7 @@ class UserProfile(BaseModel):
return self.display_name or self.first_name + ' ' + self.last_name
def get_sized_avatar_image(self, width, height):
return self.get_avatar_image()
try:
image = self.get_avatar_image()
sized = thumbnail.get_thumbnail(image, "%sx%s" % (width, height), crop="center")
@@ -178,18 +179,7 @@ class UserProfile(BaseModel):
return UserProfile.get_default_avatar_image()
def get_avatar_image(self):
avatar_type = self.avatar_type
if avatar_type == 'gravatar':
gravatar_exists = has_gravatar(self.email)
if gravatar_exists:
return get_gravatar_url(self.email)
else:
if os.path.exists(self.avatar_image.file.name):
return self.avatar_image
else:
return self.get_default_avatar_image()
return UserProfile.get_default_avatar_image()
return (settings.CDN_URL + 'avatars/{0}').format(self.id)
def get_profile_url(self):
return '/user/%s' % (self.slug)