[Getan-commits] [PATCH 2 of 2] CHANGES updated. AUTHOR BER added. zeiterfassung.py removed
Wald Commits
scm-commit at wald.intevation.org
Fri Feb 10 15:31:26 CET 2017
# HG changeset patch
# User Bernhard Reiter <bernhard at intevation.de>
# Date 1486737056 -3600
# Node ID 84f9b1eeb8b633ef4d230beb2a5f3f395a32e5ac
# Parent 150180e972d34f4496faa4da9cae51f41536393a
CHANGES updated. AUTHOR BER added. zeiterfassung.py removed.
* zeiterfassung.py is completely replaced by "getan-eval.py".
diff -r 150180e972d3 -r 84f9b1eeb8b6 CHANGES
--- a/CHANGES Fri Feb 10 15:01:07 2017 +0100
+++ b/CHANGES Fri Feb 10 15:30:56 2017 +0100
@@ -1,14 +1,22 @@
UNRELEASED
+1.2 X.Y.2017
+
+ * Already written entries can now be adjusted for start_time and length.
+
+ * Added contrib/getan-report.py, a script to write a daily report.
+
* Added a template rendering module bases on jinja2.
- * zeiterfassung.py is re-written to use the new template based rendering.
+ * Cleanup: All scripts are now in the directory 'scripts'.
* getan-eval.py can be used as a main entry point for user templates. User
templates are loaded from ~/.getan/templates and can be used via the
--template option. E.g. getan-eval.py --template=mytemplate will try to load
~/.getan/templates/mytemplate.
+ * zeiterfassung.py is replaced by 'getan-eval.py -t zeiterfassung'
+
1.1 03.03.2014
diff -r 150180e972d3 -r 84f9b1eeb8b6 getan/config.py
--- a/getan/config.py Fri Feb 10 15:01:07 2017 +0100
+++ b/getan/config.py Fri Feb 10 15:30:56 2017 +0100
@@ -2,6 +2,8 @@
# -*- coding: utf-8 -*-
#
# (c) 2010 by Ingo Weinzierl <ingo.weinzierl at intevation.de>
+# (c) 2017 by Intevation
+# Author: Bernhard.Reiter at intevation.de
#
# This is Free Software licensed under the terms of GPLv3 or later.
# For details see LICENSE coming with the source of 'getan'.
diff -r 150180e972d3 -r 84f9b1eeb8b6 getan/states.py
--- a/getan/states.py Fri Feb 10 15:01:07 2017 +0100
+++ b/getan/states.py Fri Feb 10 15:30:56 2017 +0100
@@ -3,6 +3,8 @@
#
# (c) 2010 by Ingo Weinzierl <ingo.weinzierl at intevation.de>
# (c) 2011, 2012, 2014 by Björn Ricks <bjoern.ricks at intevation.de>
+# (c) 2017 Intevation GmbH
+# Author: Bernhard.Reiter at intevation.de
#
# This is Free Software licensed under the terms of GPLv3 or later.
# For details see LICENSE coming with the source of 'getan'.
diff -r 150180e972d3 -r 84f9b1eeb8b6 scripts/zeiterfassung.py
--- a/scripts/zeiterfassung.py Fri Feb 10 15:01:07 2017 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,104 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# zeiterfassung
-# -------------
-# (c) 2008 by Sascha L. Teichmann <sascha.teichmann at intevation.de>
-# (c) 2011, 2012 by Björn Ricks <bjoern.ricks at intevation.de>
-#
-# Simple script which generates lines for zeiterfassung.txt files.
-#
-# This is Free Software licensed under the terms of GPLv3 or later.
-# For details see LICENSE coming with the source of 'getan'.
-#
-import sys
-import getopt
-import codecs
-import locale
-
-from datetime import datetime, timedelta
-
-from getan.template import render
-
-DEFAULT_DATABASE = "time.db"
-
-ZEITERFASSUNG_TEMPLATE = "zeiterfassung"
-
-USAGE = '''usage: %s <options>
- with <options>
- [--user=|-u <user>] : Name of user, default: $USER
- [--database=|-d <database>]: getan database, default: time.db
- [--project=|-p <key>] : Key of output project, default: all
- [--encoding=|-e encoding] : encoding of output, default: none
- [--week=]|-w <week>] : week of year
- [--year=]|-y <year>] : year
- [--list|-l] : list all projects
- [--help|-h] : This text
- [--emtpy|-m] : show empty projects
- [--lastweek|-c] : entries of last working week
- [--template|-t <template>] : jinja2 template to use, default: zeiterfassung
-'''
-
-
-def usage(exit_code=0):
- print USAGE % sys.argv[0],
- sys.exit(exit_code)
-
-
-def main():
-
- database = DEFAULT_DATABASE
- user = None
- list_projects = False
- project = None
- encoding = None
- week = None
- year = None
- empty_proj = False
- database = None
- template = ZEITERFASSUNG_TEMPLATE
-
- opts, args = getopt.getopt(
- sys.argv[1:],
- 'd:u:p:e:hl:w:y:mct:',
- ['database=', 'user=', 'project=', 'encoding=', 'help', 'list', 'week=',
- 'year=', 'empty', 'lastweek', 'template='])
-
- for opt, val in opts:
- if opt in ("--database", "-d"):
- database = val
- elif opt in ("--user", "-u"):
- user = val
- elif opt in ("--project", "-p"):
- project = val
- elif opt in ("--encoding", "-e"):
- encoding = val
- elif opt in ("--help", "-h"):
- usage()
- elif opt in ("--list", "-l"):
- list_projects = True
- elif opt in ("--year", "-y"):
- year = int(val)
- elif opt in ("--week", "-w"):
- week = int(val)
- elif opt in ("--lastweek", "-c") and not week:
- week = (datetime.now() - timedelta(7)).isocalendar()[1]
- elif opt in ("--empty", "-m"):
- empty_proj = True
- elif opt in ("--template", "-t"):
- template = val
-
- if not encoding:
- encoding = locale.getdefaultlocale()[1]
-
- Writer = codecs.getwriter(encoding)
- sys.stdout = Writer(sys.stdout)
-
- print render(user=user, database=database, week=week, year=year,
- template=template, project=project, empty_projects=empty_proj)
-
-
-if __name__ == '__main__':
- main()
-
-# vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8:
More information about the Getan-commits
mailing list