0001-css-remove-dead-code-bad-selector-53817.patch
chrono/agendas/migrations/0079_auto_20210428_1533.py | ||
---|---|---|
1 |
# Generated by Django 2.2.19 on 2021-04-28 13:33 |
|
2 | ||
3 |
from django.db import migrations |
|
4 | ||
5 | ||
6 |
def remove_recurrence_end_date(apps, schema_editor): |
|
7 |
Event = apps.get_model('agendas', 'Event') |
|
8 | ||
9 |
Event.objects.filter(primary_event__isnull=False, recurrence_end_date__isnull=False).update( |
|
10 |
recurrence_end_date=None |
|
11 |
) |
|
12 | ||
13 | ||
14 |
class Migration(migrations.Migration): |
|
15 | ||
16 |
dependencies = [ |
|
17 |
('agendas', '0078_absence_reasons'), |
|
18 |
] |
|
19 | ||
20 |
operations = [ |
|
21 |
migrations.RunPython(remove_recurrence_end_date, migrations.RunPython.noop), |
|
22 |
] |
chrono/manager/forms.py | ||
---|---|---|
211 | 211 |
update_fields = { |
212 | 212 |
field: value |
213 | 213 |
for field, value in self.cleaned_data.items() |
214 |
if field not in self.protected_fields |
|
214 |
if field != 'recurrence_end_date' and field not in self.protected_fields
|
|
215 | 215 |
} |
216 | 216 |
self.instance.recurrences.update(**update_fields) |
217 | 217 |
chrono/manager/static/css/style.scss | ||
---|---|---|
125 | 125 |
background-color: white; |
126 | 126 |
padding: 0.5em 0; |
127 | 127 |
padding-bottom: 2em; |
128 |
width: 100%; |
|
128 | 129 |
} |
129 | 130 | |
130 | 131 |
.agenda-table thead th { |
... | ... | |
132 | 133 |
font-weight: normal; |
133 | 134 |
} |
134 | 135 | |
135 |
@for $i from 1 through 7 { |
|
136 |
.agenda-table { |
|
137 |
width: 100%; |
|
138 |
.desks-#{$i} { |
|
139 |
thead th { width: (100%/$i)-1%; } |
|
140 |
} |
|
141 |
} |
|
142 |
} |
|
143 | ||
144 | 136 |
.agenda-table tbody tr th { |
145 | 137 |
box-sizing: border-box; |
146 | 138 |
padding: 1.2ex 2ex; |
tests/manager/test_event.py | ||
---|---|---|
248 | 248 |
event_recurrence.refresh_from_db() |
249 | 249 |
assert event_recurrence.places == 20 |
250 | 250 | |
251 |
# but some fields should not be updated |
|
252 |
assert event_recurrence.slug != event.slug |
|
253 |
assert not event_recurrence.repeat |
|
254 | ||
251 | 255 |
# changing recurrence attribute removes event recurrences |
252 | 256 |
resp = app.get('/manage/agendas/%s/events/%s/edit' % (agenda.id, event.id)) |
253 | 257 |
resp.form['repeat'] = '' |
... | ... | |
319 | 323 |
resp = resp.form.submit() |
320 | 324 |
assert Event.objects.filter(primary_event=event).count() == 5 |
321 | 325 |
assert Event.objects.filter(primary_event=event, start_datetime=recurrence.start_datetime).count() == 1 |
326 |
# ensure recurrence_end_date has not been propagated |
|
327 |
assert not Event.objects.filter(primary_event=event, recurrence_end_date__isnull=False).exists() |
|
322 | 328 | |
323 | 329 |
# editing recurrence_end_date is permitted as long as bookings are not impacted |
324 | 330 |
event_recurrence = Event.objects.get(primary_event=event, start_datetime__day=15) |
325 |
- |