diff options
| -rw-r--r-- | blog/views.py | 13 | ||||
| -rw-r--r-- | static/css/phone_compatibility.css | 4 | ||||
| -rw-r--r-- | static/css/styles.css | 9 | ||||
| -rw-r--r-- | static/images/site/off.png | bin | 0 -> 22884 bytes | |||
| -rw-r--r-- | static/images/site/on.png | bin | 0 -> 23171 bytes | |||
| -rw-r--r-- | templates/blog/post.html | 48 |
6 files changed, 52 insertions, 22 deletions
diff --git a/blog/views.py b/blog/views.py index f293a4ad..e1c71276 100644 --- a/blog/views.py +++ b/blog/views.py @@ -213,12 +213,12 @@ def anon_comment(request, slug): # not allowed this is anonymous comment form return redirect(reverse('blog:post', kwargs={'slug': slug})) else: - anonymous_user = request.POST.get('anonymous-name') + anonymous_name = request.POST.get('anonymous-name') anonymous_email = request.POST.get('anonymous-email') anonymous_token, at = request.POST.get('anonymous-token'), request.POST.get('anonymous-token') new_anonymous_token = request.POST.get('new-anonymous-token') anonymous_comment = request.POST.get('anonymous-comment') - if not anonymous_user: + if not anonymous_name: messages.error(request, 'Please enter a name!') return redirect(reverse('blog:post', kwargs={'slug': slug})) if not anonymous_comment: @@ -241,9 +241,9 @@ def anon_comment(request, slug): anonymous_avatar = avatar_dir + '/' + avatar_file anonymous_token = hashlib.sha256(anonymous_token.encode('utf-8')).hexdigest() try: - anonymous_user = AnonymousCommentUser.objects.get(name=anonymous_user, email=anonymous_email, token=anonymous_token) + anonymous_user = AnonymousCommentUser.objects.get(email=anonymous_email, token=anonymous_token) except AnonymousCommentUser.DoesNotExist: - anonymous_user = AnonymousCommentUser.objects.create(name=anonymous_user, email=anonymous_email, token=anonymous_token, + anonymous_user = AnonymousCommentUser.objects.create(email=anonymous_email, token=anonymous_token, avatar=anonymous_avatar) if new_anonymous_token: at = new_anonymous_token @@ -251,6 +251,11 @@ def anon_comment(request, slug): anonymous_user.token = new_anonymous_token anonymous_user.save() + # update the anonymous user's name if it has changed + if anonymous_user.name != anonymous_name: + anonymous_user.name = anonymous_name + anonymous_user.save() + comment = Comment.objects.create(anonymous_user=anonymous_user, post=Post.objects.get(slug=slug), body=anonymous_comment) # redirect to the post with the comment but set the anonymous user cookie diff --git a/static/css/phone_compatibility.css b/static/css/phone_compatibility.css index 63b4a7e4..d26ba439 100644 --- a/static/css/phone_compatibility.css +++ b/static/css/phone_compatibility.css @@ -257,11 +257,11 @@ I am not sure yet. float: none !important; } - #anonymous-profile-info > div > label { + #anonymous-profile-info > div > label, #anonymous-profile-info > #creds > div > label { display: block; } - #anonymous-profile-info > div > input { + #anonymous-profile-info > div > input, #anonymous-profile-info > #creds > div > input { width: calc(100% - 20px); display: block; margin: 10px 0; diff --git a/static/css/styles.css b/static/css/styles.css index 2b01ba16..f49bbf44 100644 --- a/static/css/styles.css +++ b/static/css/styles.css @@ -36,7 +36,8 @@ textarea { left: 0; right: 0; bottom: 0; - background-color: rgba(0, 0, 0, 0.8); + background-color: black; + opacity: 0.8; z-index: -1; } @@ -444,16 +445,16 @@ blockquote { z-index: 1; } -#anonymous-profile-info > div { +#anonymous-profile-info > div, #anonymous-profile-info > #creds > div { margin: 10px 0; } -#anonymous-profile-info > div > label { +#anonymous-profile-info > div > label, #anonymous-profile-info > #creds > div > label { width: 200px; display: inline-block; } -#anonymous-profile-info > div > input { +#anonymous-profile-info > div > input, #anonymous-profile-info > #creds > div > input { width: 300px; display: inline-block; } diff --git a/static/images/site/off.png b/static/images/site/off.png Binary files differnew file mode 100644 index 00000000..2bb2f0ba --- /dev/null +++ b/static/images/site/off.png diff --git a/static/images/site/on.png b/static/images/site/on.png Binary files differnew file mode 100644 index 00000000..a0905ac8 --- /dev/null +++ b/static/images/site/on.png diff --git a/templates/blog/post.html b/templates/blog/post.html index c31e871d..5348ffaa 100644 --- a/templates/blog/post.html +++ b/templates/blog/post.html @@ -5,6 +5,7 @@ <div id="post-actions-bar" class="mtsbitem"> <a class="pa-btn" href="{% url 'blog:home' %}">Home</a> <a class="pa-btn" href="#comments">Opinions</a> + <a class="pa-btn" href="javascript:;" onclick="lightsOff()">Lights <img id="lightsStatus" data-status="on" src="{% static 'images/site/on.png' %}" alt="Off" style="height: 11px; position: relative; top: 2px;"></a> {% comment %} <a class="pa-btn" id="translate-jp" href="javascript:;"> <img src="{% static 'images/icons/translate.png' %}" alt="Translate to Japanese" style="height: 11px; width: 11px; margin-right: 5px; position: relative; top: 1px;"> {% if request.session.language == 'jp' %} @@ -236,18 +237,23 @@ <div id="anonymous-comment"> <div id="anonymous-profile-info"> <div> - <label for="anonymous-name"><b>Name </b> <i>{% if request.COOKIES.anonymous_name %}(Pre-Filled){% else %}(Required){% endif %}</i>:</label> - <input required type="text" name="anonymous-name" id="anonymous-name" value="{{ request.COOKIES.anonymous_name }}" placeholder="Display name"> + <label for="anonymous-name"><b>Name </b> <i>{% if request.COOKIES.anonymous_name and request.COOKIES.anonymous_email and request.COOKIES.anonymous_token %}(Pre-Filled){% else %}(Required){% endif %}</i>:</label> + <input required type="text" name="anonymous-name" id="anonymous-name" value="{{ request.COOKIES.anonymous_name }}" placeholder="Display name" style="margin-right: 15px;"> + {% if request.COOKIES.anonymous_name and request.COOKIES.anonymous_email and request.COOKIES.anonymous_token %} + <a href="javascript:;" onclick="toggleCreds()">Change Credentials</a> + {% endif %} </div> - <div> - <label for="anonymous-email"><b>Email</b> <i>{% if request.COOKIES.anonymous_email %}(Pre-Filled){% else %}(Optional){% endif %}</i>:</label> - <input type="text" name="anonymous-email" id="anonymous-email" value="{{ request.COOKIES.anonymous_email }}" placeholder="Your email address"> - </div> - <div> - <input type="hidden" name="anonymous-token" id="anonymous-token" value="{{ request.COOKIES.anonymous_token }}"> - <label for="new-anonymous-token"><b>New Secret Token</b> <i>{% if request.COOKIES.anonymous_token %}(Pre-Filled){% else %}(Optional){% endif %}</i>:</label> - <input type="text" name="new-anonymous-token" id="new-anonymous-token" value="" placeholder="New Secret Token"> - <p><small>You do not fill your secret token everytime you comment. Set it only once and change when needed.</small></p> + <div id="creds" {% if request.COOKIES.anonymous_name and request.COOKIES.anonymous_email and request.COOKIES.anonymous_token %} style="display: none;" {% endif %}> + <div> + <label for="anonymous-email"><b>Email</b> <i>{% if request.COOKIES.anonymous_email %}(Pre-Filled){% else %}(Optional){% endif %}</i>:</label> + <input type="text" name="anonymous-email" id="anonymous-email" value="{{ request.COOKIES.anonymous_email }}" placeholder="Your email address"> + </div> + <div> + <input type="hidden" name="anonymous-token" id="anonymous-token" value="{{ request.COOKIES.anonymous_token }}"> + <label for="new-anonymous-token"><b>New Secret Token</b> <i>{% if request.COOKIES.anonymous_token %}(Pre-Filled){% else %}(Optional){% endif %}</i>:</label> + <input type="text" name="new-anonymous-token" id="new-anonymous-token" value="" placeholder="New Secret Token"> + <p><small>You do not fill your secret token everytime you comment. Set it only once and change when needed.</small></p> + </div> </div> </div> </div> @@ -373,7 +379,25 @@ $('#anonymous-comment-form').show(); }; - {% if request.COOKIES.anonymous_name %} + function toggleCreds() { + $('#creds').slideToggle('fast'); + }; + + function lightsOff() { + // #overlay. Go from 0.8 -> 0.9 opacity + var currentStatus = $('#lightsStatus').attr('data-status'); + if (currentStatus == 'off') { + $('#overlay').fadeTo('fast', 0.8); + $('#lightsStatus').attr('data-status', 'on'); + $('#lightsStatus').attr('src', "{% static 'images/site/on.png' %}"); + } else { + $('#overlay').fadeTo('fast', 0.9); + $('#lightsStatus').attr('data-status', 'off'); + $('#lightsStatus').attr('src', "{% static 'images/site/off.png' %}"); + } + } + + {% if request.COOKIES.anonymous_name and request.COOKIES.anonymous_email and request.COOKIES.anonymous_token %} toggleAnon(); {% endif %} </script> |
