Skip to content

Commit 41ed29c

Browse files
author
Alexandra Zwinger
committed
Remove alerts and make meetings only editable for creator
1 parent bab501b commit 41ed29c

File tree

6 files changed

+34
-35
lines changed

6 files changed

+34
-35
lines changed

src/components/CalendarComponent.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export default function CalendarComponent(props: { isDialogOpen: boolean }) {
2626
const response = await getMeetings(axiosInstance);
2727
setEvents(response);
2828
} catch (error) {
29-
alert(error);
29+
console.error(error);
3030
}
3131
};
3232

src/components/meeting/MeetingDetails.tsx

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import React, { useEffect, useState } from 'react';
1+
import React, {useEffect, useState} from 'react';
22
import '../../styles/Modal.css';
3-
import { CuteButton } from "../CuteButton";
4-
import { MeetingDto } from "../../dtos/MeetingDto";
5-
import { getUserIdsForMeeting } from "../../api/UserGroupApi";
3+
import {CuteButton} from "../CuteButton";
4+
import {MeetingDto} from "../../dtos/MeetingDto";
5+
import {getUserIdsForMeeting} from "../../api/UserGroupApi";
66
import axiosInstance from "../../AxiosConfig";
7-
import { getUser } from "../../api/UserApi";
8-
import { UserDto } from "../../dtos/UserDto";
7+
import {getUser} from "../../api/UserApi";
8+
import {UserDto} from "../../dtos/UserDto";
99

1010
interface ModalProps {
1111
isOpen: boolean;
@@ -15,11 +15,10 @@ interface ModalProps {
1515
openChooseMeetingModal: () => void;
1616
}
1717

18-
const MeetingDetails: React.FC<ModalProps> = ({ isOpen, meeting, onClose, openMeetingForm, openChooseMeetingModal }) => {
18+
const MeetingDetails: React.FC<ModalProps> = ({isOpen, meeting, onClose, openMeetingForm, openChooseMeetingModal}) => {
1919
const [userIds, setUserIds] = useState<string[]>([]);
20-
const [myUser, setMyUser] = useState<UserDto | null>(null);
21-
const myUserId = myUser ? myUser.uuid : "";
22-
20+
const [myUser, setMyUser] = useState<UserDto | null>(null);
21+
2322
useEffect(() => {
2423
if (isOpen) {
2524
getUser(axiosInstance)
@@ -41,14 +40,14 @@ const MeetingDetails: React.FC<ModalProps> = ({ isOpen, meeting, onClose, openMe
4140
}, [isOpen, meeting]);
4241

4342

44-
const updateMeeting = () => {
43+
const updateMeeting = () => {
4544
onClose();
4645
if (meeting?.repeatable !== "NEVER") openChooseMeetingModal();
4746
else openMeetingForm();
4847
};
4948

5049
if (!isOpen || !meeting || !myUser) return null;
51-
if (!isOpen || !meeting || !myUser) return null;
50+
if (!isOpen || !meeting || !myUser) return null;
5251

5352
return (
5453
<div className="modal-overlay" onClick={onClose}>
@@ -87,19 +86,19 @@ if (!isOpen || !meeting || !myUser) return null;
8786
{userIds.length === 0 && <li>-</li>}
8887
</ul>
8988
</div>
90-
91-
<div className="flex flex-row gap-4 mb-4 justify-end mt-auto items-center">
92-
<div>
93-
<CuteButton
94-
onClick={updateMeeting}
95-
text={"Meeting bearbeiten"}
96-
bgColor={"#56A095"}
97-
textColor={"#e6ebfc"}
98-
classname={"md:text-base text-sm"}
99-
/>
89+
{meeting.creator == myUser.uuid && (
90+
<div className="flex flex-row gap-4 mb-4 justify-end mt-auto items-center">
91+
<div>
92+
<CuteButton
93+
onClick={updateMeeting}
94+
text={"Meeting bearbeiten"}
95+
bgColor={"#56A095"}
96+
textColor={"#e6ebfc"}
97+
classname={"md:text-base text-sm"}
98+
/>
99+
</div>
100100
</div>
101-
102-
</div>
101+
)}
103102
</div>
104103
</div>
105104
);

src/components/yourStudies/UserInfo.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export default function UserInfo() {
3232
const response = await getMeetingsOfWeek(axiosInstance);
3333
setWeeklyMeetings(filterMeetingsForCurrentWeek(response));
3434
} catch (error) {
35-
alert("Fehler beim Abrufen der Meetings: " + error);
35+
console.error("Fehler beim Abrufen der Meetings: " + error);
3636
}
3737
};
3838

src/components/yourStudies/UserSettings.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export default function UserSettings() {
2121
const response = await getModules(axiosInstance);
2222
setAllModules(response);
2323
} catch (error) {
24-
alert("Error fetching user modules:" + error);
24+
console.error("Error fetching user modules:" + error);
2525
}
2626
}
2727

@@ -31,7 +31,7 @@ export default function UserSettings() {
3131
setUser(response);
3232
setOwnModules(response.modules);
3333
} catch (error) {
34-
alert("Fehler beim Abrufen der UserDaten: " + error);
34+
console.error("Fehler beim Abrufen der UserDaten: " + error);
3535
}
3636
}
3737

@@ -59,7 +59,7 @@ export default function UserSettings() {
5959
await createModule(axiosInstance, module);
6060
fetchAllModules();
6161
} catch (error) {
62-
alert("Error fetching user modules:" + error);
62+
console.error("Error fetching user modules:" + error);
6363
}
6464
}
6565

@@ -69,7 +69,7 @@ export default function UserSettings() {
6969
fetchUserInfo();
7070
setEditModule(false);
7171
} catch (error) {
72-
alert("Error fetching user modules:" + error);
72+
console.error("Error fetching user modules:" + error);
7373
}
7474
}
7575

src/form/CreateOrUpdateMeetingForm.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export function CreateOrUpdateMeetingForm({open, onClose, meeting, onlyThisMeeti
4949
const response = await getModules(axiosInstance);
5050
setModuleNames(response);
5151
} catch (error) {
52-
alert("Error fetching user modules:" + error);
52+
console.error("Error fetching user modules:" + error);
5353
}
5454
}
5555

@@ -157,7 +157,7 @@ export function CreateOrUpdateMeetingForm({open, onClose, meeting, onlyThisMeeti
157157
e.preventDefault();
158158
const form = e.currentTarget;
159159
if (!form.checkValidity()) {
160-
alert("Bitte alle erforderlichen Felder ausfüllen!");
160+
console.error("Bitte alle erforderlichen Felder ausfüllen!");
161161
return;
162162
}
163163
handleSave();

src/form/SearchMeetingForm.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export function SearchMeetingForm({open, onClose}: MeetingFormProps) {
3232
const response = await getModules(axiosInstance);
3333
setModuleNames(response);
3434
} catch (error) {
35-
//alert("Error fetching user modules:" + error);
35+
console.error("Error fetching user modules:" + error);
3636
}
3737
}
3838

@@ -44,7 +44,7 @@ export function SearchMeetingForm({open, onClose}: MeetingFormProps) {
4444
const response = await getMeetingsForModule(axiosInstance, module);
4545
setMeetings(response);
4646
} catch (error) {
47-
alert("Fehler beim Abrufen der Meetings: " + error);
47+
console.error("Fehler beim Abrufen der Meetings: " + error);
4848
}
4949
};
5050

@@ -89,7 +89,7 @@ export function SearchMeetingForm({open, onClose}: MeetingFormProps) {
8989
e.preventDefault();
9090
const form = e.currentTarget;
9191
if (!form.checkValidity()) {
92-
alert("Bitte alle erforderlichen Felder ausfüllen!");
92+
console.error("Bitte alle erforderlichen Felder ausfüllen!");
9393
return;
9494
}
9595
}}>

0 commit comments

Comments
 (0)