Skip to content
Snippets Groups Projects
Commit cb19274c authored by permcu's avatar permcu
Browse files

Enable creation and editing of AbsenceReason's count-as-absent-prop

parent 392025b2
No related branches found
No related tags found
1 merge request!51Resolve "Enable creation and editing of AbsenceReason's count-as-absent-prop"
Pipeline #193877 canceled
......@@ -49,6 +49,27 @@ import AbsenceReasonTagsField from "./AbsenceReasonTagsField.vue";
<color-field v-bind="attrs" v-on="on" />
</template>
<template #countAsAbsent="{ item }">
<v-switch
:input-value="item.countAsAbsent"
disabled
inset
:false-value="false"
:true-value="true"
/>
</template>
<!-- eslint-disable-next-line vue/valid-v-slot -->
<template #countAsAbsent.field="{ attrs, on }">
<v-switch
v-bind="attrs"
v-on="on"
inset
:false-value="false"
:true-value="true"
persistent-hint
/>
</template>
<template #default="{ item }">
<v-switch
:input-value="item.default"
......@@ -110,6 +131,10 @@ export default {
text: this.$t("kolego.absence_reason.colour"),
value: "colour",
},
{
text: this.$t("kolego.absence_reason.count_as_absent"),
value: "countAsAbsent",
},
{
text: this.$t("kolego.absence_reason.default"),
value: "default",
......@@ -128,6 +153,7 @@ export default {
shortName: "",
name: "",
colour: "",
countAsAbsent: true,
default: false,
},
required: [(value) => !!value || this.$t("forms.errors.required")],
......
......@@ -4,6 +4,7 @@ query absenceReasons($orderBy: [String], $filters: JSONString) {
shortName
name
colour
countAsAbsent
default
canEdit
canDelete
......@@ -22,6 +23,7 @@ mutation createAbsenceReasons($input: [BatchCreateAbsenceReasonInput]!) {
shortName
name
colour
countAsAbsent
default
canEdit
canDelete
......@@ -47,6 +49,7 @@ mutation updateAbsenceReasons($input: [BatchPatchAbsenceReasonInput]!) {
shortName
name
colour
countAsAbsent
default
canEdit
canDelete
......
......@@ -10,6 +10,7 @@
"absence_reason": {
"colour": "Farbe",
"create": "Abwesenheitsgrund erstellen",
"count_as_absent": "Zählt als Abwesend",
"default": "Standard-Abwesenheits-Grund",
"default_helptext": "Wird vorherigen Standard deaktivieren, wenn aktiviert",
"menu_title": "Abwesenheitsgründe",
......
......@@ -15,6 +15,7 @@
"short_name": "Short name",
"name": "Name",
"colour": "Colour",
"count_as_absent": "Count as absent",
"default": "Default Absence Reason",
"default_helptext": "Will disable previous default when enabled",
"present": "Present",
......
......@@ -31,7 +31,7 @@ class AbsenceReasonTagType(PermissionsTypeMixin, DjangoFilterMixin, DjangoObject
class AbsenceReasonType(PermissionsTypeMixin, DjangoFilterMixin, DjangoObjectType):
class Meta:
model = AbsenceReason
fields = ("id", "short_name", "name", "colour", "default", "tags")
fields = ("id", "short_name", "name", "colour", "count_as_absent", "default", "tags")
filter_fields = {
"short_name": ["icontains", "exact"],
"name": ["icontains", "exact"],
......@@ -113,7 +113,7 @@ class AbsenceBatchPatchMutation(BaseBatchPatchMutation):
class AbsenceReasonBatchCreateMutation(BaseBatchCreateMutation):
class Meta:
model = AbsenceReason
fields = ("short_name", "name", "colour", "default", "tags")
fields = ("short_name", "name", "colour", "count_as_absent", "default", "tags")
optional_fields = ("name",)
permissions = ("kolego.create_absencereason_rule",)
......@@ -135,7 +135,7 @@ class AbsenceReasonBatchDeleteMutation(BaseBatchDeleteMutation):
class AbsenceReasonBatchPatchMutation(BaseBatchPatchMutation):
class Meta:
model = AbsenceReason
fields = ("id", "short_name", "name", "colour", "default", "tags")
fields = ("id", "short_name", "name", "colour", "count_as_absent", "default", "tags")
permissions = ("kolego.edit_absencereason_rule",)
@classmethod
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment