RSS Git Download  Clone
Raw Blame History
<!-- BEGIN result/data_entry.tt -->
    [% # PROCESS dumper.tt dump = resultable_tests %]
    [% # PROCESS dumper.tt dump = data_options_map %]
    
  <p class="indent"><span class="title">Test results:</span>
    [% div_name = sectionName _ '_data'; INCLUDE site/snippets/toggleview.tt %]
  </p>
  
  
  <div id="[% div_name %]" class="itemhidden">
    <p class="indent">
    [% IF c.query.param('results_only') %]
      <a href="[% app_url %]/result/=/[% data.id %]">[show all results]</a>
    [% ELSE %]
      <a href="[% app_url %]/result/=/[% data.id %]?results_only=1">[show results only]</a>
    [% END %]
    </p>
    
    <div class="test_results">
      [% UNLESS is_locked # can still view results section if locked %]
      <form action="[% app_url %]/result/data_entry/[% data.id %]" method="post"
        name="[% sectionName | lower %]_data" id="[% sectionName | lower %]_data">
      [% END %]
      
        [% sorted_tests = natural_sort(resultable_tests);
          # PROCESS dumper.tt dump = sorted_tests;
        %]

        <table class="results">
          <tr>
            [% count = 1 %]
             
            [% FOREACH test_name IN sorted_tests;
                  # PROCESS dumper.tt dump = this_section.test.item(test_name);
                test_data = this_section.test.item(test_name);                  
                  # PROCESS dumper.tt dump = test_data;
                NEXT UNLESS test_data.is_active.match('yes'); # skip inactive
                
                data_type = data_map.lab_test_data_type.item(test_data.id).data_type;
                  # PROCESS dumper.tt dump = data_type;
                NEXT IF c.query.param('results_only') AND NOT test_data.result;

                 IF test_data.result; class = 'title';
              ELSIF test_data.status; class = 'red'; # awaiting result
              ELSE; class = 'normal'; END;
            %]
            <td align="right" width="70">
              <span class="[% class %]">[% test_name | html %]</span>
            </td>
            <td width="250">
              [% IF ! data_type.id  # assume free text %]
                <input type="text" name="lab_test_id_[% test_data.id %]"
                  value="[% test_data.result %]" size="5" />
              [% ELSE %]
              <select name="lab_test_id_[% test_data.id %]">
                <option value="">&nbsp;</option>
                [% FOREACH opt IN data_map.data_options.item(data_type.id);
                    # PROCESS dumper.tt dump = opt.value;
                    # PROCESS dumper.tt dump = opt.is_active;
                    # PROCESS dumper.tt dump = test_data.result;
                    NEXT IF opt.is_active.match('no')
                        AND test_data.result != opt.value; # for legacy data before opt disabled
                %]
                <option value="[% opt.value %]"
                    [% 'selected' IF test_data.result == opt.value %]>
                  [% opt.value %]
                </option>
                [% END %]
              </select>
              [% END %]
            </td>
      
          [% # n_cols = data_type.type == 'text' ? 2 : 6 # text longer than others %]
          [% UNLESS loop.last OR # don't start new table unless multiple of $n_cols:
            count % 3 %]
              </tr>
            </table>
            <table class="results">
              <tr>
          [% END %]              
      
          [% count = count + 1 %]                
      [% END %]
      
          </tr>
        </table>
      
        <p align="center">
          [% site.html.submit %]
          [% site.html.reset %]
        </p>      
      [% UNLESS is_locked %]</form>[% END %]
    </div>
  </div>  
<!-- BEGIN result/data_entry.tt -->