From f92ddcbc50cc8a56e86ef42997ae7f8f3e9fe932 Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Tue, 12 Jul 2022 11:02:13 +0200 Subject: [PATCH 1/4] added search to assignments --- server/assignments/models.py | 3 ++- server/assignments/wagtail_hooks.py | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/server/assignments/models.py b/server/assignments/models.py index 317d8726..e741f0b4 100644 --- a/server/assignments/models.py +++ b/server/assignments/models.py @@ -24,7 +24,8 @@ class Assignment(index.Indexed, TimeStampedModel): taskbase_id = models.CharField(max_length=255, null=True, blank=True) search_fields = [ - index.SearchField('title', partial_match=True) + index.SearchField('title', partial_match=True), + index.SearchField('assignment', partial_match=True), ] panels = [ diff --git a/server/assignments/wagtail_hooks.py b/server/assignments/wagtail_hooks.py index 705ac5d9..4e451040 100644 --- a/server/assignments/wagtail_hooks.py +++ b/server/assignments/wagtail_hooks.py @@ -5,7 +5,8 @@ from .models import Assignment class AssignmentAdmin(ModelAdmin): model = Assignment menu_label = 'Assignments' - list_display = ('title', 'module', 'pk',) - + list_display = ('title', 'module', 'assignment') + search_fields = ('title', 'assignment') + list_filter = ('module', ) modeladmin_register(AssignmentAdmin) From 1d4fb2b956a55b88ef66854a48e4aa116d9a2b08 Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Tue, 12 Jul 2022 11:20:39 +0200 Subject: [PATCH 2/4] added search to surveys in snippets --- server/surveys/models.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/server/surveys/models.py b/server/surveys/models.py index e0e5d6fc..454cc8d7 100644 --- a/server/surveys/models.py +++ b/server/surveys/models.py @@ -2,15 +2,21 @@ from django.contrib.auth import get_user_model from django.db import models from django.db.models import JSONField from wagtail.snippets.models import register_snippet +from wagtail.search import index @register_snippet -class Survey(models.Model): +class Survey(models.Model, index.Indexed): title = models.CharField(max_length=255) module = models.ForeignKey('books.Module', related_name='surveys', on_delete=models.CASCADE, null=True, blank=True) data = JSONField() + search_fields = [ + index.SearchField('title', partial_match=True), + index.SearchField('module__meta_title', partial_match=True), + ] + def __str__(self): return self.title From 7eb8b981c334442cd1ee99e36ddeb3ead78f4635 Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Tue, 12 Jul 2022 11:34:06 +0200 Subject: [PATCH 3/4] added direnv folder to gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 1ffc0efb..c722f0b5 100644 --- a/.gitignore +++ b/.gitignore @@ -47,3 +47,4 @@ server/media/ # test reports client/cypress/test-reports/ server/test-reports/ +.direnv From fde57dd900688f6cb455fe88970389975901129f Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Mon, 18 Jul 2022 15:16:29 +0200 Subject: [PATCH 4/4] added survey menu to cms --- server/assignments/wagtail_hooks.py | 2 ++ server/surveys/wagtail_hooks.py | 15 +++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 server/surveys/wagtail_hooks.py diff --git a/server/assignments/wagtail_hooks.py b/server/assignments/wagtail_hooks.py index 4e451040..d73b9daf 100644 --- a/server/assignments/wagtail_hooks.py +++ b/server/assignments/wagtail_hooks.py @@ -8,5 +8,7 @@ class AssignmentAdmin(ModelAdmin): list_display = ('title', 'module', 'assignment') search_fields = ('title', 'assignment') list_filter = ('module', ) + menu_icon = 'form' + modeladmin_register(AssignmentAdmin) diff --git a/server/surveys/wagtail_hooks.py b/server/surveys/wagtail_hooks.py new file mode 100644 index 00000000..a526f319 --- /dev/null +++ b/server/surveys/wagtail_hooks.py @@ -0,0 +1,15 @@ +from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register +from .models import Survey + + +class SurveyAdmin(ModelAdmin): + model = Survey + menu_label = 'Surveys' + list_display = ('title', 'module') + search_fields = ('title', 'module__meta_title') + list_filter = ('module', ) + menu_icon = 'help' + + +modeladmin_register(SurveyAdmin) +