auto new year stuff

This commit is contained in:
2024-03-15 01:50:34 +00:00
parent e1eb85969a
commit d970942f04
7 changed files with 68 additions and 40 deletions

View File

@@ -89,18 +89,37 @@ def alphabet_suffix(n):
suffix = "_X_" + random.choice(string.ascii_lowercase) + random.choice(string.ascii_lowercase)
return suffix
def make_new_expo(year):
coUniqueAttribs = {"year": year}
otherAttribs = {"name": f"CUCC expo {year}"}
e = Expedition.objects.create(**otherAttribs, **coUniqueAttribs)
u = User.objects.get(username='expo')
u.current_year = year
u.save()
def make_new_expo_dir(year):
t = "<a href='index.html'>index</a><br><a href='mission.html'>mission</a><br><a href='logbook.html'>logbook</a><br>"
year_dir = Path(settings.EXPOWEB, 'years', year)
if not year_dir.is_dir():
year_dir.mkdir(parents=True, exist_ok=True)
for ff in ["index","logbook", "mission"]:
p = Path(year_dir, ff+".html")
if not p.is_file():
p.write_text(f"<html><head><title>{ff}</title></head><body><h1>{ff}</h1>{t}</body></html>")
def current_expo():
expos = Expedition.objects.all().order_by('-year')
if expos:
year = str(datetime.now(timezone.utc).year)
last_expo = expos[0].year
if last_expo != year: # create the expo object for the coming year, after Dec.31st
coUniqueAttribs = {"year": year}
otherAttribs = {"name": f"CUCC expo {year}"}
e = Expedition.objects.create(**otherAttribs, **coUniqueAttribs)
u = User.objects.get(username='expo')
u.current_year = year
u.save()
make_new_expo_dir(year)
if last_expo != year: # coming year, after Dec.31st
make_new_expo(year)
make_new_expo_dir(year)
# print(f"---{year}---")
return year
else: