diff --git a/src/plugins/webreport/NarrativeWeb.py b/src/plugins/webreport/NarrativeWeb.py index 48d683e5d..95eda998e 100644 --- a/src/plugins/webreport/NarrativeWeb.py +++ b/src/plugins/webreport/NarrativeWeb.py @@ -785,13 +785,9 @@ class BasePage(object): # Add the citation information to the bibliography, and construct # the citation reference text index, key = self.bibli.add_reference(citation) - id_ = "%d%s" % (index+1, key) + id_ = "%d%s" % (index+1,key) - source = self.dbase_.get_source_from_handle(source_handle) - if source: - - hyper = self.source_link(source, uplink = self.up) - text += ' [%s]' % (hyper, id_) + text += ' %s' % (id_, id_) return text def get_note_format(self, note, link_prefix_up): @@ -1222,34 +1218,28 @@ class BasePage(object): tbody += trow return section - def source_link(self, source, cindex = None, uplink = False): + def source_link(self, source_handle, source_title, source_gid, cindex = None, uplink = False): """ creates a link to the source object @param: source -- source object from database + @param: source_title -- title from the source object + @param: source_gid -- gramps id from the source object @param: cindex - count index @param: up - rather to add back directories or not? """ - - url = self.report.build_url_fname_html(source.get_handle(), "src", uplink) - gid = source.get_gramps_id() - title = html_escape(source.get_title()) - - # begin hyperlink - hyper = Html("a", title, - href =url, - title =_("Source Reference: %s") % title, - inline =True) + url = self.report.build_url_fname_html(source_handle, "src", uplink) + hyper = Html("a", source_title, + href = url, + title = source_title) # if not None, add name reference to hyperlink element if cindex: hyper.attr += ' name ="sref%d"' % cindex # add GRAMPS ID - if not self.noid and gid: - hyper += Html("span", ' [%s]' % gid, class_ = "grampsid", inline = True) - - # return hyperlink to its callers + if not self.noid and source_gid: + hyper += Html("span", ' [%s]' % source_gid, class_ = "grampsid", inline = True) return hyper def display_addr_list(self, addrlist, showsrc): @@ -2284,7 +2274,8 @@ class BasePage(object): # Add this source and its references to the page source = self.dbase_.get_source_from_handle(shandle) if source is not None: - list = Html("li", self.source_link(source, cindex, uplink = True)) + list = Html("li", self.source_link(source.get_handle(), source.get_title(), + source.get_gramps_id(), cindex, uplink = self.up)) else: list = Html("li", "None") @@ -4412,14 +4403,15 @@ class SourceListPage(BasePage): table += tbody for index, key in enumerate(keys): - source, handle = source_dict[key] + source, source_handle = source_dict[key] trow = Html("tr") + ( Html("td", index + 1, class_ ="ColumnRowLabel", inline =True) ) tbody += trow trow.extend( - Html("td", self.source_link(source, None), class_ ="ColumnName") + Html("td", self.source_link(source_handle, source.get_title(), + source.get_gramps_id()), class_ = "ColumnName") ) # add clearline for proper styling @@ -4739,7 +4731,9 @@ class SourcePage(BasePage): source = self.dbase_.get_source_from_handle(source_handle) if source: unordered3.extend( - Html("li", self.source_link(source, uplink = self.up), inline = True) + Html("li", self.source_link(source_handle, + source.get_title(), source.get_gramps_id(), + uplink = self.up), inline = True) ) list2 += unordered3 @@ -6646,7 +6640,8 @@ class RepositoryPage(BasePage): source_nbr += 1 if source_handle in source_list: - source_name = self.source_link(source, uplink = True) + source_name = self.source_link(source_handle, source.get_title(), + source.get_gramps_id(), uplink = self.up) else: source_name = source.get_title()