From 087f8b1aab841a453faf0b9c2a1298115c454feb Mon Sep 17 00:00:00 2001 From: Lukas Winkler Date: Mon, 19 Mar 2018 18:55:22 +0100 Subject: [PATCH] minor fixes --- create.py => main.py | 12 ++++++++---- strings.yaml | 8 ++++++-- template.tex | 3 +++ utils.py | 7 +++++++ 4 files changed, 24 insertions(+), 6 deletions(-) rename create.py => main.py (93%) diff --git a/create.py b/main.py similarity index 93% rename from create.py rename to main.py index b28a98a..a739499 100644 --- a/create.py +++ b/main.py @@ -18,8 +18,7 @@ def create_invoice(): "date": ask("date", "date", default="today"), "mode": ask("Mode", "set", set=["single", "hourly"], default="hourly"), "description": ask("description"), - "start": ask("from", "date"), - "end": ask("to", "date"), + "range": ask("range"), } if invoice["mode"] == "single": single = { @@ -29,11 +28,16 @@ def create_invoice(): elif invoice["mode"] == "hourly": hourly = { "hours": ask("hours", "int"), + "minutes": ask("hours", "int"), "per_hour": ask("per hour", "money", default=config["default_hourly_rate"]) } invoice.update(hourly) directory = invoice_dir + "/" + str(invoice["id"]) - os.mkdir(directory) + if os.path.exists(directory): + if not ask("overwrite", "boolean"): + exit() + else: + os.mkdir(directory) print(invoice) save_yaml(invoice, directory + "/data.yaml") save_yaml(config, "config.yaml") @@ -106,7 +110,7 @@ if __name__ == "__main__": if sys.argv[1] == "compile": if len(sys.argv) == 3: try: - invoice_id = int(sys.argv[1]) + invoice_id = int(sys.argv[2]) except ValueError: invoice_id = False print("invalid id") diff --git a/strings.yaml b/strings.yaml index da3aacb..2784a8d 100644 --- a/strings.yaml +++ b/strings.yaml @@ -20,5 +20,9 @@ taxexception: de: Umsatzsteuerfrei aufgrund der Kleinunternehmerregelung gemäß §6(1)27 UStG en: VAT-exempt because of small-business regulation (§6(1)27 UStG) transfer: - de: Ich bitte Sie, den Gesamtbetrag innerhalb der nächsten 10 Tage auf folgendes Konto zu überweisen - en: Please transfer the due invoice amount to the following account \ No newline at end of file + de: Ich bitte Sie, den Gesamtbetrag innerhalb der nächsten 10 Werktage auf folgendes Konto zu überweisen + en: Please transfer the due invoice amount to the following account + +range: + de: Leistungszeitraum + en: period diff --git a/template.tex b/template.tex index 1f51519..aa1afb5 100644 --- a/template.tex +++ b/template.tex @@ -67,6 +67,9 @@ \setkomavar{invoice}{\VAR{invoice.id}} \setkomavar{date}{\VAR{invoice.date}} +\newkomavar*[\VAR{"range"|t}]{range} +\setkomavar{range}{\VAR{invoice.range}} + \pdfinfo{ /Author (\Name) diff --git a/utils.py b/utils.py index 9fc0048..d8a3dc1 100644 --- a/utils.py +++ b/utils.py @@ -57,4 +57,11 @@ def ask(question, validator=None, default=None, set=None): if answer not in set: print("only [{formats}] are allowed".format(formats=", ".join(set))) continue + if validator == "boolean": + if answer.lower() in ['true', '1', 't', 'y', 'yes']: + return True + elif answer.lower() in ["false", "0", "f", "n", "no"]: + return False + else: + continue return answer