removed _make_date module from libholiday as request by Brian. Removed make_date completely and substituted gen.lib.Date() instead for Calendar, BirthdayReport, and WebCal. Changes progress bar text in WebCal and NarrativeWeb.
svn: r11837
This commit is contained in:
@ -43,22 +43,16 @@ from Utils import probably_alive, ProgressMeter
|
|||||||
from FontScale import string_trim
|
from FontScale import string_trim
|
||||||
|
|
||||||
import libholiday
|
import libholiday
|
||||||
from libholiday import _make_date
|
from libholiday import g2iso
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# Support functions
|
# Constants
|
||||||
#
|
#
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
pt2cm = ReportUtils.pt2cm
|
pt2cm = ReportUtils.pt2cm
|
||||||
cm2pt = ReportUtils.cm2pt
|
cm2pt = ReportUtils.cm2pt
|
||||||
|
|
||||||
def g2iso(dow):
|
|
||||||
""" Converst GRAMPS day of week to ISO day of week """
|
|
||||||
# GRAMPS: SUN = 1
|
|
||||||
# ISO: MON = 1
|
|
||||||
return (dow + 5) % 7 + 1
|
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# Calendar
|
# Calendar
|
||||||
@ -143,7 +137,7 @@ class Calendar(Report):
|
|||||||
def write_report(self):
|
def write_report(self):
|
||||||
""" The short method that runs through each month and creates a page. """
|
""" The short method that runs through each month and creates a page. """
|
||||||
# initialize the dict to fill:
|
# initialize the dict to fill:
|
||||||
self.progress = ProgressMeter(_('Calendar'))
|
self.progress = ProgressMeter(_('Calendar Report'))
|
||||||
self.calendar = {}
|
self.calendar = {}
|
||||||
|
|
||||||
# get the information, first from holidays:
|
# get the information, first from holidays:
|
||||||
@ -260,11 +254,15 @@ class Calendar(Report):
|
|||||||
if birth_ref:
|
if birth_ref:
|
||||||
birth_event = self.database.get_event_from_handle(birth_ref.ref)
|
birth_event = self.database.get_event_from_handle(birth_ref.ref)
|
||||||
birth_date = birth_event.get_date_object()
|
birth_date = birth_event.get_date_object()
|
||||||
|
|
||||||
if self.birthdays and birth_date is not None:
|
if self.birthdays and birth_date is not None:
|
||||||
year = birth_date.get_year()
|
year = birth_date.get_year()
|
||||||
month = birth_date.get_month()
|
month = birth_date.get_month()
|
||||||
day = birth_date.get_day()
|
day = birth_date.get_day()
|
||||||
age = self.year - year
|
|
||||||
|
prob_alive_date = gen.lib.Date(self.year, month, day)
|
||||||
|
|
||||||
|
nyears = self.year - year
|
||||||
# add some things to handle maiden name:
|
# add some things to handle maiden name:
|
||||||
father_lastname = None # husband, actually
|
father_lastname = None # husband, actually
|
||||||
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
||||||
@ -284,10 +282,19 @@ class Calendar(Report):
|
|||||||
if father is not None:
|
if father is not None:
|
||||||
father_lastname = father.get_primary_name().get_surname()
|
father_lastname = father.get_primary_name().get_surname()
|
||||||
short_name = self.get_name(person, father_lastname)
|
short_name = self.get_name(person, father_lastname)
|
||||||
if age >= 0:
|
alive = probably_alive(person, self.database, prob_alive_date)
|
||||||
alive = probably_alive(person, self.database, _make_date(self.year, month, day))
|
|
||||||
if ((self.alive and alive) or not self.alive):
|
if (self.alive and alive) or not self.alive:
|
||||||
self.add_day_item("%s, %d%s" % (short_name, age, ""), month, day)
|
if nyears == 0:
|
||||||
|
text = _('%(person)s, birth%(relation)s') % {
|
||||||
|
'person' : short_name,
|
||||||
|
'relation' : ""}
|
||||||
|
else:
|
||||||
|
text = _('%(person)s, %(age)d%(relation)s') % {
|
||||||
|
'person' : short_name,
|
||||||
|
'age' : nyears,
|
||||||
|
'relation' : ""}
|
||||||
|
self.add_day_item(text, month, day)
|
||||||
if self.anniversaries:
|
if self.anniversaries:
|
||||||
family_list = person.get_family_handle_list()
|
family_list = person.get_family_handle_list()
|
||||||
for fhandle in family_list:
|
for fhandle in family_list:
|
||||||
@ -323,15 +330,25 @@ class Calendar(Report):
|
|||||||
year = event_obj.get_year()
|
year = event_obj.get_year()
|
||||||
month = event_obj.get_month()
|
month = event_obj.get_month()
|
||||||
day = event_obj.get_day()
|
day = event_obj.get_day()
|
||||||
years = self.year - year
|
|
||||||
if years >= 0:
|
prob_alive_date = gen.lib.Date(self.year, month, day)
|
||||||
|
|
||||||
|
nyears = self.year - year
|
||||||
|
if nyears == 0:
|
||||||
|
text = _("%(spouse)s and\n %(person)s, wedding") % {
|
||||||
|
'spouse' : spouse_name,
|
||||||
|
'person' : short_name,
|
||||||
|
}
|
||||||
|
else:
|
||||||
text = _("%(spouse)s and\n %(person)s, %(nyears)d") % {
|
text = _("%(spouse)s and\n %(person)s, %(nyears)d") % {
|
||||||
'spouse' : spouse_name,
|
'spouse' : spouse_name,
|
||||||
'person' : short_name,
|
'person' : short_name,
|
||||||
'nyears' : years,
|
'nyears' : nyears}
|
||||||
}
|
|
||||||
alive1 = probably_alive(person, self.database, _make_date(self.year, month, day))
|
alive1 = probably_alive(person, self.database, \
|
||||||
alive2 = probably_alive(spouse, self.database, _make_date(self.year, month, day))
|
prob_alive_date)
|
||||||
|
alive2 = probably_alive(spouse, self.database, \
|
||||||
|
prob_alive_date)
|
||||||
if ((self.alive and alive1 and alive2) or not self.alive):
|
if ((self.alive and alive1 and alive2) or not self.alive):
|
||||||
self.add_day_item(text, month, day)
|
self.add_day_item(text, month, day)
|
||||||
|
|
||||||
|
@ -42,7 +42,6 @@ import gen.lib
|
|||||||
from Utils import probably_alive, ProgressMeter
|
from Utils import probably_alive, ProgressMeter
|
||||||
|
|
||||||
import libholiday
|
import libholiday
|
||||||
from libholiday import _make_date
|
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
@ -202,11 +201,15 @@ class CalendarReport(Report):
|
|||||||
if birth_ref:
|
if birth_ref:
|
||||||
birth_event = self.database.get_event_from_handle(birth_ref.ref)
|
birth_event = self.database.get_event_from_handle(birth_ref.ref)
|
||||||
birth_date = birth_event.get_date_object()
|
birth_date = birth_event.get_date_object()
|
||||||
|
|
||||||
if self.birthdays and birth_date is not None:
|
if self.birthdays and birth_date is not None:
|
||||||
year = birth_date.get_year()
|
year = birth_date.get_year()
|
||||||
month = birth_date.get_month()
|
month = birth_date.get_month()
|
||||||
day = birth_date.get_day()
|
day = birth_date.get_day()
|
||||||
age = self.year - year
|
|
||||||
|
prob_alive_date = gen.lib.Date(self.year, month, day)
|
||||||
|
|
||||||
|
nyears = self.year - year
|
||||||
# add some things to handle maiden name:
|
# add some things to handle maiden name:
|
||||||
father_lastname = None # husband, actually
|
father_lastname = None # husband, actually
|
||||||
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
||||||
@ -224,11 +227,12 @@ class CalendarReport(Report):
|
|||||||
if father_handle:
|
if father_handle:
|
||||||
father = self.database.get_person_from_handle(father_handle)
|
father = self.database.get_person_from_handle(father_handle)
|
||||||
if father is not None:
|
if father is not None:
|
||||||
father_lastname = father.get_primary_name().get_surname()
|
father_lastname = father.get_primary_name().surname
|
||||||
short_name = self.get_name(person, father_lastname)
|
short_name = self.get_name(person, father_lastname)
|
||||||
if age >= 0:
|
|
||||||
alive = probably_alive(person, self.database, _make_date(self.year, month, day))
|
alive = probably_alive(person, self.database, prob_alive_date)
|
||||||
if ((self.alive and alive) or not self.alive):
|
if ((self.alive and alive) or not self.alive):
|
||||||
|
|
||||||
comment = ""
|
comment = ""
|
||||||
if self.relationships:
|
if self.relationships:
|
||||||
relation = rel_calc.get_one_relationship(
|
relation = rel_calc.get_one_relationship(
|
||||||
@ -237,7 +241,17 @@ class CalendarReport(Report):
|
|||||||
person)
|
person)
|
||||||
if relation:
|
if relation:
|
||||||
comment = " --- %s" % relation
|
comment = " --- %s" % relation
|
||||||
self.add_day_item("%s, %d%s" % (short_name, age, comment), month, day)
|
if nyears == 0:
|
||||||
|
text = _('%(person)s, birth%(relation)s') % {
|
||||||
|
'person' : short_name,
|
||||||
|
'relation' : comment}
|
||||||
|
else:
|
||||||
|
text = _('%(person)s, %(age)d%(relation)s') % {
|
||||||
|
'person' : short_name,
|
||||||
|
'age' : nyears,
|
||||||
|
'relation' : comment}
|
||||||
|
|
||||||
|
self.add_day_item(text, month, day)
|
||||||
if self.anniversaries:
|
if self.anniversaries:
|
||||||
family_list = person.get_family_handle_list()
|
family_list = person.get_family_handle_list()
|
||||||
for fhandle in family_list:
|
for fhandle in family_list:
|
||||||
@ -273,16 +287,23 @@ class CalendarReport(Report):
|
|||||||
year = event_obj.get_year()
|
year = event_obj.get_year()
|
||||||
month = event_obj.get_month()
|
month = event_obj.get_month()
|
||||||
day = event_obj.get_day()
|
day = event_obj.get_day()
|
||||||
years = self.year - year
|
nyears = self.year - year
|
||||||
if years >= 0:
|
if nyears == 0:
|
||||||
|
text = _("%(spouse)s and\n %(person)s, wedding") % {
|
||||||
|
'spouse' : spouse_name,
|
||||||
|
'person' : short_name}
|
||||||
|
else:
|
||||||
text = _("%(spouse)s and\n %(person)s, %(nyears)d") % {
|
text = _("%(spouse)s and\n %(person)s, %(nyears)d") % {
|
||||||
'spouse' : spouse_name,
|
'spouse' : spouse_name,
|
||||||
'person' : short_name,
|
'person' : short_name,
|
||||||
'nyears' : years,
|
'nyears' : nyears}
|
||||||
}
|
|
||||||
alive1 = probably_alive(person, self.database, _make_date(self.year, month, day))
|
prob_alive_date = gen.lib.Date(self.year, month, day)
|
||||||
alive2 = probably_alive(spouse, self.database, _make_date(self.year, month, day))
|
alive1 = probably_alive(person, self.database, \
|
||||||
if ((self.alive and alive1 and alive2) or not self.alive):
|
prob_alive_date)
|
||||||
|
alive2 = probably_alive(spouse, self.database, \
|
||||||
|
prob_alive_date)
|
||||||
|
if (self.alive and alive1 and alive2) or not self.alive:
|
||||||
self.add_day_item(text, month, day)
|
self.add_day_item(text, month, day)
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
|
@ -2758,7 +2758,7 @@ class NavWebReport(Report):
|
|||||||
value)
|
value)
|
||||||
return
|
return
|
||||||
|
|
||||||
self.progress = Utils.ProgressMeter(_("Generate XHTML Reports"), '')
|
self.progress = Utils.ProgressMeter(_("Narrated Web Site Report"), '')
|
||||||
|
|
||||||
# Build the person list
|
# Build the person list
|
||||||
ind_list = self.build_person_list()
|
ind_list = self.build_person_list()
|
||||||
|
@ -78,7 +78,6 @@ from DateHandler import displayer as _dd
|
|||||||
from DateHandler import parser as _dp
|
from DateHandler import parser as _dp
|
||||||
|
|
||||||
import libholiday
|
import libholiday
|
||||||
from libholiday import _make_date
|
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
@ -321,13 +320,14 @@ class WebCalReport(Report):
|
|||||||
|
|
||||||
if month > 0:
|
if month > 0:
|
||||||
try:
|
try:
|
||||||
my_date = _make_date(year, month, day)
|
event_date = gen.lib.Date()
|
||||||
|
event_date.set_yr_mon_day(year, month, day)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
my_date = '...'
|
event_date = '...'
|
||||||
else:
|
else:
|
||||||
my_date = '...' #Incomplete date as in about, circa, etc.
|
event_date = '...' #Incomplete date as in about, circa, etc.
|
||||||
|
|
||||||
day_list.append((text, event, my_date))
|
day_list.append((text, event, event_date))
|
||||||
month_dict[day] = day_list
|
month_dict[day] = day_list
|
||||||
self.calendar[month] = month_dict
|
self.calendar[month] = month_dict
|
||||||
|
|
||||||
@ -614,7 +614,8 @@ class WebCalReport(Report):
|
|||||||
# specify day class for this day
|
# specify day class for this day
|
||||||
of.write('class="%s">\n' % hilightday)
|
of.write('class="%s">\n' % hilightday)
|
||||||
|
|
||||||
event_date = _make_date(thisday.year, thisday.month, thisday.day)
|
event_date = gen.lib.Date()
|
||||||
|
event_date.set_yr_mon_day(thisday.year, thisday.month, thisday.day)
|
||||||
day_list = get_day_list(event_date, holiday_list, bday_anniv_list)
|
day_list = get_day_list(event_date, holiday_list, bday_anniv_list)
|
||||||
|
|
||||||
if day_list:
|
if day_list:
|
||||||
@ -902,7 +903,7 @@ class WebCalReport(Report):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
# open progress meter bar
|
# open progress meter bar
|
||||||
self.progress = Utils.ProgressMeter(_("Generate XHTML Calendars"), '')
|
self.progress = Utils.ProgressMeter(_("Web Calendar Report"), '')
|
||||||
|
|
||||||
# get data from database for birthdays/ anniversaries
|
# get data from database for birthdays/ anniversaries
|
||||||
# TODO. Verify that we collect correct info based on start_year
|
# TODO. Verify that we collect correct info based on start_year
|
||||||
@ -998,7 +999,7 @@ class WebCalReport(Report):
|
|||||||
nr_up = 1 # Number of directory levels up to get to self.html_dir / root
|
nr_up = 1 # Number of directory levels up to get to self.html_dir / root
|
||||||
|
|
||||||
# generate progress pass for "WebCal"
|
# generate progress pass for "WebCal"
|
||||||
self.progress.set_pass(_('Creating WebCal calendars'), self.end_month - self.start_month)
|
self.progress.set_pass(_('Formatting months ...'), self.end_month - self.start_month)
|
||||||
|
|
||||||
for month in range(self.start_month, self.end_month + 1):
|
for month in range(self.start_month, self.end_month + 1):
|
||||||
|
|
||||||
@ -1072,11 +1073,15 @@ class WebCalReport(Report):
|
|||||||
month = birth_date.get_month()
|
month = birth_date.get_month()
|
||||||
day = birth_date.get_day()
|
day = birth_date.get_day()
|
||||||
|
|
||||||
|
prob_alive_date = gen.lib.Date(this_year, month, day)
|
||||||
|
|
||||||
# add some things to handle maiden name:
|
# add some things to handle maiden name:
|
||||||
father_lastname = None # husband, actually
|
father_lastname = None # husband, actually
|
||||||
sex = person.get_gender()
|
sex = person.get_gender()
|
||||||
if sex == gen.lib.Person.FEMALE:
|
if sex == gen.lib.Person.FEMALE:
|
||||||
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
|
||||||
|
# get husband's last name:
|
||||||
|
if self.maiden_name in ['spouse_first', 'spouse_last']:
|
||||||
if len(family_list) > 0:
|
if len(family_list) > 0:
|
||||||
if self.maiden_name == 'spouse_first':
|
if self.maiden_name == 'spouse_first':
|
||||||
fhandle = family_list[0]
|
fhandle = family_list[0]
|
||||||
@ -1092,9 +1097,9 @@ class WebCalReport(Report):
|
|||||||
father_name = father.get_primary_name()
|
father_name = father.get_primary_name()
|
||||||
father_lastname = _get_regular_surname(sex, father_name)
|
father_lastname = _get_regular_surname(sex, father_name)
|
||||||
short_name = _get_short_name(person, father_lastname)
|
short_name = _get_short_name(person, father_lastname)
|
||||||
alive = probably_alive(person, self.database, _make_date(this_year, month, day))
|
alive = probably_alive(person, self.database, prob_alive_date)
|
||||||
text = _('%(short_name)s') % {'short_name' : short_name}
|
text = _('%(short_name)s') % {'short_name' : short_name}
|
||||||
if ((self.alive and alive) or not self.alive):
|
if (self.alive and alive) or not self.alive:
|
||||||
self.add_day_item(text, year, month, day, 'Birthday')
|
self.add_day_item(text, year, month, day, 'Birthday')
|
||||||
|
|
||||||
# add anniversary if requested
|
# add anniversary if requested
|
||||||
@ -1122,6 +1127,8 @@ class WebCalReport(Report):
|
|||||||
month = event_obj.get_month()
|
month = event_obj.get_month()
|
||||||
day = event_obj.get_day()
|
day = event_obj.get_day()
|
||||||
|
|
||||||
|
prob_alive_date = gen.lib.Date(this_year, month, day)
|
||||||
|
|
||||||
# determine if anniversary date is a valid date???
|
# determine if anniversary date is a valid date???
|
||||||
complete_date = False
|
complete_date = False
|
||||||
if event_obj.get_valid():
|
if event_obj.get_valid():
|
||||||
@ -1132,8 +1139,8 @@ class WebCalReport(Report):
|
|||||||
'spouse' : spouse_name,
|
'spouse' : spouse_name,
|
||||||
'person' : short_name}
|
'person' : short_name}
|
||||||
|
|
||||||
alive1 = probably_alive(person, self.database, _make_date(this_year, month, day))
|
alive1 = probably_alive(person, self.database, prob_alive_date)
|
||||||
alive2 = probably_alive(spouse, self.database, _make_date(this_year, month, day))
|
alive2 = probably_alive(spouse, self.database, prob_alive_date)
|
||||||
if ((self.alive and alive1 and alive2) or not self.alive):
|
if ((self.alive and alive1 and alive2) or not self.alive):
|
||||||
self.add_day_item(text, year, month, day, 'Anniversary')
|
self.add_day_item(text, year, month, day, 'Anniversary')
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user