|
|
|
|
@ -407,7 +407,10 @@ class Lesson(models.Model): |
|
|
|
|
video = gen_vzaar_bb(self.video_id) |
|
|
|
|
if video: |
|
|
|
|
self.video = video |
|
|
|
|
must_rebuild_map = False |
|
|
|
|
if Lesson.objects.filter(theme=self.theme, sort=self.sort).exclude(id=self.id).exists(): |
|
|
|
|
# Обновить текущий урок с новым порядком, не вызывая при этом метод save() |
|
|
|
|
Lesson.objects.filter(id=self.id).update(sort=self.sort) |
|
|
|
|
# Переформировать порядок |
|
|
|
|
test_in = self.sort + 1 |
|
|
|
|
for lesson in Lesson.objects.filter(theme=self.theme, sort__gte=self.sort).exclude(id=self.id): |
|
|
|
|
@ -415,8 +418,11 @@ class Lesson(models.Model): |
|
|
|
|
lesson.sort = test_in |
|
|
|
|
lesson.save() |
|
|
|
|
test_in += 1 |
|
|
|
|
self.token = self.course.build_map(material=self) |
|
|
|
|
must_rebuild_map = True |
|
|
|
|
super(Lesson, self).save(*args, **kwargs) |
|
|
|
|
# Переформировать карту после сохранения текущего урока |
|
|
|
|
if must_rebuild_map: |
|
|
|
|
self.course.build_map() |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
verbose_name = u'Урок' |
|
|
|
|
@ -474,7 +480,10 @@ class Homework(models.Model): |
|
|
|
|
return result |
|
|
|
|
|
|
|
|
|
def save(self, *args, **kwargs): |
|
|
|
|
must_rebuild_map = False |
|
|
|
|
if Homework.objects.filter(theme=self.theme, sort=self.sort).exclude(id=self.id).exists(): |
|
|
|
|
# Обновить текущее дз с новым порядком, не вызывая при этом метод save() |
|
|
|
|
Homework.objects.filter(id=self.id).update(sort=self.sort) |
|
|
|
|
# Переформировать порядок |
|
|
|
|
test_in = self.sort + 1 |
|
|
|
|
for homework in Homework.objects.filter(theme=self.theme, sort__gte=self.sort).exclude(id=self.id): |
|
|
|
|
@ -482,8 +491,11 @@ class Homework(models.Model): |
|
|
|
|
homework.sort = test_in |
|
|
|
|
homework.save() |
|
|
|
|
test_in += 1 |
|
|
|
|
self.token = self.course.build_map(material=self) |
|
|
|
|
must_rebuild_map = True |
|
|
|
|
super(Homework, self).save(*args, **kwargs) |
|
|
|
|
# Переформировать карту после сохранения текущего дз |
|
|
|
|
if must_rebuild_map: |
|
|
|
|
self.course.build_map() |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
verbose_name = u'Добашнее задание' |
|
|
|
|
@ -541,7 +553,10 @@ class Exam(models.Model): |
|
|
|
|
return self.theme.get_title() |
|
|
|
|
|
|
|
|
|
def save(self, *args, **kwargs): |
|
|
|
|
must_rebuild_map = False |
|
|
|
|
if Exam.objects.filter(theme=self.theme, sort=self.sort).exclude(id=self.id).exists(): |
|
|
|
|
# Обновить текущий экзамен с новым порядком, не вызывая при этом метод save() |
|
|
|
|
Exam.objects.filter(id=self.id).update(sort=self.sort) |
|
|
|
|
# Переформировать порядок |
|
|
|
|
test_in = self.sort + 1 |
|
|
|
|
for exam in Exam.objects.filter(theme=self.theme, sort__gte=self.sort).exclude(id=self.id): |
|
|
|
|
@ -549,8 +564,11 @@ class Exam(models.Model): |
|
|
|
|
exam.sort = test_in |
|
|
|
|
exam.save() |
|
|
|
|
test_in += 1 |
|
|
|
|
self.token = self.course.build_map(material=self) |
|
|
|
|
must_rebuild_map = True |
|
|
|
|
super(Exam, self).save(*args, **kwargs) |
|
|
|
|
# Переформировать карту после сохранения текущего экзамена |
|
|
|
|
if must_rebuild_map: |
|
|
|
|
self.course.build_map() |
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
verbose_name = u'Экзамен' |
|
|
|
|
|