diff --git a/src/components/flights/form/FlightFormCopilot.vue b/src/components/flights/form/FlightFormCopilot.vue index 5f7a0cc..e270ce5 100644 --- a/src/components/flights/form/FlightFormCopilot.vue +++ b/src/components/flights/form/FlightFormCopilot.vue @@ -19,42 +19,11 @@ const formData = reactive({ copilots: [], }) -const solo = ref(false); -watch(() => solo.value, (newVal) => { - if (!newVal) { - formData.copilots = []; - } -}); - -watch(() => props.flight, (newVal) => { - if (newVal) { - formData.copilots = newVal.copilots.map(copilot => ({id: copilot.id, name: copilot.name})); - solo.value = formData.copilots.length === 0; - } -}, {deep: true, immediate: true}); diff --git a/src/components/flights/form/FlightFormNotes.vue b/src/components/flights/form/FlightFormNotes.vue index 80ab66f..f77d3a5 100644 --- a/src/components/flights/form/FlightFormNotes.vue +++ b/src/components/flights/form/FlightFormNotes.vue @@ -19,6 +19,10 @@ const props = defineProps({ type: Array, required: false, }, + copilots: { + type: Array, + required: false, + }, isRequestPending: { type: Boolean, required: false, @@ -32,7 +36,8 @@ const formData = reactive({ description: "", debriefingNotes: "", urlSlug: "", - isPublic: null + isPublic: null, + copilots: [] }) @@ -48,6 +53,20 @@ watch(() => props.flight, (newVal) => { } }, {immediate: true}); +const solo = ref(false); +watch(() => solo.value, (newVal) => { + if (!newVal) { + formData.copilots = []; + } +}); + +watch(() => props.flight, (newVal) => { + if (newVal) { + formData.copilots = newVal.copilots.map(copilot => ({id: copilot.id, name: copilot.name})); + solo.value = formData.copilots.length === 0; + } +}, {deep: true, immediate: true}); + const descriptionTab = ref("description"); @@ -67,6 +86,32 @@ const descriptionTab = ref("description"); +
+ Letel jsi + + +
+ +
+ +
+ Popis Debriefing (soukromé poznámky) @@ -75,8 +120,8 @@ const descriptionTab = ref("description"); - + Debriefing by měl obsahovat minimálně následující body:
    @@ -85,9 +130,7 @@ const descriptionTab = ref("description");
  • Stav letadla: Funkčnost přístrojů, případné problémy.
  • Bezpečnostní postupy: Dodržení bezpečnostních pravidel, řešení neočekávaných situací.
  • Zpětná vazba: Pocity z letu, spokojenost pasažéra, návrhy na zlepšení.
  • -
  • Dokumentace: Zápis do deníku, technická kontrola, záznamy o počasí.
-
diff --git a/src/components/flights/form/FlightFormSteps.vue b/src/components/flights/form/FlightFormSteps.vue index 0f5bec0..6f68f2a 100644 --- a/src/components/flights/form/FlightFormSteps.vue +++ b/src/components/flights/form/FlightFormSteps.vue @@ -25,12 +25,11 @@ onMounted(() => { }) const steps = [ - {name: "basic", icon: "flight_takeoff", label: "Základní informace"}, - {name: "copilot", icon: "person_add", label: "Spolucestující"}, - {name: "track", icon: "route", label: "Trasa"}, - {name: "photos", icon: "add_a_photo", label: "Fotky"}, - {name: "notes", icon: "edit_note", label: "Poznámky"}, - {name: "plan", icon: "pin_drop", label: "Plán"}, + {name: "editFlightBasic", icon: "flight_takeoff", label: "Základní informace"}, + {name: "editFlightTrack", icon: "route", label: "Trasa"}, + {name: "editFlightPhotos", icon: "add_a_photo", label: "Fotky"}, + {name: "editFlightNotes", icon: "edit_note", label: "Poznámky"}, + {name: "editFlightSetPlan", icon: "pin_drop", label: "Plán"}, ]; const emit = defineEmits(["update:modelValue"]) @@ -38,14 +37,20 @@ watch(currentStep, (val) => emit("update:modelValue", val)); diff --git a/src/components/flights/skeletons/FlightEditBasicInfoSkeleton.vue b/src/components/flights/skeletons/FlightEditBasicInfoSkeleton.vue new file mode 100644 index 0000000..703293c --- /dev/null +++ b/src/components/flights/skeletons/FlightEditBasicInfoSkeleton.vue @@ -0,0 +1,23 @@ +` + + diff --git a/src/components/flights/skeletons/FlightEditExtraInfoSkeleton.vue b/src/components/flights/skeletons/FlightEditExtraInfoSkeleton.vue new file mode 100644 index 0000000..4083fb1 --- /dev/null +++ b/src/components/flights/skeletons/FlightEditExtraInfoSkeleton.vue @@ -0,0 +1,6 @@ + + + diff --git a/src/components/flights/skeletons/FlightEditSkeleton.vue b/src/components/flights/skeletons/FlightEditSkeleton.vue deleted file mode 100644 index 9c0cfcc..0000000 --- a/src/components/flights/skeletons/FlightEditSkeleton.vue +++ /dev/null @@ -1,77 +0,0 @@ - - - diff --git a/src/components/flights/skeletons/FlightEditTrackSkeleton.vue b/src/components/flights/skeletons/FlightEditTrackSkeleton.vue new file mode 100644 index 0000000..17db280 --- /dev/null +++ b/src/components/flights/skeletons/FlightEditTrackSkeleton.vue @@ -0,0 +1,13 @@ + + + diff --git a/src/components/photos/BatchPhotoFormDialog.vue b/src/components/photos/BatchPhotoFormDialog.vue index 556388a..a10f5af 100644 --- a/src/components/photos/BatchPhotoFormDialog.vue +++ b/src/components/photos/BatchPhotoFormDialog.vue @@ -19,6 +19,9 @@ const props = defineProps({ copilots: { type: Array }, + loading: { + type: Boolean + } }); const formData = ref({ @@ -44,7 +47,12 @@ const setup = () => { - + + + + + + {