preparations for a new status 'published'.
This commit is contained in:
@@ -212,6 +212,8 @@ class Event(models.Model):
|
|||||||
self.accepted_at = timezone.now()
|
self.accepted_at = timezone.now()
|
||||||
if user:
|
if user:
|
||||||
self.accepted_by = user
|
self.accepted_by = user
|
||||||
|
else:
|
||||||
|
logger.error('Event.accept(): no user given! (Event: %s)', self.event)
|
||||||
self.save()
|
self.save()
|
||||||
logger.info('Event is accepted: %s', self)
|
logger.info('Event is accepted: %s', self)
|
||||||
|
|
||||||
@@ -227,6 +229,27 @@ class Event(models.Model):
|
|||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def get_status(self):
|
||||||
|
now = datetime.date.today()
|
||||||
|
if self.alt_last_day:
|
||||||
|
if self.alt_last_day < now:
|
||||||
|
return 'expired'
|
||||||
|
elif self.last_day:
|
||||||
|
if self.last_day < now:
|
||||||
|
return 'expired'
|
||||||
|
elif self.alt_first_day and self.alt_first_day < now:
|
||||||
|
return 'expired'
|
||||||
|
elif self.first_day and self.first_day < now:
|
||||||
|
return 'expired'
|
||||||
|
|
||||||
|
if self.accepted:
|
||||||
|
return 'accepted'
|
||||||
|
elif self.owner:
|
||||||
|
return 'submitted'
|
||||||
|
|
||||||
|
logger.debug("here")
|
||||||
|
return 'draft'
|
||||||
|
|
||||||
def get_next_number(self):
|
def get_next_number(self):
|
||||||
counter = 0
|
counter = 0
|
||||||
|
|
||||||
@@ -254,6 +277,21 @@ class Event(models.Model):
|
|||||||
else:
|
else:
|
||||||
return '%s**/%d' % (self.sport, self.first_day.year % 100)
|
return '%s**/%d' % (self.sport, self.first_day.year % 100)
|
||||||
|
|
||||||
|
def get_numeric_date(self, begin_date=None, end_date=None):
|
||||||
|
if begin_date is None:
|
||||||
|
begin_date = self.first_day
|
||||||
|
if end_date is None:
|
||||||
|
end_date = self.last_day
|
||||||
|
|
||||||
|
if not end_date:
|
||||||
|
r = begin_date.strftime('%d.%m.%Y')
|
||||||
|
else:
|
||||||
|
begin = begin_date.strftime('%d.%m.%Y')
|
||||||
|
end = end_date.strftime('%d.%m.%Y')
|
||||||
|
r = u'{begin} - {end}'.format(begin=begin, end=end)
|
||||||
|
|
||||||
|
return r
|
||||||
|
|
||||||
def get_short_date(self, begin_date=None, end_date=None):
|
def get_short_date(self, begin_date=None, end_date=None):
|
||||||
if begin_date is None:
|
if begin_date is None:
|
||||||
begin_date = self.first_day
|
begin_date = self.first_day
|
||||||
@@ -287,6 +325,7 @@ class Event(models.Model):
|
|||||||
def get_template_context(self):
|
def get_template_context(self):
|
||||||
context = {
|
context = {
|
||||||
'event': self,
|
'event': self,
|
||||||
|
'status': self.get_status(),
|
||||||
'number': self.get_number(),
|
'number': self.get_number(),
|
||||||
'mode': self.mode,
|
'mode': self.mode,
|
||||||
'sport': self.sport,
|
'sport': self.sport,
|
||||||
|
|||||||
@@ -94,12 +94,31 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-2">
|
||||||
|
<strong>{% trans 'Veröffentlicht' %}:</strong>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-10">
|
||||||
|
{% if event.published %}
|
||||||
|
{{ event.published_at|date:'l, d. F Y, H:i' }} {% trans 'Uhr' %}<br />
|
||||||
|
{{ event.published_by.get_full_name }}
|
||||||
|
{% else %}
|
||||||
|
-
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
{% if event.accepted %}
|
{% if event.get_status == 'expired' %}
|
||||||
|
<span class="label label-info">{% trans 'Ausgelaufen' %}</span>
|
||||||
|
{% elif event.get_status == 'published' %}
|
||||||
|
<span class="label label-success">{% trans 'Veröffentlicht' %}</span>
|
||||||
|
{% elif event.get_status == 'accepted' %}
|
||||||
<span class="label label-warning">{% trans 'Freigegeben' %}</span>
|
<span class="label label-warning">{% trans 'Freigegeben' %}</span>
|
||||||
{% else %}
|
{% elif event.get_status == 'submitted' %}
|
||||||
<span class="label label-danger">{% trans 'Eingereicht' %}</span>
|
<span class="label label-danger">{% trans 'Eingereicht' %}</span>
|
||||||
|
{% else %}
|
||||||
|
<span class="label label-default">{% trans 'Kaputt' %} (){{ event.get_status }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -26,7 +26,6 @@
|
|||||||
<table id="objects_table" class="table table-striped">
|
<table id="objects_table" class="table table-striped">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{% trans 'Spielart' %}</th>
|
|
||||||
<th>{% trans 'Nummer' %}</th>
|
<th>{% trans 'Nummer' %}</th>
|
||||||
<th>{% trans 'Titel' %}</th>
|
<th>{% trans 'Titel' %}</th>
|
||||||
<th>{% trans 'Trainer' %}</th>
|
<th>{% trans 'Trainer' %}</th>
|
||||||
@@ -39,17 +38,14 @@
|
|||||||
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
||||||
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
||||||
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
||||||
<th><input type="text" placeholder="{% trans 'Filter' %}" /></th>
|
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{% for event in event_list %}
|
{% for event in event_list %}
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
{{ event.get_sport_display }}
|
<a href="{% url 'dav_events:event_detail' event.pk %}">{{ event.get_number }}</a><br />
|
||||||
</td>
|
<small>({{ event.get_sport_display }})</small>
|
||||||
<td>
|
|
||||||
<a href="{% url 'dav_events:event_detail' event.pk %}">{{ event.get_number }}</a>
|
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<a href="{% url 'dav_events:event_detail' event.pk %}">{{ event.title }}</a>
|
<a href="{% url 'dav_events:event_detail' event.pk %}">{{ event.title }}</a>
|
||||||
@@ -62,13 +58,19 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td data-order="{{ event.first_day|date:'U' }}">
|
<td data-order="{{ event.first_day|date:'U' }}">
|
||||||
{{ event.get_short_date }}
|
{{ event.get_numeric_date }}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
{% if event.accepted %}
|
{% if event.get_status == 'expired' %}
|
||||||
|
<span class="label label-info">{% trans 'Ausgelaufen' %}</span>
|
||||||
|
{% elif event.get_status == 'published' %}
|
||||||
|
<span class="label label-success">{% trans 'Veröffentlicht' %}</span>
|
||||||
|
{% elif event.get_status == 'accepted' %}
|
||||||
<span class="label label-warning">{% trans 'Freigegeben' %}</span>
|
<span class="label label-warning">{% trans 'Freigegeben' %}</span>
|
||||||
{% else %}
|
{% elif event.get_status == 'submitted' %}
|
||||||
<span class="label label-danger">{% trans 'Eingereicht' %}</span>
|
<span class="label label-danger">{% trans 'Eingereicht' %}</span>
|
||||||
|
{% else %}
|
||||||
|
<span class="label label-default">{% trans 'Kaputt' %} ({{ event.get_status }})</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -82,7 +84,7 @@
|
|||||||
paging: false,
|
paging: false,
|
||||||
language: {
|
language: {
|
||||||
search: "{% trans 'Filter' %}:",
|
search: "{% trans 'Filter' %}:",
|
||||||
info: "{% trans 'Showing _START_ to _END_ of _TOTAL_ entries.' %}",
|
info: "{% trans 'Zeige Eintrag _START_ bis _END_ von _TOTAL_ Einträgen.' %}",
|
||||||
infoEmpty: "{% trans 'Showing 0 records.' %}",
|
infoEmpty: "{% trans 'Showing 0 records.' %}",
|
||||||
emptyTable: "{% trans 'No data available in table.' %}",
|
emptyTable: "{% trans 'No data available in table.' %}",
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,18 @@
|
|||||||
<form action="" method="post">
|
<form action="" method="post">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
|
|
||||||
{% if event.accepted %}
|
{% if event.get_status == 'expired' %}
|
||||||
|
<div class="alert alert-info alert-dismissible" role="alert">
|
||||||
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||||
|
{% trans 'Diese Veranstaltung ist bereits ausgelaufen.' %}
|
||||||
|
</div>
|
||||||
|
{% elif event.get_status == 'published' %}
|
||||||
|
<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>
|
||||||
|
<strong>{% trans 'Achtung!' %}</strong> {% trans 'Diese Veranstaltung wurde bereits veröffentlicht.' %}
|
||||||
|
{% trans 'Änderungen müssen mit allen Beteiligten abgesprochen werden.' %}
|
||||||
|
</div>
|
||||||
|
{% elif event.get_status == 'accepted' %}
|
||||||
<div class="alert alert-danger alert-dismissible" role="alert">
|
<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>
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||||
<strong>{% trans 'Achtung!' %}</strong> {% trans 'Diese Veranstaltung wurde bereits freigegeben.' %}
|
<strong>{% trans 'Achtung!' %}</strong> {% trans 'Diese Veranstaltung wurde bereits freigegeben.' %}
|
||||||
|
|||||||
Reference in New Issue
Block a user