%div

%a.btn.btn-xs.btn-default{:href => to('/predict'), :style=>"margin-bottom:1em;"}
  %span.glyphicon.glyphicon-chevron-left
  New Prediction

%h3.help-block
  Similar particles

%hr  
:javascript 
  $(document).ready(function(){
    $(".tablesorter").tablesorter({
      debug: false,
      theme: "bootstrap",
      //headerTemplate: '{content} {icon}',
      widgets: ['uitheme', 'staticRow', 'stickyHeaders'],
      widgetOptions: {
        stickyHeaders_attachTo: 'neighbors',
        stickyHeaders_offset: 0,
        stickyHeaders_xScroll : null
      },
      sortList: [[1,1]],
      widthFixed: false,
    });
    $('#neighbors').doubleScroll();
  });

#neighbors.table-responsive
  /%table.tablesorter{:style => "max-width:100%;white-space:nowrap;"}
  %table.tablesorter
    %thead
      %tr
        %th
          ID  
        %th
          Similarity
        %th
          Composition  
        %th.tox{:style => "max-width:100%;white-space:nowrap;"}
          Toxicity 
          %br 
          Net cell association
          %br
          [mL/ug(Mg)]
        - if @type =~ /physchem|proteomics/
          - @input.each{|d| Feature.find(d[0]).category}.each do |key|
            - feature = Feature.find_by(:id=>key[0])
            - name = feature.name
            - if (feature[:conditions] && !feature[:conditions]["MEDIUM"].blank?)
              - name = feature.name + " / " + feature[:conditions]["MEDIUM"]
            - else
              - name = feature.name
            %th.physchem.sorter-false
              %a.descriptor{:href=>$npo[feature.name], :rel=>"external"}= name + (feature.unit.blank? ? "" : " (#{feature.unit})")
    %tbody
      / query and match combined
      %tr.static
        / id
        %td
          - if @match
            %a{:href=> $ambit_search+@name, :rel=>"external"}
              %h5.th5= @name
          - else
            %h5.th5 Query
        / similarity
        %td
          %h5.th5 1.0
        / composition
        %td
          - core = Substance.find @nanoparticle[:core_id]
          %h5.th5 Core:
          %a{:href=>core.source, :rel=>"external"}= "["+core.name+"]"
          %br
          - if @type == "fingerprint"
            - coating = []
            - @nanoparticle[:coating_ids].each{|id| coating << Substance.find(id) }
            %h5.th5 Coating:
            - coating.each do |co|
              %a{:href=>co.source, :rel=>"external"}= co.name
              %br
        / tox
        %td.tox
          - if @prediction[:value]
            %h5.th5 Prediction:
            = @prediction[:value].round(3)
            %br
          - if @prediction[:value].blank?
            %h5.th5 Prediction:
            = "not available"
            %br
          - if @prediction[:prediction_interval]
            %h5
              %a{:href=>"https://en.wikipedia.org/wiki/Prediction_interval", :rel=>"external"} 95% Prediction interval:
              - interval = @prediction[:prediction_interval].nil? ? " - - " : @prediction[:prediction_interval].collect{|i| i.round(2)}
            = "#{interval[0]} - #{interval[1]}"
          - if @prediction[:measurements]
            %br
            %h5.th5 Measurement:
            - @prediction[:measurements].each do |m|
              = m
          - if !@prediction[:value] && !@prediction[:measurements]
            %h5.th5 not available
        / physchem
        - if @type =~ /physchem|proteomics/
          - @input.each do |v|
            %td.physchem
              %div{:style=>"display:inline-block;padding-right:20px;"}
                - if v[1].nil?
                  %p x
                - else
                  %p= v[1][0].round(3)

      / neighbors
      - if @prediction[:neighbors]
        - @prediction[:neighbors].each_with_index do |neighbor,idx|
          - nano = Nanoparticle.find(neighbor[:id])
          - core = Substance.find nano.core_id
          - coating = []
          - nano.coating_ids.each{|id| coating << Substance.find(id)}
          %tr
            / ID
            %td
              %a{:href=> $ambit_search+nano.name, :rel=>"external"}
                %h5.th5= nano.name
            / Similarity
            %td
              %h5.th5= neighbor[:similarity].round(3)
            / Composition
            %td
              %h5.th5 Core:
              %a{:href=>core.source, :rel=> "external"}= "["+core.name+"]"
              %br
              %h5.th5 Coating:
              - coating.each do |co| 
                %a{:href=>co.source, :rel=>"external"}= co.name
                %br
            / Tox
            %td.tox
              %h5.th5 Measurement:
              = neighbor[:measurement]
            / Physchem
            - case @type
            - when "physchem"
              - nano.properties.delete_if{|id,v| !@physchem_relevant_features.include?(Feature.find(id))}.sort_by{|id,v| @physchem_relevant_features.index Feature.find(id)}.each do |k,v|
                %td.physchem
                  = v[0].round(3) unless v.nil?
            - when "proteomics"
              - nano.properties.delete_if{|id,v| !@proteomics_relevant_features.include?(Feature.find(id))}.sort_by{|id,v| @proteomics_relevant_features.index Feature.find(id)}.each do |k,v|
                %td.physchem
                  = v[0].round(3) unless v.nil?