uclouvain/osis-dissertation

View on GitHub
templates/manager_dissertations_detail.html

Summary

Maintainability
Test Coverage
{% extends "layout.html" %}
{% load i18n static osis_document %}

{% comment "License" %}
* OSIS stands for Open Student Information System. It's an application
* designed to manage the core business of higher education institutions,
* such as universities, faculties, institutes and professional schools.
* The core business involves the administration of students, teachers,
* courses, programs and so on.
*
* Copyright (C) 2015-2019 Université catholique de Louvain (http://www.uclouvain.be)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* A copy of this license - GNU General Public License - is available
* at the root of the source code of this program.  If not,
* see http://www.gnu.org/licenses/.
{% endcomment %}

{% block breadcrumb %}
    <li><a href="{% url 'studies' %}" id="lnk_studies">{% trans "Students' path" %}</a></li>
    <li id="lnk_cohorts_management"><a href="{% url 'cohorts_management' %}">{% trans "Cohorts management" %}</a></li>
    <li><a href="{% url 'dissertations' %}" id="lnk_dissertations">{% trans 'Dissertations' %}</a></li>
    <li><a href="{% url 'manager_dissertations_list' %}" id="lnk_propositions">{% trans 'Dissertations' %}</a></li>
<li class="active">{{ dissertation.title|truncatechars:24 }}</li>
{% endblock %}
{% block content %}
<div class="page-header">
    <h2>{{ dissertation.title }}</h2>
</div>
<ul class="nav nav-tabs">
    <li class="active"><a href="#">{% trans 'main' %}</a></li>
    <li>
        <a href="{% url 'manager_dissertations_detail_updates' pk=dissertation.pk %}">
            {% trans 'Dissertation updates' %}
        </a>
    </li>

    <a class="btn btn-warning pull-right" href="{% url 'manager_dissertations_delete' pk=dissertation.pk %}"
       onclick="return confirm('{% trans 'You are ready to definitely delete this dissertation. Are you sure you want to continue?' %}')">
        <span class="glyphicon glyphicon-remove"></span></a>

    <a class="btn btn-primary pull-right" href="{% url 'manager_dissertations_edit' pk=dissertation.pk %}"
       style="margin-right: 5px;">
        <span class="glyphicon glyphicon-edit"></span></a>
</ul>
<input type="hidden" value="{{dissertation.pk | default_if_none:''}}" id="hdn_current_dissertation_id" name="dissertation_id" title="dissertation_id" >
<div class="panel panel-default">
    <div class="panel-body">
        <div class="panel panel-default">
            <div class="panel-heading">
                <h3 class="panel-title">{% trans 'Informations about the dissertation' %}</h3>
            </div>
            <div class="panel-body">
                <div class="row">
                    <div class="col-md-3" style="text-align: right">
                        <label>{% trans 'Author' %}</label>
                    </div>
                    <div class="col-md-9">
                        {{ dissertation.author }}
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-3" style="text-align: right">
                        <label>{% trans 'Title' context 'dissertation' %}</label>
                    </div>
                    <div class="col-md-9">
                        {{ dissertation.title }}
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-4" style="text-align:right">
                        <label>{% trans 'File' %}</label>
                    </div>
                    <div class="col-md-8">
                        <button class="btn btn-default" data-toggle="modal" data-target="#dissertation_file_upload">
                            <span class="glyphicon glyphicon-cloud-upload" aria-hidden="true"></span>
                            {% trans "Upload your file" %}
                        </button>
                    </div>
                </div>
                <br>
                {% if dissertation_file %}
                    <div class="row">
                        <div class="col-md-4" style="text-align:right">
                        </div>
                        <div class="col-md-4" style="text-align:right">
                                {% document_visualizer dissertation_file %}
                        </div>
                    </div>
                {% endif %}
                <div class="row">
                    <div class="col-md-3" style="text-align: right">
                        <label>{% trans 'Status' context 'dissertation' %}</label>
                    </div>
                    <div class="col-md-9">
                        {% with st=dissertation.status %}
                            {% if st == 'DIR_OK' or st == 'ENDED_WIN' %}
                                <span class="label label-success">
                            {% elif st == 'DIR_SUBMIT' or st == 'COM_SUBMIT' or st == 'EVA_SUBMIT' %}
                                <span class="label label-primary">
                            {% elif st == 'DIR_KO' or st == 'ENDED_LOS' or st == 'COM_KO' or st == 'EVA_KO' %}
                                <span class="label label-danger">
                            {% else %}
                                <span class="label label-default">
                            {% endif %}
                                {{ dissertation.get_status_display }}
                            </span>
                        {% endwith %}
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-3" style="text-align: right">
                        <label>{% trans 'Description' %}</label>
                    </div>
                    <div class="col-md-9" style="text-align: justify">
                        {{ dissertation.description|linebreaks }}
                    </div>
                </div>
                <div class="row">
                  <div class="col-md-3" style="text-align: right">
                      <label>{% trans 'Defense period' %}</label>
                  </div>
                  <div class="col-md-9">
                      {{ dissertation.defend_periode|default_if_none:_("Undefined") }}
                  </div>
                </div>
                <div class="row">
                  <div class="col-md-3" style="text-align: right">
                      <label>{% trans 'Defense year' %}</label>
                  </div>
                  <div class="col-md-9">
                      {{ dissertation.defend_year|default_if_none:_("Undefined") }}
                  </div>
                </div>
                <div class="row">
                  <div class="col-md-3" style="text-align: right">
                      <label>{% trans 'Dissertation location' %}</label>
                  </div>
                  <div class="col-md-9">
                      {{ dissertation.location|default_if_none:_("Undefined") }}
                  </div>
                </div>
                <div class="row">
                  <div class="col-md-3" style="text-align: right">
                      <label>{% trans 'Start Program/Year' %}</label>
                  </div>
                  <div class="col-md-9">
                      {{ dissertation.education_group_year }}
                  </div>
                </div>
            </div>
        </div>
        <div class="panel panel-default">
            <div class="panel-heading">
                <h3 class="panel-title">{% trans 'Dissertation jury' %}</h3>
            </div>
            <div class="panel-body">
                {% for dissertation_role in dissertation_roles %}
                <div class="row" style="margin: 10px;">
                  <div class="col-md-3" style="text-align: right">
                      <label>{{ dissertation_role.get_status_display }}</label>
                  </div>
                  <div class="col-md-2">
                      {{ dissertation_role.adviser }}
                  </div>
                  {% if dissertation.status != 'DRAFT' %}
                    {% if promotors_count > 1 or dissertation_role.status != 'PROMOTEUR' %}
                      <div class="col-md-7">
                          <a class="btn btn-warning"
                             href="{% url 'manager_dissertations_role_delete' pk=dissertation_role.pk %}"
                             onclick="return confirm('{% trans 'You are ready to delete this jury member. Are you sure you want to continue?' %}')">
                              <span class="glyphicon glyphicon-remove span2"></span></a>
                      </div>
                    {% endif %}
                  {% endif %}
                </div>
                {% endfor %}
                {% if count_dissertation_role < 4 and dissertation.status != 'DRAFT' %}
                <br>
                <div class="row">
                    <div class="col-md-3 pull-right" style="text-align: right">
                        <a data-url="{% url 'dissertations_jury_new' pk=dissertation.pk %}"
                             id="lnk_add_dissertation_jury_member" data-modal_class="modal-lg"
                             class="btn btn-default btn-sm trigger_modal"
                             role="button" title="{% trans 'Add a jury member'%}"><span
                                  class="glyphicon glyphicon-plus"
                                  aria-hidden="true"></span> {% trans 'Add a jury member'%}</a>
                    </div>
                </div>
                {% endif %}
                <br>
                <div class="well well-sm">
                    <label >{% trans 'Jury status' %}</label>
                    <div class="row">
                        <div class="col-md-3" style="text-align: right">
                            <label>{% trans 'For managers' %}</label>
                        </div>
                        <div class="col-md-9">
                            {% if jury_manager_visibility %}
                                <span class="label label-success">{% trans 'Visible' %}</span>
                            {% else %}
                                <span class="label label-warning">{% trans 'Invisible' %}</span>
                            {% endif %}
                            {% if jury_manager_can_edit %}
                                <span class="label label-success">{% trans 'Editable' %}</span>
                            {% else %}
                                <span class="label label-warning">{% trans 'Non-editable' %}</span>
                            {% endif %}
                            <br>{% trans jury_manager_message %}
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-md-3" style="text-align: right">
                            <label>{% trans 'For teachers' %}</label>
                        </div>
                        <div class="col-md-9">
                            {% if jury_teacher_visibility %}
                                <span class="label label-success">{% trans 'Visible' %}</span>
                            {% else %}
                                <span class="label label-warning">{% trans 'Invisible' %}</span>
                            {% endif %}
                            {% if jury_teacher_can_edit %}
                                <span class="label label-success">{% trans 'Editable' %}</span>
                            {% else %}
                                <span class="label label-warning">{% trans 'Non-editable' %}</span>
                            {% endif %}
                            <br>{% trans jury_teacher_message %}
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-md-3" style="text-align: right">
                            <label>{% trans 'For students' %}</label>
                        </div>
                        <div class="col-md-9">
                            {% if jury_student_visibility %}
                                <span class="label label-success">{% trans 'Visible' %}</span>
                            {% else %}
                                <span class="label label-warning">{% trans 'Invisible' %}</span>
                            {% endif %}
                            {% if jury_student_can_edit %}
                                <span class="label label-success">{% trans 'Editable' %}</span>
                            {% else %}
                                <span class="label label-warning">{% trans 'Non-editable' %}</span>
                            {% endif %}
                            <br>{% trans jury_student_message %}
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="panel panel-default">
            <div class="panel-heading">
                <h3 class="panel-title">{% trans 'Informations about the dissertation subject' %}</h3>
            </div>
            <div class="panel-body">
                <div class="row">
                    <div class="col-md-3" style="text-align: right">
                        <label>{% trans 'Promotor' %}</label>
                    </div>
                    <div class="col-md-9">
                        {{ dissertation.proposition_dissertation.author }}
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-3" style="text-align: right">
                        <label>{% trans 'Title' context 'dissertation' %}</label>
                    </div>
                    <div class="col-md-9">
                        <a href="{% url 'manager_proposition_dissertation_detail' pk=dissertation.proposition_dissertation.pk %}">
                            {{ dissertation.proposition_dissertation.title }}
                        </a>
                    </div>
                </div>
                {% if proposition_dissertation_file %}
                    <div class="row">
                        <div class="col-md-3" style="text-align:right">
                        </div>
                        <div class="col-md-6" style="text-align:right">
                            {% document_visualizer proposition_dissertation_file %}
                        </div>
                    </div>
                {% endif %}
            </div>
        </div>
        <div style="text-align: right;">
                {% if dissertation.status == 'DRAFT' or dissertation.status == 'DIR_KO' %}
                  <a href="{% url 'manager_dissertations_to_dir_submit' pk=dissertation.pk %}"
                     id="lnk_manager_dissertations_to_dir_submit" class="btn btn-default pull-right"
                     role="button" title="{% trans 'Submit to promotor'%}"
                     onclick="return confirm('{% trans 'You are ready to submit this dissertation to the promotor. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-circle-arrow-right"
                          aria-hidden="true"></span> {% trans 'Submit to promotor'%}</a>
                {% endif %}
                {% if dissertation.status == 'DIR_SUBMIT' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_promotor_accept" class="btn btn-default"
                     role="button" title="{% trans 'Promotor accepts'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as accepted by the promotor. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-ok-circle"
                          aria-hidden="true"></span> {% trans 'Promotor accepts'%}</a>
                  <a href="{% url 'manager_dissertations_to_dir_ko' pk=dissertation.pk %}"
                     id="lnk_manager_promotor_refuse" class="btn btn-default"
                     role="button" title="{% trans 'Promotor refuses'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as refused by the promotor. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-remove-circle"
                          aria-hidden="true"></span> {% trans 'Promotor refuses'%}</a>
                {% endif %}
                {% if dissertation.status == 'COM_SUBMIT' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_commission_accept" class="btn btn-default"
                     role="button" title="{% trans 'Commission accepts'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as accepted by the commission. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-ok-circle"
                          aria-hidden="true"></span> {% trans 'Commission accepts'%}</a>
                  <a href="{% url 'manager_dissertations_to_dir_ko' pk=dissertation.pk %}"
                     id="lnk_manager_commission_refuse" class="btn btn-default"
                     role="button" title="{% trans 'Commission refuses'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as refused by the commission. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-remove-circle"
                          aria-hidden="true"></span> {% trans 'Commission refuses'%}</a>
                {% endif %}
                {% if dissertation.status == 'COM_KO' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_commission_reaccept" class="btn btn-default"
                     role="button" title="{% trans 'Commission accepts'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as accepted by the commission. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-ok-circle"
                          aria-hidden="true"></span> {% trans 'Commission accepts'%}</a>
                {% endif %}
                {% if dissertation.status == 'EVA_SUBMIT' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_evaluation_accept" class="btn btn-default"
                     role="button" title="{% trans 'First year evaluation success'%}"
                     onclick="return confirm('{% trans 'You are ready to set the first year evaluation succeeded for this dissertation. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-ok-circle"
                          aria-hidden="true"></span> {% trans 'First year evaluation success'%}</a>
                  <a href="{% url 'manager_dissertations_to_dir_ko' pk=dissertation.pk %}"
                     id="lnk_manager_evaluation_refuse" class="btn btn-default"
                     role="button" title="{% trans 'First year evaluation failed'%}"
                     onclick="return confirm('{% trans 'You are ready to set the first year evaluation failed for this dissertation. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-remove-circle"
                          aria-hidden="true"></span> {% trans 'First year evaluation failed'%}</a>
                {% endif %}
                {% if dissertation.status == 'EVA_KO' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_evaluation_reaccept" class="btn btn-default"
                     role="button" title="{% trans 'First year evaluation success'%}"
                     onclick="return confirm('{% trans 'You are ready to set the first year evaluation succeeded for this dissertation. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-ok-circle"
                          aria-hidden="true"></span> {% trans 'First year evaluation success'%}</a>
                {% endif %}
                {% if dissertation.status == 'TO_RECEIVE' %}
                <a href="{% url 'manager_dissertations_to_dir_submit' pk=dissertation.pk %}"
                   id="lnk_manager_dissertations_receive" class="btn btn-default"
                   role="button" title="{% trans 'Submit to promotor'%}"
                   onclick="return confirm('{% trans 'You are ready to set this dissertation as received. Are you sure you want to continue ?' %}')"><span
                        class="glyphicon glyphicon-circle-arrow-right"
                        aria-hidden="true"></span> {% trans 'Dissertation received'%}</a>
                {% endif %}
                {% if dissertation.status == 'TO_DEFEND' %}
                <a href="{% url 'manager_dissertations_to_dir_submit' pk=dissertation.pk %}"
                   id="lnk_manager_dissertations_defended" class="btn btn-default"
                   role="button" title="{% trans 'Submit to promotor'%}"
                   onclick="return confirm('{% trans 'You are ready to set this dissertation as defended. Are you sure you want to continue ?' %}')"><span
                        class="glyphicon glyphicon-circle-arrow-right"
                        aria-hidden="true"></span> {% trans 'Dissertation defended'%}</a>
                {% endif %}
                {% if dissertation.status == 'DEFENDED' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_dissertations_success" class="btn btn-default"
                     role="button" title="{% trans 'Promotor accepts'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as succeeded. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-ok-circle"
                          aria-hidden="true"></span> {% trans 'Dissertation succeeded'%}</a>
                  <a href="{% url 'manager_dissertations_to_dir_ko' pk=dissertation.pk %}"
                     id="lnk_manager_dissertations_reported" class="btn btn-default"
                     role="button" title="{% trans 'Promotor refuses'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as failed. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-remove-circle"
                          aria-hidden="true"></span> {% trans 'Dissertation delayed'%}</a>
                {% endif %}
                {% if dissertation.status == 'ENDED_LOS' %}
                  <a href="{% url 'manager_dissertations_to_dir_ok' pk=dissertation.pk %}"
                     id="lnk_manager_back_to_receive" class="btn btn-default"
                     role="button" title="{% trans 'To be received'%}"
                     onclick="return confirm('{% trans 'You are ready to set this dissertation as To Receive. Are you sure you want to continue ?' %}')"><span
                          class="glyphicon glyphicon-circle-arrow-right"
                          aria-hidden="true"></span> {% trans 'To be received'%}</a>
                {% endif %}
            </div>
    </div>
</div>
<!-- Upload file modal -->
{% include 'file_upload_dissertaton_modal.html' with form=dissertation_file_form %}
{% endblock %}

{% block script %}
    {{ dissertation_file_form.media }}
    {{ proposition_dissertation_file_form.media }}
{% endblock script %}