wip: expose url for expert in duedate model
This commit is contained in:
parent
7c6d448268
commit
97edbbd751
|
|
@ -63,7 +63,11 @@ class CourseSessionAttendanceCourse(models.Model):
|
|||
)
|
||||
|
||||
if not self.due_date.manual_override_fields:
|
||||
course = self.learning_content.get_course()
|
||||
|
||||
self.due_date.url = self.learning_content.get_frontend_url()
|
||||
# TODO: @livioso move this to the learning content?
|
||||
self.due_date.url_expert = f"/course/{course.slug}/cockpit/attendance?id={self.learning_content_id}"
|
||||
self.due_date.title = self.learning_content.title
|
||||
self.due_date.page = self.learning_content.page_ptr
|
||||
self.due_date.assignment_type_translation_key = (
|
||||
|
|
@ -130,6 +134,12 @@ class CourseSessionAssignment(models.Model):
|
|||
AssignmentType.REFLECTION.value: "learningContentTypes.reflection",
|
||||
}
|
||||
|
||||
# TODO @livioso move this to the learning content?
|
||||
course = self.learning_content.get_course()
|
||||
url_expert = (
|
||||
f"/course/{course.slug}/cockpit/assignment/{self.learning_content_id}"
|
||||
)
|
||||
|
||||
if assignment_type in (
|
||||
AssignmentType.CASEWORK.value,
|
||||
AssignmentType.PREP_ASSIGNMENT.value,
|
||||
|
|
@ -141,6 +151,8 @@ class CourseSessionAssignment(models.Model):
|
|||
|
||||
if not self.submission_deadline.manual_override_fields:
|
||||
self.submission_deadline.url = url
|
||||
# TODO: @livioso check what's expected here
|
||||
self.submission_deadline.url_expert = url_expert
|
||||
self.submission_deadline.title = title
|
||||
self.submission_deadline.assignment_type_translation_key = (
|
||||
assignment_type_translation_keys[assignment_type]
|
||||
|
|
@ -160,6 +172,7 @@ class CourseSessionAssignment(models.Model):
|
|||
|
||||
if not self.evaluation_deadline.manual_override_fields:
|
||||
self.evaluation_deadline.url = url
|
||||
self.submission_deadline.url_expert = url_expert
|
||||
self.evaluation_deadline.title = title
|
||||
self.evaluation_deadline.assignment_type_translation_key = (
|
||||
assignment_type_translation_keys[assignment_type]
|
||||
|
|
@ -208,6 +221,7 @@ class CourseSessionEdoniqTest(models.Model):
|
|||
|
||||
if not self.deadline.manual_override_fields:
|
||||
self.deadline.url = self.learning_content.get_frontend_url()
|
||||
self.deadline.expert_url = self.learning_content.get_expert_url()
|
||||
self.deadline.title = self.learning_content.title
|
||||
self.deadline.page = self.learning_content.page_ptr
|
||||
self.deadline.assignment_type_translation_key = (
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ class DueDateAdmin(admin.ModelAdmin):
|
|||
"assignment_type_translation_key",
|
||||
"date_type_translation_key",
|
||||
"url",
|
||||
"url_expert",
|
||||
]
|
||||
|
||||
return default_readonly
|
||||
|
|
|
|||
|
|
@ -0,0 +1,23 @@
|
|||
# Generated by Django 3.2.20 on 2023-09-25 14:48
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('duedate', '0004_alter_duedate_start'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='duedate',
|
||||
name='url_expert',
|
||||
field=models.CharField(blank=True, default='', help_text='URL wird aus dem LearningContent generiert (sichtbar für den Experten/Trainer)', max_length=1024),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='duedate',
|
||||
name='url',
|
||||
field=models.CharField(blank=True, default='', help_text='URL wird vom LearningContent übernommen (sichtbar für Member/Teilnehmer)', max_length=1024),
|
||||
),
|
||||
]
|
||||
|
|
@ -45,7 +45,13 @@ class DueDate(models.Model):
|
|||
default="",
|
||||
blank=True,
|
||||
max_length=1024,
|
||||
help_text="URL wird vom LearningContent übernommen",
|
||||
help_text="URL wird vom LearningContent übernommen (sichtbar für Member/Teilnehmer)",
|
||||
)
|
||||
url_expert = models.CharField(
|
||||
default="",
|
||||
blank=True,
|
||||
max_length=1024,
|
||||
help_text="URL wird aus dem LearningContent generiert (sichtbar für den Experten/Trainer)",
|
||||
)
|
||||
course_session = models.ForeignKey(
|
||||
"course.CourseSession",
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ class DueDateSerializer(serializers.ModelSerializer):
|
|||
"date_type_translation_key",
|
||||
"subtitle",
|
||||
"url",
|
||||
"url_expert",
|
||||
"course_session",
|
||||
"page",
|
||||
"circle",
|
||||
|
|
@ -24,6 +25,9 @@ class DueDateSerializer(serializers.ModelSerializer):
|
|||
|
||||
def get_circle(self, obj):
|
||||
circle = obj.get_circle()
|
||||
|
||||
page = obj.page
|
||||
|
||||
if circle:
|
||||
return {
|
||||
"id": circle.id,
|
||||
|
|
|
|||
Loading…
Reference in New Issue