def avatarchoose(request): """ Avatar choose """ profile, created = Profile.objects.get_or_create(user = request.user) if not request.method == "POST": form = AvatarForm() else: form = AvatarForm(request.POST, request.FILES) if form.is_valid(): image = form.cleaned_data.get('url') or form.cleaned_data.get('photo') avatar = Avatar(user=request.user, image=image, valid=False) avatar.image.save("%s.jpg" % request.user.username, image) image = Image.open(avatar.image.path) image.thumbnail((480, 480), Image.ANTIALIAS) image.convert("RGB").save(avatar.image.path, "JPEG") avatar.save() return HttpResponseRedirect('%scrop/' % request.path_info) base, filename = os.path.split(avatar_path) generic, extension = os.path.splitext(filename) if DEFAULT_AVATAR: base, filename = os.path.split(DEFAULT_AVATAR) filename, extension = os.path.splitext(filename) generic96 = "%s/%s.96%s" % (base, filename, extension) generic96 = generic96.replace(settings.MEDIA_ROOT, settings.MEDIA_URL) else: generic96 = "" template = "userprofile/avatar/choose.html" data = { 'generic96': generic96, 'form': form, 'AVATAR_WEBSEARCH': AVATAR_WEBSEARCH, 'section': 'avatar', } return render_to_response(template, data, context_instance=RequestContext(request))
def api_upload_avatar(request): if request.method == "POST": file = request.FILES['file'] avatar = Avatar(file=file) avatar.save() response_data={"file_url": avatar.file.url} return HttpResponse(simplejson.dumps(response_data), mimetype='application/json') raise Http404
def create_default_user_profile(self, user): """ Creates a default user profile """ avatar = Avatar(image_path='avatars/shortbrown.png') avatar.save() profile = PlayerProfile(user=user, name=user.username, avatar=avatar) profile.save() return profile