# Python backend for a calender for my friend group. # We had the problem of never agreeing when or where # we should meet up, and I hope this fixes the problem. from fastapi import FastAPI, Request from database import fetch_all from events import create_event app = FastAPI( title="Calendar API", description="Room based agenda system", version="0.1" ) @app.get("/") def home(): return { "status": "online", "service": "Calendar API" } @app.get("/database") def database_status(): tables = fetch_all( "SELECT name FROM sqlite_master WHERE type='table';" ) return { "tables": [table["name"] for table in tables] } @app.post("/events") async def api_create_event(request: Request): data = await request.json() print(data) event_id = create_event( room_id=data["room_id"], creator_id=data["creator_id"], type=data["type"], title=data["title"], description=data["description"], start_time=data["start_time"], end_time=data["end_time"], visibility=data["visibility"], status=data["status"], min_people=data["min_people"] ) return { "received": data } # def give_data(): # event = create_event( # room_id=, # creator_id=, # type=, # title=, # description=, # start_time=, # end_time=, # visibility=, # status=, # min_people= # ) # print("Nieuw event ID:", event) @app.get("/events") def get_events(): events = fetch_all("SELECT * FROM events;") return { "events": [dict(event) for event in events] }