[% META title="Results" %]
[% patient = data.patient_case.patient %]
[% PROCESS record/patient_summary.tt %]
[% # data structures passed in:
# PROCESS dumper.tt dump =
# all_results;
# result_summaries;
# results_summary_opts;
# data_map.requested_tests;
# data_files;
# raw_lab_test_data.haematology_data;
# c.debug('######################'); # to reveal any db calls from templates
request_data = data.as_tree; # save multiple lookups if undefined
%]
[% # PROCESS site/js/jquery.tt # already loaded in html_wrapper %]
[% IF c.is_lab_staff;
patient_notes = patient.patient_note || outreach.demographics.patient_notes;
%]
[% END %]
Report
[% div_name = 'lab_results'; INCLUDE site/snippets/toggleview.tt %]
[% PROCESS record/report.tt %]
Lab Investigations
[% haem_data = raw_lab_test_data.haematology_data %]
[% IF haem_data AND
( haem_data.status.match('verified') OR c.user_can('modify_results') ) %]
[% div_name = 'HaemData';
INCLUDE site/snippets/toggleview.tt type = 'folder' %]
Haematology
[% IF NOT haem_data.status.match('verified') %]
[ UNVERIFIED ]
[% END %]
[% INCLUDE result/haem_data.tt function = 'result'%]
[% END %]
[% FOREACH section IN all_results.keys.sort; # PROCESS dumper.tt dump = section %]
[% # do some data manipulations:
# PROCESS dumper.tt dump = all_results.item(section);
this_section = all_results.item(section); # PROCESS dumper.tt dump = this_section;
sectionName = section.replace(' ', '_') | lower; # for result summary tmpls
NEXT UNLESS this_section.is_active.match('yes');
# get list of active (ie requested) lab_test field labels:
active_tests = [ ]; # reset array for each section
FOREACH entry IN this_section.panel; # PROCESS dumper.tt dump = entry;
active_tests.push(entry.key) IF entry.value.status; # been requested if defined status
END;
# get list of resultable lab_test field labels:
resultable_tests = [ ]; # reset array for each section
FOREACH entry IN this_section.test; # PROCESS dumper.tt dump = entry;
test_data = entry.value; # PROCESS dumper.tt dump = test_data;
resultable_tests.push(test_data.field_label) IF test_data.has_results.match('yes');
active_tests.push(entry.key) IF entry.value.status; # been requested if defined status
END;
# PROCESS dumper.tt dump = active_tests;
# PROCESS dumper.tt dump = resultable_tests;
%]
[% div_name = sectionName;
INCLUDE site/snippets/toggleview.tt type = 'folder' %]
[% PROCESS result/section_header.tt %]
[% site.html.ie_span_fix %]
[% # if section uses results import and not already got them:
IF this_section.has_results_import.match('yes')
AND NOT is_locked
AND NOT result_summaries.item(section).results_summary; %]
[% # load link to datafile if exists AND record screened:
IF has_optional.initial_screen
AND have_data_files(); # callback sub in C::Result::load() %]