diff --git a/components/HelpSlideover.vue b/components/HelpSlideover.vue
index 2c273b6..3b8d40c 100644
--- a/components/HelpSlideover.vue
+++ b/components/HelpSlideover.vue
@@ -1,4 +1,4 @@
-
@@ -185,14 +176,14 @@ const resetContactRequest = () => {
@submit="addContactRequest"
@reset="resetContactRequest"
>
-
-
+ -->
diff --git a/composables/useFunctions.js b/composables/useFunctions.js
index 0f4890e..a4ae94b 100644
--- a/composables/useFunctions.js
+++ b/composables/useFunctions.js
@@ -38,5 +38,26 @@ export const useFunctions = () => {
})).data.usedNumber
}
- return {getWorkingTimesEvaluationData, useNextNumber}
+ const useCreateTicket = async (subject,message,url,source) => {
+ const {data:{session:{access_token}}} = await supabase.auth.getSession()
+
+ const {data} = await axios({
+ method: "POST",
+ url: `${baseURL}/functions/createticket`,
+ data: {
+ subject,
+ message,
+ source,
+ url
+ },
+ headers: {
+ Authorization: `Bearer ${access_token}`
+ }
+ })
+
+ return !!data.ticket_created;
+
+ }
+
+ return {getWorkingTimesEvaluationData, useNextNumber, useCreateTicket}
}
\ No newline at end of file
diff --git a/pages/standardEntity/[type]/[[mode]]/[[id]].vue b/pages/standardEntity/[type]/[[mode]]/[[id]].vue
index 2f3a565..64b74bf 100644
--- a/pages/standardEntity/[type]/[[mode]]/[[id]].vue
+++ b/pages/standardEntity/[type]/[[mode]]/[[id]].vue
@@ -31,7 +31,7 @@ const setupPage = async () => {
console.log(item.value)
} else if(mode.value === "list") {
//Load Data for List
- items.value = await useSupabaseSelect(type, dataType.supabaseSelectWithInformation || "*", dataType.supabaseSortColumn)
+ items.value = await useSupabaseSelect(type, dataType.supabaseSelectWithInformation || "*", dataType.supabaseSortColumn,dataType.supabaseSortAscending || false)
}
loaded.value = true
diff --git a/pages/workingtimes/[mode]/[[id]].vue b/pages/workingtimes/[mode]/[[id]].vue
index 4cde3f6..6e4946e 100644
--- a/pages/workingtimes/[mode]/[[id]].vue
+++ b/pages/workingtimes/[mode]/[[id]].vue
@@ -23,6 +23,11 @@ const setupPage = () => {
//setStartEnd()
}
oldItemInfo.value = itemInfo.value
+
+ if(route.query) {
+ if(route.query.profile) itemInfo.value.profile = route.query.profile
+ }
+
}
/*const setStartEnd = () => {
diff --git a/pages/workingtimes/index.vue b/pages/workingtimes/index.vue
index ff0870e..e716dc1 100644
--- a/pages/workingtimes/index.vue
+++ b/pages/workingtimes/index.vue
@@ -12,16 +12,27 @@ const dataStore = useDataStore()
const profileStore = useProfileStore()
const supabase = useSupabaseClient()
const router = useRouter()
-
-
-
+const route = useRoute()
const filterUser = ref(profileStore.activeProfile.id || "")
const workingtimes = ref([])
const setupPage = async () => {
+ if(route.query) {
+ if(route.query.profile) filterUser.value = route.query.profile
+ }
+
workingtimes.value = (await supabase.from("workingtimes").select().eq("profile",filterUser.value).order("startDate",{ascending: false})).data
+
+
+
+
+}
+
+const changeFilterUser = async () => {
+ await router.push(`/workingtimes/?profile=${filterUser.value}`)
+ await setupPage()
}
setupPage()
@@ -147,9 +158,9 @@ const setEndDate = (row) => {
- Erstellen
+ + Anwesenheit
@@ -161,7 +172,7 @@ const setEndDate = (row) => {
option-attribute="fullName"
value-attribute="id"
v-model="filterUser"
- @change="setupPage"
+ @change="changeFilterUser"
>
{{profileStore.getProfileById(filterUser) ? profileStore.getProfileById(filterUser).fullName : "Kein Benutzer ausgewählt"}}
diff --git a/stores/data.js b/stores/data.js
index 92b93c2..fd697b7 100644
--- a/stores/data.js
+++ b/stores/data.js
@@ -506,6 +506,8 @@ export const useDataStore = defineStore('data', () => {
label: "Abwesenheitsanträge",
labelSingle: "Abwesenheitsantrag",
isStandardEntity: true,
+ supabaseSortColumn:"startDate",
+ supabaseSortAscending: false,
supabaseSelectWithInformation: "*",
historyItemHolder: "absencerequest",
redirect:true,