diff options
| -rw-r--r-- | blog/views.py | 6 | ||||
| -rw-r--r-- | templates/blog/post.html | 7 | ||||
| -rw-r--r-- | users/views.py | 22 |
3 files changed, 18 insertions, 17 deletions
diff --git a/blog/views.py b/blog/views.py index 3f583058..45db0370 100644 --- a/blog/views.py +++ b/blog/views.py @@ -92,6 +92,12 @@ def post(request, slug): post = Post.objects.get(slug=slug) tags = post.tags.all() comments = Comment.objects.filter(post=post) + for comment in comments: + try: + user_profile = UserProfile.objects.get(user=comment.user) + comment.avatar = hashlib.md5(str(user_profile.gravatar_email).lower().encode('utf-8')).hexdigest() if user_profile.gravatar_email else hashlib.md5(str(comment.user.email).lower().encode()).hexdigest() + except UserProfile.DoesNotExist: + comment.avatar = hashlib.md5(str(comment.user.email).lower().encode()).hexdigest() if post.is_public: return render(request, 'blog/post.html', {'title': post.title, 'post': post, 'tags': tags, 'comments': comments}) else: diff --git a/templates/blog/post.html b/templates/blog/post.html index fc175183..96e22fde 100644 --- a/templates/blog/post.html +++ b/templates/blog/post.html @@ -17,13 +17,8 @@ <h3>Comments</h3> {% for comment in comments %} <div class="comment"> - {% load md5 %} <div class="profile-picture"> - {% if comment.user.gravatar_email %} - <img src="https://www.gravatar.com/avatar/{{ comment.user.gravatar_email | md5 }}?s=100" alt="Profile Picture"> - {% else %} - <img src="https://www.gravatar.com/avatar/{{ comment.user.email | md5 }}?s=100" alt="Profile Picture"> - {% endif %} + <img src="https://www.gravatar.com/avatar/{{ comment.avatar }}?s=100" alt="Profile Picture"> </div> <div> <p class="comment-header"> diff --git a/users/views.py b/users/views.py index f2815876..de762863 100644 --- a/users/views.py +++ b/users/views.py @@ -18,7 +18,7 @@ import django.contrib.auth.password_validation as validators # Create your views here. def login_user(request): # pass - next = request.POST.get('next', '/') + next = request.POST.get('next', 'blog:home') username = request.POST['username'] password = request.POST['password'] print (username, password) @@ -76,10 +76,10 @@ def update_user(request): user_profile = UserProfile(user=username, location=location, gravatar_email=gravatar_email, bio=bio, is_public=is_public, email_public=email_public) user_profile.save() messages.success(request, 'Profile was successfully updated!') - return redirect('/account') + return redirect('blog:account') else: messages.error(request, 'Unable to update profile! Please try again later.') - return redirect('/') + return redirect('blog:home') def change_password(request): @@ -95,16 +95,16 @@ def change_password(request): user.save() update_session_auth_hash(request, user) messages.success(request, 'Password was successfully changed!') - return redirect('/account') + return redirect('blog:account') else: messages.error(request, 'The new password and confirmation password do not match!') - return redirect('/account') + return redirect('blog:account') else: messages.error(request, 'Old password is incorrect!') - return redirect('/account') + return redirect('blog:account') else: messages.error(request, 'Unable to change password! Please try again later.') - return redirect('/') + return redirect('blog:home') def send_verification_email(request): @@ -137,10 +137,10 @@ def verify_email(request, uidb64, token): user_profile.email_verified = True user_profile.save() messages.success(request, 'Your email has been verified! You can now login.', extra_tags='loginError') - return redirect('/') + return redirect('blog:home') else: messages.error(request, 'The verification link is invalid!') - return redirect('/') + return redirect('blog:home') def send_change_user_email(request): user = request.user @@ -184,10 +184,10 @@ def change_email(request, uidb64, token): user.email = new_email user.save() messages.success(request, 'Email was successfully changed!') - return redirect('/account') + return redirect('blog:account') else: messages.error(request, 'The verification link is invalid!') - return redirect('/') + return redirect('blog:home') def register(request): |
