Added Associations to the NarrativeWeb output.

svn: r12982
This commit is contained in:
Rob G. Healey 2009-08-13 01:50:13 +00:00
parent 9e4df3ec96
commit 63094c5aee

View File

@ -2967,16 +2967,21 @@ class IndividualPage(BasePage):
if sect11 is not None: if sect11 is not None:
individualdetail += sect11 individualdetail += sect11
# display associations
assocs = self.person.get_person_ref_list()
if assocs:
Individualdetail += self.display_ind_associations(assocs)
# display pedigree # display pedigree
sect12 = self.display_ind_pedigree() sect13 = self.display_ind_pedigree()
if sect12 is not None: if sect13 is not None:
individualdetail += sect12 individualdetail += sect13
# display ancestor tree # display ancestor tree
if report.options['graph']: if report.options['graph']:
sect13 = self.display_tree() sect14 = self.display_tree()
if sect13 is not None: if sect14 is not None:
individualdetail += sect13 individualdetail += sect14
# add clearline for proper styling # add clearline for proper styling
# create footer section # create footer section
@ -3130,6 +3135,58 @@ class IndividualPage(BasePage):
# return to its caller # return to its caller
return sourcerefs return sourcerefs
def display_ind_associations(self, assoclist):
"""
display an individual's associations
"""
# begin Associations division
with Html('div', class_='subsection', id='Associations') as section:
section += Html('h4', _('Associations'), inline=True)
with Html('table', class_='infolist assoclist') as table:
section += table
thead = Html('thead')
table += thead
trow = Html('tr')
thead += trow
assoc_row = [
(_('Relationship'), 'Relationship'),
(_('Association'), 'Association'),
(SHEAD, 'Sources'),
(NHEAD, 'Notes') ]
for (label, colclass) in assoc_row:
trow += Html('th', label, class_='Column%s' % colclass, inline=True)
tbody = Html('tbody')
table += tbody
for person_ref in assoclist:
trow = Html('tr')
tbody += trow
index = 0
for data in [
[person_ref.get_relation()],
[person_ref.get_association()],
[self.get_citation_links(person_ref.get_source_references())],
[self.dump_notes(person_ref.get_note_list())] ]:
# get colclass from assoc_row
colclass = assoc_row[index][1]
trow += Html('td', data, class_='Column%s' % colclass, inline=True)
index += 1
# return section to its callers
section.write()
return section
def display_ind_pedigree(self): def display_ind_pedigree(self):
""" """
Display an individual's pedigree Display an individual's pedigree
@ -4192,19 +4249,20 @@ class RepositoryPage(BasePage):
# repository type # repository type
trow = Html('tr') + ( trow = Html('tr') + (
Html('td', _('Type'), class_='ColumnAttribute', inline=True), Html('td', _('Type'), class_='ColumnType', inline=True),
Html('td', repo.type.xml_str(), class_='ColumnValue', inline=True) Html('td', str(repo.type), class_='ColumnAttribute', inline=True)
) )
table += trow table += trow
# repo gramps id if not self.noid:
trow = Html('tr') + ( # repo gramps id
Html('td', _('GRAMPS ID'), class_='ColumnAttribute', inline=True), trow = Html('tr') + (
Html('td', repo.gramps_id, class_='ColumnValue', inline=True) Html('td', _('GRAMPS ID'), class_='ColumnType', inline=True),
) Html('td', repo.gramps_id, class_='ColumnAttribute', inline=True)
table += trow )
table += trow
# repository: addresses # repository: address(es)
addresses = self.write_out_addresses(repo) addresses = self.write_out_addresses(repo)
if addresses is not None: if addresses is not None:
repositorydetail += addresses repositorydetail += addresses