Skip to content
Snippets Groups Projects
Commit fb8eb83c authored by Lukas Ruge's avatar Lukas Ruge
Browse files

update 2025

parent fa856102
No related branches found
No related tags found
No related merge requests found
......@@ -2,4 +2,43 @@
Kleines Helper-Tool. Im Grunde erstellt es Regeltermine, für den Chaotikum-Kalender.
Das sind Makrdown Dateien, das ist ohne Skript einfach anstrengend.
\ No newline at end of file
Das sind Makrdown Dateien, das ist ohne Skript einfach anstrengend.
## Open Space
Jeden Mittwoch 19:00 to 23:59:59 aber nicht zwischen oder am 24.12 und 1.1
## Plenum
Zweiter Donnerstag des Monats, außer November, da dritter.
## OSM
Vierter donnerstag in ungeraden monaten
## Bits und Bäume
Jeden zweiten Dienstag im Monat um 18:31...
## FFHL-Orga
Quartalsweise am 3. Donnerstag im zweiten Monat des Quartals, also Februar, Mai, ...
## NooK
Zweiter freitag im November (und der darauf folgende Samstag)
## Fünf Minuten Termine
Zweiter Mittwoch im Januar, April, September und Dezember
## Somerfest
Der erste Samstag nach dem 10. Mai. 15:00 bis 23:59
## Tag des offenen Hackspaces
https://wiki.hackerspaces.org/International_Open_Hackerspace_Day
The International Open Hackerspace Day is happening every last Saturday of March.
## Congress
27.12 bis 30.12
## NooK-Orga
Dritter Montag jeden zweiten Monat von januar bis Mai, dann monatlich von Juni bis September
Oktober jeden Montag
## CTF
Jeden zweiten Dienstag. Am 02.07.2024 war ein CTF, wir rechnen also von dort.
Wenn der Termin zwischen den 23.12 und 01.01 (jeweils inklusive fällt) gibt es keinen Termin
\ No newline at end of file
......@@ -46,6 +46,13 @@ def is_wednesday(_date_candidate):
def is_nth_monday_of_month(_date_candidate, _n):
return is_nth_xday_of_month(_date_candidate, _date_candidate.year, _date_candidate.month, _n, MON)
def is_monday(_date_candidate):
wd = _date_candidate.weekday()
return wd == MON;
def is_wednesday(_date_candidate):
wd = _date_candidate.weekday()
return wd == WED
def is_nth_tuesday_of_month(_date_candidate, _n):
return is_nth_xday_of_month(_date_candidate, _date_candidate.year, _date_candidate.month, _n, TUE)
......@@ -126,6 +133,8 @@ def is_equal_month(_date_candidate):
def is_january(_date_candidate):
return _date_candidate.month == 1
def is_february(_date_candidate):
return _date_candidate.month == 3
def is_march(_date_candidate):
return _date_candidate.month == 3
......
......@@ -23,13 +23,14 @@ BITSUNDBAEUME = True
# jeden zweiten Dienstag im Monat um 18:31...
FFHLORGA = True
# jeden dritten Donnerstag im Monat 19:00 bis 22:00 Uhr
# quartalsweise am 3. Donnerstag im zweiten Monat des Quartals, also Februar, Mai, ...
NOOK = True
# zweiter freitag im November (und der darauf folgende Samstag)
# FÜNF MINUTEN TERMINE
# Zweiter Mittwoch im januar, April, september und dezember
FUENF_MIN_TERMINE = True
# Üblicherweise Zweiter Mittwoch im ersten Monat des Quartals
SOMMERFEST = True
# Üblicherweise der erste Samstag nach dem 10 Mai. 15:00 bis 23:59
......@@ -51,6 +52,7 @@ GETTING_SPACE_CLEAN = False
# NOOK ORGA
# Dritter Montag jeden zweiten Monat von januar bis Mai, dann monatlich von Juni bis September
# Oktober jeden Montag
NOOK_ORGA = True
# CTF
......@@ -58,6 +60,10 @@ NOOK_ORGA = True
# Wenn der Termin zwischen den 23.12 und 01.01 (jeweils inklusive fällt) gibt es keinen Termin
CTF = True
# Video Setup Intro
# unklar
WED_VIDEO_SETUP = False
#################################################
# Year to create events for
#################################################
......@@ -103,7 +109,9 @@ def is_bits_und_baeume(_date_candidate):
def is_ffhl(_date_candidate):
if utils.is_nth_thursday_of_month(_date_candidate, 3):
if utils.is_nth_thursday_of_month(_date_candidate, 3) and (
utils.is_february(_date_candidate) or utils.is_may(_date_candidate) or utils.is_august(
_date_candidate) or utils.is_november(_date_candidate)):
return True
return False
......@@ -113,12 +121,20 @@ def is_nook(_date_candidate):
def is_fuenf_min(_date_candidate):
if utils.is_april(_date_candidate) or utils.is_july(_date_candidate) or utils.is_october(_date_candidate):
if utils.is_january(_date_candidate) or utils.is_april(_date_candidate) or utils.is_september(
_date_candidate) or utils.is_december(_date_candidate):
if utils.is_nth_wednesday_of_month(_date_candidate, 2):
return True
return False
def is_wed_video_setup(_date_candidate):
if utils.is_april(_date_candidate) or utils.is_july(_date_candidate) or utils.is_october(_date_candidate):
if utils.is_nth_wednesday_of_month(_date_candidate, 1):
return True
return False
def is_sommerfest(_date_candidate):
return utils.first_saturday_after_may_10th(_date_candidate)
......@@ -142,7 +158,8 @@ def is_getting_space_clean(_date_candidate):
def is_nook_orga(_date_candidate):
return utils.is_third_monday_of_month_and_uneven_month_before_june_or_before_september(_date_candidate)
return utils.is_third_monday_of_month_and_uneven_month_before_june_or_before_september(_date_candidate) or (
utils.is_monday(_date_candidate) and utils.is_october(_date_candidate))
def is_ctf(_date_candidate):
......@@ -183,6 +200,10 @@ def create_fuenf_min(_date):
utils.create_event("5min", _date, start_hour=20, end_hour=21)
def create_wed_video_setup(_date):
utils.create_event("openspacevideosetup", _date, start_hour=19, end_hour=20)
def create_sommerfest(_date):
utils.create_event("sommerfest", _date, start_hour=15)
......@@ -273,5 +294,9 @@ while date_to_check <= datetime.datetime.strptime(str(YEAR) + "-12-31", utils.da
result = is_ctf(date_to_check)
if result:
create_ctf(date_to_check)
if WED_VIDEO_SETUP:
result = is_wed_video_setup(date_to_check)
if result:
create_wed_video_setup(date_to_check)
date_to_check += datetime.timedelta(days=1)
---
layout: [eventcal]
title: "Geräte-Intro: Das Video-Setup"
eventdate: <EVENTSTART>
eventend: <EVENTEND>
#https://www.uuidgenerator.net/
uid: <UUID>
contact: info@chaotikum.org
locations:
- Augenprüfraum
- Wartezimmer
- Lager
- Confy Zone
sets:
- video
short: "Einmal im Quartal könnt ihr euch beim Open-Space das Video-Setup erklären lassen. Ansonsten auf nachfrage."
---
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment