+ selected_date = None
+ t_filter_and = None
+ t_filter_not = None
+ hide_unchosen = False
+ hide_done = False
+ if parsed_url.path in {app_config['prefix'] + '/day', app_config['prefix'] + '/tasks'}:
+ selected_date = params.get('selected_date', [None])[0]
+ if selected_date is None and 'selected_date' in cookie_db.keys():
+ selected_date = cookie_db['selected_date']
+ cookie_db['selected_date'] = selected_date
+ t_filter_and = params.get('t_and', None)
+ if t_filter_and is None and 't_and' in cookie_db.keys():
+ t_filter_and = cookie_db['t_and']
+ elif t_filter_and == ['-']:
+ t_filter_and = None
+ cookie_db['t_and'] = t_filter_and
+ t_filter_not = params.get('t_not', None)
+ if t_filter_not is None and 't_not' in cookie_db.keys():
+ t_filter_not = cookie_db['t_not']
+ elif t_filter_not == ['-']:
+ t_filter_not = None
+ else:
+ t_filter_not = ['deleted']
+ cookie_db['t_not'] = t_filter_not
+ if parsed_url.path == app_config['prefix'] + '/day':
+ hide_unchosen_params = params.get('hide_unchosen', [])
+ if 0 == len(hide_unchosen_params):
+ if 'hide_unchosen' in cookie_db.keys():
+ hide_unchosen = cookie_db['hide_unchosen']
+ else:
+ hide_unchosen = hide_unchosen_params[0] != '0'
+ cookie_db['hide_unchosen'] = hide_unchosen
+ hide_done_params = params.get('hide_done', [])
+ if 0 == len(hide_done_params):
+ if 'hide_done' in cookie_db.keys():
+ hide_done = cookie_db['hide_done']
+ else:
+ hide_done = hide_done_params[0] != '0'
+ cookie_db['hide_done'] = hide_done
+ db = TodoDB(app_config['prefix'], selected_date, t_filter_and, t_filter_not, hide_unchosen, hide_done)
+ if parsed_url.path == app_config['prefix'] + '/day':
+ page = db.show_day()
+ elif parsed_url.path == app_config['prefix'] + '/todo':
+ todo_date = params.get('date', [None])[0]
+ task_uuid = params.get('task', [None])[0]
+ page = db.show_todo(task_uuid, todo_date)
+ elif parsed_url.path == app_config['prefix'] + '/task':
+ id_ = params.get('id', [None])[0]
+ page = db.show_task(id_)
+ elif parsed_url.path == app_config['prefix'] + '/tasks':
+ page = db.show_tasks()
+ elif parsed_url.path == app_config['prefix'] + '/add_task':
+ page = db.show_task(None)
+ elif parsed_url.path == app_config['prefix'] + '/unset_cookie':
+ page = 'no cookie to unset.'
+ if len(cookie_db) > 0:
+ self.unset_cookie(app_config['cookie_name'], app_config['cookie_path'])
+ page = 'cookie unset!'
+ else:
+ start_date = params.get('start', [None])[0]
+ if start_date is None:
+ if 'calendar_start' in cookie_db.keys():
+ start_date = cookie_db['calendar_start']
+ else:
+ start_date = 'today'
+ elif start_date == '-':
+ start_date = None
+ cookie_db['calendar_start'] = start_date
+ end_date = params.get('end', [None])[0]
+ if end_date is None and 'calendar_end' in cookie_db.keys():
+ end_date = cookie_db['calendar_end']
+ elif end_date == '-':
+ end_date = None
+ cookie_db['calendar_end'] = end_date
+ page = db.show_calendar(start_date, end_date)
+ header = Template(html_head).render(db=db, prefix=app_config['prefix'], date=selected_date)
+ if parsed_url.path != app_config['prefix'] + '/unset_cookie':
+ self.set_cookie(app_config['cookie_name'], app_config['cookie_path'], cookie_db)
+ self.send_HTML(header + page)
+
+
+if __name__ == "__main__":