summaryrefslogtreecommitdiff
path: root/rapid/generatename.py
diff options
context:
space:
mode:
authorJulien Valroff <julien@kirya.net>2012-01-08 07:54:47 +0100
committerJulien Valroff <julien@kirya.net>2012-01-08 07:54:47 +0100
commitc7b6cc09dc694f8f321c5c7365c1e6ca445291a0 (patch)
treed18525fdc87178ae9e6c497734ed40ea62e41e63 /rapid/generatename.py
parent1e866ec41146b8c85b874eb09b605538823985a4 (diff)
parent05e7b52a1f94a40996f2619ad9db8bbdb1518497 (diff)
Merge commit 'upstream/0.4.3'
Diffstat (limited to 'rapid/generatename.py')
-rw-r--r--rapid/generatename.py42
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: