view gpp/templates/forums/forum_index.html @ 318:c550933ff5b6

Fix a bug where you'd get an error when trying to delete a forum thread (topic does not exist). Apparently when you call topic.delete() the posts would get deleted, but the signal handler for each one would run, and it would try to update the topic's post count or something, but the topic was gone? Reworked the code a bit and explicitly delete the posts first. I also added a sync() call on the parent forum since post counts were not getting adjusted.
author Brian Neal <bgneal@gmail.com>
date Sat, 05 Feb 2011 21:46:52 +0000
parents daa2916f5b34
children 768e3568addf
line wrap: on
line source
{% extends 'base.html' %}
{% load url from future %}
{% load forum_tags %}
{% block custom_head %}
{% if feed %}
<link rel="alternate" type="application/rss+xml" title="{{ feed.name }}" href="{{ feed.feed }}" />
{% endif %}
{% endblock %}
{% block title %}Forums: {{ forum.name }}{% endblock %}
{% block content %}
{% forum_navigation forum %}

<div class="forum-block">
{% if user.is_authenticated %}
<a href="{% url 'forums-new_topic' slug=forum.slug %}">New Topic</a> &bull;
<form action="{% url 'forums-catchup' slug=forum.slug %}" method="post" style="display:inline">{% csrf_token %}
   <input type="submit" value="Mark All Topics Read" />
</form>
{% endif %}
{{ page_nav }}
<table class="forum-index-table">
   <thead>
      <tr>
         <th class="forum-index_title">Topics</th>
         <th class="forum-index_replies">Replies</th>
         <th class="forum-index_author">Author</th>
         <th class="forum-index_views">Views</th>
         <th class="forum-index_last_post">Last Post</th>
      </tr>
   </thead>
   <tbody>
   {% for topic in page.object_list %}
      <tr class="{% cycle 'odd' 'even' %}">
         <td>
            {% topic_icons topic %}
            <h4><a href="{{ topic.get_absolute_url }}">{{ topic.name }}</a></h4>
            {% if topic.page_range %}
               {% topic_page_range topic %}
            {% endif %}
         </td>
         <td class="forum-index_replies">{{ topic.reply_count }}</td>
         <td class="forum-index_author"><a href="{% url 'bio-view_profile' username=topic.user.username %}" title="View profile for {{ topic.user.username }}">{{ topic.user.username }}</a></td>
         <td class="forum-index_views">{{ topic.view_count }}</td>
         <td class="forum-index_last_post">
            {% last_post_info topic.last_post %}
         </td>
      </tr>
   {% empty %}
      <tr>
         <td colspan="5">
            <i>No topics available.</i>
         </td>
      </tr>
   {% endfor %}
   </tbody>
</table>
{{ page_nav }}
{% if user.is_authenticated %}
<a href="{% url 'forums-new_topic' slug=forum.slug %}">New Topic</a> &bull;
<form action="{% url 'forums-catchup' slug=forum.slug %}" method="post" style="display:inline">{% csrf_token %}
   <input type="submit" value="Mark All Topics Read" />
</form>
{% endif %}
{% if can_moderate %}
<p><a href="{% url 'forums-mod_forum' slug=forum.slug %}">Moderate this forum</a></p>
{% endif %}
{% current_forum_time user %}
</div>
{% endblock %}