Fix descending sorting of subevents

This commit is contained in:
Raphael Michel
2018-08-31 12:22:31 +02:00
parent 7c155d307b
commit 27bb3a948b
2 changed files with 10 additions and 1 deletions

View File

@@ -576,7 +576,12 @@ class Event(EventMixin, LoggedModel):
| Q(date_to__gte=now())
)
) # order_by doesn't make sense with I18nField
return sorted(subevs, key=attrgetter(*orderfields))
for f in reversed(orderfields):
if f.startswith('-'):
subevs = sorted(subevs, key=attrgetter(f[1:]), reverse=True)
else:
subevs = sorted(subevs, key=attrgetter(f))
return subevs
@property
def meta_data(self):

View File

@@ -172,6 +172,10 @@ class ItemDisplayTest(EventTestMixin, SoupTest):
content = self.client.get('/%s/%s/' % (self.orga.slug, self.event.slug)).rendered_content
self.assertLess(content.index('Epic SE'), content.index('Cool SE'))
self.event.settings.frontpage_subevent_ordering = 'date_descending'
content = self.client.get('/%s/%s/' % (self.orga.slug, self.event.slug)).rendered_content
self.assertLess(content.index('Cool SE'), content.index('Epic SE'))
self.event.settings.frontpage_subevent_ordering = 'name_ascending'
content = self.client.get('/%s/%s/' % (self.orga.slug, self.event.slug)).rendered_content
self.assertLess(content.index('Cool SE'), content.index('Epic SE'))