diff options
author | Julien Valroff <julien@kirya.net> | 2012-01-08 07:54:47 +0100 |
---|---|---|
committer | Julien Valroff <julien@kirya.net> | 2012-01-08 07:54:47 +0100 |
commit | c7b6cc09dc694f8f321c5c7365c1e6ca445291a0 (patch) | |
tree | d18525fdc87178ae9e6c497734ed40ea62e41e63 /rapid/generatename.py | |
parent | 1e866ec41146b8c85b874eb09b605538823985a4 (diff) | |
parent | 05e7b52a1f94a40996f2619ad9db8bbdb1518497 (diff) |
Merge commit 'upstream/0.4.3'
Diffstat (limited to 'rapid/generatename.py')
-rw-r--r-- | rapid/generatename.py | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/rapid/generatename.py b/rapid/generatename.py index 1c95478..99d7287 100644 --- a/rapid/generatename.py +++ b/rapid/generatename.py @@ -112,6 +112,39 @@ class PhotoName: logger.error("Both file modification time and metadata date & time are invalid for file %s", self.rpd_file.full_file_name) return '' + def _get_thm_extension(self): + """ + Generates THM extension with correct capitalization, if needed + """ + if self.rpd_file.thm_full_name: + thm_extension = os.path.splitext(self.rpd_file.thm_full_name)[1] + if self.L2 == UPPERCASE: + thm_extension = thm_extension.upper() + elif self.L2 == LOWERCASE: + thm_extension = thm_extension.lower() + self.rpd_file.thm_extension = thm_extension + else: + self.rpd_file.thm_extension = None + + def _get_xmp_extension(self, extension): + """ + Generates XMP extension with correct capitalization, if needed. + """ + if self.rpd_file.temp_xmp_full_name: + if self.L2 == UPPERCASE: + self.rpd_file.xmp_extension = '.XMP' + elif self.L2 == LOWERCASE: + self.rpd_file.xmp_extension = '.xmp' + else: + # mimic capitalization of extension + if extension.isupper(): + self.rpd_file.xmp_extension = '.XMP' + else: + self.rpd_file.xmp_extension = '.xmp' + else: + self.rpd_file.xmp_extension = None + + def _get_filename_component(self): """ Returns portion of new file / subfolder name based on the file name @@ -121,9 +154,13 @@ class PhotoName: if self.L1 == NAME_EXTENSION: filename = self.rpd_file.name + self._get_thm_extension() + self._get_xmp_extension(extension) elif self.L1 == NAME: filename = name elif self.L1 == EXTENSION: + self._get_thm_extension() + self._get_xmp_extension(extension) if extension: if not self.strip_initial_period_from_extension: # keep the period / dot of the extension, so the user does not @@ -196,7 +233,10 @@ class PhotoName: padding = LIST_SHUTTER_COUNT_L2.index(self.L2) + 3 formatter = '%0' + str(padding) + "i" v = formatter % v - + elif self.L1 == FILE_NUMBER: + v = self.rpd_file.metadata.file_number() + if v and self.L2 == FILE_NUMBER_FOLDER: + v = v[:3] elif self.L1 == OWNER_NAME: v = self.rpd_file.metadata.owner_name() elif self.L1 == ARTIST: |