mirror of
https://github.com/joaovitoriasilva/endurain.git
synced 2026-01-09 15:57:59 -05:00
Translations optimizations
This commit is contained in:
@@ -19,6 +19,8 @@ files:
|
||||
translation: /frontend/app/src/i18n/%two_letters_code%/components/health/%original_file_name%
|
||||
- source: /frontend/app/src/i18n/us/components/health/healthWeightZone/*.json
|
||||
translation: /frontend/app/src/i18n/%two_letters_code%/components/health/healthWeightZone/%original_file_name%
|
||||
- source: /frontend/app/src/i18n/us/components/navbar/*.json
|
||||
translation: /frontend/app/src/i18n/%two_letters_code%/components/navbar/%original_file_name%
|
||||
- source: /frontend/app/src/i18n/us/components/settings/*.json
|
||||
translation: /frontend/app/src/i18n/%two_letters_code%/components/settings/%original_file_name%
|
||||
- source: /frontend/app/src/i18n/us/components/settings/settingsGeneralZone/*.json
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" id="addGearToActivityModal">
|
||||
{{ $t("activity.modalLabelAddGear") }}
|
||||
{{ $t("addGearToActivityModalComponent.modalLabelAddGear") }}
|
||||
</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal"
|
||||
aria-label="Close"></button>
|
||||
@@ -12,7 +12,7 @@
|
||||
<form @submit.prevent="submitAddGearToActivityForm">
|
||||
<div class="modal-body">
|
||||
<!-- gear type fields -->
|
||||
<label for="gearIDAdd"><b>* {{ $t("activity.modalLabelSelectGear") }}</b></label>
|
||||
<label for="gearIDAdd"><b>* {{ $t("addGearToActivityModalComponent.modalLabelSelectGear") }}</b></label>
|
||||
<select class="form-control" name="gearIDAdd" v-model="gearId" required>
|
||||
<option v-for="gear in gearsByType" :key="gear.id" :value="gear.id">
|
||||
{{ gear.nickname }}
|
||||
@@ -24,7 +24,7 @@
|
||||
{{ $t("generalItems.buttonClose") }}
|
||||
</button>
|
||||
<button type="submit" class="btn btn-success" data-bs-dismiss="modal" name="addGearToActivity">
|
||||
{{ $t("activity.modalButtonAddGear") }}
|
||||
{{ $t("addGearToActivityModalComponent.modalButtonAddGear") }}
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
@@ -72,7 +72,7 @@ export default {
|
||||
// Emit the gearId to the parent component
|
||||
emit("gearId", gearId.value);
|
||||
} catch (error) {
|
||||
push.error(`${t("generalItems.errorEditingInfo")} - ${error}`);
|
||||
push.error(`${t("addGearToActivityModalComponent.errorEditingGear")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<!-- Search -->
|
||||
<a class="nav-link link-body-emphasis" href="#" role="button" @click="toggleShowSearch" v-if="authStore.isAuthenticated">
|
||||
<font-awesome-icon :icon="['fas', 'magnifying-glass']" />
|
||||
<span class="ms-1" v-if="!showSearch">{{ $t("navbar.search") }}</span>
|
||||
<span class="ms-1" v-if="!showSearch">{{ $t("navbarComponent.search") }}</span>
|
||||
</a>
|
||||
|
||||
<NavbarSearchComponent v-if="showSearch" @collapseNavbar="collapseNavbar" @toggleShowSearch="toggleShowSearch"/>
|
||||
@@ -27,14 +27,14 @@
|
||||
<router-link :to="{ name: 'gears' }" class="nav-link link-body-emphasis" v-if="authStore.isAuthenticated" @click="collapseNavbar">
|
||||
<font-awesome-icon :icon="['fas', 'fa-bicycle']" />
|
||||
<span class="ms-1">
|
||||
{{ $t("navbar.gear") }}
|
||||
{{ $t("navbarComponent.gear") }}
|
||||
</span>
|
||||
</router-link>
|
||||
<!-- if is logged in show health button -->
|
||||
<router-link :to="{ name: 'health' }" class="nav-link link-body-emphasis" v-if="authStore.isAuthenticated" @click="collapseNavbar">
|
||||
<font-awesome-icon :icon="['fas', 'fa-heart']" />
|
||||
<span class="ms-1">
|
||||
{{ $t("navbar.health") }}
|
||||
{{ $t("navbarComponent.health") }}
|
||||
</span>
|
||||
</router-link>
|
||||
</div>
|
||||
@@ -52,7 +52,7 @@
|
||||
<!-- profile button -->
|
||||
<router-link :to="{ name: 'user', params: { id: authStore.user.id } }" class="nav-link link-body-emphasis" v-if="authStore.isAuthenticated" @click="collapseNavbar">
|
||||
<UserAvatarComponent :user="authStore.user" :width=24 :height=24 :alignTop=2 />
|
||||
<span class="ms-2">{{ $t("navbar.profile") }}</span>
|
||||
<span class="ms-2">{{ $t("navbarComponent.profile") }}</span>
|
||||
</router-link>
|
||||
|
||||
<!-- pipe -->
|
||||
@@ -63,18 +63,18 @@
|
||||
<!-- Settings button -->
|
||||
<router-link :to="{ name: 'settings' }" class="nav-link link-body-emphasis" v-if="authStore.isAuthenticated" @click="collapseNavbar">
|
||||
<font-awesome-icon :icon="['fas', 'fa-gear']" />
|
||||
<span class="ms-1">{{ $t("navbar.settings") }}</span>
|
||||
<span class="ms-1">{{ $t("navbarComponent.settings") }}</span>
|
||||
</router-link>
|
||||
|
||||
<!-- Login/logout button -->
|
||||
<a class="nav-link link-body-emphasis" href="#" v-if="authStore.isAuthenticated" @click="handleLogout">
|
||||
<font-awesome-icon :icon="['fas', 'fa-sign-out-alt']" />
|
||||
<span class="ms-1">{{ $t("navbar.logout") }}</span>
|
||||
<span class="ms-1">{{ $t("navbarComponent.logout") }}</span>
|
||||
</a>
|
||||
<!-- if is not logged in -->
|
||||
<router-link :to="{ name: 'login' }" class="nav-link link-body-emphasis" v-if="!authStore.isAuthenticated" @click="collapseNavbar">
|
||||
<font-awesome-icon :icon="['fas', 'fa-sign-in-alt']" />
|
||||
<span class="ms-1">{{ $t("navbar.login") }}</span>
|
||||
<span class="ms-1">{{ $t("navbarComponent.login") }}</span>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
@@ -117,7 +117,7 @@ export default {
|
||||
collapseNavbar();
|
||||
await authStore.logoutUser(router, locale);
|
||||
} catch (error) {
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("navbarComponent.errorLogout")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
<div>
|
||||
<form>
|
||||
<div class="input-group">
|
||||
<label for="inputSelectTypeToSearch" class="form-label visually-hidden">{{ $t("footer.searchSelectLabel") }}</label>
|
||||
<label for="inputSelectTypeToSearch" class="form-label visually-hidden">{{ $t("navbarSearchComponent.searchSelectLabel") }}</label>
|
||||
<select id="inputSelectTypeToSearch" class="form-select" v-model="searchSelectValue">
|
||||
<option value="1">{{ $t("footer.searchSelectOptionUser") }}</option>
|
||||
<option value="2">{{ $t("footer.searchSelectOptionActivity") }}</option>
|
||||
<option value="3">{{ $t("footer.searchSelectOptionGear") }}</option>
|
||||
<option value="1">{{ $t("navbarSearchComponent.searchSelectOptionUser") }}</option>
|
||||
<option value="2">{{ $t("navbarSearchComponent.searchSelectOptionActivity") }}</option>
|
||||
<option value="3">{{ $t("navbarSearchComponent.searchSelectOptionGear") }}</option>
|
||||
</select>
|
||||
<div class="ms-1">
|
||||
<input type="text" class="form-control" id="inputTextFieldToSearch" :placeholder='$t("footer.searchInputPlaceholder")' v-model="inputSearch">
|
||||
<input type="text" class="form-control" id="inputTextFieldToSearch" :placeholder='$t("navbarSearchComponent.searchInputPlaceholder")' v-model="inputSearch">
|
||||
<ul v-if="searchResults" class="list-group z-1 position-absolute">
|
||||
<li v-for="result in searchResults" :key="result.id" class="list-group-item list-group-item-action">
|
||||
<router-link :to="{ name: 'user', params: { id: result.id }}" class="link-body-emphasis link-underline-opacity-0 link-underline-opacity-100-hover" v-if="searchSelectValue == 1" @click="closeSearch">
|
||||
@@ -61,7 +61,7 @@ export default {
|
||||
try {
|
||||
searchResults.value = await users.getUserContainsUsername(query);
|
||||
} catch (error) {
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('navbarSearchComponent.errorFetchingUserWithUsernameContains')} - ${error}`)
|
||||
}
|
||||
}, 500);
|
||||
|
||||
@@ -73,7 +73,7 @@ export default {
|
||||
try {
|
||||
searchResults.value = await activities.getActivityByName(query);
|
||||
} catch (error) {
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('navbarSearchComponent.errorFetchingActivityWithNameContains')} - ${error}`)
|
||||
}
|
||||
}, 500);
|
||||
|
||||
@@ -85,7 +85,7 @@ export default {
|
||||
try {
|
||||
searchResults.value = await gears.getGearContainsNickname(query);
|
||||
} catch (error) {
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('navbarSearchComponent.errorFetchingGearWithNicknameContains')} - ${error}`)
|
||||
}
|
||||
}, 500);
|
||||
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
<template>
|
||||
<form>
|
||||
<label for="themeSelect" class="form-label">{{ $t("settingsThemeSwitcher.formLabel") }}</label>
|
||||
<!-- <select class="form-select" id="themeSelect" aria-label="Select for theme picker">
|
||||
<option v-for="theme in themes" :key="theme.value" :value="theme.value" :selected="themeStore.theme == theme.value" @click="changeTheme(theme.value)">{{ theme.label }}</option>
|
||||
</select> -->
|
||||
<select
|
||||
class="form-select"
|
||||
id="themeSelect"
|
||||
|
||||
@@ -5,28 +5,28 @@
|
||||
|
||||
<form @submit.prevent="submitChangeUserPasswordForm">
|
||||
<!-- password fields -->
|
||||
<label for="validationNewPassword"><b>* {{ $t("usersListComponent.modalChangeUserPasswordPasswordLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordValid || !isPasswordMatch }" type="password" id="validationNewPassword" aria-describedby="validationNewPasswordFeedback" :placeholder='$t("usersListComponent.modalChangeUserPasswordPasswordLabel")' v-model="newPassword" required>
|
||||
<label for="validationNewPassword"><b>* {{ $t("settingsSecurityZone.changeUserPasswordPasswordLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordValid || !isPasswordMatch }" type="password" id="validationNewPassword" aria-describedby="validationNewPasswordFeedback" :placeholder='$t("settingsSecurityZone.changeUserPasswordPasswordLabel")' v-model="newPassword" required>
|
||||
<div id="validationNewPasswordFeedback" class="invalid-feedback" v-if="!isNewPasswordValid">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
{{ $t("settingsSecurityZone.changeUserPasswordFeedbackLabel") }}
|
||||
</div>
|
||||
<div id="validationNewPasswordFeedback" class="invalid-feedback" v-if="!isPasswordMatch">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
{{ $t("settingsSecurityZone.changeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
</div>
|
||||
<!-- repeat password fields -->
|
||||
|
||||
<label class="mt-1" for="validationNewPasswordRepeat"><b>* {{ $t("usersListComponent.modalChangeUserPasswordPasswordConfirmationLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordRepeatValid || !isPasswordMatch }" type="password" id="validationNewPasswordRepeat" aria-describedby="validationNewPasswordRepeatFeedback" :placeholder='$t("usersListComponent.modalChangeUserPasswordPasswordConfirmationLabel")' v-model="newPasswordRepeat" required>
|
||||
<!-- repeat password fields -->
|
||||
<label class="mt-1" for="validationNewPasswordRepeat"><b>* {{ $t("settingsSecurityZone.changeUserPasswordPasswordConfirmationLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordRepeatValid || !isPasswordMatch }" type="password" id="validationNewPasswordRepeat" aria-describedby="validationNewPasswordRepeatFeedback" :placeholder='$t("settingsSecurityZone.changeUserPasswordPasswordConfirmationLabel")' v-model="newPasswordRepeat" required>
|
||||
<div id="validationNewPasswordRepeatFeedback" class="invalid-feedback" v-if="!isNewPasswordRepeatValid">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
{{ $t("settingsSecurityZone.changeUserPasswordFeedbackLabel") }}
|
||||
</div>
|
||||
<div id="validationNewPasswordRepeatFeedback" class="invalid-feedback" v-if="!isPasswordMatch">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
{{ $t("settingsSecurityZone.changeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
</div>
|
||||
|
||||
<p>* {{ $t("generalItems.requiredField") }}</p>
|
||||
|
||||
<button type="submit" class="btn btn-success" name="editUserPassword">{{ $t("settingsSecurityZone.subtitleChangePassword") }}</button>
|
||||
<button type="submit" class="btn btn-success" :disabled="!isNewPasswordValid || !isNewPasswordRepeatValid || !isPasswordMatch" name="editUserPassword">{{ $t("settingsSecurityZone.subtitleChangePassword") }}</button>
|
||||
</form>
|
||||
|
||||
<hr>
|
||||
@@ -99,13 +99,13 @@ export default {
|
||||
|
||||
// Show the success alert.
|
||||
push.success(
|
||||
t("usersListComponent.userChangePasswordSuccessMessage"),
|
||||
t("settingsSecurityZone.userChangePasswordSuccessMessage"),
|
||||
);
|
||||
}
|
||||
} catch (error) {
|
||||
// If there is an error, show the error alert.
|
||||
push.error(
|
||||
`${t("usersListComponent.userChangePasswordErrorMessage")} - ${error}`,
|
||||
`${t("settingsSecurityZone.userChangePasswordErrorMessage")} - ${error}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,23 +10,7 @@
|
||||
<a class="mt-4 w-100 btn btn-danger" href="#" role="button" data-bs-toggle="modal" data-bs-target="#deleteProfilePhotoModal" v-if="authStore.user.photo_path">{{ $t("settingsUserProfileZone.buttonDeleteProfilePhoto") }}</a>
|
||||
|
||||
<!-- Modal delete profile photo -->
|
||||
<div class="modal fade" id="deleteProfilePhotoModal" tabindex="-1" aria-labelledby="deleteProfilePhotoModal" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" id="deleteProfilePhotoModal">{{ $t("settingsUserProfileZone.buttonDeleteProfilePhoto") }}</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
{{ $t("settingsUserProfileZone.modalDeleteProfilePhotoBody") }}
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">{{ $t("generalItems.buttonClose") }}</button>
|
||||
<a type="button" class="btn btn-danger" data-bs-dismiss="modal" @click="submitDeleteUserPhoto">{{ $t("settingsUserProfileZone.buttonDeleteProfilePhoto") }}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ModalComponent modalId="deleteProfilePhotoModal" :title="t('settingsUserProfileZone.buttonDeleteProfilePhoto')" :body="`${t('settingsUserProfileZone.modalDeleteProfilePhotoBody')}`" actionButtonType="danger" :actionButtonText="t('settingsUserProfileZone.buttonDeleteProfilePhoto')" @submitAction="submitDeleteUserPhoto"/>
|
||||
|
||||
<!-- Edit profile section -->
|
||||
<a class="mt-2 w-100 btn btn-primary" href="#" role="button" data-bs-toggle="modal" data-bs-target="#editProfileModal">{{ $t("settingsUserProfileZone.buttonEditProfile") }}</a>
|
||||
@@ -38,36 +22,36 @@
|
||||
<!-- user name -->
|
||||
<h2>{{ authStore.user.name }}</h2>
|
||||
<!-- user username -->
|
||||
<p><b>{{ $t("usersAddEditUserModalComponent.addEditUserModalUsernameLabel") }}: </b>{{ authStore.user.username }}</p>
|
||||
<p><b>{{ $t("settingsUserProfileZone.usernameLabel") }}: </b>{{ authStore.user.username }}</p>
|
||||
<!-- user email -->
|
||||
<p><b>{{ $t("usersAddEditUserModalComponent.addEditUserModalEmailLabel") }}: </b>{{ authStore.user.email }}</p>
|
||||
<p><b>{{ $t("settingsUserProfileZone.emailLabel") }}: </b>{{ authStore.user.email }}</p>
|
||||
<!-- user city -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalCityLabel") }}: </b>
|
||||
<b>{{ $t("settingsUserProfileZone.cityLabel") }}: </b>
|
||||
<span v-if="authStore.user.city">{{ authStore.user.city }}</span>
|
||||
<span v-else>{{ $t("generalItems.labelNotApplicable") }}</span>
|
||||
</p>
|
||||
<!-- user birthdate -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalBirthdayLabel") }}: </b>
|
||||
<b>{{ $t("settingsUserProfileZone.birthdayLabel") }}: </b>
|
||||
<span v-if="authStore.user.birthdate">{{ authStore.user.birthdate }}</span>
|
||||
<span v-else>{{ $t("generalItems.labelNotApplicable") }}</span>
|
||||
</p>
|
||||
<!-- user gender -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalGenderLabel") }}: </b>
|
||||
<span v-if="authStore.user.gender == 1">{{ $t("usersAddEditUserModalComponent.addEditUserModalGenderOption1") }}</span>
|
||||
<span v-else>{{ $t("usersAddEditUserModalComponent.addEditUserModalGenderOption2") }}</span>
|
||||
<b>{{ $t("settingsUserProfileZone.genderLabel") }}: </b>
|
||||
<span v-if="authStore.user.gender == 1">{{ $t("settingsUserProfileZone.genderOption1") }}</span>
|
||||
<span v-else>{{ $t("settingsUserProfileZone.genderOption2") }}</span>
|
||||
</p>
|
||||
<!-- user units -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalUnitsLabel") }}: </b>
|
||||
<span v-if="Number(authStore?.user?.units) === 1">{{ $t("usersAddEditUserModalComponent.addEditUserModalUnitsOption1") }}</span>
|
||||
<span v-else>{{ $t("usersAddEditUserModalComponent.addEditUserModalUnitsOption2") }}</span>
|
||||
<b>{{ $t("settingsUserProfileZone.unitsLabel") }}: </b>
|
||||
<span v-if="Number(authStore?.user?.units) === 1">{{ $t("settingsUserProfileZone.unitsOption1") }}</span>
|
||||
<span v-else>{{ $t("settingsUserProfileZone.unitsOption2") }}</span>
|
||||
</p>
|
||||
<!-- user height -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalHeightLabel") }}
|
||||
<b>{{ $t("settingsUserProfileZone.heightLabel") }}
|
||||
<span v-if="Number(authStore?.user?.units) === 1">({{ $t("generalItems.unitsCm") }}): </span>
|
||||
<span v-else>({{ $t("generalItems.unitsFeetInches") }}): </span>
|
||||
</b>
|
||||
@@ -79,18 +63,18 @@
|
||||
</p>
|
||||
<!-- user preferred language -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalUserPreferredLanguageLabel") }}: </b>
|
||||
<span v-if="authStore.user.preferred_language == 'us'">{{ $t("usersAddEditUserModalComponent.addEditUserModalPreferredLanguageOption1") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'ca'">{{ $t("usersAddEditUserModalComponent.addEditUserModalPreferredLanguageOption2") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'pt'">{{ $t("usersAddEditUserModalComponent.addEditUserModalPreferredLanguageOption3") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'de'">{{ $t("usersAddEditUserModalComponent.addEditUserModalPreferredLanguageOption4") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'fr'">{{ $t("usersAddEditUserModalComponent.addEditUserModalPreferredLanguageOption5") }}</span>
|
||||
<b>{{ $t("settingsUserProfileZone.preferredLanguageLabel") }}: </b>
|
||||
<span v-if="authStore.user.preferred_language == 'us'">{{ $t("settingsUserProfileZone.preferredLanguageOption1") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'ca'">{{ $t("settingsUserProfileZone.preferredLanguageOption2") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'pt'">{{ $t("settingsUserProfileZone.preferredLanguageOption3") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'de'">{{ $t("settingsUserProfileZone.preferredLanguageOption4") }}</span>
|
||||
<span v-if="authStore.user.preferred_language == 'fr'">{{ $t("settingsUserProfileZone.preferredLanguageOption5") }}</span>
|
||||
</p>
|
||||
<!-- user type -->
|
||||
<p>
|
||||
<b>{{ $t("usersAddEditUserModalComponent.addEditUserModalUserTypeLabel") }}: </b>
|
||||
<span v-if="authStore.user.access_type == 1">{{ $t("usersAddEditUserModalComponent.addEditUserModalUserTypeOption1") }}</span>
|
||||
<span v-else>{{ $t("usersAddEditUserModalComponent.addEditUserModalUserTypeOption2") }}</span>
|
||||
<b>{{ $t("settingsUserProfileZone.accessTypeLabel") }}: </b>
|
||||
<span v-if="authStore.user.access_type == 1">{{ $t("settingsUserProfileZone.accessTypeOption1") }}</span>
|
||||
<span v-else>{{ $t("settingsUserProfileZone.accessTypeOption2") }}</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -110,11 +94,13 @@ import { cmToFeetInches } from "@/utils/unitsUtils";
|
||||
// Importing the components
|
||||
import UserAvatarComponent from "../Users/UserAvatarComponent.vue";
|
||||
import UsersAddEditUserModalComponent from "@/components/Settings/SettingsUsersZone/UsersAddEditUserModalComponent.vue";
|
||||
import ModalComponent from "@/components/Modals/ModalComponent.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
UserAvatarComponent,
|
||||
UsersAddEditUserModalComponent,
|
||||
ModalComponent,
|
||||
},
|
||||
setup() {
|
||||
const authStore = useAuthStore();
|
||||
@@ -134,11 +120,11 @@ export default {
|
||||
authStore.setUser(user, authStore.session_id, locale);
|
||||
|
||||
// Set the success message and show the success alert.
|
||||
push.success(t("usersListComponent.userPhotoDeleteSuccessMessage"));
|
||||
push.success(t("settingsUserProfileZone.userPhotoDeleteSuccess"));
|
||||
} catch (error) {
|
||||
// Show the error message
|
||||
push.error(
|
||||
`${t("usersListComponent.userPhotoDeleteErrorMessage")} - ${error}`,
|
||||
`${t("settingsUserProfileZone.userPhotoDeleteError")} - ${error}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -103,7 +103,7 @@ export default {
|
||||
usersArray.value = await users.getUserContainsUsername(searchUsername.value);
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("settingsUsersZone.errorFetchingUsers")} - ${error}`);
|
||||
}
|
||||
}, 500);
|
||||
|
||||
@@ -127,7 +127,7 @@ export default {
|
||||
isUsersUpdatingLoading.value = false;
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("settingsUsersZone.errorFetchingUsers")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ export default {
|
||||
totalPages.value = Math.ceil(usersNumber.value / numRecords);
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("settingsUsersZone.errorFetchingUsers")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -153,7 +153,7 @@ export default {
|
||||
);
|
||||
usersNumber.value--;
|
||||
|
||||
push.success(t("usersListComponent.userDeleteSuccessMessage"));
|
||||
push.success(t("settingsUsersZone.successUserDeleted"));
|
||||
}
|
||||
|
||||
function addUserList(createdUser) {
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" id="addUserModal" v-if="action == 'add'">{{ $t("settingsUsersZone.buttonAddUser") }}</h1>
|
||||
<h1 class="modal-title fs-5" id="addUserModal" v-if="action == 'add'">{{ $t("usersAddEditUserModalComponent.addEditUserModalAddTitle") }}</h1>
|
||||
<h1 class="modal-title fs-5" :id='editUserModalId' v-else-if="action == 'edit'">{{ $t("usersAddEditUserModalComponent.addEditUserModalEditTitle") }}</h1>
|
||||
<h1 class="modal-title fs-5" id="editProfileModal" v-else>{{ $t("usersAddEditUserModalComponent.addEditUserModalEditProfileTitle") }}</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
@@ -26,7 +26,7 @@
|
||||
<label for="userUsernameAddEdit"><b>* {{ $t("usersAddEditUserModalComponent.addEditUserModalUsernameLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isUsernameExists }" type="text" name="userUsernameAddEdit" :placeholder='$t("usersAddEditUserModalComponent.addEditUserModalUsernamePlaceholder")' maxlength="250" v-model="newEditUserUsername" required>
|
||||
<div id="validationUsernameFeedback" class="invalid-feedback" v-if="!isUsernameExists">
|
||||
{{ $t("generalItems.errorUsernameAlreadyExistsFeedback") }}
|
||||
{{ $t("usersAddEditUserModalComponent.addEditUserModalErrorUsernameExists") }}
|
||||
</div>
|
||||
<!-- name fields -->
|
||||
<label for="userNameAddEdit"><b>* {{ $t("usersAddEditUserModalComponent.addEditUserModalNameLabel") }}</b></label>
|
||||
@@ -35,17 +35,17 @@
|
||||
<label for="userEmailAddEdit"><b>* {{ $t("usersAddEditUserModalComponent.addEditUserModalEmailLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isEmailValid || !isEmailExists }" type="text" name="userEmailAddEdit" :placeholder='$t("usersAddEditUserModalComponent.addEditUserModalEmailPlaceholder")' maxlength="45" v-model="newEditUserEmail" required>
|
||||
<div id="validationEmailFeedback" class="invalid-feedback" v-if="!isEmailValid">
|
||||
{{ $t("generalItems.errorEmailNotValidFeedback") }}
|
||||
{{ $t("usersAddEditUserModalComponent.addEditUserModalErrorEmailInvalid") }}
|
||||
</div>
|
||||
<div id="validationEmailFeedback" class="invalid-feedback" v-else-if="!isEmailExists">
|
||||
{{ $t("generalItems.errorEmailAlreadyExistsFeedback") }}
|
||||
{{ $t("usersAddEditUserModalComponent.addEditUserModalErrorEmailExists") }}
|
||||
</div>
|
||||
<!-- password fields -->
|
||||
<div v-if="action == 'add'">
|
||||
<label for="passUserAdd"><b>* {{ $t("usersAddEditUserModalComponent.addEditUserModalPasswordLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isPasswordValid }" type="password" id="validationPassword" aria-describedby="validationPasswordFeedback" name="passUserAdd" :placeholder='$t("usersAddEditUserModalComponent.addEditUserModalPasswordPlaceholder")' v-model="newUserPassword" required>
|
||||
<div id="validationPasswordFeedback" class="invalid-feedback" v-if="!isPasswordValid">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
{{ $t("usersAddEditUserModalComponent.addEditUserModalErrorPasswordInvalid") }}
|
||||
</div>
|
||||
</div>
|
||||
<!-- city fields -->
|
||||
@@ -203,7 +203,7 @@ export default {
|
||||
isUsernameExists.value = true;
|
||||
}
|
||||
} catch (error) {
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("usersAddEditUserModalComponent.addEditUserModalErrorFetchingUserByUsername")} - ${error}`);
|
||||
}
|
||||
} else {
|
||||
isUsernameExists.value = true;
|
||||
@@ -238,7 +238,7 @@ export default {
|
||||
isEmailExists.value = true;
|
||||
}
|
||||
} catch (error) {
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("usersAddEditUserModalComponent.addEditUserModalErrorFetchingUserByEmail")} - ${error}`);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -287,11 +287,11 @@ export default {
|
||||
emit("userPhotoDeleted", props.user.id);
|
||||
|
||||
// Set the success message and show the success alert.
|
||||
push.success(t("usersListComponent.userPhotoDeleteSuccessMessage"));
|
||||
push.success(t("usersAddEditUserModalComponent.addEditUserModalSuccessDeleteUserPhoto"));
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(
|
||||
`${t("usersListComponent.userPhotoDeleteErrorMessage")} - ${error}`,
|
||||
`${t("usersAddEditUserModalComponent.addEditUserModalErrorDeleteUserPhoto")} - ${error}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -327,7 +327,7 @@ export default {
|
||||
createdUser.photo_path = await users.uploadImage(newEditUserPhotoFile.value, createdUser.id);
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("usersAddEditUserModalComponent.addEditUserModalErrorUploadingUserPhoto")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -338,11 +338,11 @@ export default {
|
||||
emit("createdUser", createdUser);
|
||||
|
||||
// Set the success message and show the success alert.
|
||||
push.success(t("settingsUsersZone.successUserAdded"));
|
||||
push.success(t("usersAddEditUserModalComponent.addEditUserModalSuccessAddUser"));
|
||||
}
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("usersAddEditUserModalComponent.addEditUserModalErrorAddUser")} - ${error}`);
|
||||
} finally {
|
||||
// Set the loading variable to false.
|
||||
emit("isLoadingNewUser", false);
|
||||
@@ -382,7 +382,7 @@ export default {
|
||||
}
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("usersAddEditUserModalComponent.addEditUserModalErrorUploadingUserPhoto")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -401,11 +401,11 @@ export default {
|
||||
}
|
||||
|
||||
// Set the success message and show the success alert.
|
||||
push.success(t("usersListComponent.userEditSuccessMessage"));
|
||||
push.success(t("usersAddEditUserModalComponent.addEditUserModalSuccessEditUser"));
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(
|
||||
`${t("usersListComponent.userEditErrorMessage")} - ${error}`,
|
||||
`${t("usersAddEditUserModalComponent.addEditUserModalErrorEditUser")} - ${error}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,40 +4,40 @@
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" :id="`editUserPasswordModal${user.id}`">{{ $t("usersListComponent.modalChangeUserPasswordTitle") }}</h1>
|
||||
<h1 class="modal-title fs-5" :id="`editUserPasswordModal${user.id}`">{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordTitle") }}</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<form @submit.prevent="submitChangeUserPasswordForm">
|
||||
<div class="modal-body">
|
||||
<UsersPasswordRequirementsComponent />
|
||||
|
||||
<p>{{ $t("usersListComponent.modalChangeUserPasswordBodyLabel") }}<b>{{ user.username }}</b></p>
|
||||
<p>{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordBodyLabel") }}<b>{{ user.username }}</b></p>
|
||||
|
||||
<!-- password fields -->
|
||||
<label for="validationNewPassword"><b>* {{ $t("usersListComponent.modalChangeUserPasswordPasswordLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordValid || !isPasswordMatch }" type="password" id="validationNewPassword" aria-describedby="validationNewPasswordFeedback" :placeholder='$t("usersListComponent.modalChangeUserPasswordPasswordLabel")' v-model="newPassword" required>
|
||||
<label for="validationNewPassword"><b>* {{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordPasswordLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordValid || !isPasswordMatch }" type="password" id="validationNewPassword" aria-describedby="validationNewPasswordFeedback" :placeholder='$t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordPasswordLabel")' v-model="newPassword" required>
|
||||
<div id="validationNewPasswordFeedback" class="invalid-feedback" v-if="!isNewPasswordValid">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
</div>
|
||||
<div id="validationNewPasswordFeedback" class="invalid-feedback" v-if="!isPasswordMatch">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
</div>
|
||||
<!-- repeat password fields -->
|
||||
|
||||
<label class="mt-1" for="validationNewPasswordRepeat"><b>* {{ $t("usersListComponent.modalChangeUserPasswordPasswordConfirmationLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordRepeatValid || !isPasswordMatch }" type="password" id="validationNewPasswordRepeat" aria-describedby="validationNewPasswordRepeatFeedback" :placeholder='$t("usersListComponent.modalChangeUserPasswordPasswordConfirmationLabel")' v-model="newPasswordRepeat" required>
|
||||
<label class="mt-1" for="validationNewPasswordRepeat"><b>* {{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordPasswordConfirmationLabel") }}</b></label>
|
||||
<input class="form-control" :class="{ 'is-invalid': !isNewPasswordRepeatValid || !isPasswordMatch }" type="password" id="validationNewPasswordRepeat" aria-describedby="validationNewPasswordRepeatFeedback" :placeholder='$t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordPasswordConfirmationLabel")' v-model="newPasswordRepeat" required>
|
||||
<div id="validationNewPasswordRepeatFeedback" class="invalid-feedback" v-if="!isNewPasswordRepeatValid">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordFeedbackLabel") }}
|
||||
</div>
|
||||
<div id="validationNewPasswordRepeatFeedback" class="invalid-feedback" v-if="!isPasswordMatch">
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel") }}
|
||||
</div>
|
||||
|
||||
<p>* {{ $t("generalItems.requiredField") }}</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">{{ $t("generalItems.buttonClose") }}</button>
|
||||
<button type="submit" class="btn btn-success" :disabled="!isNewPasswordValid || !isNewPasswordRepeatValid || !isPasswordMatch" name="editUserPasswordAdmin" data-bs-dismiss="modal">{{ $t("usersListComponent.modalChangeUserPasswordTitle") }}</button>
|
||||
<button type="submit" class="btn btn-success" :disabled="!isNewPasswordValid || !isNewPasswordRepeatValid || !isPasswordMatch" name="editUserPasswordAdmin" data-bs-dismiss="modal">{{ $t("usersChangeUserPasswordModalComponent.modalChangeUserPasswordTitle") }}</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@@ -94,13 +94,13 @@ export default {
|
||||
await users.editUserPassword(props.user.id, data);
|
||||
// Set the success message and show the success alert.
|
||||
push.success(
|
||||
t("usersListComponent.userChangePasswordSuccessMessage"),
|
||||
t("usersChangeUserPasswordModalComponent.userChangePasswordSuccessMessage"),
|
||||
);
|
||||
}
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(
|
||||
`${t("usersListComponent.userChangePasswordErrorMessage")} - ${error}`,
|
||||
`${t("usersChangeUserPasswordModalComponent.userChangePasswordErrorMessage")} - ${error}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -151,12 +151,12 @@ export default {
|
||||
|
||||
// Show the success alert.
|
||||
push.success(
|
||||
t("settingsSecurityZone.successDeleteSession"),
|
||||
t("usersListComponent.userSessionDeleteSuccessMessage"),
|
||||
);
|
||||
} catch (error) {
|
||||
// If there is an error, show the error alert.
|
||||
push.error(
|
||||
`${t("settingsSecurityZone.errorDeleteSession")} - ${error}`,
|
||||
`${t("usersListComponent.userSessionDeleteErrorMessage")} - ${error}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
<div class="alert alert-info alert-dismissible d-flex align-items-center" role="alert">
|
||||
<!--<i class="fa-solid fa-circle-info me-1 allign-top"></i>-->
|
||||
<div>
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordPasswordRequirementsTitle") }}
|
||||
{{ $t("usersPasswordRequirementsComponent.passwordRequirementsTitle") }}
|
||||
<br>
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordCharacters") }}
|
||||
{{ $t("usersPasswordRequirementsComponent.passwordCharacters") }}
|
||||
<br>
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordCapitalLetters") }}
|
||||
{{ $t("usersPasswordRequirementsComponent.passwordCapitalLetters") }}
|
||||
<br>
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordNumbers") }}
|
||||
{{ $t("usersPasswordRequirementsComponent.passwordNumbers") }}
|
||||
<br>
|
||||
{{ $t("usersListComponent.modalChangeUserPasswordSpecialCharacters") }}
|
||||
{{ $t("usersPasswordRequirementsComponent.passwordSpecialCharacters") }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1,36 +1,3 @@
|
||||
{
|
||||
"addEditUserModalEditTitle": "Edit user",
|
||||
"addEditUserModalDeleteUserPhotoButton": "Delete photo",
|
||||
"addEditUserModalUserPhotoLabel": "User photo",
|
||||
"addEditUserModalUsernameLabel": "Username",
|
||||
"addEditUserModalUsernamePlaceholder": "Username (max 45 characters)",
|
||||
"addEditUserModalNameLabel": "Name",
|
||||
"addEditUserModalNamePlaceholder": "Name (max 45 characters)",
|
||||
"addEditUserModalEmailLabel": "Email",
|
||||
"addEditUserModalEmailPlaceholder": "Email (max 45 characters)",
|
||||
"addEditUserModalPasswordLabel": "Password",
|
||||
"addEditUserModalPasswordPlaceholder": "Password",
|
||||
"addEditUserModalTownLabel": "Town/city",
|
||||
"addEditUserModalTownPlaceholder": "Town/city (max 45 characters)",
|
||||
"addEditUserModalBirthdayLabel": "Birthday",
|
||||
"addEditUserModalHeightLabel": "Height",
|
||||
"addEditUserModalHeightPlaceholder": "Height",
|
||||
"addEditUserModalGenderLabel": "Gender",
|
||||
"addEditUserModalGenderOption1": "Male",
|
||||
"addEditUserModalGenderOption2": "Female",
|
||||
"addEditUserModalUnitsLabel": "Units",
|
||||
"addEditUserModalUnitsOption1": "Metric",
|
||||
"addEditUserModalUnitsOption2": "Imperial",
|
||||
"addEditUserModalUserPreferredLanguageLabel": "Preferred language",
|
||||
"addEditUserModalPreferredLanguageOption1": "English (US)",
|
||||
"addEditUserModalPreferredLanguageOption2": "Catalan",
|
||||
"addEditUserModalPreferredLanguageOption3": "Portuguese (PT)",
|
||||
"addEditUserModalPreferredLanguageOption4": "German (DE)",
|
||||
"addEditUserModalPreferredLanguageOption5": "French (FR)",
|
||||
"addEditUserModalUserTypeLabel": "Access type",
|
||||
"addEditUserModalUserTypeOption1": "Regular user",
|
||||
"addEditUserModalUserTypeOption2": "Administrator",
|
||||
"addEditUserModalIsActiveLabel": "Is active",
|
||||
"addEditUserModalIsActiveOption1": "Yes",
|
||||
"addEditUserModalIsActiveOption2": "No"
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1,36 +1,3 @@
|
||||
{
|
||||
"addEditUserModalEditTitle": "Edit user",
|
||||
"addEditUserModalDeleteUserPhotoButton": "Delete photo",
|
||||
"addEditUserModalUserPhotoLabel": "User photo",
|
||||
"addEditUserModalUsernameLabel": "Username",
|
||||
"addEditUserModalUsernamePlaceholder": "Username (max 45 characters)",
|
||||
"addEditUserModalNameLabel": "Name",
|
||||
"addEditUserModalNamePlaceholder": "Name (max 45 characters)",
|
||||
"addEditUserModalEmailLabel": "Email",
|
||||
"addEditUserModalEmailPlaceholder": "Email (max 45 characters)",
|
||||
"addEditUserModalPasswordLabel": "Password",
|
||||
"addEditUserModalPasswordPlaceholder": "Password",
|
||||
"addEditUserModalTownLabel": "Town/city",
|
||||
"addEditUserModalTownPlaceholder": "Town/city (max 45 characters)",
|
||||
"addEditUserModalBirthdayLabel": "Birthday",
|
||||
"addEditUserModalHeightLabel": "Height",
|
||||
"addEditUserModalHeightPlaceholder": "Height",
|
||||
"addEditUserModalGenderLabel": "Gender",
|
||||
"addEditUserModalGenderOption1": "Male",
|
||||
"addEditUserModalGenderOption2": "Female",
|
||||
"addEditUserModalUnitsLabel": "Units",
|
||||
"addEditUserModalUnitsOption1": "Metric",
|
||||
"addEditUserModalUnitsOption2": "Imperial",
|
||||
"addEditUserModalUserPreferredLanguageLabel": "Preferred language",
|
||||
"addEditUserModalPreferredLanguageOption1": "English (US)",
|
||||
"addEditUserModalPreferredLanguageOption2": "Catalan",
|
||||
"addEditUserModalPreferredLanguageOption3": "Portuguese (PT)",
|
||||
"addEditUserModalPreferredLanguageOption4": "German (DE)",
|
||||
"addEditUserModalPreferredLanguageOption5": "French (FR)",
|
||||
"addEditUserModalUserTypeLabel": "Access type",
|
||||
"addEditUserModalUserTypeOption1": "Regular user",
|
||||
"addEditUserModalUserTypeOption2": "Administrator",
|
||||
"addEditUserModalIsActiveLabel": "Is active",
|
||||
"addEditUserModalIsActiveOption1": "Yes",
|
||||
"addEditUserModalIsActiveOption2": "No"
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -31,6 +31,5 @@
|
||||
"userDeleteSuccessMessage": "Benutzer wurde erfolgreich gelöscht",
|
||||
"userDeleteErrorMessage": "Fehler beim Löschen des Benutzers",
|
||||
"userPhotoDeleteSuccessMessage": "Foto erfolgreich gelöscht",
|
||||
"userPhotoDeleteErrorMessage": "Fehler beim Löschen des Fotos",
|
||||
"userListUserSessionsTitle": "User sessions"
|
||||
"userPhotoDeleteErrorMessage": "Fehler beim Löschen des Fotos"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1,36 +1,3 @@
|
||||
{
|
||||
"addEditUserModalEditTitle": "Edit user",
|
||||
"addEditUserModalDeleteUserPhotoButton": "Delete photo",
|
||||
"addEditUserModalUserPhotoLabel": "User photo",
|
||||
"addEditUserModalUsernameLabel": "Username",
|
||||
"addEditUserModalUsernamePlaceholder": "Username (max 45 characters)",
|
||||
"addEditUserModalNameLabel": "Name",
|
||||
"addEditUserModalNamePlaceholder": "Name (max 45 characters)",
|
||||
"addEditUserModalEmailLabel": "Email",
|
||||
"addEditUserModalEmailPlaceholder": "Email (max 45 characters)",
|
||||
"addEditUserModalPasswordLabel": "Password",
|
||||
"addEditUserModalPasswordPlaceholder": "Password",
|
||||
"addEditUserModalTownLabel": "Town/city",
|
||||
"addEditUserModalTownPlaceholder": "Town/city (max 45 characters)",
|
||||
"addEditUserModalBirthdayLabel": "Birthday",
|
||||
"addEditUserModalHeightLabel": "Height",
|
||||
"addEditUserModalHeightPlaceholder": "Height",
|
||||
"addEditUserModalGenderLabel": "Gender",
|
||||
"addEditUserModalGenderOption1": "Male",
|
||||
"addEditUserModalGenderOption2": "Female",
|
||||
"addEditUserModalUnitsLabel": "Units",
|
||||
"addEditUserModalUnitsOption1": "Metric",
|
||||
"addEditUserModalUnitsOption2": "Imperial",
|
||||
"addEditUserModalUserPreferredLanguageLabel": "Preferred language",
|
||||
"addEditUserModalPreferredLanguageOption1": "English (US)",
|
||||
"addEditUserModalPreferredLanguageOption2": "Catalan",
|
||||
"addEditUserModalPreferredLanguageOption3": "Portuguese (PT)",
|
||||
"addEditUserModalPreferredLanguageOption4": "German (DE)",
|
||||
"addEditUserModalPreferredLanguageOption5": "French (FR)",
|
||||
"addEditUserModalUserTypeLabel": "Access type",
|
||||
"addEditUserModalUserTypeOption1": "Regular user",
|
||||
"addEditUserModalUserTypeOption2": "Administrator",
|
||||
"addEditUserModalIsActiveLabel": "Is active",
|
||||
"addEditUserModalIsActiveOption1": "Yes",
|
||||
"addEditUserModalIsActiveOption2": "No"
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -2,13 +2,13 @@ import { createI18n } from 'vue-i18n';
|
||||
|
||||
// Importing translations
|
||||
// Catalan translations
|
||||
// Navbar and footer components
|
||||
import caNavbarComponent from './ca/components/navbarComponent.json';
|
||||
// Footer components
|
||||
import caFooterComponent from './ca/components/footerComponent.json';
|
||||
// Activities component
|
||||
import caAddGearToActivityModalComponent from './ca/components/activities/modals/addGearToActivityModalComponent.json';
|
||||
import caEditActivityModalComponent from './ca/components/activities/modals/editActivityModalComponent.json';
|
||||
import caUserDistanceStatsComponent from './ca/components/activities/userDistanceStatsComponent.json';
|
||||
import caActivitySummaryComponent from './ca/components/activities/activitySummaryComponent.json';
|
||||
import caEditActivityModalComponent from './ca/components/activities/modals/editActivityModalComponent.json';
|
||||
// Followers component
|
||||
import caFollowersListComponent from './ca/components/followers/followersListComponent.json';
|
||||
// Gears component
|
||||
@@ -20,6 +20,9 @@ import caHealthWeightListComponent from './ca/components/health/healthWeightZone
|
||||
import caHealthDashboardZoneComponent from './ca/components/health/healthDashboardZoneComponent.json'
|
||||
import caHealthSideBarComponent from './ca/components/health/healthSideBarComponent.json';
|
||||
import caHealthWeightZoneComponent from './ca/components/health/healthWeightZoneComponent.json'
|
||||
// Navbar components
|
||||
import caNavbarComponent from './ca/components/navbar/navbarComponent.json';
|
||||
import caNavbarSearchComponent from './ca/components/navbar/navbarSearchComponent.json';
|
||||
// Settings components
|
||||
import caSettingsSideBarComponent from './ca/components/settings/settingsSideBarComponent.json';
|
||||
import caSettingsUsersZoneComponent from './ca/components/settings/settingsUsersZoneComponent.json';
|
||||
@@ -30,7 +33,9 @@ import caSettingsSecurityZoneComponent from './ca/components/settings/settingsSe
|
||||
import caSettingsIntegrationsZoneComponent from './ca/components/settings/settingsIntegrationsZoneComponent.json';
|
||||
import caGarminConnectLoginModalComponent from './ca/components/settings/settingsIntegrationsZone/garminConnectLoginModalComponent.json';
|
||||
import caUsersAddEditUserModalComponent from './ca/components/settings/settingsUsersZone/usersAddEditUserModalComponent.json';
|
||||
import caUsersChangeUserPasswordModalComponent from './ca/components/settings/settingsUsersZone/usersChangeUserPasswordModalComponent.json';
|
||||
import caUsersListComponent from './ca/components/settings/settingsUsersZone/usersListComponent.json';
|
||||
import caUsersPasswordRequirementsComponent from './ca/components/settings/settingsUsersZone/usersPasswordRequirementsComponent.json';
|
||||
import caUserSessionsListComponent from './ca/components/settings/settingsUserSessionsZone/userSessionsListComponent.json';
|
||||
// General components
|
||||
import caNoItemsFoundComponent from './ca/components/noItemsFoundComponent.json';
|
||||
@@ -49,13 +54,13 @@ import caUserView from './ca/userView.json';
|
||||
import caSettingsView from './ca/settingsView.json';
|
||||
|
||||
// German translations
|
||||
// Navbar and footer components
|
||||
import deNavbarComponent from './de/components/navbarComponent.json';
|
||||
// Footer components
|
||||
import deFooterComponent from './de/components/footerComponent.json';
|
||||
// Activities component
|
||||
import deAddGearToActivityModalComponent from './de/components/activities/modals/addGearToActivityModalComponent.json';
|
||||
import deEditActivityModalComponent from './de/components/activities/modals/editActivityModalComponent.json';
|
||||
import deUserDistanceStatsComponent from './de/components/activities/userDistanceStatsComponent.json';
|
||||
import deActivitySummaryComponent from './de/components/activities/activitySummaryComponent.json';
|
||||
import deEditActivityModalComponent from './de/components/activities/modals/editActivityModalComponent.json';
|
||||
// Followers component
|
||||
import deFollowersListComponent from './de/components/followers/followersListComponent.json';
|
||||
// Gears component
|
||||
@@ -67,6 +72,9 @@ import deHealthWeightListComponent from './de/components/health/healthWeightZone
|
||||
import deHealthDashboardZoneComponent from './de/components/health/healthDashboardZoneComponent.json'
|
||||
import deHealthSideBarComponent from './de/components/health/healthSideBarComponent.json';
|
||||
import deHealthWeightZoneComponent from './de/components/health/healthWeightZoneComponent.json'
|
||||
// Navbar components
|
||||
import deNavbarComponent from './de/components/navbar/navbarComponent.json';
|
||||
import deNavbarSearchComponent from './de/components/navbar/navbarSearchComponent.json';
|
||||
// Settings components
|
||||
import deSettingsSideBarComponent from './de/components/settings/settingsSideBarComponent.json';
|
||||
import deSettingsUsersZoneComponent from './de/components/settings/settingsUsersZoneComponent.json';
|
||||
@@ -77,7 +85,9 @@ import deSettingsSecurityZoneComponent from './de/components/settings/settingsSe
|
||||
import deSettingsIntegrationsZoneComponent from './de/components/settings/settingsIntegrationsZoneComponent.json';
|
||||
import deGarminConnectLoginModalComponent from './de/components/settings/settingsIntegrationsZone/garminConnectLoginModalComponent.json';
|
||||
import deUsersAddEditUserModalComponent from './de/components/settings/settingsUsersZone/usersAddEditUserModalComponent.json';
|
||||
import deUsersChangeUserPasswordModalComponent from './de/components/settings/settingsUsersZone/usersChangeUserPasswordModalComponent.json';
|
||||
import deUsersListComponent from './de/components/settings/settingsUsersZone/usersListComponent.json';
|
||||
import deUsersPasswordRequirementsComponent from './de/components/settings/settingsUsersZone/usersPasswordRequirementsComponent.json';
|
||||
import deUserSessionsListComponent from './de/components/settings/settingsUserSessionsZone/userSessionsListComponent.json';
|
||||
// General components
|
||||
import deNoItemsFoundComponent from './de/components/noItemsFoundComponent.json';
|
||||
@@ -97,13 +107,13 @@ import deSettingsView from './de/settingsView.json';
|
||||
|
||||
|
||||
// French translations
|
||||
// Navbar and footer components
|
||||
import frNavbarComponent from './fr/components/navbarComponent.json';
|
||||
// Footer components
|
||||
import frFooterComponent from './fr/components/footerComponent.json';
|
||||
// Activities component
|
||||
import frAddGearToActivityModalComponent from './fr/components/activities/modals/addGearToActivityModalComponent.json';
|
||||
import frEditActivityModalComponent from './fr/components/activities/modals/editActivityModalComponent.json';
|
||||
import frUserDistanceStatsComponent from './fr/components/activities/userDistanceStatsComponent.json';
|
||||
import frActivitySummaryComponent from './fr/components/activities/activitySummaryComponent.json';
|
||||
import frEditActivityModalComponent from './fr/components/activities/modals/editActivityModalComponent.json';
|
||||
// Followers component
|
||||
import frFollowersListComponent from './fr/components/followers/followersListComponent.json';
|
||||
// Gears component
|
||||
@@ -115,6 +125,9 @@ import frHealthWeightListComponent from './fr/components/health/healthWeightZone
|
||||
import frHealthDashboardZoneComponent from './fr/components/health/healthDashboardZoneComponent.json'
|
||||
import frHealthSideBarComponent from './fr/components/health/healthSideBarComponent.json';
|
||||
import frHealthWeightZoneComponent from './fr/components/health/healthWeightZoneComponent.json'
|
||||
// Navbar components
|
||||
import frNavbarComponent from './fr/components/navbar/navbarComponent.json';
|
||||
import frNavbarSearchComponent from './fr/components/navbar/navbarSearchComponent.json';
|
||||
// Settings components
|
||||
import frSettingsSideBarComponent from './fr/components/settings/settingsSideBarComponent.json';
|
||||
import frSettingsUsersZoneComponent from './fr/components/settings/settingsUsersZoneComponent.json';
|
||||
@@ -125,7 +138,9 @@ import frSettingsSecurityZoneComponent from './fr/components/settings/settingsSe
|
||||
import frSettingsIntegrationsZoneComponent from './fr/components/settings/settingsIntegrationsZoneComponent.json';
|
||||
import frGarminConnectLoginModalComponent from './fr/components/settings/settingsIntegrationsZone/garminConnectLoginModalComponent.json';
|
||||
import frUsersAddEditUserModalComponent from './fr/components/settings/settingsUsersZone/usersAddEditUserModalComponent.json';
|
||||
import frUsersChangeUserPasswordModalComponent from './fr/components/settings/settingsUsersZone/usersChangeUserPasswordModalComponent.json';
|
||||
import frUsersListComponent from './fr/components/settings/settingsUsersZone/usersListComponent.json';
|
||||
import frUsersPasswordRequirementsComponent from './fr/components/settings/settingsUsersZone/usersPasswordRequirementsComponent.json';
|
||||
import frUserSessionsListComponent from './fr/components/settings/settingsUserSessionsZone/userSessionsListComponent.json';
|
||||
// General components
|
||||
import frNoItemsFoundComponent from './fr/components/noItemsFoundComponent.json';
|
||||
@@ -145,13 +160,13 @@ import frSettingsView from './fr/settingsView.json';
|
||||
|
||||
|
||||
// Portuguese Portugal translations
|
||||
// Navbar and footer components
|
||||
import ptNavbarComponent from './pt/components/navbarComponent.json';
|
||||
// Footer components
|
||||
import ptFooterComponent from './pt/components/footerComponent.json';
|
||||
// Activities component
|
||||
import ptAddGearToActivityModalComponent from './pt/components/activities/modals/addGearToActivityModalComponent.json';
|
||||
import ptEditActivityModalComponent from './pt/components/activities/modals/editActivityModalComponent.json';
|
||||
import ptUserDistanceStatsComponent from './pt/components/activities/userDistanceStatsComponent.json';
|
||||
import ptActivitySummaryComponent from './pt/components/activities/activitySummaryComponent.json';
|
||||
import ptEditActivityModalComponent from './pt/components/activities/modals/editActivityModalComponent.json';
|
||||
// Followers component
|
||||
import ptFollowersListComponent from './pt/components/followers/followersListComponent.json';
|
||||
// Gears component
|
||||
@@ -163,6 +178,9 @@ import ptHealthWeightListComponent from './pt/components/health/healthWeightZone
|
||||
import ptHealthDashboardZoneComponent from './pt/components/health/healthDashboardZoneComponent.json'
|
||||
import ptHealthSideBarComponent from './pt/components/health/healthSideBarComponent.json';
|
||||
import ptHealthWeightZoneComponent from './pt/components/health/healthWeightZoneComponent.json'
|
||||
// Navbar components
|
||||
import ptNavbarComponent from './pt/components/navbar/navbarComponent.json';
|
||||
import ptNavbarSearchComponent from './pt/components/navbar/navbarSearchComponent.json';
|
||||
// Settings components
|
||||
import ptSettingsSideBarComponent from './pt/components/settings/settingsSideBarComponent.json';
|
||||
import ptSettingsUsersZoneComponent from './pt/components/settings/settingsUsersZoneComponent.json';
|
||||
@@ -173,7 +191,9 @@ import ptSettingsSecurityZoneComponent from './pt/components/settings/settingsSe
|
||||
import ptSettingsIntegrationsZoneComponent from './pt/components/settings/settingsIntegrationsZoneComponent.json';
|
||||
import ptGarminConnectLoginModalComponent from './pt/components/settings/settingsIntegrationsZone/garminConnectLoginModalComponent.json';
|
||||
import ptUsersAddEditUserModalComponent from './pt/components/settings/settingsUsersZone/usersAddEditUserModalComponent.json';
|
||||
import ptUsersChangeUserPasswordModalComponent from './pt/components/settings/settingsUsersZone/usersChangeUserPasswordModalComponent.json';
|
||||
import ptUsersListComponent from './pt/components/settings/settingsUsersZone/usersListComponent.json';
|
||||
import ptUsersPasswordRequirementsComponent from './pt/components/settings/settingsUsersZone/usersPasswordRequirementsComponent.json';
|
||||
import ptUserSessionsListComponent from './pt/components/settings/settingsUserSessionsZone/userSessionsListComponent.json';
|
||||
// General components
|
||||
import ptNoItemsFoundComponent from './pt/components/noItemsFoundComponent.json';
|
||||
@@ -192,13 +212,13 @@ import ptUserView from './pt/userView.json';
|
||||
import ptSettingsView from './pt/settingsView.json';
|
||||
|
||||
// US translations
|
||||
// Navbar and footer components
|
||||
import usNavbarComponent from './us/components/navbarComponent.json';
|
||||
// Footer components
|
||||
import usFooterComponent from './us/components/footerComponent.json';
|
||||
// Activities component
|
||||
import usAddGearToActivityModalComponent from './us/components/activities/modals/addGearToActivityModalComponent.json';
|
||||
import usEditActivityModalComponent from './us/components/activities/modals/editActivityModalComponent.json';
|
||||
import usUserDistanceStatsComponent from './us/components/activities/userDistanceStatsComponent.json';
|
||||
import usActivitySummaryComponent from './us/components/activities/activitySummaryComponent.json';
|
||||
import usEditActivityModalComponent from './us/components/activities/modals/editActivityModalComponent.json';
|
||||
// Followers component
|
||||
import usFollowersListComponent from './us/components/followers/followersListComponent.json';
|
||||
// Gears component
|
||||
@@ -210,6 +230,9 @@ import usHealthWeightListComponent from './us/components/health/healthWeightZone
|
||||
import usHealthDashboardZoneComponent from './us/components/health/healthDashboardZoneComponent.json'
|
||||
import usHealthSideBarComponent from './us/components/health/healthSideBarComponent.json';
|
||||
import usHealthWeightZoneComponent from './us/components/health/healthWeightZoneComponent.json'
|
||||
// Navbar components
|
||||
import usNavbarComponent from './us/components/navbar/navbarComponent.json';
|
||||
import usNavbarSearchComponent from './us/components/navbar/navbarSearchComponent.json';
|
||||
// Settings components
|
||||
import usSettingsSideBarComponent from './us/components/settings/settingsSideBarComponent.json';
|
||||
import usSettingsUsersZoneComponent from './us/components/settings/settingsUsersZoneComponent.json';
|
||||
@@ -220,7 +243,9 @@ import usSettingsSecurityZoneComponent from './us/components/settings/settingsSe
|
||||
import usSettingsIntegrationsZoneComponent from './us/components/settings/settingsIntegrationsZoneComponent.json';
|
||||
import usGarminConnectLoginModalComponent from './us/components/settings/settingsIntegrationsZone/garminConnectLoginModalComponent.json';
|
||||
import usUsersAddEditUserModalComponent from './us/components/settings/settingsUsersZone/usersAddEditUserModalComponent.json';
|
||||
import usUsersChangeUserPasswordModalComponent from './us/components/settings/settingsUsersZone/usersChangeUserPasswordModalComponent.json';
|
||||
import usUsersListComponent from './us/components/settings/settingsUsersZone/usersListComponent.json';
|
||||
import usUsersPasswordRequirementsComponent from './us/components/settings/settingsUsersZone/usersPasswordRequirementsComponent.json';
|
||||
import usUserSessionsListComponent from './us/components/settings/settingsUserSessionsZone/userSessionsListComponent.json';
|
||||
// General components
|
||||
import usNoItemsFoundComponent from './us/components/noItemsFoundComponent.json';
|
||||
@@ -242,13 +267,13 @@ import GearsListComponent from '@/components/Gears/GearsListComponent.vue';
|
||||
// Constructing the messages structure
|
||||
const messages = {
|
||||
ca: {
|
||||
// Navbar and footer components
|
||||
navbar: caNavbarComponent,
|
||||
// Footer components
|
||||
footer: caFooterComponent,
|
||||
// Activities component
|
||||
addGearToActivityModalComponent: caAddGearToActivityModalComponent,
|
||||
editActivityModalComponent: caEditActivityModalComponent,
|
||||
userDistanceStats: caUserDistanceStatsComponent,
|
||||
activitySummary: caActivitySummaryComponent,
|
||||
editActivityModalComponent: caEditActivityModalComponent,
|
||||
// Followers component
|
||||
followersListComponent: caFollowersListComponent,
|
||||
// Gears component
|
||||
@@ -260,6 +285,9 @@ const messages = {
|
||||
healthDashboardZoneComponent: caHealthDashboardZoneComponent,
|
||||
healthWeightZoneComponent: caHealthWeightZoneComponent,
|
||||
healthWeightListComponent: caHealthWeightListComponent,
|
||||
// Navbar components
|
||||
navbarComponent: caNavbarComponent,
|
||||
navbarSearchComponent: caNavbarSearchComponent,
|
||||
// Settings components
|
||||
settingsSideBar: caSettingsSideBarComponent,
|
||||
settingsUsersZone: caSettingsUsersZoneComponent,
|
||||
@@ -270,7 +298,9 @@ const messages = {
|
||||
settingsIntegrationsZone: caSettingsIntegrationsZoneComponent,
|
||||
garminConnectLoginModalComponent: caGarminConnectLoginModalComponent,
|
||||
usersAddEditUserModalComponent: caUsersAddEditUserModalComponent,
|
||||
usersChangeUserPasswordModalComponent: caUsersChangeUserPasswordModalComponent,
|
||||
usersListComponent: caUsersListComponent,
|
||||
usersPasswordRequirementsComponent: caUsersPasswordRequirementsComponent,
|
||||
userSessionsListComponent: caUserSessionsListComponent,
|
||||
// General components
|
||||
noItemsFoundComponent: caNoItemsFoundComponent,
|
||||
@@ -282,20 +312,20 @@ const messages = {
|
||||
gearsView: caGearsView,
|
||||
gearView: caGearView,
|
||||
stravaCallbackView: caStravaCallbackView,
|
||||
activity: caActivityView,
|
||||
activityView: caActivityView,
|
||||
healthView: caHealthView,
|
||||
notFound: caNotFoundView,
|
||||
settingsView: caSettingsView,
|
||||
userView: caUserView,
|
||||
},
|
||||
de: {
|
||||
// Navbar and footer components
|
||||
navbar: deNavbarComponent,
|
||||
// Footer components
|
||||
footer: deFooterComponent,
|
||||
// Activities component
|
||||
addGearToActivityModalComponent: deAddGearToActivityModalComponent,
|
||||
editActivityModalComponent: deEditActivityModalComponent,
|
||||
userDistanceStats: deUserDistanceStatsComponent,
|
||||
activitySummary: deActivitySummaryComponent,
|
||||
editActivityModalComponent: deEditActivityModalComponent,
|
||||
// Followers component
|
||||
followersListComponent: deFollowersListComponent,
|
||||
// Gears component
|
||||
@@ -307,6 +337,9 @@ const messages = {
|
||||
healthDashboardZoneComponent: deHealthDashboardZoneComponent,
|
||||
healthWeightZoneComponent: deHealthWeightZoneComponent,
|
||||
healthWeightListComponent: deHealthWeightListComponent,
|
||||
// Navbar components
|
||||
navbarComponent: deNavbarComponent,
|
||||
navbarSearchComponent: deNavbarSearchComponent,
|
||||
// Settings components
|
||||
settingsSideBar: deSettingsSideBarComponent,
|
||||
settingsUsersZone: deSettingsUsersZoneComponent,
|
||||
@@ -317,7 +350,9 @@ const messages = {
|
||||
settingsIntegrationsZone: deSettingsIntegrationsZoneComponent,
|
||||
garminConnectLoginModalComponent: deGarminConnectLoginModalComponent,
|
||||
usersAddEditUserModalComponent: deUsersAddEditUserModalComponent,
|
||||
usersChangeUserPasswordModalComponent: deUsersChangeUserPasswordModalComponent,
|
||||
usersListComponent: deUsersListComponent,
|
||||
usersPasswordRequirementsComponent: deUsersPasswordRequirementsComponent,
|
||||
userSessionsListComponent: deUserSessionsListComponent,
|
||||
// General components
|
||||
noItemsFoundComponent: deNoItemsFoundComponent,
|
||||
@@ -329,20 +364,20 @@ const messages = {
|
||||
gearsView: deGearsView,
|
||||
gearView: deGearView,
|
||||
stravaCallbackView: deStravaCallbackView,
|
||||
activity: deActivityView,
|
||||
activityView: deActivityView,
|
||||
healthView: deHealthView,
|
||||
notFound: deNotFoundView,
|
||||
settingsView: deSettingsView,
|
||||
userView: deUserView,
|
||||
},
|
||||
fr: {
|
||||
// Navbar and footer components
|
||||
navbar: frNavbarComponent,
|
||||
// Footer components
|
||||
footer: frFooterComponent,
|
||||
// Activities component
|
||||
addGearToActivityModalComponent: frAddGearToActivityModalComponent,
|
||||
editActivityModalComponent: frEditActivityModalComponent,
|
||||
userDistanceStats: frUserDistanceStatsComponent,
|
||||
activitySummary: frActivitySummaryComponent,
|
||||
editActivityModalComponent: frEditActivityModalComponent,
|
||||
// Followers component
|
||||
followersListComponent: frFollowersListComponent,
|
||||
// Gears component
|
||||
@@ -354,6 +389,9 @@ const messages = {
|
||||
healthDashboardZoneComponent: frHealthDashboardZoneComponent,
|
||||
healthWeightZoneComponent: frHealthWeightZoneComponent,
|
||||
healthWeightListComponent: frHealthWeightListComponent,
|
||||
// Navbar components
|
||||
navbarComponent: frNavbarComponent,
|
||||
navbarSearchComponent: frNavbarSearchComponent,
|
||||
// Settings components
|
||||
settingsSideBar: frSettingsSideBarComponent,
|
||||
settingsUsersZone: frSettingsUsersZoneComponent,
|
||||
@@ -364,7 +402,9 @@ const messages = {
|
||||
settingsIntegrationsZone: frSettingsIntegrationsZoneComponent,
|
||||
garminConnectLoginModalComponent: frGarminConnectLoginModalComponent,
|
||||
usersAddEditUserModalComponent: frUsersAddEditUserModalComponent,
|
||||
usersChangeUserPasswordModalComponent: frUsersChangeUserPasswordModalComponent,
|
||||
usersListComponent: frUsersListComponent,
|
||||
usersPasswordRequirementsComponent: frUsersPasswordRequirementsComponent,
|
||||
userSessionsListComponent: frUserSessionsListComponent,
|
||||
// General components
|
||||
noItemsFoundComponent: frNoItemsFoundComponent,
|
||||
@@ -376,20 +416,20 @@ const messages = {
|
||||
gearsView: frGearsView,
|
||||
gearView: frGearView,
|
||||
stravaCallbackView: frStravaCallbackView,
|
||||
activity: frActivityView,
|
||||
activityView: frActivityView,
|
||||
healthView: frHealthView,
|
||||
notFound: frNotFoundView,
|
||||
settingsView: frSettingsView,
|
||||
userView: frUserView,
|
||||
},
|
||||
pt: {
|
||||
// Navbar and footer components
|
||||
navbar: ptNavbarComponent,
|
||||
// Footer components
|
||||
footer: ptFooterComponent,
|
||||
// Activities component
|
||||
addGearToActivityModalComponent: ptAddGearToActivityModalComponent,
|
||||
editActivityModalComponent: ptEditActivityModalComponent,
|
||||
userDistanceStats: ptUserDistanceStatsComponent,
|
||||
activitySummary: ptActivitySummaryComponent,
|
||||
editActivityModalComponent: ptEditActivityModalComponent,
|
||||
// Followers component
|
||||
followersListComponent: ptFollowersListComponent,
|
||||
// Gears component
|
||||
@@ -401,6 +441,9 @@ const messages = {
|
||||
healthDashboardZoneComponent: ptHealthDashboardZoneComponent,
|
||||
healthWeightZoneComponent: ptHealthWeightZoneComponent,
|
||||
healthWeightListComponent: ptHealthWeightListComponent,
|
||||
// Navbar components
|
||||
navbarComponent: ptNavbarComponent,
|
||||
navbarSearchComponent: ptNavbarSearchComponent,
|
||||
// Settings components
|
||||
settingsSideBar: ptSettingsSideBarComponent,
|
||||
settingsUsersZone: ptSettingsUsersZoneComponent,
|
||||
@@ -411,7 +454,9 @@ const messages = {
|
||||
settingsIntegrationsZone: ptSettingsIntegrationsZoneComponent,
|
||||
garminConnectLoginModalComponent: ptGarminConnectLoginModalComponent,
|
||||
usersAddEditUserModalComponent: ptUsersAddEditUserModalComponent,
|
||||
usersChangeUserPasswordModalComponent: ptUsersChangeUserPasswordModalComponent,
|
||||
usersListComponent: ptUsersListComponent,
|
||||
usersPasswordRequirementsComponent: ptUsersPasswordRequirementsComponent,
|
||||
userSessionsListComponent: ptUserSessionsListComponent,
|
||||
// General components
|
||||
noItemsFoundComponent: ptNoItemsFoundComponent,
|
||||
@@ -423,20 +468,20 @@ const messages = {
|
||||
gearsView: ptGearsView,
|
||||
gearView: ptGearView,
|
||||
stravaCallbackView: ptStravaCallbackView,
|
||||
activity: ptActivityView,
|
||||
activityView: ptActivityView,
|
||||
healthView: ptHealthView,
|
||||
notFound: ptNotFoundView,
|
||||
settingsView: ptSettingsView,
|
||||
userView: ptUserView,
|
||||
},
|
||||
us: {
|
||||
// Navbar and footer components
|
||||
navbar: usNavbarComponent,
|
||||
// Footer components
|
||||
footer: usFooterComponent,
|
||||
// Activities component
|
||||
addGearToActivityModalComponent: usAddGearToActivityModalComponent,
|
||||
editActivityModalComponent: usEditActivityModalComponent,
|
||||
userDistanceStats: usUserDistanceStatsComponent,
|
||||
activitySummary: usActivitySummaryComponent,
|
||||
editActivityModalComponent: usEditActivityModalComponent,
|
||||
// Followers component
|
||||
followersListComponent: usFollowersListComponent,
|
||||
// Gears component
|
||||
@@ -448,6 +493,9 @@ const messages = {
|
||||
healthDashboardZoneComponent: usHealthDashboardZoneComponent,
|
||||
healthWeightZoneComponent: usHealthWeightZoneComponent,
|
||||
healthWeightListComponent: usHealthWeightListComponent,
|
||||
// Navbar components
|
||||
navbarComponent: usNavbarComponent,
|
||||
navbarSearchComponent: usNavbarSearchComponent,
|
||||
// Settings components
|
||||
settingsSideBar: usSettingsSideBarComponent,
|
||||
settingsUsersZone: usSettingsUsersZoneComponent,
|
||||
@@ -458,7 +506,9 @@ const messages = {
|
||||
settingsIntegrationsZone: usSettingsIntegrationsZoneComponent,
|
||||
garminConnectLoginModalComponent: usGarminConnectLoginModalComponent,
|
||||
usersAddEditUserModalComponent: usUsersAddEditUserModalComponent,
|
||||
usersChangeUserPasswordModalComponent: usUsersChangeUserPasswordModalComponent,
|
||||
usersListComponent: usUsersListComponent,
|
||||
usersPasswordRequirementsComponent: usUsersPasswordRequirementsComponent,
|
||||
userSessionsListComponent: usUserSessionsListComponent,
|
||||
// General components
|
||||
noItemsFoundComponent: usNoItemsFoundComponent,
|
||||
@@ -470,7 +520,7 @@ const messages = {
|
||||
gearsView: usGearsView,
|
||||
gearView: usGearView,
|
||||
stravaCallbackView: usStravaCallbackView,
|
||||
activity: usActivityView,
|
||||
activityView: usActivityView,
|
||||
healthView: usHealthView,
|
||||
notFound: usNotFoundView,
|
||||
settingsView: usSettingsView,
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1,36 +1,3 @@
|
||||
{
|
||||
"addEditUserModalEditTitle": "Edit user",
|
||||
"addEditUserModalDeleteUserPhotoButton": "Delete photo",
|
||||
"addEditUserModalUserPhotoLabel": "User photo",
|
||||
"addEditUserModalUsernameLabel": "Username",
|
||||
"addEditUserModalUsernamePlaceholder": "Username (max 45 characters)",
|
||||
"addEditUserModalNameLabel": "Name",
|
||||
"addEditUserModalNamePlaceholder": "Name (max 45 characters)",
|
||||
"addEditUserModalEmailLabel": "Email",
|
||||
"addEditUserModalEmailPlaceholder": "Email (max 45 characters)",
|
||||
"addEditUserModalPasswordLabel": "Password",
|
||||
"addEditUserModalPasswordPlaceholder": "Password",
|
||||
"addEditUserModalTownLabel": "Town/city",
|
||||
"addEditUserModalTownPlaceholder": "Town/city (max 45 characters)",
|
||||
"addEditUserModalBirthdayLabel": "Birthday",
|
||||
"addEditUserModalHeightLabel": "Height",
|
||||
"addEditUserModalHeightPlaceholder": "Height",
|
||||
"addEditUserModalGenderLabel": "Gender",
|
||||
"addEditUserModalGenderOption1": "Male",
|
||||
"addEditUserModalGenderOption2": "Female",
|
||||
"addEditUserModalUnitsLabel": "Units",
|
||||
"addEditUserModalUnitsOption1": "Metric",
|
||||
"addEditUserModalUnitsOption2": "Imperial",
|
||||
"addEditUserModalUserPreferredLanguageLabel": "Preferred language",
|
||||
"addEditUserModalPreferredLanguageOption1": "English (US)",
|
||||
"addEditUserModalPreferredLanguageOption2": "Catalan",
|
||||
"addEditUserModalPreferredLanguageOption3": "Portuguese (PT)",
|
||||
"addEditUserModalPreferredLanguageOption4": "German (DE)",
|
||||
"addEditUserModalPreferredLanguageOption5": "French (FR)",
|
||||
"addEditUserModalUserTypeLabel": "Access type",
|
||||
"addEditUserModalUserTypeOption1": "Regular user",
|
||||
"addEditUserModalUserTypeOption2": "Administrator",
|
||||
"addEditUserModalIsActiveLabel": "Is active",
|
||||
"addEditUserModalIsActiveOption1": "Yes",
|
||||
"addEditUserModalIsActiveOption2": "No"
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1,9 +1,6 @@
|
||||
{
|
||||
"labelGear": "Gear",
|
||||
"labelGearNotSet": "Not set",
|
||||
"modalLabelAddGear": "Add gear to activity",
|
||||
"modalLabelSelectGear": "Select gear",
|
||||
"modalButtonAddGear": "Add gear",
|
||||
"modalLabelDeleteGear": "Delete gear from activity",
|
||||
"modalLabelDeleteGearBody": "Are you sure you want to remove the gear from the activity?",
|
||||
"modalLabelDeleteGearButton": "Delete gear",
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"modalLabelAddGear": "Add gear to activity",
|
||||
"modalLabelSelectGear": "Select gear",
|
||||
"modalButtonAddGear": "Add gear",
|
||||
"errorEditingGear": "Error editing gear"
|
||||
}
|
||||
@@ -6,5 +6,5 @@
|
||||
"settings": "Settings",
|
||||
"login": "Login",
|
||||
"logout": "Logout",
|
||||
"warningZone": "Alpha software, some features might not work has expected"
|
||||
"errorLogout": "Error logging out"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"searchSelectLabel": "Search",
|
||||
"searchSelectOptionActivity": "Activity",
|
||||
"searchSelectOptionUser": "User",
|
||||
"searchSelectOptionGear": "Gear",
|
||||
"searchInputPlaceholder": "Search text",
|
||||
"errorFetchingUserWithUsernameContains": "Error fetching user with username contains logic",
|
||||
"errorFetchingActivityWithNameContains": "Error fetching activity with name contains logic",
|
||||
"errorFetchingGearWithNicknameContains": "Error fetching gear with nickname contains logic"
|
||||
}
|
||||
@@ -1,6 +1,13 @@
|
||||
{
|
||||
"subtitleChangePassword": "Change password",
|
||||
"changeUserPasswordBodyLabel": "Change password for user ",
|
||||
"changeUserPasswordPasswordLabel": "New password",
|
||||
"changeUserPasswordPasswordConfirmationLabel": "Confirm new password",
|
||||
"changeUserPasswordFeedbackLabel": "Password does not meet requirements",
|
||||
"changeUserPasswordPasswordsDoNotMatchFeedbackLabel": "Passwords do not match",
|
||||
"subtitleMySessions": "My sessions",
|
||||
"userChangePasswordSuccessMessage": "Password changed successfully",
|
||||
"userChangePasswordErrorMessage": "Error changing password",
|
||||
"successDeleteSession": "Session deleted successfully",
|
||||
"errorDeleteSession": "Error deleting session"
|
||||
}
|
||||
@@ -1,5 +1,27 @@
|
||||
{
|
||||
"buttonDeleteProfilePhoto": "Delete photo",
|
||||
"modalDeleteProfilePhotoBody": "Are you sure you want to delete your profile photo?",
|
||||
"buttonEditProfile": "Edit profile"
|
||||
"buttonEditProfile": "Edit profile",
|
||||
"usernameLabel": "Username",
|
||||
"emailLabel": "Email",
|
||||
"cityLabel": "City",
|
||||
"birthdayLabel": "Birthday",
|
||||
"genderLabel": "Gender",
|
||||
"genderOption1": "Male",
|
||||
"genderOption2": "Female",
|
||||
"unitsLabel": "Units",
|
||||
"unitsOption1": "Metric",
|
||||
"unitsOption2": "Imperial",
|
||||
"heightLabel": "Height",
|
||||
"preferredLanguageLabel": "Preferred language",
|
||||
"preferredLanguageOption1": "English (US)",
|
||||
"preferredLanguageOption2": "Catalan",
|
||||
"preferredLanguageOption3": "Portuguese (PT)",
|
||||
"preferredLanguageOption4": "German (DE)",
|
||||
"preferredLanguageOption5": "French (FR)",
|
||||
"accessTypeLabel": "Access type",
|
||||
"accessTypeOption1": "Regular user",
|
||||
"accessTypeOption2": "Administrator",
|
||||
"userPhotoDeleteSuccess": "Profile photo deleted successfully",
|
||||
"userPhotoDeleteError": "Error deleting profile photo"
|
||||
}
|
||||
@@ -1,17 +1,21 @@
|
||||
{
|
||||
"addEditUserModalAddTitle": "Add user",
|
||||
"addEditUserModalEditTitle": "Edit user",
|
||||
"addEditUserModalEditProfileTitle": "Edit profile",
|
||||
"addEditUserModalAddTitle": "Add user",
|
||||
"addEditUserModalDeleteUserPhotoButton": "Delete photo",
|
||||
"addEditUserModalUserPhotoLabel": "User photo",
|
||||
"addEditUserModalUsernameLabel": "Username",
|
||||
"addEditUserModalUsernamePlaceholder": "Username (max 45 characters)",
|
||||
"addEditUserModalErrorUsernameExists": "Username already exists",
|
||||
"addEditUserModalNameLabel": "Name",
|
||||
"addEditUserModalNamePlaceholder": "Name (max 45 characters)",
|
||||
"addEditUserModalEmailLabel": "Email",
|
||||
"addEditUserModalEmailPlaceholder": "Email (max 45 characters)",
|
||||
"addEditUserModalErrorEmailInvalid": "Email is not valid",
|
||||
"addEditUserModalErrorEmailExists": "Email already exists",
|
||||
"addEditUserModalPasswordLabel": "Password",
|
||||
"addEditUserModalPasswordPlaceholder": "Password",
|
||||
"addEditUserModalErrorPasswordInvalid": "Password does not meet requirements",
|
||||
"addEditUserModalCityLabel": "City",
|
||||
"addEditUserModalCityPlaceholder": "City (max 45 characters)",
|
||||
"addEditUserModalBirthdayLabel": "Birthday",
|
||||
@@ -36,5 +40,14 @@
|
||||
"addEditUserModalUserTypeOption2": "Administrator",
|
||||
"addEditUserModalIsActiveLabel": "Is active",
|
||||
"addEditUserModalIsActiveOption1": "Yes",
|
||||
"addEditUserModalIsActiveOption2": "No"
|
||||
"addEditUserModalIsActiveOption2": "No",
|
||||
"addEditUserModalErrorFetchingUserByUsername": "Error fetching user by username",
|
||||
"addEditUserModalErrorFetchingUserByEmail": "Error fetching user by email",
|
||||
"addEditUserModalSuccessDeleteUserPhoto": "User photo deleted successfully",
|
||||
"addEditUserModalErrorDeleteUserPhoto": "Error deleting user photo",
|
||||
"addEditUserModalErrorUploadingUserPhoto": "Error uploading user photo",
|
||||
"addEditUserModalSuccessAddUser": "User added successfully",
|
||||
"addEditUserModalErrorAddUser": "Error adding user",
|
||||
"addEditUserModalSuccessEditUser": "User edited successfully",
|
||||
"addEditUserModalErrorEditUser": "Error editing user"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"modalChangeUserPasswordTitle": "Change user password",
|
||||
"modalChangeUserPasswordBodyLabel": "Change password for user ",
|
||||
"modalChangeUserPasswordPasswordLabel": "New password",
|
||||
"modalChangeUserPasswordPasswordConfirmationLabel": "Confirm new password",
|
||||
"modalChangeUserPasswordFeedbackLabel": "Password does not meet requirements",
|
||||
"modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel": "Passwords do not match",
|
||||
"userChangePasswordSuccessMessage": "Password changed successfully",
|
||||
"userChangePasswordErrorMessage": "Error changing password"
|
||||
}
|
||||
@@ -6,26 +6,10 @@
|
||||
"userListUserIsAdminBadge": "Admin",
|
||||
"userListUserIsActiveBadge": "Active",
|
||||
"userListUserIsInactiveBadge": "Inactive",
|
||||
"modalChangeUserPasswordTitle": "Change user password",
|
||||
"modalChangeUserPasswordPasswordRequirementsTitle": "Password requirements includes:",
|
||||
"modalChangeUserPasswordCharacters": "- 8 characters;",
|
||||
"modalChangeUserPasswordCapitalLetters": "- 1 capital letter;",
|
||||
"modalChangeUserPasswordNumbers": "- 1 number;",
|
||||
"modalChangeUserPasswordSpecialCharacters": "- 1 special character;",
|
||||
"modalChangeUserPasswordBodyLabel": "Change password for user ",
|
||||
"modalChangeUserPasswordPasswordLabel": "New password",
|
||||
"modalChangeUserPasswordPasswordConfirmationLabel": "Confirm new password",
|
||||
"modalChangeUserPasswordFeedbackLabel": "Password does not meet requirements",
|
||||
"modalChangeUserPasswordPasswordsDoNotMatchFeedbackLabel": "Passwords do not match",
|
||||
"userChangePasswordSuccessMessage": "Password changed successfully",
|
||||
"userChangePasswordErrorMessage": "Error changing password",
|
||||
"userEditSuccessMessage": "User edited successfully",
|
||||
"userEditErrorMessage": "Error editing user",
|
||||
"modalDeleteUserTitle": "Delete user",
|
||||
"modalDeleteUserBody": "Are you sure you want to delete user ",
|
||||
"userDeleteSuccessMessage": "User deleted successfully",
|
||||
"userDeleteErrorMessage": "Error deleting user",
|
||||
"userPhotoDeleteSuccessMessage": "Photo deleted successfully",
|
||||
"userPhotoDeleteErrorMessage": "Error deleting photo",
|
||||
"userListUserSessionsTitle": "User sessions"
|
||||
"userListUserSessionsTitle": "User sessions",
|
||||
"userSessionDeleteSuccessMessage": "Session deleted successfully",
|
||||
"userSessionDeleteErrorMessage": "Error deleting session"
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"passwordRequirementsTitle": "Password requirements includes:",
|
||||
"passwordCharacters": "- 8 characters;",
|
||||
"passwordCapitalLetters": "- 1 capital letter;",
|
||||
"passwordNumbers": "- 1 number;",
|
||||
"passwordSpecialCharacters": "- 1 special character;"
|
||||
}
|
||||
@@ -4,5 +4,7 @@
|
||||
"labelNumberOfUsers1": "There is a total of ",
|
||||
"labelNumberOfUsers2": " user(s) (",
|
||||
"labelNumberOfUsers3": " loaded):",
|
||||
"successUserAdded": "User added successfully"
|
||||
"successUserAdded": "User added successfully",
|
||||
"successUserDeleted": "User deleted successfully",
|
||||
"errorFetchingUsers": "Error fetching users"
|
||||
}
|
||||
@@ -16,5 +16,7 @@
|
||||
"labelDate": "Date",
|
||||
"title": "Gear activities",
|
||||
"subtitle": "(last 10 activities)",
|
||||
"successGearEdited": "Gear edited successfully"
|
||||
"successGearEdited": "Gear edited successfully",
|
||||
"errorGearDelete": "Error deleting gear",
|
||||
"errorFetchingGears": "Error fetching gears"
|
||||
}
|
||||
@@ -8,5 +8,6 @@
|
||||
"displayUserNumberOfGears2": " gear(s) (",
|
||||
"displayUserNumberOfGears3": " loaded):",
|
||||
"successGearDeleted": "Gear deleted successfully",
|
||||
"errorGearNotFound": "Gear not found"
|
||||
"errorGearNotFound": "Gear not found",
|
||||
"errorFetchingGears": "Error fetching gears"
|
||||
}
|
||||
@@ -1,3 +1,5 @@
|
||||
{
|
||||
"title": "Health"
|
||||
"title": "Health",
|
||||
"errorFetchingHealthData": "Error fetching health data",
|
||||
"errorFetchingHealthTargets": "Error fetching health targets"
|
||||
}
|
||||
@@ -8,5 +8,7 @@
|
||||
"errorActivityAdded": "Error adding activity",
|
||||
"errorActivityNotFound": "Activity not found",
|
||||
"processingActivity": "Processing activity",
|
||||
"successActivityDeleted": "Activity deleted successfully"
|
||||
"successActivityDeleted": "Activity deleted successfully",
|
||||
"errorFetchingUserStats": "Error fetching user stats",
|
||||
"errorFetchingUserActivities": "Error fetching user activities"
|
||||
}
|
||||
@@ -25,5 +25,8 @@
|
||||
"activitiesPaginationWeek51": "One year ago",
|
||||
"successFollowingDeleted": "Following deleted",
|
||||
"successFollowerDeleted": "Follower deleted",
|
||||
"successFollowerAccepted": "Follower accepted"
|
||||
"successFollowerAccepted": "Follower accepted",
|
||||
"errorFetchingUserStats": "Error fetching user stats",
|
||||
"errorFetchingUserFollowers": "Error fetching user followers",
|
||||
"errorFetchingUserActivities": "Error fetching user activities"
|
||||
}
|
||||
@@ -21,7 +21,7 @@
|
||||
<div class="d-flex justify-content-between align-items-center" v-else-if="activity">
|
||||
<p class="pt-2">
|
||||
<span class="fw-lighter">
|
||||
{{ $t("activity.labelGear") }}
|
||||
{{ $t("activityView.labelGear") }}
|
||||
</span>
|
||||
<br>
|
||||
<span v-if="activity.activity_type === 1 || activity.activity_type === 2 || activity.activity_type === 3">
|
||||
@@ -34,7 +34,7 @@
|
||||
<font-awesome-icon :icon="['fas', 'fa-person-swimming']" />
|
||||
</span>
|
||||
<span class="ms-2" v-if="activity.gear_id && gear">{{ gear.nickname }}</span>
|
||||
<span class="ms-2" v-else>{{ $t("activity.labelGearNotSet") }}</span>
|
||||
<span class="ms-2" v-else>{{ $t("activityView.labelGearNotSet") }}</span>
|
||||
</p>
|
||||
<div class="justify-content-end">
|
||||
<!-- add gear button -->
|
||||
@@ -56,7 +56,7 @@
|
||||
</a>
|
||||
|
||||
<!-- Modal delete gear -->
|
||||
<ModalComponent modalId="deleteGearActivityModal" :title="t('activity.modalLabelDeleteGear')" :body="`${t('activity.modalLabelDeleteGearBody')}`" actionButtonType="danger" :actionButtonText="t('activity.modalLabelDeleteGearButton')" @submitAction="submitDeleteGearFromActivity"/>
|
||||
<ModalComponent modalId="deleteGearActivityModal" :title="t('activityView.modalLabelDeleteGear')" :body="`${t('activityView.modalLabelDeleteGearBody')}`" actionButtonType="danger" :actionButtonText="t('activityView.modalLabelDeleteGearButton')" @submitAction="submitDeleteGearFromActivity"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
<hr class="mb-2 mt-2">
|
||||
<div class="row">
|
||||
<div class="col-md-2">
|
||||
<p>{{ $t("activity.labelGraph") }}</p>
|
||||
<p>{{ $t("activityView.labelGraph") }}</p>
|
||||
<ul class="nav nav-pills flex-column mb-auto" id="sidebarLineGraph">
|
||||
<li class="nav-item" v-for="item in graphItems" :key="item.type">
|
||||
<a href="javascript:void(0);" class="nav-link text-secondary"
|
||||
@@ -74,7 +74,7 @@
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<p class="mt-2">{{ $t("activity.labelDownsampling") }}</p>
|
||||
<p class="mt-2">{{ $t("activityView.labelDownsampling") }}</p>
|
||||
</div>
|
||||
<div class="col">
|
||||
<LoadingComponent v-if="isLoading"/>
|
||||
@@ -156,7 +156,7 @@ export default {
|
||||
await activities.editActivity(auxActivity);
|
||||
|
||||
// Show the success message
|
||||
push.success(t("activity.successMessageGearDeleted"));
|
||||
push.success(t("activityView.successMessageGearDeleted"));
|
||||
|
||||
// Update the activity gear
|
||||
activity.value.gear_id = null;
|
||||
@@ -171,7 +171,7 @@ export default {
|
||||
activity.value.gear_id = gearId;
|
||||
|
||||
// Show the success message
|
||||
push.success(t("activity.successMessageGearAdded"));
|
||||
push.success(t("activityView.successMessageGearAdded"));
|
||||
}
|
||||
|
||||
function updateActivityFieldsOnEdit(data) {
|
||||
|
||||
@@ -152,7 +152,7 @@ export default {
|
||||
gear.value = await gears.deleteGear(route.params.id);
|
||||
router.push({ path: "/gears", query: { gearDeleted: "true" } });
|
||||
} catch (error) {
|
||||
push.error(`${t("generalItems.errorEditingInfo")} - ${error}`);
|
||||
push.error(`${t("gearView.errorGearDelete")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -188,7 +188,7 @@ export default {
|
||||
});
|
||||
}
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorEditingInfo")} - ${error}`);
|
||||
push.error(`${t("gearView.errorFetchingGears")} - ${error}`);
|
||||
}
|
||||
|
||||
isLoading.value = false;
|
||||
|
||||
@@ -136,7 +136,7 @@ export default {
|
||||
isGearsUpdatingLoading.value = false;
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("gearsView.errorFetchingGears")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -152,7 +152,7 @@ export default {
|
||||
totalPages.value = Math.ceil(userGearsNumber.value / numRecords);
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("gearsView.errorFetchingGears")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ export default {
|
||||
isHealthDataUpdatingLoading.value = false;
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("healthView.errorFetchingHealthData")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -99,7 +99,7 @@ export default {
|
||||
totalPages.value = Math.ceil(userHealthDataNumber.value / numRecords);
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("healthView.errorFetchingHealthData")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,7 +109,7 @@ export default {
|
||||
userHealthTargets.value = await health_targets.getUserHealthTargets();
|
||||
} catch (error) {
|
||||
// If there is an error, set the error message and show the error alert.
|
||||
push.error(`${t("generalItems.errorFetchingInfo")} - ${error}`);
|
||||
push.error(`${t("healthView.errorFetchingHealthTargets")} - ${error}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -160,7 +160,7 @@ export default {
|
||||
thisMonthDistances.value = await activities.getUserThisMonthStats(authStore.user.id);
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('homeView.errorFetchingUserStats')} - ${error}`)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ export default {
|
||||
}
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('homeView.errorFetchingUserActivities')} - ${error}`)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -267,7 +267,7 @@ export default {
|
||||
}
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('homeView.errorFetchingUserActivities')} - ${error}`)
|
||||
}
|
||||
|
||||
isLoading.value = false;
|
||||
|
||||
@@ -98,29 +98,7 @@
|
||||
</a>
|
||||
|
||||
<!-- Modal follow user -->
|
||||
<div class="modal fade" id="followUserModal" tabindex="-1" aria-labelledby="followUserModal" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" id="followUserModal">
|
||||
{{ $t("userView.modalFollowUserTitle") }}
|
||||
</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
{{ $t("userView.modalFollowUserBody") }}<b>{{ userProfile.name }}</b>?
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">
|
||||
{{ $t("generalItems.buttonClose") }}
|
||||
</button>
|
||||
<a type="button" class="btn btn-success" data-bs-dismiss="modal" @click="submitFollowUser">
|
||||
{{ $t("userView.modalFollowUserTitle") }}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ModalComponent modalId="followUserModal" :title="t('userView.modalFollowUserTitle')" :body="`${t('userView.modalFollowUserBody')}<b>${userProfile.name}</b>?`" :actionButtonType="`success`" :actionButtonText="t('userView.modalFollowUserTitle')" @submitAction="submitFollowUser"/>
|
||||
</li>
|
||||
<li class="nav-item" role="presentation" v-if="userProfile.id != authStore.user.id && userFollowState != null && !userFollowState.is_accepted">
|
||||
<!-- Cancel follow request button -->
|
||||
@@ -131,29 +109,7 @@
|
||||
</a>
|
||||
|
||||
<!-- Modal cancel follow request -->
|
||||
<div class="modal fade" id="cancelFollowUserModal" tabindex="-1" aria-labelledby="cancelFollowUserModal" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" id="cancelFollowUserModal">
|
||||
{{ $t("userView.modalCancelFollowRequestTitle") }}
|
||||
</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
{{ $t("userView.modalCancelFollowRequestBody") }}<b>{{ userProfile.name }}</b>?
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">
|
||||
{{ $t("generalItems.buttonClose") }}
|
||||
</button>
|
||||
<a type="button" class="btn btn-danger" data-bs-dismiss="modal" @click="submitCancelFollowUser">
|
||||
{{ $t("userView.modalCancelFollowRequestTitle") }}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ModalComponent modalId="cancelFollowUserModal" :title="t('userView.modalCancelFollowRequestTitle')" :body="`${t('userView.modalCancelFollowRequestBody')}<b>${userProfile.name}</b>?`" :actionButtonType="`danger`" :actionButtonText="t('userView.modalCancelFollowRequestTitle')" @submitAction="submitCancelFollowUser"/>
|
||||
</li>
|
||||
<li class="nav-item" role="presentation" v-if="userProfile.id != authStore.user.id && userFollowState != null && userFollowState.is_accepted">
|
||||
<!-- Unfollow user button -->
|
||||
@@ -164,29 +120,7 @@
|
||||
</a>
|
||||
|
||||
<!-- Modal unfollow user -->
|
||||
<div class="modal fade" id="unfollowUserModal" tabindex="-1" aria-labelledby="unfollowUserModal" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h1 class="modal-title fs-5" id="unfollowUserModal">
|
||||
{{ $t("userView.modalUnfollowUserTitle") }}
|
||||
</h1>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
{{ $t("userView.modalUnfollowUserBody") }}<b>{{ userProfile.name }}</b>?
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">
|
||||
{{ $t("generalItems.buttonClose") }}
|
||||
</button>
|
||||
<a type="button" class="btn btn-danger" data-bs-dismiss="modal" @click="submitUnfollowUser">
|
||||
{{ $t("userView.modalUnfollowUserTitle") }}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ModalComponent modalId="unfollowUserModal" :title="t('userView.modalUnfollowUserTitle')" :body="`${t('userView.modalUnfollowUserBody')}<b>${userProfile.name}</b>?`" :actionButtonType="`danger`" :actionButtonText="t('userView.modalUnfollowUserTitle')" @submitAction="submitUnfollowUser"/>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -285,6 +219,7 @@ import ActivityMapComponent from '@/components/Activities/ActivityMapComponent.v
|
||||
import FollowersListComponent from '@/components/Followers/FollowersListComponent.vue';
|
||||
import BackButtonComponent from '@/components/GeneralComponents/BackButtonComponent.vue';
|
||||
import UserAvatarComponent from '@/components/Users/UserAvatarComponent.vue';
|
||||
import ModalComponent from "@/components/Modals/ModalComponent.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
@@ -296,6 +231,7 @@ export default {
|
||||
FollowersListComponent,
|
||||
BackButtonComponent,
|
||||
UserAvatarComponent,
|
||||
ModalComponent,
|
||||
},
|
||||
setup () {
|
||||
const { t } = useI18n();
|
||||
@@ -328,7 +264,7 @@ export default {
|
||||
thisMonthDistances.value = await activities.getUserThisMonthStats(authStore.user.id);
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('userView.errorFetchingUserStats')} - ${error}`)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -350,7 +286,7 @@ export default {
|
||||
}
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('userView.errorFetchingUserFollowers')} - ${error}`)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -378,7 +314,7 @@ export default {
|
||||
userFollowState.value = await followers.getUserFollowState(authStore.user.id, route.params.id);
|
||||
}
|
||||
} catch (error) {
|
||||
push.error(`${t('generalItems.errorFetchingInfo')} - ${error}`)
|
||||
push.error(`${t('userView.errorFetchingUserActivities')} - ${error}`)
|
||||
}
|
||||
isLoading.value = false;
|
||||
isActivitiesLoading.value = false;
|
||||
@@ -413,7 +349,7 @@ export default {
|
||||
userWeekActivities.value = await activities.getUserWeekActivities(userProfile.value.id, week.value);
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('generalItems.errorEditingInfo')} - ${error}`)
|
||||
push.error(`${t('userView.errorFetchingUserActivities')} - ${error}`)
|
||||
} finally {
|
||||
isActivitiesLoading.value = false;
|
||||
}
|
||||
@@ -517,7 +453,7 @@ export default {
|
||||
push.success(t('userView.successFollowRequestCancelled'))
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('user.errorUnableToSendFollow')} - ${error}`)
|
||||
push.error(`${t('userView.errorUnableToSendFollow')} - ${error}`)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -533,7 +469,7 @@ export default {
|
||||
push.success(t('userView.successUserUnfollowed'))
|
||||
} catch (error) {
|
||||
// Set the error message
|
||||
push.error(`${t('user.errorUnableToUnfollow')} - ${error}`)
|
||||
push.error(`${t('userView.errorUnableToUnfollow')} - ${error}`)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user