This commit is contained in:
Kovid Goyal 2011-07-06 13:20:14 -06:00
parent d3df05493b
commit 71e0e95adf
2 changed files with 13 additions and 3 deletions

View File

@ -19,7 +19,7 @@ from calibre.customize.ui import metadata_plugins, all_metadata_plugins
from calibre.ebooks.metadata.sources.base import create_log, msprefs from calibre.ebooks.metadata.sources.base import create_log, msprefs
from calibre.ebooks.metadata.xisbn import xisbn from calibre.ebooks.metadata.xisbn import xisbn
from calibre.ebooks.metadata.book.base import Metadata from calibre.ebooks.metadata.book.base import Metadata
from calibre.utils.date import utc_tz from calibre.utils.date import utc_tz, as_utc
from calibre.utils.html2text import html2text from calibre.utils.html2text import html2text
from calibre.utils.icu import lower from calibre.utils.icu import lower
@ -311,8 +311,10 @@ class ISBNMerge(object):
else: else:
min_date = datetime(3001, 1, 1, tzinfo=utc_tz) min_date = datetime(3001, 1, 1, tzinfo=utc_tz)
for r in results: for r in results:
if r.pubdate is not None and r.pubdate < min_date: if r.pubdate is not None:
min_date = r.pubdate candidate = as_utc(r.pubdate)
if candidate < min_date:
min_date = candidate
if min_date.year < 3000: if min_date.year < 3000:
ans.pubdate = min_date ans.pubdate = min_date

View File

@ -132,6 +132,14 @@ def as_local_time(date_time, assume_utc=True):
_local_tz) _local_tz)
return date_time.astimezone(_local_tz) return date_time.astimezone(_local_tz)
def as_utc(date_time, assume_utc=True):
if not hasattr(date_time, 'tzinfo'):
return date_time
if date_time.tzinfo is None:
date_time = date_time.replace(tzinfo=_utc_tz if assume_utc else
_local_tz)
return date_time.astimezone(_utc_tz)
def now(): def now():
return datetime.now().replace(tzinfo=_local_tz) return datetime.now().replace(tzinfo=_local_tz)