fixed bug in smartgrid header, thanks Adi

This commit is contained in:
mdipierro
2012-08-30 15:36:36 -05:00
parent 1641b10e79
commit feb27b919b
2 changed files with 11 additions and 7 deletions
+1 -1
View File
@@ -1 +1 @@
Version 2.0.2 (2012-08-30 15:26:54) stable Version 2.0.2 (2012-08-30 15:36:33) stable
+10 -6
View File
@@ -2190,12 +2190,14 @@ class SQLFORM(FORM):
LI(A(T(db[referee]._plural), LI(A(T(db[referee]._plural),
_class=trap_class(), _class=trap_class(),
_href=url()), _href=url()),
SPAN(divider,_class='divider'),_class='w2p_grid_breadcrumb_elem')) SPAN(divider,_class='divider'),
_class='w2p_grid_breadcrumb_elem'))
if kwargs.get('details',True): if kwargs.get('details',True):
breadcrumbs.append( breadcrumbs.append(
LI(A(name,_class=trap_class(), LI(A(name,_class=trap_class(),
_href=url(args=['view',referee,id])), _href=url(args=['view',referee,id])),
SPAN(divider,_class='divider'),_class='w2p_grid_breadcrumb_elem')) SPAN(divider,_class='divider'),
_class='w2p_grid_breadcrumb_elem'))
nargs+=2 nargs+=2
else: else:
break break
@@ -2221,16 +2223,18 @@ class SQLFORM(FORM):
del kwargs[key] del kwargs[key]
check = {} check = {}
id_field_name = table._id.name id_field_name = table._id.name
for field in table._referenced_by: for rfield in table._referenced_by:
if field.readable: if rfield.readable:
check[field.tablename] = check.get(field.tablename,[])+[field.name] check[rfield.tablename] = \
check.get(rfield.tablename,[])+[rfield.name]
for tablename in sorted(check): for tablename in sorted(check):
linked_fieldnames = check[tablename] linked_fieldnames = check[tablename]
tb = db[tablename] tb = db[tablename]
multiple_links = len(linked_fieldnames)>1 multiple_links = len(linked_fieldnames)>1
for fieldname in linked_fieldnames: for fieldname in linked_fieldnames:
if linked_tables is None or tablename in linked_tables: if linked_tables is None or tablename in linked_tables:
t = T(tb._plural) if not multiple_links else T(tb._plural+'('+fieldname+')') t = T(tb._plural) if not multiple_links else \
T(tb._plural+'('+fieldname+')')
args0 = tablename+'.'+fieldname args0 = tablename+'.'+fieldname
links.append( links.append(
lambda row,t=t,nargs=nargs,args0=args0:\ lambda row,t=t,nargs=nargs,args0=args0:\