diff --git a/dav_base/static/dav_base/css/local.css b/dav_base/static/dav_base/css/local.css index b7362e3..90b1278 100644 --- a/dav_base/static/dav_base/css/local.css +++ b/dav_base/static/dav_base/css/local.css @@ -150,23 +150,51 @@ thead input { } /* - * We need more label colors + * We need more text colors (for event stati) + */ +.text-dav-purple { + color: #866dac; +} +.text-dav-lime { + color: #859201; +} +.text-dav-cyan { + color: #54bbd9; +} +.text-dav-caramel { + color: #9c5b22; +} +.text-dav-mandarin { + color: #b43a12; +} + +/* + * We need more label colors (for event stati) */ .label-black { background-color: #333; } -.label-dav-brown { - background-color: #925f36; -} .label-dav-purple { background-color: #a694c2; } +.label-dav-lime { + background-color: #bccf07; +} .label-dav-cyan { background-color: #86cfe4; } +.label-dav-caramel { + background-color: #ce792d; +} +.label-dav-mandarin { + background-color: #e84e1b; +} +.label-dav-brown { + background-color: #925f36; +} /* - * We need more button colors + * We need more button colors (for event stati) */ .btn-black { background-color: #333; @@ -177,4 +205,54 @@ thead input { background-color: #555; border-color: #ccc; color: #fff; -} \ No newline at end of file +} +.btn-dav-purple { + background-color: #a694c2; + border-color: #8067a8; + color: #fff; +} +.btn-dav-purple.focus, .btn-dav-purple:focus, .btn-dav-purple:hover { + background-color: #866dac; + border-color: #8067a8; + color: #fff; +} +.btn-dav-lime { + background-color: #bccf07; + border-color: #7c8801; + color: #fff; +} +.btn-dav-lime.focus, .btn-dav-lime:focus, .btn-dav-lime:hover { + background-color: #859201; + border-color: #7c8801; + color: #fff; +} +.btn-dav-cyan { + background-color: #86cfe4; + border-color: #4cb8d7; + color: #fff; +} +.btn-dav-cyan.focus, .btn-dav-cyan:focus, .btn-dav-cyan:hover { + background-color: #54bbd9; + border-color: #4cb8d7; + color: #fff; +} +.btn-dav-caramel { + background-color: #ce792d; + border-color: #935720; + color: #fff; +} +.btn-dav-caramel.focus, .btn-dav-caramel:focus, .btn-dav-caramel:hover { + background-color: #9c5b22; + border-color: #935720; + color: #fff; +} +.btn-dav-mandarin { + background-color: #e84e1b; + border-color: #aa3711; + color: #fff; +} +.btn-dav-mandarin.focus, .btn-dav-mandarin:focus, .btn-dav-mandarin:hover { + background-color: #b43a12; + border-color: #aa3711; + color: #fff; +} diff --git a/dav_event_office/templates/dav_event_office/event_detail.html b/dav_event_office/templates/dav_event_office/event_detail.html index ef1402e..8ac5fdc 100644 --- a/dav_event_office/templates/dav_event_office/event_detail.html +++ b/dav_event_office/templates/dav_event_office/event_detail.html @@ -39,8 +39,10 @@
{% if not event.registration_required %} {% trans 'Anmeldung nicht erforderlich' %} - {% elif is_done %} - {% trans 'Veranstaltung beendet' %} + {% elif is_canceled %} + {% trans 'Veranstaltung abgesagt' %} + {% elif is_realized or is_expired %} + {% trans 'Veranstaltung beendet' %} {% elif event.registration_closed %} {% trans 'Anmeldung geschlossen' %} {% elif event.is_deadline_expired %} diff --git a/dav_event_office/templates/dav_event_office/event_list.html b/dav_event_office/templates/dav_event_office/event_list.html index 4da5624..9e145f2 100644 --- a/dav_event_office/templates/dav_event_office/event_list.html +++ b/dav_event_office/templates/dav_event_office/event_list.html @@ -59,7 +59,7 @@ {{ event.get_numeric_date }} - + {% render_event_status event %} diff --git a/dav_events/emails.py b/dav_events/emails.py index 79fdce3..0b852af 100644 --- a/dav_events/emails.py +++ b/dav_events/emails.py @@ -115,3 +115,19 @@ class EventRegistrationClosedMail(AbstractEventMail): context = super(EventRegistrationClosedMail, self)._get_context_data(extra_context=extra_context) context['editor'] = self._editor return context + + +class EventCanceledMail(AbstractEventMail): + _subject = u'Veranstaltung abgesagt' + _template_name = 'dav_events/emails/event_canceled.txt' + + def __init__(self, editor=None, *args, **kwargs): + self._editor = editor + super(EventCanceledMail, self).__init__(*args, **kwargs) + + def _get_context_data(self, extra_context=None): + context = super(EventCanceledMail, self)._get_context_data(extra_context=extra_context) + context['editor'] = self._editor + return context + + diff --git a/dav_events/migrations/0041_auto_20210107_1220.py b/dav_events/migrations/0041_auto_20210107_1220.py new file mode 100644 index 0000000..ac5b547 --- /dev/null +++ b/dav_events/migrations/0041_auto_20210107_1220.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.29 on 2021-01-07 11:20 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dav_events', '0040_auto_20201216_1712'), + ] + + operations = [ + migrations.AlterField( + model_name='eventstatus', + name='bootstrap_context', + field=models.CharField(blank=True, choices=[('default', 'default'), ('primary', 'primary'), ('success', 'success'), ('info', 'info'), ('warning', 'warning'), ('danger', 'danger'), ('black', 'black'), ('dav-purple', 'dav-purple'), ('dav-lime', 'dav-lime'), ('dav-cyan', 'dav-cyan'), ('dav-caramel', 'dav-caramel'), ('dav-mandarin', 'dav-mandarin'), ('dav-brown', 'dav-brown')], max_length=20), + ), + ] diff --git a/dav_events/models/eventstatus.py b/dav_events/models/eventstatus.py index 90b255e..af7f5ce 100644 --- a/dav_events/models/eventstatus.py +++ b/dav_events/models/eventstatus.py @@ -13,6 +13,12 @@ BOOTSTRAP_CONTEXT_CHOICES = ( ('warning', 'warning'), ('danger', 'danger'), ('black', 'black'), + ('dav-purple', 'dav-purple'), + ('dav-lime', 'dav-lime'), + ('dav-cyan', 'dav-cyan'), + ('dav-caramel', 'dav-caramel'), + ('dav-mandarin', 'dav-mandarin'), + ('dav-brown', 'dav-brown'), ) diff --git a/dav_events/templates/dav_events/emails/event_canceled.txt b/dav_events/templates/dav_events/emails/event_canceled.txt new file mode 100644 index 0000000..5e7423e --- /dev/null +++ b/dav_events/templates/dav_events/emails/event_canceled.txt @@ -0,0 +1,14 @@ +Hallo {{ recipient.first_name }}, + +{{ editor.get_full_name|default:'Jemand' }} hat die folgende Veranstaltung abgesagt: + {{ event }} + +Link zur Veranstaltung: + {{ base_url }}{{ event.get_absolute_url }} + +Ausschreibung: +============== +{{ event.render_as_text }}{% if internal_note %} +Bearbeitungshinweis: +==================== +{{ internal_note }}{% endif %} \ No newline at end of file diff --git a/dav_events/templates/dav_events/event_detail.html b/dav_events/templates/dav_events/event_detail.html index 21ef44e..b2865d7 100644 --- a/dav_events/templates/dav_events/event_detail.html +++ b/dav_events/templates/dav_events/event_detail.html @@ -146,6 +146,28 @@ {% trans 'Veröffentlichung bestätigen' %} {% endif %} + {% if has_permission_realize and is_started and not is_canceled %} + + {% if is_realized %} + {% bootstrap_icon 'check' %}  + {% else %} + {% bootstrap_icon 'unchecked' %}  + {% endif %} + {% trans 'Durchgeführt' %} + + {% endif %} + {% if has_permission_cancel and is_submitted and not is_realized %} + + {% if is_canceled %} + {% bootstrap_icon 'check' %}  + {% else %} + {% bootstrap_icon 'unchecked' %}  + {% endif %} + {% trans 'Abgesagt' %} + + {% endif %} {% if has_permission_clear %} diff --git a/dav_events/templates/dav_events/event_list.html b/dav_events/templates/dav_events/event_list.html index 0d115e5..2716654 100644 --- a/dav_events/templates/dav_events/event_list.html +++ b/dav_events/templates/dav_events/event_list.html @@ -67,7 +67,7 @@ {{ event.get_numeric_date }} - + {% render_event_status event %} diff --git a/dav_events/templates/dav_events/event_registrations.html b/dav_events/templates/dav_events/event_registrations.html index 531557e..9343c60 100644 --- a/dav_events/templates/dav_events/event_registrations.html +++ b/dav_events/templates/dav_events/event_registrations.html @@ -182,8 +182,10 @@ {% trans 'Anmeldestatus' %}: {% if not event.registration_required %} {% trans 'Anmeldung nicht erforderlich' %} - {% elif is_done %} - {% trans 'Veranstaltung beendet' %} + {% elif is_canceled %} + {% trans 'Veranstaltung abgesagt' %} + {% elif is_realized or is_expired %} + {% trans 'Veranstaltung beendet' %} {% elif event.registration_closed %} {% trans 'Anmeldung geschlossen' %} {% elif event.is_deadline_expired %} diff --git a/dav_events/templates/dav_events/event_update_form.html b/dav_events/templates/dav_events/event_update_form.html index 151b60c..7c72115 100644 --- a/dav_events/templates/dav_events/event_update_form.html +++ b/dav_events/templates/dav_events/event_update_form.html @@ -54,7 +54,17 @@
{% csrf_token %} - {% if is_expired %} + {% if is_realized %} + + {% elif is_canceled %} + + {% elif is_expired %}