We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
user front end: make username in idea list bold
**URL:** https://meinberlin-dev.liqd.net/projekte/brainstorming-2/
**user:** any
**expected behaviour:** 
**behaviour:** better distinguish username and date of creation/editing. e.g. by making the username bolt as we do in idea detail view
**important screensize:**
**device & browser:** 
**Comment/Question:** 



Screenshot?
<img width="639" alt="Bildschirmfoto 2021-12-16 um 12 14 35" src="https://user-images.githubusercontent.com/35491681/146361740-cf6915cf-bef4-497d-83f5-6e8cf1154ddb.png">


testing 5024: filter bar above list on smaller screens
**URL:** https://meinberlin-dev.liqd.net/projekte/burgerhaushalt-spandau/?mode=list
**user:** any
**expected behaviour:**
**behaviour:** on screens smaller than 1200: list/map switch, sorting and filter don't look the same as old list, although old list also doesn't look good between around 850 and 1100 
**important screensize:**
**device & browser:** 
**Comment/Question:** or should we change that when touching the filter again? not sure though when that will be so maybe now make it look good?

Screenshot?

<img width="439" alt="Bildschirmfoto 2021-12-20 um 18 03 19" src="https://user-images.githubusercontent.com/35491681/146957441-4e6c4f98-609e-4d85-a21b-a7d2b6964909.png">



--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `meinberlin/apps/budgeting/api.py`
Content:
```
1 from django.utils.translation import get_language
2 from django.utils.translation import gettext_lazy as _
3 from django_filters.rest_framework import DjangoFilterBackend
4 from rest_framework import mixins
5 from rest_framework import viewsets
6 from rest_framework.filters import OrderingFilter
7 from rest_framework.pagination import PageNumberPagination
8 
9 from adhocracy4.api.mixins import ModuleMixin
10 from adhocracy4.api.permissions import ViewSetRulesPermission
11 from adhocracy4.categories import get_category_icon_url
12 from adhocracy4.categories import has_icons
13 from adhocracy4.categories.models import Category
14 from meinberlin.apps.contrib.filters import IdeaCategoryFilterBackend
15 from meinberlin.apps.votes.api import VotingTokenInfoMixin
16 
17 from .models import Proposal
18 from .serializers import ProposalSerializer
19 
20 
21 # To be changed to a more general IdeaPagination, when using
22 # pagination via rest api for more idea lists
23 class ProposalPagination(PageNumberPagination):
24     page_size = 15
25 
26     def get_paginated_response(self, data):
27         response = super(ProposalPagination, self).get_paginated_response(data)
28         response.data['page_size'] = self.page_size
29         response.data['page_count'] = self.page.paginator.num_pages
30         return response
31 
32 
33 class LocaleInfoMixin:
34     def list(self, request, *args, **kwargs):
35         response = super().list(request, args, kwargs)
36         response.data['locale'] = get_language()
37         return response
38 
39 
40 class ProposalFilterInfoMixin(ModuleMixin):
41     def list(self, request, *args, **kwargs):
42         """Add the filter information to the data of the Proposal API.
43 
44         Needs to be used with rest_framework.mixins.ListModelMixin
45         """
46         filters = {}
47 
48         ordering_choices = [('-created', _('Most recent')), ]
49         if self.module.has_feature('rate', Proposal):
50             ordering_choices += ('-positive_rating_count', _('Most popular')),
51         ordering_choices += ('-comment_count', _('Most commented')),
52 
53         filters['ordering'] = {
54             'label': _('Ordering'),
55             'choices': ordering_choices,
56             'default': '-created',
57         }
58 
59         categories = Category.objects.filter(
60             module=self.module
61         )
62         if categories:
63             category_choices = [('', _('All')), ]
64             if has_icons(self.module):
65                 category_icons = []
66             for category in categories:
67                 category_choices += (str(category.pk), category.name),
68                 if has_icons(self.module):
69                     icon_name = getattr(category, 'icon', None)
70                     icon_url = get_category_icon_url(icon_name)
71                     category_icons += (str(category.pk), icon_url),
72 
73             filters['category'] = {
74                 'label': _('Category'),
75                 'choices': category_choices,
76             }
77             if has_icons(self.module):
78                 filters['category']['icons'] = category_icons
79 
80         filters['is_archived'] = {
81             'label': _('Archived'),
82             'choices': [
83                 ('', _('All')),
84                 ('false', _('No')),
85                 ('true', _('Yes')),
86             ],
87             'default': 'false',
88         }
89 
90         response = super().list(request, args, kwargs)
91         response.data['filters'] = filters
92         return response
93 
94 
95 class ProposalViewSet(ProposalFilterInfoMixin,
96                       LocaleInfoMixin,
97                       VotingTokenInfoMixin,
98                       mixins.ListModelMixin,
99                       viewsets.GenericViewSet,
100                       ):
101 
102     pagination_class = ProposalPagination
103     serializer_class = ProposalSerializer
104     permission_classes = (ViewSetRulesPermission,)
105     filter_backends = (DjangoFilterBackend,
106                        OrderingFilter,
107                        IdeaCategoryFilterBackend,)
108     filter_fields = ('is_archived', 'category',)
109     ordering_fields = ('created',
110                        'comment_count',
111                        'positive_rating_count',)
112 
113     def get_permission_object(self):
114         return self.module
115 
116     def get_queryset(self):
117         proposals = Proposal.objects\
118             .filter(module=self.module) \
119             .annotate_comment_count() \
120             .annotate_positive_rating_count() \
121             .annotate_negative_rating_count() \
122             .order_by('-created')
123         return proposals
124
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/meinberlin/apps/budgeting/api.py b/meinberlin/apps/budgeting/api.py
--- a/meinberlin/apps/budgeting/api.py
+++ b/meinberlin/apps/budgeting/api.py
@@ -45,17 +45,6 @@
         """
         filters = {}
 
-        ordering_choices = [('-created', _('Most recent')), ]
-        if self.module.has_feature('rate', Proposal):
-            ordering_choices += ('-positive_rating_count', _('Most popular')),
-        ordering_choices += ('-comment_count', _('Most commented')),
-
-        filters['ordering'] = {
-            'label': _('Ordering'),
-            'choices': ordering_choices,
-            'default': '-created',
-        }
-
         categories = Category.objects.filter(
             module=self.module
         )
@@ -87,6 +76,17 @@
             'default': 'false',
         }
 
+        ordering_choices = [('-created', _('Most recent')), ]
+        if self.module.has_feature('rate', Proposal):
+            ordering_choices += ('-positive_rating_count', _('Most popular')),
+        ordering_choices += ('-comment_count', _('Most commented')),
+
+        filters['ordering'] = {
+            'label': _('Ordering'),
+            'choices': ordering_choices,
+            'default': '-created',
+        }
+
         response = super().list(request, args, kwargs)
         response.data['filters'] = filters
         return response

{"golden_diff": "diff --git a/meinberlin/apps/budgeting/api.py b/meinberlin/apps/budgeting/api.py\n--- a/meinberlin/apps/budgeting/api.py\n+++ b/meinberlin/apps/budgeting/api.py\n@@ -45,17 +45,6 @@\n         \"\"\"\n         filters = {}\n \n-        ordering_choices = [('-created', _('Most recent')), ]\n-        if self.module.has_feature('rate', Proposal):\n-            ordering_choices += ('-positive_rating_count', _('Most popular')),\n-        ordering_choices += ('-comment_count', _('Most commented')),\n-\n-        filters['ordering'] = {\n-            'label': _('Ordering'),\n-            'choices': ordering_choices,\n-            'default': '-created',\n-        }\n-\n         categories = Category.objects.filter(\n             module=self.module\n         )\n@@ -87,6 +76,17 @@\n             'default': 'false',\n         }\n \n+        ordering_choices = [('-created', _('Most recent')), ]\n+        if self.module.has_feature('rate', Proposal):\n+            ordering_choices += ('-positive_rating_count', _('Most popular')),\n+        ordering_choices += ('-comment_count', _('Most commented')),\n+\n+        filters['ordering'] = {\n+            'label': _('Ordering'),\n+            'choices': ordering_choices,\n+            'default': '-created',\n+        }\n+\n         response = super().list(request, args, kwargs)\n         response.data['filters'] = filters\n         return response\n", "issue": "user front end: make username in idea list bold\n**URL:** https://meinberlin-dev.liqd.net/projekte/brainstorming-2/\r\n**user:** any\r\n**expected behaviour:** \r\n**behaviour:** better distinguish username and date of creation/editing. e.g. by making the username bolt as we do in idea detail view\r\n**important screensize:**\r\n**device & browser:** \r\n**Comment/Question:** \r\n\r\n\r\n\r\nScreenshot?\r\n<img width=\"639\" alt=\"Bildschirmfoto 2021-12-16 um 12 14 35\" src=\"https://user-images.githubusercontent.com/35491681/146361740-cf6915cf-bef4-497d-83f5-6e8cf1154ddb.png\">\r\n\r\n\ntesting 5024: filter bar above list on smaller screens\n**URL:** https://meinberlin-dev.liqd.net/projekte/burgerhaushalt-spandau/?mode=list\r\n**user:** any\r\n**expected behaviour:**\r\n**behaviour:** on screens smaller than 1200: list/map switch, sorting and filter don't look the same as old list, although old list also doesn't look good between around 850 and 1100 \r\n**important screensize:**\r\n**device & browser:** \r\n**Comment/Question:** or should we change that when touching the filter again? not sure though when that will be so maybe now make it look good?\r\n\r\nScreenshot?\r\n\r\n<img width=\"439\" alt=\"Bildschirmfoto 2021-12-20 um 18 03 19\" src=\"https://user-images.githubusercontent.com/35491681/146957441-4e6c4f98-609e-4d85-a21b-a7d2b6964909.png\">\r\n\r\n\n", "before_files": [{"content": "from django.utils.translation import get_language\nfrom django.utils.translation import gettext_lazy as _\nfrom django_filters.rest_framework import DjangoFilterBackend\nfrom rest_framework import mixins\nfrom rest_framework import viewsets\nfrom rest_framework.filters import OrderingFilter\nfrom rest_framework.pagination import PageNumberPagination\n\nfrom adhocracy4.api.mixins import ModuleMixin\nfrom adhocracy4.api.permissions import ViewSetRulesPermission\nfrom adhocracy4.categories import get_category_icon_url\nfrom adhocracy4.categories import has_icons\nfrom adhocracy4.categories.models import Category\nfrom meinberlin.apps.contrib.filters import IdeaCategoryFilterBackend\nfrom meinberlin.apps.votes.api import VotingTokenInfoMixin\n\nfrom .models import Proposal\nfrom .serializers import ProposalSerializer\n\n\n# To be changed to a more general IdeaPagination, when using\n# pagination via rest api for more idea lists\nclass ProposalPagination(PageNumberPagination):\n    page_size = 15\n\n    def get_paginated_response(self, data):\n        response = super(ProposalPagination, self).get_paginated_response(data)\n        response.data['page_size'] = self.page_size\n        response.data['page_count'] = self.page.paginator.num_pages\n        return response\n\n\nclass LocaleInfoMixin:\n    def list(self, request, *args, **kwargs):\n        response = super().list(request, args, kwargs)\n        response.data['locale'] = get_language()\n        return response\n\n\nclass ProposalFilterInfoMixin(ModuleMixin):\n    def list(self, request, *args, **kwargs):\n        \"\"\"Add the filter information to the data of the Proposal API.\n\n        Needs to be used with rest_framework.mixins.ListModelMixin\n        \"\"\"\n        filters = {}\n\n        ordering_choices = [('-created', _('Most recent')), ]\n        if self.module.has_feature('rate', Proposal):\n            ordering_choices += ('-positive_rating_count', _('Most popular')),\n        ordering_choices += ('-comment_count', _('Most commented')),\n\n        filters['ordering'] = {\n            'label': _('Ordering'),\n            'choices': ordering_choices,\n            'default': '-created',\n        }\n\n        categories = Category.objects.filter(\n            module=self.module\n        )\n        if categories:\n            category_choices = [('', _('All')), ]\n            if has_icons(self.module):\n                category_icons = []\n            for category in categories:\n                category_choices += (str(category.pk), category.name),\n                if has_icons(self.module):\n                    icon_name = getattr(category, 'icon', None)\n                    icon_url = get_category_icon_url(icon_name)\n                    category_icons += (str(category.pk), icon_url),\n\n            filters['category'] = {\n                'label': _('Category'),\n                'choices': category_choices,\n            }\n            if has_icons(self.module):\n                filters['category']['icons'] = category_icons\n\n        filters['is_archived'] = {\n            'label': _('Archived'),\n            'choices': [\n                ('', _('All')),\n                ('false', _('No')),\n                ('true', _('Yes')),\n            ],\n            'default': 'false',\n        }\n\n        response = super().list(request, args, kwargs)\n        response.data['filters'] = filters\n        return response\n\n\nclass ProposalViewSet(ProposalFilterInfoMixin,\n                      LocaleInfoMixin,\n                      VotingTokenInfoMixin,\n                      mixins.ListModelMixin,\n                      viewsets.GenericViewSet,\n                      ):\n\n    pagination_class = ProposalPagination\n    serializer_class = ProposalSerializer\n    permission_classes = (ViewSetRulesPermission,)\n    filter_backends = (DjangoFilterBackend,\n                       OrderingFilter,\n                       IdeaCategoryFilterBackend,)\n    filter_fields = ('is_archived', 'category',)\n    ordering_fields = ('created',\n                       'comment_count',\n                       'positive_rating_count',)\n\n    def get_permission_object(self):\n        return self.module\n\n    def get_queryset(self):\n        proposals = Proposal.objects\\\n            .filter(module=self.module) \\\n            .annotate_comment_count() \\\n            .annotate_positive_rating_count() \\\n            .annotate_negative_rating_count() \\\n            .order_by('-created')\n        return proposals\n", "path": "meinberlin/apps/budgeting/api.py"}], "after_files": [{"content": "from django.utils.translation import get_language\nfrom django.utils.translation import gettext_lazy as _\nfrom django_filters.rest_framework import DjangoFilterBackend\nfrom rest_framework import mixins\nfrom rest_framework import viewsets\nfrom rest_framework.filters import OrderingFilter\nfrom rest_framework.pagination import PageNumberPagination\n\nfrom adhocracy4.api.mixins import ModuleMixin\nfrom adhocracy4.api.permissions import ViewSetRulesPermission\nfrom adhocracy4.categories import get_category_icon_url\nfrom adhocracy4.categories import has_icons\nfrom adhocracy4.categories.models import Category\nfrom meinberlin.apps.contrib.filters import IdeaCategoryFilterBackend\nfrom meinberlin.apps.votes.api import VotingTokenInfoMixin\n\nfrom .models import Proposal\nfrom .serializers import ProposalSerializer\n\n\n# To be changed to a more general IdeaPagination, when using\n# pagination via rest api for more idea lists\nclass ProposalPagination(PageNumberPagination):\n    page_size = 15\n\n    def get_paginated_response(self, data):\n        response = super(ProposalPagination, self).get_paginated_response(data)\n        response.data['page_size'] = self.page_size\n        response.data['page_count'] = self.page.paginator.num_pages\n        return response\n\n\nclass LocaleInfoMixin:\n    def list(self, request, *args, **kwargs):\n        response = super().list(request, args, kwargs)\n        response.data['locale'] = get_language()\n        return response\n\n\nclass ProposalFilterInfoMixin(ModuleMixin):\n    def list(self, request, *args, **kwargs):\n        \"\"\"Add the filter information to the data of the Proposal API.\n\n        Needs to be used with rest_framework.mixins.ListModelMixin\n        \"\"\"\n        filters = {}\n\n        categories = Category.objects.filter(\n            module=self.module\n        )\n        if categories:\n            category_choices = [('', _('All')), ]\n            if has_icons(self.module):\n                category_icons = []\n            for category in categories:\n                category_choices += (str(category.pk), category.name),\n                if has_icons(self.module):\n                    icon_name = getattr(category, 'icon', None)\n                    icon_url = get_category_icon_url(icon_name)\n                    category_icons += (str(category.pk), icon_url),\n\n            filters['category'] = {\n                'label': _('Category'),\n                'choices': category_choices,\n            }\n            if has_icons(self.module):\n                filters['category']['icons'] = category_icons\n\n        filters['is_archived'] = {\n            'label': _('Archived'),\n            'choices': [\n                ('', _('All')),\n                ('false', _('No')),\n                ('true', _('Yes')),\n            ],\n            'default': 'false',\n        }\n\n        ordering_choices = [('-created', _('Most recent')), ]\n        if self.module.has_feature('rate', Proposal):\n            ordering_choices += ('-positive_rating_count', _('Most popular')),\n        ordering_choices += ('-comment_count', _('Most commented')),\n\n        filters['ordering'] = {\n            'label': _('Ordering'),\n            'choices': ordering_choices,\n            'default': '-created',\n        }\n\n        response = super().list(request, args, kwargs)\n        response.data['filters'] = filters\n        return response\n\n\nclass ProposalViewSet(ProposalFilterInfoMixin,\n                      LocaleInfoMixin,\n                      VotingTokenInfoMixin,\n                      mixins.ListModelMixin,\n                      viewsets.GenericViewSet,\n                      ):\n\n    pagination_class = ProposalPagination\n    serializer_class = ProposalSerializer\n    permission_classes = (ViewSetRulesPermission,)\n    filter_backends = (DjangoFilterBackend,\n                       OrderingFilter,\n                       IdeaCategoryFilterBackend,)\n    filter_fields = ('is_archived', 'category',)\n    ordering_fields = ('created',\n                       'comment_count',\n                       'positive_rating_count',)\n\n    def get_permission_object(self):\n        return self.module\n\n    def get_queryset(self):\n        proposals = Proposal.objects\\\n            .filter(module=self.module) \\\n            .annotate_comment_count() \\\n            .annotate_positive_rating_count() \\\n            .annotate_negative_rating_count() \\\n            .order_by('-created')\n        return proposals\n", "path": "meinberlin/apps/budgeting/api.py"}]}