diff --git a/src/i18n/en-ca/index.ts b/src/i18n/en-ca/index.ts index ade6d75..ab923ec 100644 --- a/src/i18n/en-ca/index.ts +++ b/src/i18n/en-ca/index.ts @@ -367,6 +367,13 @@ export default { hours_worked_title: "hours worked", expenses_title: "expenses accrued", }, + event: { + update: "has updated", + create: "has created", + delete: "has deleted", + expense: "an expense", + shift: "a shift", + }, print_report: { title: "Download options", description: "Choose what to include in the report", diff --git a/src/i18n/fr-ca/index.ts b/src/i18n/fr-ca/index.ts index d18f8fc..2403e5e 100644 --- a/src/i18n/fr-ca/index.ts +++ b/src/i18n/fr-ca/index.ts @@ -367,6 +367,13 @@ export default { hours_worked_title: "heures travaillées", expenses_title: "dépenses encourues" }, + event: { + update: "a mis à jour", + create: "a créé", + delete: "a supprimé", + expense: "une dépense", + shift: " un quart de travail", + }, print_report: { title: "options de téléchargement", description: "Choisissez ce qui sera inclu dans le rapport", diff --git a/src/modules/timesheet-approval/services/timesheet-approval-service.ts b/src/modules/timesheet-approval/services/timesheet-approval-service.ts index 383dde2..1e9607e 100644 --- a/src/modules/timesheet-approval/services/timesheet-approval-service.ts +++ b/src/modules/timesheet-approval/services/timesheet-approval-service.ts @@ -18,4 +18,8 @@ export const timesheetApprovalService = { const response = await api.patch>('pay-periods/pay-period-approval', { email, timesheet_ids, is_approved}); return response.data; }, + + subscribeToPayPeriodObservable: (): EventSource => { + return new EventSource('pay-periods/subscribe') + }, }; \ No newline at end of file diff --git a/src/stores/timesheet-store.ts b/src/stores/timesheet-store.ts index 1163d25..c73e1b6 100644 --- a/src/stores/timesheet-store.ts +++ b/src/stores/timesheet-store.ts @@ -26,6 +26,7 @@ export const useTimesheetStore = defineStore('timesheet', () => { const has_timesheet_preset = ref(false); const current_pay_period_overview = ref(); const pay_period_report = ref(); + const pay_period_observer = ref(); const federal_holidays = ref([]); @@ -180,6 +181,15 @@ export const useTimesheetStore = defineStore('timesheet', () => { is_report_dialog_open.value = false; }; + const subscribeToPayPeriodObservable = () => { + if (pay_period_observer.value === undefined) { + pay_period_observer.value = timesheetApprovalService.subscribeToPayPeriodObservable(); + pay_period_observer.value.onmessage = () => { + + } + } + } + return { is_loading, is_report_dialog_open, @@ -203,5 +213,6 @@ export const useTimesheetStore = defineStore('timesheet', () => { getPayPeriodReport, openReportDialog, closeReportDialog, + subscribeToPayPeriodObservable, }; }); \ No newline at end of file