diff --git a/src/components/Dashboard/Dashboard.tsx b/src/components/Dashboard/Dashboard.tsx index ad163e3..3304468 100644 --- a/src/components/Dashboard/Dashboard.tsx +++ b/src/components/Dashboard/Dashboard.tsx @@ -1,3 +1,5 @@ +import { useEffect, useState } from "react"; + import Datetime from "@/components/Datetime/Datetime"; import Flatastic from "@/components/Flatastic/Flatastic"; import Footer from "@/components/Footer/Footer"; @@ -7,8 +9,32 @@ import Timetable from "@/components/Timetable/Timetable"; import style from "./style.module.css"; export default function Dashboard() { + const schemes = [style.day, style.evening, style.night]; + const [scheme, setScheme] = useState(style.day); + + // change background color based on time of day + const time = useEffect(() => { + const timer = setInterval( + () => { + let d = new Date(); + let hour = d.getHours(); + if (hour >= 7 && hour < 16) { + setScheme(style.day); + } else if (hour < 23) { + setScheme(style.evening); + } else { + setScheme(style.night); + } + }, + 20 * 60 * 1000, + ); + return () => { + clearInterval(timer); + }; + }, []); + return ( -
+
🚊 Timetable
diff --git a/src/components/Dashboard/style.module.css b/src/components/Dashboard/style.module.css index b78f3e3..9535ef1 100644 --- a/src/components/Dashboard/style.module.css +++ b/src/components/Dashboard/style.module.css @@ -2,9 +2,24 @@ display: flex; flex-direction: column; height: 100%; + transition: 0.5s; +} + +/* 7 to 16 */ +.day { background-color: #007c7d; } +/* 16 to 23 */ +.evening { + background-color: #3b5773; +} + +/* 23 to 8 */ +.night { + background-color: #2a3f55; +} + .cardWrapper { margin: 30px; height: 100%; @@ -48,6 +63,12 @@ .clock { width: 45%; +<<<<<<< HEAD +======= +} + +.terminal { +>>>>>>> 115a228 (Make dashboard change background based on time of day) } .footer {