mirror of
https://github.com/pretix/pretix.git
synced 2026-05-06 15:24:02 +00:00
Subevent bulk creation: Allow to auto-generate time slots
This commit is contained in:
@@ -332,9 +332,51 @@
|
||||
</div>
|
||||
{% endescapescript %}
|
||||
</script>
|
||||
<div class="panel panel-default hidden" id="subevent_add_many_slots">
|
||||
<div class="panel-body row">
|
||||
<div class="col-md-2 col-sm-12">
|
||||
<label for="subevent_add_many_slots_first">
|
||||
<strong>{% trans "Start of first slot" %}</strong>
|
||||
</label>
|
||||
<input class="form-control timepickerfield" id="subevent_add_many_slots_first" value="{{ time_begin_sample }}">
|
||||
</div>
|
||||
<div class="col-md-2 col-sm-12">
|
||||
<label for="subevent_add_many_slots_end">
|
||||
<strong>{% trans "End of time slots" %}</strong>
|
||||
</label>
|
||||
<input class="form-control timepickerfield" id="subevent_add_many_slots_end" value="{{ time_end_sample }}">
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-12">
|
||||
<label for="subevent_add_many_slots_length">
|
||||
<strong>{% trans "Length of slots" %}</strong>
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" id="subevent_add_many_slots_length" value="15">
|
||||
<span class="input-group-addon">{% trans "minutes" %}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-12">
|
||||
<label for="subevent_add_many_slots_break">
|
||||
<strong>{% trans "Break between slots" %}</strong>
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<input type="number" class="form-control" id="subevent_add_many_slots_break" value="0">
|
||||
<span class="input-group-addon">{% trans "minutes" %}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2 col-sm-12">
|
||||
<label> </label>
|
||||
<button class="btn-block btn btn-primary" id="subevent_add_many_slots_go" type="button">
|
||||
<span class="fa fa-check"></span> {% trans "Create" %}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<p>
|
||||
<button type="button" class="btn btn-default" data-formset-add>
|
||||
<i class="fa fa-plus"></i> {% trans "Add a new time slot" %}</button>
|
||||
<i class="fa fa-plus"></i> {% trans "Add a single time slot" %}</button>
|
||||
<button type="button" class="btn btn-default" id="subevent_add_many_slots_start">
|
||||
<i class="fa fa-calendar"></i> {% trans "Add many time slots" %}</button>
|
||||
</p>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import copy
|
||||
from datetime import datetime, timedelta
|
||||
from datetime import datetime, timedelta, time
|
||||
|
||||
from dateutil.rrule import DAILY, MONTHLY, WEEKLY, YEARLY, rrule, rruleset
|
||||
from django.contrib import messages
|
||||
@@ -11,6 +11,7 @@ from django.forms import inlineformset_factory
|
||||
from django.http import Http404, HttpResponseRedirect
|
||||
from django.shortcuts import redirect, render
|
||||
from django.urls import reverse
|
||||
from django.utils.formats import get_format
|
||||
from django.utils.functional import cached_property
|
||||
from django.utils.timezone import make_aware
|
||||
from django.utils.translation import gettext_lazy as _, pgettext_lazy
|
||||
@@ -622,6 +623,10 @@ class SubEventBulkCreate(SubEventEditorMixin, EventPermissionRequiredMixin, Crea
|
||||
ctx = super().get_context_data(**kwargs)
|
||||
ctx['rrule_formset'] = self.rrule_formset
|
||||
ctx['time_formset'] = self.time_formset
|
||||
|
||||
tf = get_format('TIME_INPUT_FORMATS')[0]
|
||||
ctx['time_begin_sample'] = time(9, 0, 0).strftime(tf)
|
||||
ctx['time_end_sample'] = time(18, 0, 0).strftime(tf)
|
||||
return ctx
|
||||
|
||||
@cached_property
|
||||
|
||||
Reference in New Issue
Block a user