0001-manager-forbid-making-booked-event-recurrent-57609.patch
chrono/manager/forms.py | ||
---|---|---|
259 | 259 |
'recurrence_week_interval', |
260 | 260 |
): |
261 | 261 |
del self.fields[field] |
262 |
if not self.instance.recurrence_days and self.instance.booking_set.exists(): |
|
263 |
self.fields['frequency'].disabled = True |
|
262 | 264 | |
263 | 265 |
def clean_slug(self): |
264 | 266 |
slug = self.cleaned_data['slug'] |
tests/manager/test_event.py | ||
---|---|---|
363 | 363 |
assert 'Bookings exist after this date' in resp.text |
364 | 364 | |
365 | 365 | |
366 |
def test_edit_booked_event_disable_frequency_choice(settings, app, admin_user, freezer): |
|
367 |
freezer.move_to('2021-01-12 12:10') |
|
368 |
agenda = Agenda.objects.create(label='Foo bar', kind='events') |
|
369 |
event = Event.objects.create(start_datetime=now(), places=10, agenda=agenda) |
|
370 |
Booking.objects.create(event=event) |
|
371 | ||
372 |
app = login(app) |
|
373 |
resp = app.get('/manage/agendas/%s/events/%s/edit' % (agenda.id, event.id)) |
|
374 |
assert 'disabled' in resp.form['frequency'].attrs |
|
375 | ||
376 | ||
366 | 377 |
def test_booked_places(app, admin_user): |
367 | 378 |
agenda = Agenda(label='Foo bar') |
368 | 379 |
agenda.save() |
369 |
- |