diff --git a/quasar.config.ts b/quasar.config.ts
index 93d749d..221df0e 100644
--- a/quasar.config.ts
+++ b/quasar.config.ts
@@ -105,7 +105,8 @@ export default defineConfig((ctx) => {
notify: {
color: 'primary',
avatar: 'https://cdn.quasar.dev/img/boy-avatar.png',
- }
+ },
+ dark: 'auto',
},
// iconSet: 'material-icons', // Quasar icon set
diff --git a/src/css/app.scss b/src/css/app.scss
index 3914f10..d3303c9 100644
--- a/src/css/app.scss
+++ b/src/css/app.scss
@@ -1,5 +1,5 @@
// app global css in SCSS form
-@each $size in (5, 10, 15, 20, 25, 50, 75, 100) {
+@each $size in (1, 2, 3, 4, 5, 10, 15, 20, 25, 50, 75, 100) {
.rounded-#{$size} {
border-radius: #{$size}px !important;
}
@@ -22,4 +22,14 @@
.q-table tbody tr:hover {
background: #00ff260c;
+}
+
+.body--dark {
+ --q-secondary: #0f1114;
+ color: $grey-2;
+}
+
+.body--light {
+ --q-dark: #FFF;
+ color: $grey-8;
}
\ No newline at end of file
diff --git a/src/css/quasar.variables.scss b/src/css/quasar.variables.scss
index 4279286..4ab75c8 100644
--- a/src/css/quasar.variables.scss
+++ b/src/css/quasar.variables.scss
@@ -20,8 +20,8 @@ $verdigris: #6EBAB0;
$mint: #56B586;
$dark-font: #1f3a1f;
-$dark: #000;
-$dark-page: #323232;
+$dark: #333;
+$dark-page: #343434;
$positive: #21ba45;
$negative: #e6364b;
diff --git a/src/i18n/en-ca/index.ts b/src/i18n/en-ca/index.ts
index adbe3a4..01beb59 100644
--- a/src/i18n/en-ca/index.ts
+++ b/src/i18n/en-ca/index.ts
@@ -115,31 +115,28 @@ export default {
},
profilePage: {
personalInfo: {
- title: 'Profile',
- firstName: 'First name',
- lastName: 'Last name',
- gender: 'Gender',
- genderMale: 'Man',
- genderFemale: 'Woman',
- genderNonBinary: 'Non-binary',
- genderUnspecified: 'Unspecified',
- phoneNumber: 'Phone number',
- jobTitle: 'Job title',
- company: 'Company',
- supervisor: 'Supervisor',
- role: 'Role',
- address: 'Address',
+ title: 'PERSONAL',
+ firstName: 'FIRST NAME',
+ lastName: 'LAST NAME',
+ phoneNumber: 'PHONE NUMBER',
+ address: 'ADDRESS',
addressPlaceholder: '# address, city, region, country',
- birthDate: 'Date of birth',
- submitInfo: 'Update Profile',
+ birthDate: 'DATE OF BIRTH',
},
employeeInfo: {
- title: 'Employee info',
- workEmail: 'Work e-mail',
- jobTitle: 'Job Title',
- companyName: 'Company',
- supervisorName: 'Supervisor',
- hiredDate: 'Hiring date',
+ title: 'CAREER',
+ workEmail: 'E-MAIL',
+ jobTitle: 'JOB TITLE',
+ companyName: 'COMPANY',
+ supervisorName: 'SUPERVISOR',
+ hiredDate: 'HIRING DATE',
+ },
+ preferences: {
+ title: 'PREFERENCES',
+ display_options: "display options",
+ language_options: "language options",
+ dark_mode: 'dark',
+ light_mode: 'light',
},
errors: {
mustEnterBirthdate: 'You must enter a valid birthdate',
diff --git a/src/i18n/fr-ca/index.ts b/src/i18n/fr-ca/index.ts
index 3f83584..1654b9e 100644
--- a/src/i18n/fr-ca/index.ts
+++ b/src/i18n/fr-ca/index.ts
@@ -191,31 +191,28 @@ export default {
},
profilePage: {
personalInfo: {
- title: 'Info personnel',
- firstName: 'Prénom',
- lastName: 'Nom de famille',
- gender: 'Genre',
- genderMale: 'Homme',
- genderFemale: 'Femme',
- genderNonBinary: 'Non-binaire',
- genderUnspecified: 'Non-spécifié',
- phoneNumber: 'Numéro de téléphone',
- jobTitle: 'Titre du poste',
- company: 'Entreprise',
- supervisor: 'Superviseur',
- role: 'Role',
- address: 'Adresse',
+ title: 'PERSONNELLE',
+ firstName: 'PRENOM',
+ lastName: 'NOM DE FAMILLE',
+ phoneNumber: 'NUMERO DE TELEPHONE',
+ address: 'ADRESSE',
addressPlaceholder: '# addresse, ville, région, pays',
- birthDate: 'Date de naissance',
- submitInfo: 'Modifier Profil',
+ birthDate: 'DATE DE NAISSANCE',
},
employeeInfo: {
- title: 'Info Employé',
- workEmail: 'Courriel employé',
- jobTitle: 'Poste',
- companyName: 'Compagnie',
- supervisorName: 'Nom du superviseur',
- hiredDate: 'Date embauché',
+ title: 'CARRIÈRE',
+ workEmail: 'COURRIEL',
+ jobTitle: 'POSTE',
+ companyName: 'COMPAGNIE',
+ supervisorName: 'NOM DU SUPERVISEUR',
+ hiredDate: 'DATE EMBAUCHE',
+ },
+ preferences: {
+ title: 'PRÉFÉRENCES',
+ display_options: "Options d'affichage",
+ language_options: "Options de langue",
+ dark_mode: 'sombre',
+ light_mode: 'clair',
},
errors: {
mustEnterBirthdate: 'Vous devez entrer une date de naissance valide',
diff --git a/src/modules/auth/pages/auth-login.vue b/src/modules/auth/pages/auth-login.vue
index 982deea..14fa2a6 100644
--- a/src/modules/auth/pages/auth-login.vue
+++ b/src/modules/auth/pages/auth-login.vue
@@ -35,7 +35,7 @@
-
+
{{ $t('loginPage.title') }}
diff --git a/src/modules/employee-list/components/supervisor/supervisor-crew-table-item.vue b/src/modules/employee-list/components/supervisor/supervisor-crew-table-item.vue
index 70a0874..d5dd1eb 100644
--- a/src/modules/employee-list/components/supervisor/supervisor-crew-table-item.vue
+++ b/src/modules/employee-list/components/supervisor/supervisor-crew-table-item.vue
@@ -18,7 +18,7 @@
@@ -33,7 +33,7 @@
-
+
{{ props.row.job_title }}
diff --git a/src/modules/employee-list/components/supervisor/supervisor-crew-table.vue b/src/modules/employee-list/components/supervisor/supervisor-crew-table.vue
index 8b40260..e1a517e 100644
--- a/src/modules/employee-list/components/supervisor/supervisor-crew-table.vue
+++ b/src/modules/employee-list/components/supervisor/supervisor-crew-table.vue
@@ -49,6 +49,8 @@
:rows-per-page-options="[0]"
:filter="filter"
class="q-pa-md bg-transparent"
+ :class="isGridMode ? '': 'my-sticky-header-table'"
+ :table-class="$q.dark.isActive ? 'q-px-md q-py-none q-mx-md rounded-10 bg-dark' : 'q-px-md q-py-none q-mx-md rounded-10 bg-white'"
color="primary"
table-header-class="text-primary text-uppercase"
card-container-class="justify-center"
@@ -57,8 +59,6 @@
:no-data-label="$t('shared.failedToLoad')"
:no-results-label="$t('shared.failedToSearch')"
:loading-label="$t('shared.loading')"
- table-class="bg-white q-pa-md q-mx-md rounded-10 shadow-12"
- table-style=""
@row-click="() => console.log('click!')"
>
@@ -102,4 +102,23 @@
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/src/modules/employee-list/types/employee-profile-interface.ts b/src/modules/employee-list/types/employee-profile-interface.ts
index 8c861d8..9f8cae0 100644
--- a/src/modules/employee-list/types/employee-profile-interface.ts
+++ b/src/modules/employee-list/types/employee-profile-interface.ts
@@ -9,4 +9,19 @@ export interface EmployeeProfile {
first_work_day: string;
last_work_day: string;
residence: string;
+ birth_date: string;
+}
+
+export const default_employee_profile: EmployeeProfile = {
+ first_name: '',
+ last_name: '',
+ supervisor_full_name: '',
+ company_name: -1,
+ job_title: '',
+ email: '',
+ phone_number: '',
+ first_work_day: '',
+ last_work_day: '',
+ residence: '',
+ birth_date: '',
}
\ No newline at end of file
diff --git a/src/modules/profile/components/employee/panel-info-employee.vue b/src/modules/profile/components/employee/panel-info-employee.vue
deleted file mode 100644
index af35594..0000000
--- a/src/modules/profile/components/employee/panel-info-employee.vue
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/modules/profile/components/employee/panel-info-personal.vue b/src/modules/profile/components/employee/panel-info-personal.vue
deleted file mode 100644
index 40f73f6..0000000
--- a/src/modules/profile/components/employee/panel-info-personal.vue
+++ /dev/null
@@ -1,147 +0,0 @@
-
-
-
-
-
-
changeFieldValue( value, 'first_name')"
- />
- changeFieldValue( value, 'last_name' )"
- />
-
-
-
-
changeFieldValue( value, 'phone_number' )"
- />
- changeFieldValue( value, 'gender' )"
- />
-
-
-
-
changeFieldValue( value, 'address' )"
- />
-
-
-
-
changeFieldValue( value, 'birth_date' )"
- />
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/modules/profile/components/employee/profile-panel-info-employee.vue b/src/modules/profile/components/employee/profile-panel-info-employee.vue
new file mode 100644
index 0000000..26e3556
--- /dev/null
+++ b/src/modules/profile/components/employee/profile-panel-info-employee.vue
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/employee/profile-panel-info-personal.vue b/src/modules/profile/components/employee/profile-panel-info-personal.vue
new file mode 100644
index 0000000..07e2f92
--- /dev/null
+++ b/src/modules/profile/components/employee/profile-panel-info-personal.vue
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-header.vue b/src/modules/profile/components/shared/profile-header.vue
new file mode 100644
index 0000000..b63319e
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-header.vue
@@ -0,0 +1,18 @@
+
+
+
+
+ {{ userFirstName }} {{ userLastName }}
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-input-field.vue b/src/modules/profile/components/shared/profile-input-field.vue
deleted file mode 100644
index 4634c6e..0000000
--- a/src/modules/profile/components/shared/profile-input-field.vue
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
- emit('isValueChanged', value)"
- />
-
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-panel-input-field.vue b/src/modules/profile/components/shared/profile-panel-input-field.vue
new file mode 100644
index 0000000..6aca9af
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-panel-input-field.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-panel-preferences.vue b/src/modules/profile/components/shared/profile-panel-preferences.vue
new file mode 100644
index 0000000..8805b86
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-panel-preferences.vue
@@ -0,0 +1,84 @@
+
+
+
+
+ {{ $t('profilePage.preferences.display_options') }}
+
+
+
+
+
+ {{$t('profilePage.preferences.light_mode')}}
+
+
+
toggle_dark_mode(value)"
+ size="xl"
+ class="col-auto"
+ checked-icon="dark_mode"
+ unchecked-icon="light_mode"
+ />
+
+
+
+ {{$t('profilePage.preferences.dark_mode')}}
+
+
+
+
+ {{ $t('profilePage.preferences.language_options') }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-panel-select-field.vue b/src/modules/profile/components/shared/profile-panel-select-field.vue
new file mode 100644
index 0000000..37220ef
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-panel-select-field.vue
@@ -0,0 +1,31 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-select-field.vue b/src/modules/profile/components/shared/profile-select-field.vue
deleted file mode 100644
index be6a7f3..0000000
--- a/src/modules/profile/components/shared/profile-select-field.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
- emit('isValueChanged', value.toString())"
- />
-
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-tab-menu-template.vue b/src/modules/profile/components/shared/profile-tab-menu-template.vue
index f78e162..af02408 100644
--- a/src/modules/profile/components/shared/profile-tab-menu-template.vue
+++ b/src/modules/profile/components/shared/profile-tab-menu-template.vue
@@ -1,49 +1,51 @@
-
-
-
+
+
+
+
-
+
-
-
-
+
diff --git a/src/modules/profile/pages/employee/profile-employee.vue b/src/modules/profile/pages/employee/profile-employee.vue
index 9707f7a..be68a5f 100644
--- a/src/modules/profile/pages/employee/profile-employee.vue
+++ b/src/modules/profile/pages/employee/profile-employee.vue
@@ -1,32 +1,60 @@
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/pages/profile-container.vue b/src/modules/profile/pages/profile-container.vue
index 9a4d103..19702a3 100644
--- a/src/modules/profile/pages/profile-container.vue
+++ b/src/modules/profile/pages/profile-container.vue
@@ -1,31 +1,22 @@
-
-
- {{ auth_store.user.firstName }} {{ auth_store.user.lastName }}
-
-
+
+
\ No newline at end of file
diff --git a/src/modules/profile/types/profile-employee-interface.ts b/src/modules/profile/types/profile-employee-interface.ts
deleted file mode 100644
index 92b9997..0000000
--- a/src/modules/profile/types/profile-employee-interface.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-export interface EmployeePersonalInfo {
- first_name: string;
- last_name: string;
- gender: string;
- phone_number: string;
- address: string;
- birth_date: string;
-}
-
-export interface EmployeeJobInfo {
- email: string;
- job_title: string;
- company: string;
- supervisor: string;
- hired_date: string;
-}
-
-export const default_employee_personal_info: EmployeePersonalInfo = {
- first_name: '',
- last_name: '',
- gender: '',
- phone_number: '',
- address: '',
- birth_date: '1970 / 01 / 01'
-}
-
-export const default_employee_job_info: EmployeeJobInfo = {
- email: '',
- job_title: '',
- company: '',
- supervisor: '',
- hired_date: '',
-}
\ No newline at end of file
diff --git a/src/modules/shared/components/language-switch.vue b/src/modules/shared/components/language-switch.vue
index d2b2051..5284226 100644
--- a/src/modules/shared/components/language-switch.vue
+++ b/src/modules/shared/components/language-switch.vue
@@ -9,26 +9,28 @@
-
+
+
+
+
+
+
+
+
+ {{ option.label }}
+
+
+
+
+
+ -->
\ No newline at end of file
diff --git a/src/modules/shared/components/navigation/footer-bar.vue b/src/modules/shared/components/navigation/footer-bar.vue
index dbcbf9c..8df6af4 100644
--- a/src/modules/shared/components/navigation/footer-bar.vue
+++ b/src/modules/shared/components/navigation/footer-bar.vue
@@ -1,12 +1,7 @@
-
-
© 2025 Targo Communications inc.
-
\ No newline at end of file
diff --git a/src/modules/shared/components/navigation/right-drawer.vue b/src/modules/shared/components/navigation/right-drawer.vue
index 875f3d4..df82ab6 100644
--- a/src/modules/shared/components/navigation/right-drawer.vue
+++ b/src/modules/shared/components/navigation/right-drawer.vue
@@ -36,7 +36,7 @@
- {{ $t('navBar.userMenuHome') }}
+ {{ $t('navBar.userMenuHome') }}
@@ -47,7 +47,7 @@
- {{ $t('navBar.userMenuShiftValidation') }}
+ {{ $t('navBar.userMenuShiftValidation') }}
@@ -58,7 +58,7 @@
- {{ $t('navBar.userMenuEmployeeList') }}
+ {{ $t('navBar.userMenuEmployeeList') }}
@@ -69,7 +69,7 @@
- {{ $t('navBar.userMenuTimesheetTemp') }}
+ {{ $t('navBar.userMenuTimesheetTemp') }}
@@ -79,7 +79,7 @@
- {{ $t('navBar.userMenuProfile') }}
+ {{ $t('navBar.userMenuProfile') }}
@@ -89,7 +89,7 @@
- {{ $t('navBar.userMenuHelp') }}
+ {{ $t('navBar.userMenuHelp') }}
@@ -100,7 +100,7 @@
- {{ $t('navBar.userMenuLogout') }}
+ {{ $t('navBar.userMenuLogout') }}
diff --git a/src/modules/timesheet-approval/components/timesheet-approval-employee-details-shifts-row.vue b/src/modules/timesheet-approval/components/timesheet-approval-employee-details-shifts-row.vue
index e39bc52..2eca764 100644
--- a/src/modules/timesheet-approval/components/timesheet-approval-employee-details-shifts-row.vue
+++ b/src/modules/timesheet-approval/components/timesheet-approval-employee-details-shifts-row.vue
@@ -20,25 +20,9 @@ import { ref } from 'vue';
default : return 'transparent';
}
};
-
- const getTextColor = (type: string): string => {
- switch(type) {
- case 'REGULAR': return 'grey-8';
- case '': return 'transparent';
- default: return 'white';
- }
- }
-
-
- LOL
-
-
-
{{ props.shift.start_time }}
@@ -80,8 +64,8 @@ import { ref } from 'vue';
{{ props.shift.end_time }}
@@ -97,7 +81,6 @@ import { ref } from 'vue';
v-if="props.shift.type !== ''"
flat
dense
- color='grey-8'
icon="chat_bubble_outline"
class="q-pa-none"
/>
@@ -107,7 +90,6 @@ import { ref } from 'vue';
v-if="props.shift.type !== ''"
flat
dense
- color='grey-8'
icon="attach_money"
class="q-pa-none q-mx-xs"
/>
diff --git a/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list-item.vue b/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list-item.vue
index d3443fe..bf8e243 100644
--- a/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list-item.vue
+++ b/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list-item.vue
@@ -67,10 +67,7 @@
-
+
@@ -89,15 +86,12 @@
{{ props.cols.find(c => c.name === 'regular_hours')?.label }}
-
+
{{ props.cols.find(c => c.name === 'regular_hours')?.value }}
-
+
@@ -113,16 +107,15 @@
>
{{ col.label }}
-
+
{{ col.value }}
-
@@ -140,7 +133,7 @@
>
{{ col.label }}
-
+
{{ col.value }}
@@ -157,7 +150,7 @@
{{ props.row.total_hours + 'h' }}
total
diff --git a/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list.vue b/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list.vue
index d7626a9..ef1b4ae 100644
--- a/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list.vue
+++ b/src/modules/timesheet-approval/components/timesheet-approval-employee-overview-list.vue
@@ -169,8 +169,8 @@
:no-results-label="$t('shared.failedToSearch')"
:loading-label="$t('shared.loading')"
>
-
-
+
+
- & { value: unknown })[],
row: PayPeriodOverviewEmployee,
key: string,
@@ -247,7 +247,7 @@
-
+
{{ message }}
diff --git a/src/modules/timesheet-approval/pages/timesheet-approval-employee-details.vue b/src/modules/timesheet-approval/pages/timesheet-approval-employee-details.vue
index 018ce25..74b1191 100644
--- a/src/modules/timesheet-approval/pages/timesheet-approval-employee-details.vue
+++ b/src/modules/timesheet-approval/pages/timesheet-approval-employee-details.vue
@@ -63,7 +63,7 @@
@@ -88,7 +88,7 @@
>
{{ props.employeeName }}
-
+
{
- const employee = ref();
+ const employee = ref( default_employee_profile );
const employeeList = ref([]);
const isShowingEmployeeAddModifyWindow = ref(false);
const isLoadingEmployeeProfile = ref(false);