Supporting information:
[% BLOCK section_result_summary; # generates composite results + summary: results = all_results.item(section_name); # INCLUDE dumper.tt dump = results; test_results = [ ]; # reset array p53_data = {}; # for composite p21/p53 result FOREACH t IN results.test; # PROCESS dumper.tt dump = t; NEXT UNLESS t.value.result; IF t.value.result.match('\d'); # add % sign: t.value.result = t.value.result _ '%'; END; # composite p21/p53 result: IF section_name.lower.match('immunohistochemistry'); IF t.value.test_name == 'p21'; p53_data.p21 = t.value.result; NEXT; # don't add p21 result to test_results ELSIF t.value.test_name == 'p53'; p53_data.p53 = t.value.result; NEXT; # don't add p53 result to test_results END; END; result = t.key.html _ '' _ t.value.result.html _ ''; test_results.push(result); END; IF p53_data.size; # PROCESS dumper.tt dump = p53_data; p53_result = 'p53' _ '' _ composite_p53(p53_data) _ ''; test_results.push(p53_result); END; # create composite output - results (if any) + result summary composite = []; composite.push(test_results.join(' ')) IF test_results.size; composite.push(result_summary); # PROCESS dumper.tt dump = composite; # result summary author: IF entry.value.exists('user'); result_reporter = entry.value.user.first_name.ucfirst _ ' ' _ entry.value.user.last_name.ucfirst _ ' on ' _ entry.value.time.strftime('%a %d.%b.%Y') _ ' @ ' _ entry.value.time.strftime('%H:%M'); composite.push(result_reporter); END; composite.join('
'); # rendered inside
 block
	  END
	%]

	[% accordion_class = ['accordion-body', 'collapse'];
          # force collapsed section open if print request:
          accordion_class.push('in') IF is_print_request;
    %]
    
[% IF report.morphology %]
[% class = foo ? 'text-error' : 'normal' %]
[% symbolise(report.morphology)
                    | html_line_break %]
                  
[% END %] [% FOREACH entry IN result_summaries; # INCLUDE dumper.tt dump = entry.value; section_name = entry.key ; # section_name %]
[% foreign_id = remote_system_ids.item(section_name).foreign_id; IF foreign_id %]

Specimen ref: [% foreign_id %]

[% END %] [% PROCESS site/make_chart.tt format_info = special_formatting %] [% class = entry.value.time AND ref_time # fatal if either unset: AND ( entry.value.time.subtract_datetime(ref_time).delta_days > 0 ) ? 'text-error rs-highlight' : 'normal'; # INCLUDE debug_delta_days o = entry.value.time; result_summary = symbolise(entry.value.results_summary); # escapeHTML already done %]
[%- INCLUDE section_result_summary -%]
[% END %]