From 7b3f4c29d8e55c682dc9c1a07089decc5b5b1862 Mon Sep 17 00:00:00 2001 From: Tunde Akinyanmi Date: Fri, 27 Oct 2023 12:00:44 +0100 Subject: [PATCH] remove LessonBookmark abstraction. --- lms/www/batch/learn.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/lms/www/batch/learn.py b/lms/www/batch/learn.py index a1030a28..ef1668ef 100644 --- a/lms/www/batch/learn.py +++ b/lms/www/batch/learn.py @@ -158,10 +158,13 @@ class LessonBookmark: def get_neighbours(current, lessons): - _current = LessonBookmark(current) - numbers = sorted([LessonBookmark(lesson.number) for lesson in lessons]) - index = numbers.index(_current) + numbers = [lesson.number for lesson in lessons] + tuples_list = [tuple(map(int, s.split('.'))) for s in numbers] + sorted_tuples = sorted(tuples_list) + sorted_numbers = ['.'.join(map(str, t)) for t in sorted_tuples] + index = sorted_numbers.index(current) + return { - "prev": numbers[index - 1].readable_value if index - 1 >= 0 else None, - "next": numbers[index + 1].readable_value if index + 1 < len(numbers) else None, + "prev": sorted_numbers[index - 1] if index - 1 >= 0 else None, + "next": sorted_numbers[index + 1] if index + 1 < len(sorted_numbers) else None, }