From efdfefb0676bd46025a4bd92e00e12eb8199d38d Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Fri, 3 May 2024 17:25:21 +0200 Subject: [PATCH] Fix Bookmarks --- server/notes/schema.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/server/notes/schema.py b/server/notes/schema.py index 29aff6ca..225e784b 100644 --- a/server/notes/schema.py +++ b/server/notes/schema.py @@ -1,5 +1,8 @@ +import json import uuid import graphene + +from basicknowledge.models import BasicKnowledge from basicknowledge.queries import InstrumentNode from books.schema.nodes import ContentBlockNode, ModuleNode from books.schema.nodes.chapter import ChapterNode @@ -19,7 +22,7 @@ logger = get_logger(__name__) content_dict = { 'assignment': 'Auftrag', - 'basic_knowledge': '', + 'basic_knowledge': 'dsafasdfasdf', 'survey': 'Übung', 'image_block': 'Bild', 'link_block': 'Link', @@ -39,11 +42,24 @@ def find_content(content_list, bookmark): found = (content for content in content_list if uuid.UUID(content['id']) == bookmark.uuid) content = next(found, None) if content is None: + for c in content_list: + if c.get('id') == bookmark.uuid: + return c.get('value').get('text', '') + return c.get('value').get('text', '') return '' if content['type'] in ['text_block', 'subtitle', 'solution']: return content['value'].get('text', '') if content['type'] in ['basic_knowledge']: - return content['value'].get('description', '') + description = content['value'].get('description', '') + if not description: + try: + return BasicKnowledge.objects.get(pk=content['value']['basic_knowledge']).title + except BasicKnowledge.DoesNotExist: + return '' + else: + return description + print(bookmark.uuid) + print(json.dumps(content_dict, indent=4)) return content_dict.get(content['type'], '') class NoteNode(DjangoObjectType):