From f4b904e35abc07b300fc9b570aae3ac5a690f867 Mon Sep 17 00:00:00 2001 From: "J.-S. Caux" <J.S.Caux@uva.nl> Date: Tue, 19 Feb 2019 20:13:57 +0100 Subject: [PATCH] Include contacts and events in organization detail --- .../commands/transfer_prospartner_data.py | 2 +- .../organizations/_organization_card.html | 50 +++++++++++++++++++ .../organizations/_organization_event_li.html | 7 +++ 3 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 organizations/templates/organizations/_organization_event_li.html diff --git a/organizations/management/commands/transfer_prospartner_data.py b/organizations/management/commands/transfer_prospartner_data.py index ed9fd80aa..46d8d18e4 100644 --- a/organizations/management/commands/transfer_prospartner_data.py +++ b/organizations/management/commands/transfer_prospartner_data.py @@ -33,7 +33,7 @@ class Command(BaseCommand): event=prosevent.event, comments=prosevent.comments, noted_on=prosevent.noted_on, - noted_by=prosevent.noted_by) + noted_by=prosevent.noted_by.user) event.save() prosevent.delete() prospartner.delete() diff --git a/organizations/templates/organizations/_organization_card.html b/organizations/templates/organizations/_organization_card.html index ae6651462..8986814da 100644 --- a/organizations/templates/organizations/_organization_card.html +++ b/organizations/templates/organizations/_organization_card.html @@ -36,6 +36,12 @@ $(document).ready(function($) { <a class="nav-link" id="support-{{ org.id }}-tab" data-toggle="tab" href="#support-{{ org.id }}" role="tab" aria-controls="support-{{ org.id }}" aria-selected="true">Support history</a> </li> {% if perms.scipost.can_manage_organizations %} + <li class="nav-item"> + <a class="nav-link" id="contacts-{{ org.id }}-tab" data-toggle="tab" href="#contacts-{{ org.id }}" role="tab" aria-controls="contacts-{{ org.id }}" aria-selected="true">Contacts</a> + </li> + <li class="nav-item"> + <a class="nav-link" id="events-{{ org.id }}-tab" data-toggle="tab" href="#events-{{ org.id }}" role="tab" aria-controls="events-{{ org.id }}" aria-selected="true">Events</a> + </li> <li class="nav-item"> <a class="nav-link" id="manage-{{ org.id }}-tab" data-toggle="tab" href="#manage-{{ org.id }}" role="tab" aria-controls="manage-{{ org.id }}" aria-selected="true">Manage</a> </li> @@ -180,6 +186,50 @@ $(document).ready(function($) { </div> {% endif %} + <div class="tab-pane pt-4" id="contacts-{{ org.id }}" role="tabpanel" aria-labelledby="contacts-{{ org.id }}-tab"> + {% if perms.scipost.can_manage_organizations %} + <h3>Contacts (with explicit role)</h3> + <table class="table"> + {% for contactrole in org.contactrole_set.all %} + <tr> + <td>{{ contactrole.contact }}</td> + <td>{{ contactrole.get_kind_display }}</td> + <td>{{ contactrole.date_from|date:"Y-m-d" }}</td> + <td>{{ contactrole.date_until|date:"Y-m-d" }}</td> + </tr> + {% endfor %} + </table> + + <h3>Contact persons</h3> + <table class="table"> + {% for contact in org.contactperson_set.all %} + <tr> + <td>{{ contact }}</td> + <td>{{ contact.email }}</td> + <td>{{ contact.role }}</td> + </tr> + {% empty %} + <tr> + <td>>No contact person defined</td> + </tr> + {% endfor %} + </table> + {% endif %} + </div> + + <div class="tab-pane pt-4" id="events-{{ org.id }}" role="tabpanel" aria-labelledby="events-{{ org.id }}-tab"> + {% if perms.scipost.can_manage_organizations %} + <h3>Events</h3> + <ul> + {% for event in org.organizationevent_set.all %} + {% include 'organizations/_organization_event_li.html' with event=event %} + {% empty %} + <li>No event found</li> + {% endfor %} + </ul> + {% endif %} + </div> + <div class="tab-pane pt-4" id="manage-{{ org.id }}" role="tabpanel" aria-labelledby="manage-{{ org.id }}-tab"> {% if perms.scipost.can_manage_organizations %} <h3>Manage this organization:</h3> diff --git a/organizations/templates/organizations/_organization_event_li.html b/organizations/templates/organizations/_organization_event_li.html new file mode 100644 index 000000000..ec28cba2e --- /dev/null +++ b/organizations/templates/organizations/_organization_event_li.html @@ -0,0 +1,7 @@ +<li id="{{ event.id }}"> + <div class="font-weight-bold">{{ event.get_event_display }} <small class="text-muted">noted {{ event.noted_on }} {% if event.noted_by %}by {{ event.noted_by }}{% endif %}</small> + </div> + {% if event.comments %} + <div>{{ event.comments|linebreaks }}</div> + {% endif %} +</li> -- GitLab