diff --git a/.gitignore b/.gitignore index 14e98fe..6dad570 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ original_PDF/* example_call.sh testdata .cache +MANIFEST dist diff --git a/guessfilename.py b/guessfilename.py index 1ade236..2227105 100755 --- a/guessfilename.py +++ b/guessfilename.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -PROG_VERSION = u"Time-stamp: <2017-12-08 15:59:03 vk>" +PROG_VERSION = u"Time-stamp: <2017-12-17 16:44:54 vk>" # TODO: @@ -463,6 +463,13 @@ class GuessFilename(object): logging.debug('build_string_via_indexgroups: RESULT: ' + result) return result + + def NumToMonth(self, month): + + months = ['Dezember', 'Jaenner', 'Februar', 'Maerz', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'] + return months[month] + + def derive_new_filename_from_old_filename(self, oldfilename): """ Analyses the old filename and returns a new one if feasible. @@ -475,6 +482,15 @@ class GuessFilename(object): logging.debug("derive_new_filename_from_old_filename called") datetimestr, basefilename, tags, extension = self.split_filename_entities(oldfilename) + # Paycheck + if self.config.SALARY_STARTSTRING in oldfilename and extension == "PDF": + year, month, day = re.match(self.DATESTAMP_REGEX, datetimestr).groups() + month = int(month) + if int(day) < 15: + # salary came after the new month has started; salary is from previous month + month = month - 1 + return datetimestr + ' ' + self.config.SALARY_DESCRIPTION + ' ' + self.NumToMonth(month) + ' - € -- detego private.pdf' + # Android screenshots: # Screenshot_2013-03-05-08-14-09.png -> 2013-03-05T08-14-09 -- android screenshots.png regex_match = re.match(self.ANDROID_SCREENSHOT_REGEX, oldfilename) diff --git a/guessfilename_test.py b/guessfilename_test.py index f52aa11..84fc65c 100755 --- a/guessfilename_test.py +++ b/guessfilename_test.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -*- coding: utf-8; mode: python; -*- -# Time-stamp: <2017-12-08 15:15:40 vk> +# Time-stamp: <2017-12-17 16:42:07 vk> import unittest import logging