allow a cell in table to not have a link; put buttons in cell for children
svn: r20052
This commit is contained in:
parent
3da425b6c8
commit
95a604f2c6
@ -169,7 +169,7 @@ class SimpleTable(object):
|
|||||||
retval.append(item[0])
|
retval.append(item[0])
|
||||||
link = (item[1], item[2:])
|
link = (item[1], item[2:])
|
||||||
else:
|
else:
|
||||||
retval.append(str(item))
|
retval.append(item)
|
||||||
if (self._link_col == col or link is None):
|
if (self._link_col == col or link is None):
|
||||||
if hasattr(item, "get_url"):
|
if hasattr(item, "get_url"):
|
||||||
link = ("url", item.get_url())
|
link = ("url", item.get_url())
|
||||||
@ -219,7 +219,9 @@ class SimpleTable(object):
|
|||||||
for col in row:
|
for col in row:
|
||||||
doc.start_cell('TableDataCell', span=1)
|
doc.start_cell('TableDataCell', span=1)
|
||||||
obj_type, handle = None, None
|
obj_type, handle = None, None
|
||||||
if isinstance(self._link_col, tuple):
|
if hasattr(col, "get_url"):
|
||||||
|
obj_type, handle = "URL", col.get_url()
|
||||||
|
elif isinstance(self._link_col, tuple):
|
||||||
obj_type, handle = self._link_col
|
obj_type, handle = self._link_col
|
||||||
elif isinstance(self._link_col, list):
|
elif isinstance(self._link_col, list):
|
||||||
obj_type, handle = self._link_col[index]
|
obj_type, handle = self._link_col[index]
|
||||||
@ -228,12 +230,13 @@ class SimpleTable(object):
|
|||||||
######
|
######
|
||||||
if obj_type:
|
if obj_type:
|
||||||
if obj_type.lower() == "url":
|
if obj_type.lower() == "url":
|
||||||
doc.start_link(handle)
|
if handle:
|
||||||
|
doc.start_link(handle)
|
||||||
else:
|
else:
|
||||||
doc.start_link("/%s/%s" %
|
doc.start_link("/%s/%s" %
|
||||||
(obj_type.lower(), handle))
|
(obj_type.lower(), handle))
|
||||||
doc.write_text(col, 'Normal')
|
doc.write_text(str(col), 'Normal')
|
||||||
if obj_type:
|
if obj_type and handle:
|
||||||
doc.stop_link()
|
doc.stop_link()
|
||||||
doc.end_cell()
|
doc.end_cell()
|
||||||
doc.end_row()
|
doc.end_row()
|
||||||
|
@ -826,10 +826,20 @@ def tag_reference_table(obj, user, act):
|
|||||||
retval += nbsp("") # to keep tabs same height
|
retval += nbsp("") # to keep tabs same height
|
||||||
return retval
|
return retval
|
||||||
|
|
||||||
|
class Link(object):
|
||||||
|
def __init__(self, string, url=None):
|
||||||
|
self.string = string
|
||||||
|
self.url = url
|
||||||
|
def get_url(self):
|
||||||
|
return self.url
|
||||||
|
def __str__(self):
|
||||||
|
return self.string
|
||||||
|
|
||||||
def children_table(obj, user, act, url=None, *args):
|
def children_table(obj, user, act, url=None, *args):
|
||||||
retval = ""
|
retval = ""
|
||||||
table = Table("children_table")
|
table = Table("children_table")
|
||||||
table.columns(
|
table.columns(
|
||||||
|
"",
|
||||||
_("#"),
|
_("#"),
|
||||||
_("ID"),
|
_("ID"),
|
||||||
_("Name"),
|
_("Name"),
|
||||||
@ -838,7 +848,7 @@ def children_table(obj, user, act, url=None, *args):
|
|||||||
_("Maternal"),
|
_("Maternal"),
|
||||||
_("Birth Date"),
|
_("Birth Date"),
|
||||||
)
|
)
|
||||||
table.column_widths = [3] + [98/6] * 6
|
#table.column_widths = [3] + [98/6] * 6
|
||||||
|
|
||||||
family = obj
|
family = obj
|
||||||
obj_type = ContentType.objects.get_for_model(family)
|
obj_type = ContentType.objects.get_for_model(family)
|
||||||
@ -849,7 +859,8 @@ def children_table(obj, user, act, url=None, *args):
|
|||||||
for childref in childrefs:
|
for childref in childrefs:
|
||||||
child = childref.ref_object
|
child = childref.ref_object
|
||||||
if user.is_authenticated():
|
if user.is_authenticated():
|
||||||
table.row(str(count),
|
table.row(Link("[[x]][[^]][[v]]"),
|
||||||
|
str(count),
|
||||||
"[%s]" % child.gramps_id,
|
"[%s]" % child.gramps_id,
|
||||||
render_name(child, user),
|
render_name(child, user),
|
||||||
child.gender_type,
|
child.gender_type,
|
||||||
@ -875,6 +886,9 @@ def children_table(obj, user, act, url=None, *args):
|
|||||||
count += 1
|
count += 1
|
||||||
table.links(links)
|
table.links(links)
|
||||||
retval += table.get_html()
|
retval += table.get_html()
|
||||||
|
retval = retval.replace("[[x]]", make_button("x", "/person/remove/family/%s" % family.handle))
|
||||||
|
retval = retval.replace("[[^]]", make_button("^", "/person/up/family/%s" % family.handle))
|
||||||
|
retval = retval.replace("[[v]]", make_button("v", "/person/down/family/%s" % family.handle))
|
||||||
if user.is_superuser and url and act == "view":
|
if user.is_superuser and url and act == "view":
|
||||||
retval += make_button(_("Add New Person as Child"), (url.replace("$act", "add") % args))
|
retval += make_button(_("Add New Person as Child"), (url.replace("$act", "add") % args))
|
||||||
retval += make_button(_("Add Existing Person as Child"), (url.replace("$act", "share") % args))
|
retval += make_button(_("Add Existing Person as Child"), (url.replace("$act", "share") % args))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user