NarrativeWeb: dates not localised in place pages (#916)
* NarrativeWeb: dates not localised in place pages Fixes #11357 * WEBCAL: home link translated to lowercase Fixes #11358
This commit is contained in:
parent
49bad564ae
commit
2aa6b54de4
@ -60,7 +60,7 @@ import logging
|
||||
from gramps.gen.const import GRAMPS_LOCALE as glocale
|
||||
from gramps.gen.lib import (FamilyRelType, NoteType, NameType, Person,
|
||||
UrlType, Name, PlaceType, EventRoleType,
|
||||
Family, Citation, Place)
|
||||
Family, Citation, Place, Date)
|
||||
from gramps.gen.lib.date import Today
|
||||
from gramps.gen.const import PROGRAM_NAME, URL_HOMEPAGE
|
||||
from gramps.version import VERSION
|
||||
@ -2902,7 +2902,11 @@ class BasePage: # pylint: disable=C1001
|
||||
if self.reference_sort:
|
||||
role = obj[2] # name
|
||||
elif len(obj[2].split('-')) > 1:
|
||||
role = obj[2] # date in ISO format
|
||||
dummy_cal, role = obj[2].split(':') # date in ISO format
|
||||
# dummy_cal is the original calendar. remove it.
|
||||
if len(role.split(' ')) == 2:
|
||||
# for sort, remove the modifier before, after...
|
||||
(dummy_modifier, role) = role.split(' ')
|
||||
else:
|
||||
role = "3"
|
||||
return role
|
||||
@ -2917,15 +2921,34 @@ class BasePage: # pylint: disable=C1001
|
||||
if role != "":
|
||||
if self.reference_sort:
|
||||
role = ""
|
||||
elif len(role.split('-')) > 1:
|
||||
elif role[1:2] == ':':
|
||||
# cal is the original calendar
|
||||
cal, role = role.split(':')
|
||||
# conver ISO date to Date for translation.
|
||||
# all modifiers are in english, so convert them
|
||||
# to the local language
|
||||
if len(role.split(' - ')) > 1:
|
||||
(date1, date2) = role.split(' - ')
|
||||
role = self._("between") + " " + date1 + " "
|
||||
role += self._("and") + " " + date2
|
||||
elif len(role.split(' ')) == 2:
|
||||
(pref, date) = role.split(' ')
|
||||
if "aft" in pref:
|
||||
role = self._("after") + " " + date
|
||||
if "bef" in pref:
|
||||
role = self._("before") + " " + date
|
||||
if pref in ("abt", "about"):
|
||||
role = self._("about") + " " + date
|
||||
if "c" in pref:
|
||||
role = self._("circa") + " " + date
|
||||
if "around" in pref:
|
||||
role = self._("around") + " " + date
|
||||
# parse is done in the default language
|
||||
date = _dp.parse(role)
|
||||
date = self.rlocale.get_date(date)
|
||||
role = " (%s) " % date
|
||||
# reset the date to the original calendar
|
||||
cdate = date.to_calendar(Date.calendar_names[int(cal)])
|
||||
ldate = self.rlocale.get_date(cdate)
|
||||
role = " (%s) " % ldate
|
||||
else:
|
||||
role = " (%s) " % self._(role)
|
||||
ordered += list_html
|
||||
|
@ -845,7 +845,12 @@ class NavWebReport(Report):
|
||||
if self.reference_sort:
|
||||
role_or_date = name
|
||||
else:
|
||||
role_or_date = str(event.get_date_object())
|
||||
date = event.get_date_object()
|
||||
# calendar is the original date calendar
|
||||
calendar = str(date.get_calendar())
|
||||
# convert date to gregorian for a correct sort
|
||||
_date = str(date.to_calendar("gregorian"))
|
||||
role_or_date = calendar + ":" + _date
|
||||
else:
|
||||
role_or_date = ""
|
||||
place_fname = self.build_url_fname(place_handle, "plc",
|
||||
|
@ -596,7 +596,8 @@ class WebCalReport(Report):
|
||||
# Note. We use '/' here because it is a URL, not a OS
|
||||
# dependent pathname need to leave home link alone,
|
||||
# so look for it ...
|
||||
url_fname = url_fname.lower()
|
||||
if nav_text != _("Home"):
|
||||
url_fname = url_fname.lower()
|
||||
url = url_fname
|
||||
add_subdirs = False
|
||||
if not (url.startswith('http:') or url.startswith('/')):
|
||||
|
Loading…
Reference in New Issue
Block a user