Skip to content

Commit 0e81ba7

Browse files
authored
Always call object info adapter with a record (#1919)
1 parent 28a3169 commit 0e81ba7

File tree

1 file changed

+7
-6
lines changed
  • src/bika/lims/browser/analysisrequest

1 file changed

+7
-6
lines changed

src/bika/lims/browser/analysisrequest/add2.py

+7-6
Original file line numberDiff line numberDiff line change
@@ -1221,7 +1221,7 @@ def get_record_metadata(self, record):
12211221
if len(uids) == 1:
12221222
extra_fields[field_name] = uids[0]
12231223

1224-
# Populate metadata with object info from extra fields
1224+
# Populate metadata with object info from extra fields (hidden fields)
12251225
for field_name, uid in extra_fields.items():
12261226
key = "{}_metadata".format(field_name.lower())
12271227
if metadata.get(key):
@@ -1230,7 +1230,7 @@ def get_record_metadata(self, record):
12301230
obj = self.get_object_by_uid(uid)
12311231
if not obj:
12321232
continue
1233-
obj_info = self.get_object_info(obj, field_name)
1233+
obj_info = self.get_object_info(obj, field_name, record=extra_fields)
12341234
if not obj_info or "uid" not in obj_info:
12351235
continue
12361236
metadata[key] = {obj_info["uid"]: obj_info}
@@ -1380,16 +1380,17 @@ def get_object_info(self, obj, key, record=None):
13801380
func_name = "get_{}_info".format(field_name.lower())
13811381
func = getattr(self, func_name, None)
13821382

1383+
# always ensure we have a record
1384+
if record is None:
1385+
record = {}
1386+
13831387
# Get the info for each object
13841388
info = callable(func) and func(obj) or self.get_base_info(obj)
13851389

13861390
# Check if there is any adapter to handle objects for this field
13871391
for name, adapter in getAdapters((obj, ), IAddSampleObjectInfo):
13881392
logger.info("adapter for '{}': {}".format(field_name, name))
1389-
if record is not None:
1390-
ad_info = adapter.get_object_info_with_record(record)
1391-
else:
1392-
ad_info = adapter.get_object_info()
1393+
ad_info = adapter.get_object_info_with_record(record)
13931394
self.update_object_info(info, ad_info)
13941395

13951396
return info

0 commit comments

Comments
 (0)