Report spam functionality.

master
Nick Sergeant 2016-03-31 10:27:56 -04:00
parent 440e036818
commit fa12cb0c18
6 changed files with 36 additions and 2 deletions

File diff suppressed because one or more lines are too long

View File

@ -1024,6 +1024,15 @@ footer.snipt-attrs {
background-image: none;
float: right;
margin-right: 15%;
padding-left: 0;
}
&.report-spam {
background-image: none;
float: right;
a {
color: #eaa4a6;
}
}
&.tweet {
background: none;

View File

@ -3,7 +3,7 @@ from snipts.models import Favorite, Snipt, SniptLogEntry
class SniptAdmin(admin.ModelAdmin):
readonly_fields = ('user',)
readonly_fields = ('last_user_saved', 'user',)
list_display = ('title', 'slug', 'views', 'favs', 'user', 'lexer',
'public', 'blog_post', 'created', 'modified',
'publish_date')

View File

@ -204,6 +204,11 @@
/ <a href="/api/public/snipt/{{ snipt.id }}/?format=json">API</a>
{% endif %}
</li>
{% if snipt.user != request.user %}
<li class="report-spam">
<a target="_blank" href="/report-spam/{{ snipt.id }}/">Report Spam</a>
</li>
{% endif %}
{% if detail and snipt.public %}
<li class="tweet">
<a href="https://twitter.com/share" class="twitter-share-button" data-dnt="true" data-count="none" data-url="{{ snipt.get_full_absolute_url }}" data-text="&ldquo;{{ snipt.title }}&rdquo; on @Snipt">Tweet</a>

View File

@ -30,6 +30,9 @@ urlpatterns = \
url(r'^raw/(?P<snipt_key>[^/]+)/(?P<lexer>[^\?]+)?$',
views.raw,
name='raw'),
url(r'^report-spam/(?P<snipt_id>[^/]+)/$',
views.report_spam,
name='report-spam'),
url(r'^(?P<username_or_custom_slug>[^/]+)/$',
views.list_user,
name='list-user'),

View File

@ -3,6 +3,7 @@ from annoying.functions import get_object_or_None
from blogs.views import blog_list
from django.conf import settings
from django.contrib.auth.models import User
from django.core.mail import send_mail
from django.core.paginator import Paginator, InvalidPage
from django.db.models import Count
from django.db.models import Q
@ -78,6 +79,22 @@ def embed(request, snipt_key):
content_type='application/javascript')
def report_spam(request, snipt_id):
snipt = get_object_or_404(Snipt, pk=snipt_id)
send_mail('[Snipt] Spam reported',
"""
Snipt: https://snipt.net/admin/snipts/snipt/{}/
User: https://snipt.net/admin/auth/user/{}/delete/
""".format(snipt.id, snipt.user.id),
'support@snipt.net',
['nick@snipt.net'],
fail_silently=False)
return HttpResponse("""Thanks! Your report has been
submitted to the site admins.""")
@render_to('snipts/list-user.html')
def blog_posts(request, username):