Absence and duty scheduling program for teams based on Pode, and FullCalendar, created with ChatGPT prompt for JavaScript.
Each time the page is loaded, the system checks whether the file for the next year's holidays already exists. If the file does not yet exist, the public holidays in Switzerland are calculated for the cantons of Bern, Zurich, St. Gallen and Graubünden and the file is created with these values. You never have to worry about it again, the public holidays are simply there.
If you want to create the holidays for a different year, you can call the API with the desired year. For example with PowerShell:
Invoke-WebRequest -Uri http://localhost:8080/api/year/new -Method Post -Body 2025
At first, you have to login.
In this calendar view, you can view the events of the current month, scroll to another month, and add new events.
To show the current month, click on the middle button 'month'.
Or if you prefere a list of the events of the current month, click on the right button 'list'.
To show only your own events, press the button 'My Events'.
Type, or select the person and select absence-type, choose the start- and end date, and press the button to submit the new event.
Select a range fills the selected start- and end date into the formular. Type or select the person and select the absence-type and press the button to submit the new event.
It's possible to export all events, or events of a specified person or type,
or a single event as an ics-file.
To manage your absences, click on the link in the navbar 'Absenzen'.
To manage your persons, click on the link in the navbar 'Personen'.
The RotaMaster is a Web service based on Pode.
All of the APIs on the backend are written in PowerShell and the frontend is written in JavaScript and HTML/CSS.
It would be nice to use the OpsGenie API to export/import Pikett-events into OpsGenie.
The following PowerShell-Modules are mandatory:
- Pode
- PSSQLite
The RotaMaster needs the following folder-structure:
RotaMaster
+---api
+---archiv
+---bin
+---errors
+---img
+---public
| +---assets
| | +---BootStrap
| | +---img
| | +---Jquery
| | \---rotamaster
| \---img
\---views
This is the root-folder for the web service. Here must be the PodeServer.ps1 located.
This folder contains the files of the web service. The file(s) for holidays or others must be a CSV file.
The events, persons, and absences have also been saved in a SQLite database called rotamaster.db in this folder.
For obsolete files, that you want to archive and not load in to the calendar.
This folder contains the PowerShell code of the backend.
This is an internal folder for the error-page.
Here are the images for the readme.
This folder is public for the web service and should contains all the assets you need.
This is the folder where the index.html is saved.