moderator/moderate/templates/questions.jinja (146 lines of code) (raw):
{% extends "base.jinja" %}
{% from "includes/moderator_macros.html" import user_profile %}
{% block head %}
<title>Mozilla Moderator - {{ event.name }}</title>
{% endblock %}
{% block breadcrumb %}
<ol class="breadcrumb">
<li><a href="/">Events</a></li>
<li class="active">{{ event.name }}</li>
</ol>
{% if q_form.errors %}
<div class="alert alert-danger alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
Please correct the errors below.
</div>
{% endif %}
{% endblock %}
{% block content %}
{% if event.is_moderated and not event.archived %}
<div class="breadcrumb help-text">
Questions will remain in a queue until a moderator approves them.
By using any legitimate email address, such as those offered by Firefox Relay,
the moderator can offer a reason if your question is declined.
</div>
{% endif %}
{% if open %}
<div class="panel panel-default">
<div class="panel-body">
<form method="post" action="{{ url('event', e_slug=event.slug) }}" id="question-form">
{% csrf_token %}
{{ q_form.non_field_errors() }}
<div class="selfimage">
{% if not user.userprofile.avatar_url %}
<img alt="Unknown profile image" src="{{ static('img/unknown.png') }}" />
{% else %}
<img src="{{ user.userprofile.avatar_url }}" alt="User profile image" />
{% endif %}
</div>
<div class="form-group question-text
{% if q_form.question.errors %}
has-error
{% endif %}" id="question-input">
<label for="{{ q_form.question.id_for_label }}">
Ask your question below.
<a href="https://guides.github.com/features/mastering-markdown/" target="_blank">Markdown supported.</a>
</label>
{{ q_form.question }}
{{ q_form.question.errors }}
</div>
<div class="checkbox-anonymous">
{{ q_form.is_anonymous }}
<label for="{{ q_form.is_anonymous.id_for_label }}">
Post as an anonymous user.
</label>
</div>
{% if event.is_moderated %}
<div class="form-group question-text contact-info-container">
{{ q_form.submitter_contact_info }}
{{ q_form.submitter_contact_info.errors }}
</div>
{% endif %}
<div class="ask-container">
<input type="submit" class="btn btn-default" value="submit">
</div>
</form>
</div>
</div>
{% endif %}
{% for q in questions %}
<div class="panel panel-default">
<div class="panel-body">
{% if q.addressed %}
<div class="ribbon-wrapper">
<div class="ribbon">answered</div>
</div>
{% endif %}
{{ user_profile(q.asked_by, q.is_anonymous) }}
<div class="question-text">
<h3>{{ q.question|to_markdown }}</h3>
</div>
<div class="vote-container">
{% if event.users_can_vote %}
{% if not open or user.userprofile.is_admin or event.created_by == user %}
<span class="vote-count">{{ q.vote_count }}</span>
{% endif %}
{% if open %}
{% if user_voted(q, user) %}
<button class="btn btn-dark btn-sm vote" id="{{ q.id }}">
<span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"></span>
Remove the upvote
</button>
{% else %}
<button class="btn btn-light btn-sm vote" id="{{ q.id }}">
<span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"></span>
Upvote
</button>
{% endif %}
{% endif %}
{% endif %}
{% if open and can_answer_question(q, user) %}
<button class="btn btn-default btn-sm reply-button" id="{{ q.id }}" title="Answer this question"
data-toggle="modal" data-target="#AnswerModal">
reply
</button>
{% endif %}
</div>
{% if q.answer %}
<div class="reply-row">
{{ q.answer|to_markdown }}
</div>
{% endif %}
{% if q_form.instance.id == q.id %}
{{ q_form.answer.errors }}
{% endif %}
</div>
</div>
{% endfor %}
<!-- Modal for Question Reply -->
<div class="modal fade" tabindex="-1" role="dialog" aria-labelledby="AnswerModalLabel" id="AnswerModal">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form method="post" action="" id="answer-form">
{% csrf_token %}
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title">Answer</h4>
</div>
<div class="modal-body">
<label for="{{ q_form.answer.id_for_label }}">
Ask your question below.
<a href="https://guides.github.com/features/mastering-markdown/" target="_blank">Markdown supported.</a>
</label>
{{ q_form.answer }}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<input type="submit" class="btn btn-primary" value="Submit">
</div>
</form>
</div>
</div>
</div>
{% endblock %}