|
|
@@ -381,11 +381,17 @@ class BookmarksWidget(DashboardWidget):
|
|
|
if request.user.is_anonymous:
|
|
|
bookmarks = list()
|
|
|
else:
|
|
|
- bookmarks = Bookmark.objects.filter(user=request.user).order_by(self.config['order_by'])
|
|
|
+ user_bookmarks = Bookmark.objects.filter(user=request.user)
|
|
|
+ if self.config['order_by'] == BookmarkOrderingChoices.ORDERING_ALPHABETICAL_AZ:
|
|
|
+ bookmarks = sorted(user_bookmarks, key=lambda bookmark: bookmark.__str__().lower())
|
|
|
+ elif self.config['order_by'] == BookmarkOrderingChoices.ORDERING_ALPHABETICAL_ZA:
|
|
|
+ bookmarks = sorted(user_bookmarks, key=lambda bookmark: bookmark.__str__().lower(), reverse=True)
|
|
|
+ else:
|
|
|
+ bookmarks = user_bookmarks.order_by(self.config['order_by'])
|
|
|
if object_types := self.config.get('object_types'):
|
|
|
models = get_models_from_content_types(object_types)
|
|
|
- conent_types = ObjectType.objects.get_for_models(*models).values()
|
|
|
- bookmarks = bookmarks.filter(object_type__in=conent_types)
|
|
|
+ content_types = ObjectType.objects.get_for_models(*models).values()
|
|
|
+ bookmarks = bookmarks.filter(object_type__in=content_types)
|
|
|
if max_items := self.config.get('max_items'):
|
|
|
bookmarks = bookmarks[:max_items]
|
|
|
|