reorganized calendar page, fixes

This commit is contained in:
ivic00
2024-12-17 18:12:47 +01:00
parent 79ac1efe63
commit 3324a2fd6f
51 changed files with 1082 additions and 27 deletions

View File

@ -40,7 +40,7 @@ import DeleteEventDialog from "./DeleteEventDialog";
import {useDeleteEvent} from "@/hooks/firebase/useDeleteEvent";
import AddPersonIcon from "@/assets/svgs/AddPersonIcon";
import {addHours, format, startOfHour, startOfMinute} from "date-fns";
import {useAuthContext} from "@/contexts/AuthContext";
import {ProfileType, useAuthContext} from "@/contexts/AuthContext";
import {Calendar} from "react-native-calendars";
const daysOfWeek = [
@ -55,7 +55,7 @@ const daysOfWeek = [
export const ManuallyAddEventModal = () => {
const insets = useSafeAreaInsets();
const {user} = useAuthContext();
const {user, profileData} = useAuthContext();
const [selectedNewEventDate, setSelectedNewEndDate] = useAtom(
selectedNewEventDateAtom
@ -419,14 +419,23 @@ export const ManuallyAddEventModal = () => {
<View right marginR-30>
<DateTimePicker
value={startTime}
is24Hour={profileData?.userType === ProfileType.PARENT ? false : true}
onChange={(time) => {
if (time <= endTime) {
setStartTime(time);
}
if (endDate.getDate() === startDate.getDate() &&
time.getHours() >= endTime.getHours())
{
const newEndDate = new Date(endDate);
setStartTime(time);
newEndDate.setDate(newEndDate.getDate() + 1);
setEndDate(newEndDate);
}
else setStartTime(time);
}}
minuteInterval={5}
mode="time"
timeFormat="HH:mm"
timeFormat={profileData?.userType === ProfileType.PARENT ? "hh:mm" : "HH:mm"}
style={[styles.timePicker]}
/>
</View>
@ -447,6 +456,7 @@ export const ManuallyAddEventModal = () => {
<View right marginR-30>
<DateTimePicker
value={endTime}
is24Hour={profileData?.userType === ProfileType.PARENT ? false : true}
onChange={(time) => {
setEndTime(time);
if (
@ -460,7 +470,7 @@ export const ManuallyAddEventModal = () => {
}}
minuteInterval={5}
mode="time"
timeFormat="HH:mm"
timeFormat={profileData?.userType === ProfileType.PARENT ? "hh:mm" : "HH:mm"}
style={[styles.timePicker]}
/>
</View>