diff --git a/couchpotato/core/providers/metadata/base.py b/couchpotato/core/providers/metadata/base.py index d18ecbf7..3819d566 100644 --- a/couchpotato/core/providers/metadata/base.py +++ b/couchpotato/core/providers/metadata/base.py @@ -28,14 +28,16 @@ class MetaDataBase(Plugin): except: log.error('Failed to update movie, before creating metadata: %s' % traceback.format_exc()) - root = self.getRootName(release) + root_name = self.getRootName(release) + name = os.path.basename(root_name) + root = os.path.dirname(root_name) movie_info = release['library'].get('info') for file_type in ['nfo', 'thumbnail', 'fanart']: try: # Get file path - name = getattr(self, 'get' + file_type.capitalize() + 'Name')(root) + name = getattr(self, 'get' + file_type.capitalize() + 'Name')(name, root) if name and self.conf('meta_' + file_type): @@ -54,13 +56,13 @@ class MetaDataBase(Plugin): def getRootName(self, data): return - def getFanartName(self, root): + def getFanartName(self, name, root): return - def getThumbnailName(self, root): + def getThumbnailName(self, name, root): return - def getNfoName(self, root): + def getNfoName(self, name, root): return def getNfo(self, movie_info = {}, data = {}): diff --git a/couchpotato/core/providers/metadata/xbmc/main.py b/couchpotato/core/providers/metadata/xbmc/main.py index 7797cce8..9a09edd8 100644 --- a/couchpotato/core/providers/metadata/xbmc/main.py +++ b/couchpotato/core/providers/metadata/xbmc/main.py @@ -14,14 +14,17 @@ class XBMC(MetaDataBase): def getRootName(self, data = {}): return os.path.join(data['destination_dir'], data['filename']) - def getFanartName(self, root): - return self.conf('meta_fanart_name') % root + def getFanartName(self, name, root): + return self.createMetaName(self.conf('meta_fanart_name'), name, root) - def getThumbnailName(self, root): - return self.conf('meta_thumbnail_name') % root + def getThumbnailName(self, name, root): + return self.createMetaName(self.conf('meta_thumbnail_name'), name, root) - def getNfoName(self, root): - return self.conf('meta_nfo_name') % root + def getNfoName(self, name, root): + return self.createMetaName(self.conf('meta_nfo_name'), name, root) + + def createMetaName(self, basename, name, root): + return os.path.join(root, basename.replace('%s', name)) def getNfo(self, movie_info = {}, data = {}): nfoxml = Element('movie')