From 65ebcbc991481c9c5e930b5d478fac8e925a95c4 Mon Sep 17 00:00:00 2001 From: Stefan Frauenknecht Date: Wed, 30 Jan 2013 17:39:53 +0100 Subject: [PATCH] #41 Time for each agenda item finished --- openslides/agenda/forms.py | 15 +++- openslides/agenda/models.py | 2 +- openslides/agenda/static/styles/agenda.css | 6 ++ .../agenda/templates/agenda/overview.html | 11 ++- openslides/agenda/views.py | 33 ++++++++- openslides/locale/de/LC_MESSAGES/django.mo | Bin 36454 -> 36810 bytes openslides/locale/de/LC_MESSAGES/django.po | 66 ++++++++++++------ openslides/locale/de/LC_MESSAGES/djangojs.mo | Bin 460 -> 460 bytes openslides/locale/de/LC_MESSAGES/djangojs.po | 2 +- 9 files changed, 106 insertions(+), 29 deletions(-) diff --git a/openslides/agenda/forms.py b/openslides/agenda/forms.py index f0768f656..68983a09f 100644 --- a/openslides/agenda/forms.py +++ b/openslides/agenda/forms.py @@ -27,7 +27,12 @@ class ItemForm(forms.ModelForm, CssClassMixin): parent = TreeNodeChoiceField( queryset=Item.objects.all(), label=_("Parent item"), required=False) - duration = forms.TimeField(widget=forms.TimeInput(format='%H:%M') , input_formats=('%H:%M', '%H %M', '%M'), required=False) + duration = forms.TimeField( + widget=forms.TimeInput(format='%H:%M') , + input_formats=('%H:%M', '%H %M'), + required=False, + label=_("Duration (hh:mm)") + ) class Meta: model = Item @@ -55,3 +60,11 @@ class ItemOrderForm(forms.Form, CssClassMixin): parent = forms.IntegerField( widget=forms.HiddenInput(attrs={'class': 'menu-plid'}), ) + +class ConfigForm(forms.Form, CssClassMixin): + agenda_start_event_time = forms.TimeField( + widget=forms.TimeInput(format='%H:%M') , + input_formats=('%H:%M', '%H:%M:%S'), + required=False, + label=_("Begin of event (hh:mm)"), + ) diff --git a/openslides/agenda/models.py b/openslides/agenda/models.py index a4c46671d..288bf1676 100644 --- a/openslides/agenda/models.py +++ b/openslides/agenda/models.py @@ -46,7 +46,7 @@ class Item(MPTTModel, SlideMixin): type = models.CharField(max_length=3, choices=ITEM_TYPE, default='agd', verbose_name=_("Type")) - duration = models.TimeField(blank=True, null=True, verbose_name=_('Duration')); + duration = models.TimeField(blank=True, null=True, verbose_name=_("Duration (hh:mm)")); related_sid = models.CharField(null=True, blank=True, max_length=63) diff --git a/openslides/agenda/static/styles/agenda.css b/openslides/agenda/static/styles/agenda.css index 611d19646..e6f75636b 100644 --- a/openslides/agenda/static/styles/agenda.css +++ b/openslides/agenda/static/styles/agenda.css @@ -22,3 +22,9 @@ table#menu-overview { white-space: nowrap; } + +table#agendatime { + float: right; + width: 15%; + margin-bottom: 1em; +} \ No newline at end of file diff --git a/openslides/agenda/templates/agenda/overview.html b/openslides/agenda/templates/agenda/overview.html index 8db571b3f..110f0e1f7 100644 --- a/openslides/agenda/templates/agenda/overview.html +++ b/openslides/agenda/templates/agenda/overview.html @@ -50,7 +50,16 @@ {% endif %}

{% trans "Agenda" %}

- + + + + + + + + + +
{% trans "Start of event" %}{{ start|time:"H:i" }}
{% trans "Estimated end" %}{{ end|time:"H:i" }}

{% trans "Filter" %}: {% trans "Hide closed items" %} diff --git a/openslides/agenda/views.py b/openslides/agenda/views.py index d968527d7..dada8c65e 100644 --- a/openslides/agenda/views.py +++ b/openslides/agenda/views.py @@ -18,10 +18,12 @@ from django.db.models import Model from django.utils.translation import ugettext as _, ugettext_lazy from django.views.generic.detail import SingleObjectMixin +from openslides.config.models import config +from openslides.agenda.forms import ConfigForm from openslides.utils.pdf import stylesheet from openslides.utils.views import ( TemplateView, RedirectView, UpdateView, CreateView, DeleteView, PDFView, - DetailView) + DetailView, FormView) from openslides.utils.template import Tab from openslides.utils.utils import html_strong from openslides.projector.api import get_active_slide @@ -53,10 +55,20 @@ class Overview(TemplateView): if agenda_item.duration is not None: duration += timedelta(hours=agenda_item.duration.hour, minutes=agenda_item.duration.minute) + start = config['agenda_start_event_time'] + if start is None: + start = u'0:00:00' + + start = datetime.strptime(start, '%H:%M:%S') + end = start + duration + duration = datetime.strptime(str(duration), '%H:%M:%S') + context.update({ 'items': items, 'active_sid': get_active_slide(only_sid=True), - 'duration': datetime.strptime(str(duration), '%H:%M:%S'), + 'duration': duration, + 'start': start, + 'end': end, }) return context @@ -218,6 +230,23 @@ class AgendaPDF(PDFView): else: story.append(Paragraph(item.get_title(), stylesheet['Item'])) +class Config(FormView): + """ + Config page for the agenda app. + """ + permission_required = 'config.can_manage_config' + form_class = ConfigForm + template_name = 'agenda/config.html' + + def get_initial(self): + return { + 'agenda_start_event_time': config['agenda_start_event_time'], + } + + def form_valid(self, form): + config['agenda_start_event_time'] = form.cleaned_data['agenda_start_event_time'] + messages.success(self.request, _('Agenda settings successfully saved.')) + return super(Config, self).form_valid(form) def register_tab(request): """ diff --git a/openslides/locale/de/LC_MESSAGES/django.mo b/openslides/locale/de/LC_MESSAGES/django.mo index f9ea13c1437b53a5b83293ef54d045b586b5c123..55f3077b44ed18eec1a3ebb00b378df27c6665d9 100644 GIT binary patch delta 10895 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 SEGaOk#s729ytFB9e*Xc^A19;$ delta 10586 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 diff --git a/openslides/locale/de/LC_MESSAGES/django.po b/openslides/locale/de/LC_MESSAGES/django.po index 389f332e1..5377c58f9 100644 --- a/openslides/locale/de/LC_MESSAGES/django.po +++ b/openslides/locale/de/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OpenSlides 1.x\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-28 23:58+0100\n" +"POT-Creation-Date: 2013-01-30 17:20+0100\n" "PO-Revision-Date: 2012-07-28 11:07+0200\n" "Last-Translator: Emanuel Schuetze \n" "Language-Team: support@openslides.de\n" @@ -33,6 +33,10 @@ msgstr "Französisch" msgid "Parent item" msgstr "Elternelement" +#: agenda/forms.py:64 +msgid "Begin of event (hh:mm)" +msgstr "Beginn der Veranstaltung (ss:mm)" + #: agenda/models.py:35 msgid "Agenda item" msgstr "Tagesordnungseintrag" @@ -52,7 +56,7 @@ msgstr "Titel" msgid "Text" msgstr "Text" -#: agenda/models.py:41 agenda/templates/agenda/overview.html:65 +#: agenda/models.py:41 agenda/templates/agenda/overview.html:74 #: agenda/templates/agenda/view.html:13 participant/models.py:60 #: participant/templates/participant/overview.html:72 #: participant/templates/participant/user_detail.html:45 @@ -63,7 +67,7 @@ msgstr "Kommentar" msgid "Closed" msgstr "Abgeschlossen" -#: agenda/models.py:43 agenda/templates/agenda/overview.html:74 +#: agenda/models.py:43 agenda/templates/agenda/overview.html:83 #: projector/models.py:31 msgid "Weight" msgstr "Gewichtung" @@ -75,9 +79,9 @@ msgstr "Gewichtung" msgid "Type" msgstr "Typ" -#: agenda/models.py:49 agenda/templates/agenda/overview.html:68 -msgid "Duration" -msgstr "Dauer" +#: agenda/models.py:49 +msgid "Duration (hh:mm)" +msgstr "Dauer (ss:mm)" #: agenda/models.py:182 msgid "Can see agenda" @@ -91,49 +95,53 @@ msgstr "Darf die Tagesordung verwalten" msgid "Can see orga items" msgstr "Darf Organisationspunkte sehen" -#: agenda/models.py:194 agenda/slides.py:20 agenda/views.py:207 -#: agenda/views.py:208 agenda/views.py:228 agenda/views.py:242 +#: agenda/models.py:194 agenda/slides.py:20 agenda/views.py:219 +#: agenda/views.py:220 agenda/views.py:257 agenda/views.py:271 #: agenda/templates/agenda/base_agenda.html:10 #: agenda/templates/agenda/overview.html:8 #: agenda/templates/agenda/overview.html:52 -#: agenda/templates/agenda/overview.html:80 +#: agenda/templates/agenda/overview.html:89 #: agenda/templates/projector/AgendaSummary.html:6 #: agenda/templates/projector/AgendaSummary.html:10 msgid "Agenda" msgstr "Tagesordnung" -#: agenda/views.py:69 +#: agenda/views.py:81 msgid "You are not authorized to manage the agenda." msgstr "Sie sind nicht berechtigt die Tagesordnung zu ändern." -#: agenda/views.py:85 +#: agenda/views.py:97 msgid "Errors when reordering of the agenda" msgstr "Fehler beim Neusortieren der Tagesordnung" -#: agenda/views.py:147 +#: agenda/views.py:159 #, python-format msgid "Item %s was successfully modified." msgstr "Eintrag %s wurde erfolgreich bearbeitet." -#: agenda/views.py:168 +#: agenda/views.py:180 #, python-format msgid "Item %s was successfully created." msgstr "Eintrag %s wurde erfolgreich angelegt." -#: agenda/views.py:185 +#: agenda/views.py:197 msgid "Yes, with all child items." msgstr "Ja, mit allen Kindelementen." -#: agenda/views.py:193 +#: agenda/views.py:205 #, python-format msgid "Item %s and his children were successfully deleted." msgstr "Eintrag %s und seine Kindelemente wurde erfolgreich gelöscht." -#: agenda/views.py:198 +#: agenda/views.py:210 #, python-format msgid "Item %s was successfully deleted." msgstr "Eintrag %s wurde erfolgreich gelöscht." +#: agenda/views.py:248 +msgid "Agenda settings successfully saved." +msgstr "Tagesordnung Einstellungen erfolgreich gespeichert." + #: agenda/templates/agenda/base_agenda.html:12 msgid "All items" msgstr "Alle Einträge" @@ -236,7 +244,7 @@ msgid "Item closed" msgstr "Eintrag erledigt" #: agenda/templates/agenda/item_row.html:39 -#: agenda/templates/agenda/overview.html:90 +#: agenda/templates/agenda/overview.html:99 msgid "Activate item" msgstr "Eintrag projizieren" @@ -272,31 +280,43 @@ msgid "No" msgstr "Nein" #: agenda/templates/agenda/overview.html:55 +msgid "Start of event" +msgstr "Beginn der Veranstaltung" + +#: agenda/templates/agenda/overview.html:59 +msgid "Estimated end" +msgstr "Voraussichtliches Ende" + +#: agenda/templates/agenda/overview.html:64 #: assignment/templates/assignment/overview.html:12 #: motion/templates/motion/overview.html:12 #: participant/templates/participant/overview.html:22 msgid "Filter" msgstr "Filter" -#: agenda/templates/agenda/overview.html:56 +#: agenda/templates/agenda/overview.html:65 msgid "Hide closed items" msgstr "Verstecke abgeschlossene Einträge" -#: agenda/templates/agenda/overview.html:59 +#: agenda/templates/agenda/overview.html:68 msgid "item" msgid_plural "items" msgstr[0] "Eintrag" msgstr[1] "Einträge" -#: agenda/templates/agenda/overview.html:62 +#: agenda/templates/agenda/overview.html:71 msgid "Done" msgstr "Erledigt" -#: agenda/templates/agenda/overview.html:63 +#: agenda/templates/agenda/overview.html:72 msgid "Item" msgstr "Eintrag" -#: agenda/templates/agenda/overview.html:71 +#: agenda/templates/agenda/overview.html:77 +msgid "Duration" +msgstr "Dauer" + +#: agenda/templates/agenda/overview.html:80 #: assignment/templates/assignment/overview.html:28 #: motion/templates/motion/overview.html:43 #: participant/templates/participant/group_overview.html:14 @@ -304,7 +324,7 @@ msgstr "Eintrag" msgid "Actions" msgstr "Aktionen" -#: agenda/templates/agenda/overview.html:106 +#: agenda/templates/agenda/overview.html:115 #: agenda/templates/agenda/widget.html:46 #: projector/templates/projector/custom_slide_widget.html:36 msgid "No items available." diff --git a/openslides/locale/de/LC_MESSAGES/djangojs.mo b/openslides/locale/de/LC_MESSAGES/djangojs.mo index 7c267c9ba7caabcc595d4448fefc78333ad7f350..cfba14c7aa5e3ac9ba95d617398ff62606be5cda 100644 GIT binary patch delta 19 acmX@Ze1>_#0S;pW1w%6{6Vr_+SQr69ng#*@ delta 19 acmX@Ze1>_#0S+Sz1tViCQ;Ur!SQr69>;?+} diff --git a/openslides/locale/de/LC_MESSAGES/djangojs.po b/openslides/locale/de/LC_MESSAGES/djangojs.po index f528ae5fb..81c122520 100644 --- a/openslides/locale/de/LC_MESSAGES/djangojs.po +++ b/openslides/locale/de/LC_MESSAGES/djangojs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OpenSlides 1.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-28 23:58+0100\n" +"POT-Creation-Date: 2013-01-30 16:45+0100\n" "PO-Revision-Date: 2012-07-28 11:07+0200\n" "Last-Translator: Oskar Hahn \n" "Language: de\n"