from invoke import task
from pandas_ods_reader import read_ods
import pandas as pd
-import pdfkit
+from weasyprint import HTML
from datetime import datetime as dt
from datetime import timedelta
def folder(c, path):
- c.run(f'dolphin {path}', asynchronous=True)
+ # c.run(f'dolphin {path}', asynchronous=True)
# c.run(f"nemo {path}")
+ c.run(f'konsole --workdir {path}',asynchronous=True)
@task
def make_all(c, monday):
html_all(c, monday)
for person in STUDENTS:
- pdfkit.from_file(f'{SCHOOL_DIR}/{person}.{monday}.html', f'{SCHOOL_DIR}/{person}.{monday}.pdf', options={"enable-local-file-access": True})
+ html = f'{SCHOOL_DIR}/{person}.{monday}.html'
+ pdf = f'{SCHOOL_DIR}/{person}.{monday}.pdf'
+ HTML(html).write_pdf(pdf)
+ c.run(f'librewolf {SCHOOL_DIR}/{person}.{monday}.pdf', asynchronous=True)
+
def get_todays_assignments(df, date, person):
mine = df[df['person'] == person]
def missing_on_day(c, person, day):
df = read_ods(ODS_FILE)
today = get_todays_assignments(df, day, person)
- for subject in ['College Prep', 'Life Skills', 'Job Prep']:
+ for subject in ['College Prep', 'Life Skills', 'Job Prep', 'Health']:
if not 'All Day Event' in today['subject'].values and not subject in today['subject'].values:
print(f'Missing {subject} for {person} on {day}')
c.run(f'mv {SCHOOL_DIR}/*.pdf {ARCHIVE}')
+@task
+def checklist(c):
+ print('- [ ] `fresh-week` to clean up old files.')
+ print('- [ ] start libreoffice and open `assignements.ods`')
+ print('- [ ] copy a previous sheet to be the new first sheet, and update the date Monday date.')
+ print('- [ ] `invoke missing YYYY.MM.DD` the .ods file.')
+ print('- [ ] `invoke preview-all YYYY.MM.DD`')
+