Fix nested modlue slug

This commit is contained in:
Christian Cueni 2019-08-15 14:27:58 +02:00
parent 1b47e5b837
commit a81e211789
1 changed files with 18 additions and 10 deletions

View File

@ -9,6 +9,19 @@ from rooms.models import ModuleRoomSlug
from ..models import Book, Topic, Module, Chapter, ContentBlock
def process_module_room_slug_block(content):
if content['type'] == 'module_room_slug':
try:
module_room_slug = ModuleRoomSlug.objects.get(title=content['value']['title'])
content['value'] = {
'title': content['value']['title'],
'slug': module_room_slug.slug
}
except ModuleRoomSlug.DoesNotExist:
pass
return content
class ContentBlockNode(DjangoObjectType):
mine = graphene.Boolean()
@ -31,15 +44,11 @@ class ContentBlockNode(DjangoObjectType):
if not are_solutions_enabled_for(info.context.user, self.module) and content['type'] == 'solution':
continue
if content['type'] == 'module_room_slug':
try:
module_room_slug = ModuleRoomSlug.objects.get(title=content['value']['title'])
content['value'] = {
'title': content['value']['title'],
'slug': module_room_slug.slug
}
except ModuleRoomSlug.DoesNotExist:
pass
if content['type'] == 'content_list_item':
for index, list_block in enumerate(content['value']):
content['value'][index] = process_module_room_slug_block(list_block)
content = process_module_room_slug_block(content)
updated_stream_data.append(content)
self.contents.stream_data = updated_stream_data
@ -108,7 +117,6 @@ class ModuleNode(DjangoObjectType):
return Chapter.get_by_parent(self)
def resolve_topic(self, info, **kwargs):
some = self.get_parent().specific
return self.get_parent().specific
def resolve_solutions_enabled(self, info, **kwargs):