Add circle title to dropdown text
This commit is contained in:
parent
abe923b2e4
commit
6175ca75ed
|
|
@ -29,9 +29,9 @@ const presenceCoursesDropdownOptions = computed(() => {
|
||||||
(attendanceCourse) =>
|
(attendanceCourse) =>
|
||||||
({
|
({
|
||||||
id: attendanceCourse.id,
|
id: attendanceCourse.id,
|
||||||
name: `${t("Präsenzkurs")} ${dayjs(attendanceCourse.start).format(
|
name: `${t("Präsenzkurs")} ${attendanceCourse.circle_title} ${dayjs(
|
||||||
"DD.MM.YYYY"
|
attendanceCourse.start
|
||||||
)}`,
|
).format("DD.MM.YYYY")}`,
|
||||||
} as DropdownSelectable)
|
} as DropdownSelectable)
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -425,6 +425,7 @@ export interface CourseSessionAttendanceCourse {
|
||||||
location: string;
|
location: string;
|
||||||
trainer: string;
|
trainer: string;
|
||||||
due_date_id: number;
|
due_date_id: number;
|
||||||
|
circle_title: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface CourseSessionAssignment {
|
export interface CourseSessionAssignment {
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ class CourseSessionAttendanceCourseAdmin(admin.ModelAdmin):
|
||||||
"start_date",
|
"start_date",
|
||||||
"end_date",
|
"end_date",
|
||||||
"trainer",
|
"trainer",
|
||||||
|
"location",
|
||||||
]
|
]
|
||||||
list_filter = ["course_session__course", "course_session"]
|
list_filter = ["course_session__course", "course_session"]
|
||||||
|
|
||||||
|
|
@ -38,12 +39,10 @@ class CourseSessionAttendanceCourseAdmin(admin.ModelAdmin):
|
||||||
end_date.admin_order_field = "due_date__end"
|
end_date.admin_order_field = "due_date__end"
|
||||||
|
|
||||||
def circle(self, obj):
|
def circle(self, obj):
|
||||||
try:
|
circle = obj.get_circle()
|
||||||
return obj.learning_content.get_ancestors().exact_type(Circle).first().title
|
if circle:
|
||||||
except Exception:
|
return circle.title
|
||||||
# noop
|
return ""
|
||||||
pass
|
|
||||||
return None
|
|
||||||
|
|
||||||
# Create a method that serves as a form field
|
# Create a method that serves as a form field
|
||||||
def circle_display(self, obj=None):
|
def circle_display(self, obj=None):
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ from django_jsonform.models.fields import JSONField as JSONSchemaField
|
||||||
|
|
||||||
from vbv_lernwelt.assignment.models import AssignmentType
|
from vbv_lernwelt.assignment.models import AssignmentType
|
||||||
from vbv_lernwelt.duedate.models import DueDate
|
from vbv_lernwelt.duedate.models import DueDate
|
||||||
|
from vbv_lernwelt.learnpath.models import Circle
|
||||||
|
|
||||||
|
|
||||||
class CourseSessionAttendanceCourse(models.Model):
|
class CourseSessionAttendanceCourse(models.Model):
|
||||||
|
|
@ -73,6 +74,14 @@ class CourseSessionAttendanceCourse(models.Model):
|
||||||
|
|
||||||
super().save(*args, **kwargs)
|
super().save(*args, **kwargs)
|
||||||
|
|
||||||
|
def get_circle(self):
|
||||||
|
try:
|
||||||
|
return self.learning_content.get_ancestors().exact_type(Circle).first()
|
||||||
|
except Exception:
|
||||||
|
# noop
|
||||||
|
pass
|
||||||
|
return None
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f"{self.course_session} - {self.learning_content}"
|
return f"{self.course_session} - {self.learning_content}"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ from vbv_lernwelt.course_session.models import (
|
||||||
class CourseSessionAttendanceCourseSerializer(serializers.ModelSerializer):
|
class CourseSessionAttendanceCourseSerializer(serializers.ModelSerializer):
|
||||||
start = serializers.SerializerMethodField()
|
start = serializers.SerializerMethodField()
|
||||||
end = serializers.SerializerMethodField()
|
end = serializers.SerializerMethodField()
|
||||||
|
circle_title = serializers.SerializerMethodField()
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = CourseSessionAttendanceCourse
|
model = CourseSessionAttendanceCourse
|
||||||
|
|
@ -21,6 +22,7 @@ class CourseSessionAttendanceCourseSerializer(serializers.ModelSerializer):
|
||||||
"trainer",
|
"trainer",
|
||||||
"start",
|
"start",
|
||||||
"end",
|
"end",
|
||||||
|
"circle_title",
|
||||||
]
|
]
|
||||||
|
|
||||||
def get_start(self, obj):
|
def get_start(self, obj):
|
||||||
|
|
@ -29,6 +31,12 @@ class CourseSessionAttendanceCourseSerializer(serializers.ModelSerializer):
|
||||||
def get_end(self, obj):
|
def get_end(self, obj):
|
||||||
return obj.due_date.end
|
return obj.due_date.end
|
||||||
|
|
||||||
|
def get_circle_title(self, obj):
|
||||||
|
circle = obj.get_circle()
|
||||||
|
if circle:
|
||||||
|
return circle.title
|
||||||
|
return ""
|
||||||
|
|
||||||
|
|
||||||
class CourseSessionAssignmentSerializer(serializers.ModelSerializer):
|
class CourseSessionAssignmentSerializer(serializers.ModelSerializer):
|
||||||
submission_deadline_start = serializers.SerializerMethodField()
|
submission_deadline_start = serializers.SerializerMethodField()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue