#!/usr/bin/python3 import pygal import csv import time import datetime import hashlib from collections import OrderedDict import inputs import timers import formatting as f print("welcome to lock-n-log, the best way to organise and analyse your focus time!") print("tag for session? ", end="", flush=True) tag = input() if tag == "": tag = "work" valid_timer_types = ('t', 's') option = False while not option: print("(t)imer or (s)topwatch? ", end="", flush=True) option = inputs.get_valid_char(valid_timer_types) print("") if option == 't': print("timer length (in minutes)? ", end="", flush=True) timer_length = inputs.get_pos_int() while not timer_length: print("please enter a positive integer") print("timer length (in minutes)? ", end="", flush=True) timer_length = inputs.get_pos_int() time_left, start = timers.countdown(timer_length) print("\nfocus session finished!\nlogging...") session = OrderedDict() session["id"] = hashlib.sha256(str(start).encode('utf8')).hexdigest() session["date"] = start.strftime("%Y-%m-%d") session["start"] = start.strftime("%H:%M") session["elapsed"] = int(timer_length - time_left.total_seconds()) session["type"] = "focus" session["tag"] = tag session["timer"] = "timer" session["ratio"] = 0.2 #print(session) f.sesh_to_log(session, "lock-n-log.csv") else: print("whenever you're ready, press enter to start", end="", flush=True) input() elapsed, start = timers.stopwatch() print("\nfocus session finished!\nlogging...") session = OrderedDict() session["id"] = hashlib.sha256(str(start).encode('utf8')).hexdigest() session["date"] = start.strftime("%Y-%m-%d") session["start"] = start.strftime("%H:%M") session["elapsed"] = int(elapsed.total_seconds()) session["type"] = "focus" session["tag"] = tag session["timer"] = "stopwatch" session["ratio"] = 0.2 #print(session) f.sesh_to_log(session, "lock-n-log.csv")