Files @ 2465f2645e2e
Branch filter:

Location: symposion_app/pinaxcon/templates/symposion/reviews/review_detail.html

James Polley
urlize abstracts

I've looked through the database and I can't find any accepted
proposals that actually contain anything to linkify - but I've had
several requests from people that I think are reasonable, things like
being able to link to their project (we ask them to provide a project
url but we don't use that link)

This seems like a reasonably fast way to let those people add a
link. We still have to manually accept changes to their proposal so we
have a chance to look at the content of the url if we want.

The urlize filter adds rel=nofollow to the link automatically.
{% extends "symposion/reviews/base.html" %}

{% load bootstrap %}
{% load i18n %}


{% block body %}

    <div>
        <a class="btn btn-primary" href="{% url "user_random" proposal.section.slug %}">
            {% trans "Jump to a random unreviewed proposal" %}
        </a>
    </div>

    {% if is_manager %}
        <div class="pull-right">
            <form class="result-form form-inline form-horizontal" method="POST" action="">
                {% csrf_token %}
                <div class="btn-group">
                    {% if proposal.result.status == "accepted" %}
                        <a class="btn dropdown-toggle btn-success" data-toggle="dropdown" href="#">Accepted <span class="caret"></span></a>
                        <div class="dropdown-menu pull-right">
                            <div class="btn-group">
                                <input type="submit" name="result_submit" value="reject" class="btn btn-xs btn-danger" />
                                <input type="submit" name="result_submit" value="standby" class="btn btn-xs" />
                                <input type="submit" name="result_submit" value="undecide" class="btn btn-default btn-xs" />
                            </div>
                        </div>
                        <input type="submit" name="publish_changes" value="Publish Changes" class="btn btn-success" />
                    {% else %}
                        {% if proposal.result.status == "rejected" %}
                            <a class="btn dropdown-toggle btn-danger" data-toggle="dropdown" href="#">Rejected <span class="caret"></span></a>
                            <div class="dropdown-menu pull-right">
                                <div class="btn-group">
                                    <input type="submit" name="result_submit" value="accept" class="btn btn-xs btn-success" />
                                    <input type="submit" name="result_submit" value="standby" class="btn btn-xs" />
                                    <input type="submit" name="result_submit" value="undecide" class="btn btn-default btn-xs" />
                                </div>
                            </div>
                        {% else %}
                            {% if proposal.result.status == "standby" %}
                                <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">Standby <span class="caret"></span></a>
                                <div class="dropdown-menu pull-right">
                                    <div class="btn-group">
                                        <input type="submit" name="result_submit" value="accept" class="btn btn-xs btn-success" />
                                        <input type="submit" name="result_submit" value="reject" class="btn btn-xs btn-danger" />
                                        <input type="submit" name="result_submit" value="undecide" class="btn btn-default btn-xs" />
                                    </div>
                                </div>
                            {% else %}
                                <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">Undecided <span class="caret"></span></a>
                                <div class="dropdown-menu pull-right">
                                    <div class="btn-group">
                                        <input type="submit" name="result_submit" value="accept" class="btn btn-xs btn-success" />
                                        <input type="submit" name="result_submit" value="reject" class="btn btn-xs btn-danger" />
                                        <input type="submit" name="result_submit" value="standby" class="btn btn-default btn-xs" />
                                    </div>
                                </div>
                            {% endif %}
                        {% endif %}
                    {% endif %}
                </div>
            </form>
        </div>
    {% endif %}

    <h3>#{{ proposal.number }}: {{ proposal.title }} ({{ proposal.speaker }})</h3>

    <div class="tabbable">
        <ul class="nav nav-tabs">
            <li class="active"><a href="#proposal-detail" data-toggle="tab">{% trans "Proposal Details" %}</a></li>
            <li><a href="#proposal-reviews" data-toggle="tab">{% trans "Reviews" %} <span class="badge">{{ reviews|length }}</span></a></li>
            <li><a href="#proposal-feedback" data-toggle="tab">{% trans "Speaker Feedback" %} <span class="badge">{{ proposal.messages.all|length }}</span></a></li>
        </ul>
        <div class="tab-content">
            <div class="tab-pane active" id="proposal-detail">
                {% include "symposion/proposals/_proposal_fields.html" %}
            </div>
            <div class="tab-pane" id="proposal-reviews">

                <h4>{% trans "Current Results" %}</h4>
                <table class="table table-striped">
                    <thead>
                        <th>+2 votes</th>
                        <th>+1 votes</th>
                        <th>-1 votes</th>
                        <th>-2 votes</th>
                        <th>{% trans "Total Responses" %}
                    </thead>
                    <tbody>
                        <tr>
                            <td>{{ proposal.plus_two }}</td>
                            <td>{{ proposal.plus_one }}</td>
                            <td>{{ proposal.minus_one }}</td>
                            <td>{{ proposal.minus_two }}</td>
                            <td>{{ proposal.total_votes }}</td>
                        </tr>
                    </tbody>
                </table>

                <hr />

                {% if review_form %}
                    <form method="POST" action="#proposal-reviews" class="review-form form-horizontal">
                        <legend>{% trans "Submit Review" %}</legend>
                        <p>Enter your vote and any comment to go along with it. You can revise your vote or comment multiple times with an existing vote (your previously recorded score will be replaced during calculations). <b>Your vote and comments are not public and will only be viewable by other reviewers.</b></p>
                        {% csrf_token %}
                            {{ review_form|bootstrap }}
                            <div class="form-action">
                              <input type="submit" class="btn btn-primary" name="vote_submit" value="Submit Review" />
                              <input type="submit" class="btn btn-primary" name="vote_submit_and_random" value="Submit Review and jump to random proposal" />
                            </div>
                    </form>
                {% else %}
                    <p>You do not have permission to vote on this proposal.</p>
                {% endif %}

                {% if reviews %}
                    <h5>Review Comments</h5>
                    {% for review in reviews %}
                        <div class="review-box">
                            <div class="vote pull-left">
                                <span>{{ review.vote }}</span>
                            </div>
                            {% if is_manager %}
                                <div class="pull-right">
                                    <form class="form-inline form-horizontal" action="{% url "review_delete" review.id %}" method="POST">
                                        {% csrf_token %}
                                        <button class="btn btn-xs btn-danger" type="submit">Delete</button>
                                    </form>
                                </div>
                            {% endif %}
                            <div class="review-content">
                                &nbsp;
                                <b>
                                  {% if review.user.speaker_profile %}
                                    {{ review.user.speaker_profile.name }}
                                  {% else %}
                                    {{ review.user.username }}
                                  {% endif %}
                                </b>
                                {{ review.submitted_at|timesince }} ago <br />
                                {{ review.comment_html|safe }}
                            </div>
                        </div>
                    {% endfor %}
                {% endif %}
            </div>
            <div class="tab-pane" id="proposal-feedback">
                {% if review_messages %}
                    <h3>{% trans "Conversation with the submitter" %}</h3>
                    {% for message in review_messages %}
                        <div class="comment-box">
                            <div class="commment-content">
                                <b>{{ message.user.username }}</b>
                                {{ message.submitted_at|timesince }} ago <br />
                                {{ message.message|safe }}
                            </div>
                        </div>
                    {% endfor %}
                    <hr />
                {% endif %}

		{% if is_manager %}
                <form class="form-horizontal" action="" method="POST"accept-charset="utf-8">
                    <legend>{% trans "Send a message" %}</legend>
                    <p>
                        {% blocktrans %}
                            If you'd like to communicate with the submitter, use the following form and he or she will be
                            notified and given the opportunity to respond.
                        {% endblocktrans %}
                    </p>
                    {% csrf_token %}
                    {{ message_form|bootstrap }}
                    <div class="form-actions">
                        <input type="submit" class="btn btn-primary" name="message_submit" value="Send Message" />
                    </div>
                </form>
                {% endif %}
            </div>
        </div>
    </div>

    <div>
        <a class="btn btn-primary" href="{% url "user_random" proposal.section.slug %}">
            {% trans "Jump to a random unreviewed proposal" %}
        </a>
    </div>

{% endblock %}