diff --git a/data/interfaces/default/comingEpisodes.tmpl b/data/interfaces/default/comingEpisodes.tmpl index bb6d78ccf701681e39d6fc311dadb0b09a7070ad..b03825352010e6c295a07be4585e957b6116533c 100644 --- a/data/interfaces/default/comingEpisodes.tmpl +++ b/data/interfaces/default/comingEpisodes.tmpl @@ -1,5 +1,5 @@ #import sickbeard -#import datetime +#import datetime, locale #from sickbeard.common import * #set global $title="Coming Episodes" @@ -219,7 +219,7 @@ Custom #set $show_div = "ep_listing listing_toofar" #set $too_late_header = True #elif $cur_ep_airdate >= $today and $cur_ep_airdate < $next_week: - <br /><h1 class="day">$datetime.date.fromordinal($cur_ep_airdate).strftime("%A")</h1> + <br /><h1 class="day">$datetime.date.fromordinal($cur_ep_airdate).strftime("%A").decode(locale.getpreferredencoding())</h1> #if $cur_ep_airdate == $today: #set $show_div = "ep_listing listing_current" #else: diff --git a/data/interfaces/default/inc_bottom.tmpl b/data/interfaces/default/inc_bottom.tmpl index 5373b5fceb5c7acbcb4d9fe5b53054264d7e69d6..a9de1096ed76de52cd3e17da0f2dc579a643f4af 100644 --- a/data/interfaces/default/inc_bottom.tmpl +++ b/data/interfaces/default/inc_bottom.tmpl @@ -1,5 +1,5 @@ #import sickbeard -#import datetime +#import datetime, locale #from sickbeard import db #from sickbeard.common import * </div> @@ -14,7 +14,7 @@ <br /> <b>Search</b>: <%=str(sickbeard.currentSearchScheduler.timeLeft()).split('.')[0]%> | <!--<b>Update</b>: <a%a=str(sickbeard.updateScheduler.timeLeft()).split('.')[0]%> | --> -<b>Backlog</b>: $sickbeard.backlogSearchScheduler.nextRun().strftime("%a %b %d") <br /> +<b>Backlog</b>: $sickbeard.backlogSearchScheduler.nextRun().strftime("%a %b %d").decode(locale.getpreferredencoding()) <br /> </div> </body> </html> diff --git a/lib/hachoir_parser/parser_list.py b/lib/hachoir_parser/parser_list.py index 0fd9a307d447c4acc38eede823cfbb89d93b9aa0..88692f3c402ea203412fe0c5f1424c418c8cb058 100644 --- a/lib/hachoir_parser/parser_list.py +++ b/lib/hachoir_parser/parser_list.py @@ -198,7 +198,8 @@ class HachoirParserList(ParserList): return self.parser_list todo = [] - module = __import__("lib.hachoir_parser") + from lib import hachoir_parser + module = hachoir_parser for attrname in dir(module): attr = getattr(module, attrname) if isinstance(attr, types.ModuleType): diff --git a/sickbeard/image_cache.py b/sickbeard/image_cache.py index 7571e83ebec9cc6363210402ac03005bcbddafd7..d80021d1a2c914c569a106745d80d593663e9fd2 100644 --- a/sickbeard/image_cache.py +++ b/sickbeard/image_cache.py @@ -18,6 +18,7 @@ import os.path import sys +import traceback import sickbeard @@ -60,9 +61,15 @@ class ImageCache: def which_type(self, path): if not ek.ek(os.path.isfile, path): + logger.log(u"Couldn't check the type of "+str(path)+" cause it doesn't exist", logger.WARNING) return None img_parser = createParser(path) img_metadata = extractMetadata(img_parser) + + if not img_metadata: + logger.log(u"Unable to get metadata from "+str(path)+", not using your existing image", logger.DEBUG) + return None + img_ratio = float(img_metadata.get('width'))/float(img_metadata.get('height')) img_parser.stream._input.close() @@ -115,17 +122,11 @@ class ImageCache: logger.log(u"Checking if we need any cache images for show "+str(show_obj.tvdbid), logger.DEBUG) - has_poster = self.has_poster(show_obj.tvdbid) - has_banner = self.has_banner(show_obj.tvdbid) - logger.log(u"has_poster: "+str(has_poster)+", has_banner: "+str(has_banner), logger.DEBUG) - # check if the images are already cached or not - need_images = {self.POSTER: not has_poster, - self.BANNER: not has_banner, + need_images = {self.POSTER: not self.has_poster(show_obj.tvdbid), + self.BANNER: not self.has_banner(show_obj.tvdbid), } - logger.log(u"need_images: "+str(need_images), logger.DEBUG) - if not need_images[self.POSTER] and not need_images[self.BANNER]: logger.log(u"No new cache images needed, not retrieving new ones") return @@ -138,6 +139,10 @@ class ImageCache: cur_file_name = os.path.abspath(cur_provider.get_poster_path(show_obj)) cur_file_type = self.which_type(cur_file_name) + if cur_file_type == None: + logger.log(u"Unable to retrieve image type, not using the image from "+str(cur_file_name), logger.WARNING) + continue + logger.log(u"Checking if image "+cur_file_name+" (type "+str(cur_file_type)+" needs metadata: "+str(need_images[cur_file_type]), logger.DEBUG) if cur_file_type in need_images and need_images[cur_file_type]: