-
+
+
-
\ No newline at end of file
+
+
diff --git a/Frontend/composables/useUserApi.ts b/Frontend/composables/useUserApi.ts
index fe93ad67..73cbcf4c 100644
--- a/Frontend/composables/useUserApi.ts
+++ b/Frontend/composables/useUserApi.ts
@@ -1,11 +1,11 @@
-import {makeRequest} from './useApi'
-import type {UserCreateData, UserRegistrationData} from "~/shared/types/userInterfaces";
+import { makeRequest } from './useApi'
+import type { UserCreateData, UserRegistrationData } from "~/shared/types/userInterfaces";
export const useUserApi = () => {
const getUserRegistrationStatus = async (email: string) => {
- const data = await $fetch(`/api/users/check-registration?email=${email}`);
- return data as UserRegistrationData;
+ const data = await $fetch(`/api/users/check-registration?email=${email}`);
+ return data as UserRegistrationData;
}
const createUser = async (data: UserCreateData) => {
return await makeRequest('users', 'POST', data)
@@ -40,13 +40,17 @@ export const useUserApi = () => {
const getRecommendedSupervisors = async (data: string) => {
return await makeRequest(`match/${data}`, 'GET');
}
-
+
const createStudentProfile = async (data: string) => {
return await makeRequest('students', 'POST', {
thesis_description: data
})
}
+ const deleteUser = async (id: string) => {
+ return await makeRequest(`users/${id}`, 'DELETE')
+ }
+
return {
getUserRegistrationStatus,
createUser,
@@ -56,7 +60,8 @@ export const useUserApi = () => {
getUserById,
addUserTag,
getRecommendedSupervisors,
- createStudentProfile
+ createStudentProfile,
+ deleteUser
}
}
\ No newline at end of file
diff --git a/Frontend/i18n/locales/de-DE.json b/Frontend/i18n/locales/de-DE.json
index 79b944ab..40218514 100644
--- a/Frontend/i18n/locales/de-DE.json
+++ b/Frontend/i18n/locales/de-DE.json
@@ -129,7 +129,7 @@
"supervisor": {
"manageStudents": "Studenten Verwalten",
"noRequests": "Es gibt keine offenen Anfragen...",
- "slotsFilled": "Belegte Slots"
+ "slotsFilled": "Freie Slots"
}
},
"dataProtection": {
@@ -152,7 +152,8 @@
"dataDeletionSubtitle": "🗑 Datenlöschung",
"deleteMyData": "Meine Daten löschen",
"generalInfoText": "Bei SuperWise nehmen wir Ihre Privatsphäre und den Schutz Ihrer persönlichen Daten sehr ernst. Diese Richtlinie beschreibt, wie wir Ihre Daten erfassen, verwenden und verwalten – für maximale Transparenz und Ihr beruhigtes Gewissen.",
- "generalInfoTitle": "🛡️ SuperWise Datenschutzrichtlinie"
+ "generalInfoTitle": "🛡️ SuperWise Datenschutzrichtlinie",
+ "dataDeleted": "Daten erfolgreich gelöscht"
},
"student&supervisor": {
"changesAndOverwritesText": "Wenn Sie persönliche Daten wie Ihren Namen, Ihr Profilbild, die Themenbeschreibung oder die Biografie aktualisieren, wird die vorherige Version dauerhaft überschrieben. Wir speichern keine früheren Versionen oder Backups Ihrer persönlichen Daten.",
@@ -177,6 +178,7 @@
"done": "Fertig",
"download": "Herunterladen",
"edit": "Bearbeiten",
+ "error": "Fehler",
"english": "🇬🇧 English",
"french": "🇫🇷 Français",
"german": "🇩🇪 Deutsch",
@@ -196,6 +198,7 @@
"showLess": "Weniger anzeigen",
"spanish": "🇪🇸 Español",
"student": "Studierende",
+ "success": "Erfolgreich ausgeführt",
"supervise": "Betreuen",
"supervisionRequest": "Betreuungsanfrage",
"supervisor": "Betreuende",
@@ -226,6 +229,9 @@
"sentRequest": "Betreuungsanfrage wurde gesendet",
"supervisionRequest": "{name} will von dir betreut werden!",
"supervisorDismissed": "Betreuer wurde abgelehnt",
+ "swipeRightHeadline": "{firstName} {lastName} anfragen",
+ "swipeLeftText": "Anfragen",
+ "swipeRightText": "Entfernen",
"swipeLeft": {
"description": "Wenn Sie {firstName} {lastName} entfernen, wird er nie wieder vorgeschlagen, Sie können jedoch weiterhin nach ihm suchen. Sind Sie sicher, dass Sie fortfahren möchten?",
"headline": "Betreuer entfernen",
@@ -241,7 +247,7 @@
"confirm": "Bestätigen",
"dontShowAgain": "Nicht mehr anzeigen",
"sendSupervisionRequestHeadline": "Betreuungsanfrage senden",
- "supervisionInfo": "Wenn du eine Anfrage zur Betreuung einer Abschlussarbeit sendest, wird diese an die ausgewählten Betreuenden weitergeleitet. Sie können dann entscheiden, ob sie die Anfrage annehmen oder ablehnen möchten. Wenn sie die Anfrage annehmen, wird eine Bestätigung erstellt, die du herunterladen kannst.",
+ "supervisionInfo": "Wenn du eine Anfrage an {firstName} {lastName} sendest, wird er/sie benachrichtigt und kann die Anfrage annehmen oder ablehnen. Wenn er/sie die Anfrage annimmt, erhältst Du eine automatisch erstellte Bestätigung, die du herunterladen kannst. Wenn er/sie ablehnt, solltest du einen weiteren Betreuer anfragen.",
"withdrawSupervisionConfirm": "Anfrage zurückziehen",
"withdrawSupervisionDescription": "Möchten Sie die Betreuungsanfrage von {name} zurückziehen? Nach dem Zurückziehen kann der Betreuer diese Anfrage nicht mehr sehen.",
"withdrawSupervisionHeadline": "Betreuungsanfrage zurückziehen"
diff --git a/Frontend/i18n/locales/en-GB.json b/Frontend/i18n/locales/en-GB.json
index f20f67e1..2d2a9031 100644
--- a/Frontend/i18n/locales/en-GB.json
+++ b/Frontend/i18n/locales/en-GB.json
@@ -129,7 +129,7 @@
"supervisor": {
"manageStudents": "Manage Students",
"noRequests": "There are no open requests...",
- "slotsFilled": "Slots filled"
+ "slotsFilled": "Free slots"
}
},
"dataProtection": {
@@ -152,7 +152,8 @@
"dataDeletionSubtitle": "🗑 Data Deletion",
"deleteMyData": "Delete my data",
"generalInfoText": "At SuperWise, we take your privacy and the protection of your personal data seriously. This policy outlines how we collect, use, and manage your information to ensure transparency and your peace of mind.",
- "generalInfoTitle": "🛡 SuperWise Data Protection Policy"
+ "generalInfoTitle": "🛡 SuperWise Data Protection Policy",
+ "dataDeleted": "Data deleted successfully"
},
"student&supervisor": {
"changesAndOverwritesText": "When you update your personal data, such as your name, profile picture, topic description, or bio, the previous version is permanently overwritten. We do not retain copies or backups of your previous personal data.",
@@ -177,6 +178,7 @@
"done": "Done",
"download": "Download",
"edit": "Edit",
+ "error": "Error",
"english": "🇬🇧 English",
"french": "🇫🇷 Français",
"german": "🇩🇪 Deutsch",
@@ -196,6 +198,7 @@
"showLess": "Show less",
"spanish": "🇪🇸 Español",
"student": "Student",
+ "success": "Success",
"supervise": "Supervise",
"supervisionRequest": "Supervision request",
"supervisor": "Supervisor",
@@ -226,6 +229,9 @@
"sentRequest": "Supervision request has been sent",
"supervisionRequest": "{name} wants to be supervised by you!",
"supervisorDismissed": "Supervisor has been dismissed",
+ "swipeRightHeadline": "Request {firstName} {lastName}",
+ "swipeLeftText": "Request",
+ "swipeRightText": "Reject",
"swipeLeft": {
"description": "By dismissing {firstName} {lastName}, they will never get suggested again, but you can still search for them. Are you sure you want to do this?",
"headline": "Dismiss Supervisor",
@@ -241,7 +247,7 @@
"confirm": "Confirm",
"dontShowAgain": "Don't show again",
"sendSupervisionRequestHeadline": "Send supervision request",
- "supervisionInfo": "When you send a thesis supervision request, it will be forwarded to the selected supervisors. They can then decide whether to accept or decline the request. If they accept the request, a confirmation will be created that you can download.",
+ "supervisionInfo": "When you send a thesis supervision request to {firstName} {lastName}, they will be notified and can accept or deny your request. If they accept the request, a confirmation will be created that you can download, otherwise you will need to choose a different supervisor.",
"withdrawSupervisionConfirm": "Withdraw Request",
"withdrawSupervisionDescription": "Would you like to withdraw the supervision request from {name}? Once withdrawn, the supervisor will no longer see this request.",
"withdrawSupervisionHeadline": "Withdraw Supervision Request"
diff --git a/Frontend/pages/admin/data-protection.vue b/Frontend/pages/admin/data-protection.vue
index 31cdce25..94d8faea 100644
--- a/Frontend/pages/admin/data-protection.vue
+++ b/Frontend/pages/admin/data-protection.vue
@@ -1,4 +1,6 @@
-
+
-
- -
+
-
+
{{ t(content) }}
-
{{ t(content) }}
-
+
+
+
+
+
+
diff --git a/Frontend/pages/student/matching.vue b/Frontend/pages/student/matching.vue
index 05939c97..4b575b62 100644
--- a/Frontend/pages/student/matching.vue
+++ b/Frontend/pages/student/matching.vue
@@ -6,6 +6,8 @@
:key="supervisor.supervisor_userId || index"
:ref="(el) => setItemRef(el, supervisor.supervisor_userId)"
class="mb-4"
+ :swipe-left-text="t('matching.swipeLeftText')"
+ :swipe-right-text="t('matching.swipeRightText')"
@swipe-left="handleSwipeLeft(supervisor)"
@swipe-right="handleSwipeRight(supervisor)"
>
@@ -170,10 +172,16 @@ const handleSwipeRight = async (supervisor: SupervisorData) => {
removedSupervisor.value = supervisor;
modalInformation.value = {
type: supervisionRequestType.CONFIRM,
- headline: `Request ${supervisor.firstName} ${supervisor.lastName}`,
+ headline: t("matching.swipeRightHeadline", {
+ firstName: supervisor.firstName,
+ lastName: supervisor.lastName,
+ }),
icon: "",
warning: "",
- description: t("modal.supervisionInfo"),
+ description: t("modal.supervisionInfo", {
+ firstName: supervisor.firstName,
+ lastName: supervisor.lastName,
+ }),
confirmButtonText: t("modal.confirm"),
confirmButtonColor: "primary",
supervisor: supervisor,
diff --git a/Frontend/pages/student/requests.vue b/Frontend/pages/student/requests.vue
index afd2c355..c9fed4ec 100644
--- a/Frontend/pages/student/requests.vue
+++ b/Frontend/pages/student/requests.vue
@@ -1,7 +1,11 @@
-
+
-
- -
+
-
+
{{ t(content) }}
-
{{ t(content) }}
-
+
+
+
+
+
+
+