Skip to content

Commit f462f3e

Browse files
committed
show_tax_string support MiGA
1 parent ea7f846 commit f462f3e

3 files changed

Lines changed: 20 additions & 22 deletions

File tree

app/helpers/application_helper.rb

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,22 @@
1+
require 'miga/taxonomy'
2+
13
module ApplicationHelper
2-
def show_tax_string(string, opts = {})
4+
def show_tax_string(tax, opts = {})
35
opts[:class] ||= 'tax-string'
6+
tax ||= []
7+
tax = tax.ranks.to_a if tax.is_a?(MiGA::Taxonomy)
8+
tax = tax.split(/ (>|»|\/) /) unless tax.is_a?(Array)
9+
410
content_tag(:span, opts) do
5-
string = string.split(/ (>|»|\/) /) unless string.is_a?(Array)
6-
string.each_with_index.map do |i, k|
7-
r, n = i.split(':', 2)
11+
tax.each_with_index.map do |i, k|
12+
r, n = i.is_a?(String) ? i.split(':', 2) : i
813
r_key = r.to_s[0].to_sym
914

1015
content_tag(:span, k == 0 ? '' : ' » '.html_safe) +
11-
content_tag(
12-
:span, n, title: Name.rank_keys[r_key],
13-
data: { kind: :taxonomy, rank: r_key, value: n }
14-
)
16+
content_tag(
17+
:span, n, title: Name.rank_keys[r_key],
18+
data: { kind: :taxonomy, rank: r_key, value: n }
19+
)
1520
end.inject(:+)
1621
end
1722
end

app/views/registers/curation_genomics/_ambiguous_type_genome.html.erb

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,9 @@
5656
<% show_aai(cr) %>
5757
</td>
5858
<td rowspan=2>
59-
<b>
60-
<%= show_tax_string(
61-
(miga_obj&.metadata || {})[:tax]
62-
&.ranks&.map { |k, v| "#{k}:#{v}" } || [],
63-
id: "tax-#{name.id}-miga"
64-
) %>
65-
</b><br/>
59+
<% miga_classif = miga_obj&.metadata&.[](:tax) %>
60+
<%= show_tax_string(miga_classif, id: "tax-#{name.id}-miga") %>
61+
<br/>
6662
<% cr = miga_obj&.closest_relatives(3, true, :aai) || [] %>
6763
<% show_aai(cr) %>
6864
</td>

app/views/registers/curation_genomics/_inconsistent_16s_assignment.html.erb

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,18 +50,15 @@
5050
</td>
5151
<td rowspan=2>
5252
<% miga_classif = genome&.miga_object&.metadata&.[](:tax) %>
53-
<%= show_tax_string(
54-
miga_classif.ranks.map { |i| "#{i[0]}:#{i[1]}" }.join(' > '),
55-
id: "tax-#{name.id}-miga"
56-
) %>
53+
<%= show_tax_string(miga_classif, id: "tax-#{name.id}-miga") %>
5754
</td>
5855
</tr>
5956
<tr>
6057
<td colspan=2>
6158
<b>Reported Classification</b><br/>
62-
<% show_tax_string(
63-
name.lineage.map { |i| "#{i.inferred_rank}:#{i.name}" }
64-
.join(' > ')
59+
<%= show_tax_string(
60+
name.lineage.map { |i| "#{i.inferred_rank}:#{i.name}" },
61+
id: "tax-#{name.id}-reported"
6562
) %>
6663
</td>
6764
</tr>

0 commit comments

Comments
 (0)