fixes report zapping/unzapping

This commit is contained in:
Nathan Dinsmore 2012-12-20 14:18:29 -05:00
parent 6612d6f768
commit 45d28133da
2 changed files with 20 additions and 24 deletions

View file

@ -5,8 +5,6 @@
{% block content %}
<div class="box">
<h2>New Reports</h2>
<form method="post" action="?action=zap">
{% csrf_token %}
<table>
<tr>
<th scope="col" class="sortable" style="width:20%">Reported By</th>
@ -27,18 +25,19 @@
<br><br>
Posted By:<a href="{% url profile_detail report.post.user.username %}"> {{ report.post.user }} </a>
</td><td>
<button type="submit" class="grey button" name="zap_id[{{ report.id }}]"><span>Zap</span></button>
<form method="post" action="?action=zap">
{% csrf_token %}
<input type="hidden" name="id" value="{{ report.id }}" />
<button type="submit" class="grey button" name="zap_id[{{ report.id }}]" value="Zap"><span>Zap</span></button>
</form>
</td></tr>
{% endfor %}
</table>
</form>
</div>
<br><br>
<div class ="box">
<h2>Recently Zapped Reports</h2>
<form method="post" action="?action=zap">
{% csrf_token %}
<table>
<tr>
<th scope="col" class="sortable" style="width:20%">Reported By</th>
@ -59,13 +58,15 @@ Posted By:<a href="{% url profile_detail report.post.user.username %}"> {{ repor
<br><br>
Posted By:<a href="{% url profile_detail report.post.user.username %}"> {{ report.post.user }} </a>
</td><td>
<button type="submit" class="grey button" name="zap_id[{{ report.id }}]"><span>Unzap</span></button>
<br>
<form method="post" action="?action=unzap">
{% csrf_token %}
<input type="hidden" name="id" value="{{ report.id }}" />
<button type="submit" class="grey button"><span>Unzap</span></button>
</form>
Zapped By: {{ report.zapped_by }}
</td></tr>
{% endfor %}
</table>
</form>
</div>
{% endblock %}

View file

@ -114,21 +114,16 @@ def moderate(request, forum_id):
@transaction.commit_on_success
def reports(request):
if request.user.is_superuser or request.user.has_perm('djangobb_forum.change_report'):
if 'action' in request.GET and request.GET['action'] == 'zap':
for post in request.POST.keys():
if post.startswith('zap_id'):
if request.POST[post] == ' Zap ':
zap_report_id = int(post[7:-1])
zap_report = get_object_or_404(Report, pk=zap_report_id)
zap_report.zapped_by = request.user
zap_report.zapped = True
zap_report.save()
elif request.POST[post] == ' Unzap ':
zap_report_id = int(post[7:-1])
zap_report = get_object_or_404(Report, pk=zap_report_id)
zap_report.zapped_by = None
zap_report.zapped = False
zap_report.save()
if 'action' in request.GET:
zap_report_id = int(request.POST['id'])
zap_report = get_object_or_404(Report, pk=zap_report_id)
if request.GET['action'] == 'zap':
zap_report.zapped_by = request.user
zap_report.zapped = True
elif request.GET['action'] == 'unzap':
zap_report.zapped_by = None
zap_report.zapped = False
zap_report.save()
new_reports = Report.objects.filter(zapped = False).order_by('-created')
zapped_reports = Report.objects.filter(zapped = True).order_by('-created')[:10]