TODAY = dt.now().strftime(DATE_FORMAT)
SCHOOL_DIR = f'{HOME}/School/Assignments'
-ODS_FILE = f'{HOME}/School/Assignments/tasks.ods'
+ODS_FILE = f'{HOME}/School/Assignments/assignments.ods'
BIN = f'{HOME}/envs/invoke/bin'
STUDENTS = os.environ.get('STUDENTS').split('|')
+@task
+def open_assignments(c):
+ print("LibreOffice does not like to be launched this way.")
+ # c.run(f'libreoffice {ODS_FILE}', asynchronous=True)
+
@task
def dump_ods(c):
@task
def md_week(c, person, monday):
- c.run(f'cd {SCHOOL_DIR};{BIN}/invoke print-week {person} {monday} > {person}.{monday}.md')
+ c.run(f'cd {SCHOOL_DIR};{BIN}/invoke print-week {person} {monday} > {SCHOOL_DIR}/{person}.{monday}.md')
@task
def show_all(c, monday):
for person in STUDENTS:
md_week(c, person, monday)
- c.run(f'codium {person}.{monday}.md')
+ c.run(f'codium {SCHOOL_DIR}/{person}.{monday}.md')
@task
def html_all(c, monday):
for person in STUDENTS:
md_week(c, person, monday)
- c.run(f'cd {SCHOOL_DIR};{BIN}/markdown_py {person}.{monday}.md > {person}.{monday}.html')
- c.run(f'librewolf {person}.{monday}.html')
+ c.run(f'cd {SCHOOL_DIR};{BIN}/markdown_py {person}.{monday}.md > {SCHOOL_DIR}/{person}.{monday}.html')
+ c.run(f'cat {SCHOOL_DIR}/style.html >> {SCHOOL_DIR}/{person}.{monday}.html')
+ c.run(f'librewolf {SCHOOL_DIR}/{person}.{monday}.html', asynchronous=True)
def get_todays_assignments(df, date, person):
df = read_ods(ODS_FILE)
today = get_todays_assignments(df, day, person)
for subject in ['College Prep', 'Life Skills', 'Job Prep']:
- if not subject in today['subject'].values:
+ if not 'All Day Event' in today['subject'].values and not subject in today['subject'].values:
print(f'Missing {subject} for {person} on {day}')
@task
print()
print(f"## {person}'s Assignments for {weekday}, {date}")
- for _, row in today.iterrows():
+ for subject, row in today.groupby('subject'):
print()
print()
- print(f'### {row["subject"]}')
+ print(f'### {row["subject"].values[0]}')
print()
- print(row['task'])
- if(row['tip']):
- print()
- print(f'> Tip: {row["tip"]}')
-
- if(row['when_done']):
+ for task in row['task'].values:
print()
- print(f'**When done**: {row["when_done"]}')
+ print(f'- [ ] {task}')
+ if(len(row['tip'].values) > 0):
+ for tip in row['tip'].values:
+ if tip:
+ print()
+ print(f'> Tip: {tip}')
+
+ if(len(row['when_done'].values) > 0):
+ for tip in row['when_done'].values:
+ if tip:
+ print()
+ print(f'**When done**: {tip}')
@task
def files(c):