diff --git a/app/views/data_explorer/time_series/_results.html.erb b/app/views/data_explorer/time_series/_results.html.erb index 2a87d35..bee3e42 100644 --- a/app/views/data_explorer/time_series/_results.html.erb +++ b/app/views/data_explorer/time_series/_results.html.erb @@ -21,7 +21,9 @@ <%= render "data_explorer/time_series/results/table/metric_headers" %> - <%= render "data_explorer/time_series/results/table/comparison_headers" %> + <% if @composition.comparisons.size > 0 %> + <%= render "data_explorer/time_series/results/table/comparison_headers" %> + <% end %> diff --git a/app/views/data_explorer/time_series/results/table/_group_row.html.erb b/app/views/data_explorer/time_series/results/table/_group_row.html.erb deleted file mode 100644 index 9e79ca0..0000000 --- a/app/views/data_explorer/time_series/results/table/_group_row.html.erb +++ /dev/null @@ -1,92 +0,0 @@ - - <%# First cell in the row is a header with the group member name %> - - scope="row" - <%= html_attributes(rowspan: 2 + (@composition.results.group_2_unique_members || []).size) %>> - - <% label = @composition.results.group_member_label(@composition.groups[0], group_1_member) %> - <%= Labeler.label(label, @composition.groups[0]) %> - - - Total - - <% @composition.results.granularity_unique_members.each do |granularity_member| %> - <% @composition.metrics.each do |metric| %> - <% @composition.comparisons.each do |comparison| %> - <% comparison.lookback.times do |i| %> - <%# if +comparison.lookback+ is 3, +lookback+ should be -3, -2, %> - <%# and -1 for the loops. So when i=0, lookback=-3, and i=1 l=-2 %> - <% lookback = -(comparison.lookback - i) %> - <% value = @composition.results.get_value_comparison(comparison, lookback, metric, granularity_member, group_1_member) %> - - > - <%= number_with_delimiter(value) %> - - <% end %> - <% end %> - - <% value = @composition.results.get_value(metric, granularity_member, group_1_member) %> - - > - <%= number_with_delimiter(value) %> - - <% end %> - <% end %> - - -<% @composition.results.group_2_unique_members&.each do |group_2_member| %> - - <%= @composition.results.group_member_label(@composition.groups[1], group_2_member) %> - - <% @composition.results.granularity_unique_members.each do |granularity_member| %> - <% @composition.metrics.each do |metric| %> - <% @composition.comparisons.each do |comparison| %> - <% comparison.lookback.times do |i| %> - <%# if +comparison.lookback+ is 3, +lookback+ should be -3, -2, %> - <%# and -1 for the loops. So when i=0, lookback=-3, and i=1 l=-2 %> - <% lookback = -(comparison.lookback - i) %> - <% value = @composition.results.get_value_comparison(comparison, lookback, metric, granularity_member, group_1_member, group_2_member) %> - - > - <%= number_with_delimiter(value) %> - - <% end %> - <% end %> - - <% value = @composition.results.get_value(metric, granularity_member, group_1_member, group_2_member) %> - - > - <%= number_with_delimiter(value) %> - - <% end %> - <% end %> - -<% end %> - - - UNKNOWN - - <% @composition.results.granularity_unique_members.each do |granularity_member| %> - <% @composition.metrics.each do |metric| %> - <% @composition.comparisons.each do |comparison| %> - <% comparison.lookback.times do |i| %> - <%# if +comparison.lookback+ is 3, +lookback+ should be -3, -2, %> - <%# and -1 for the loops. So when i=0, lookback=-3, and i=1 l=-2 %> - <% lookback = -(comparison.lookback - i) %> - <% value = @composition.results.get_value_comparison(comparison, lookback, metric, granularity_member, group_1_member, nil) %> - - > - <%= number_with_delimiter(value) %> - - <% end %> - <% end %> - - <% value = @composition.results.get_value(metric, granularity_member, group_1_member, nil) %> - - > - <%= number_with_delimiter(value) %> - - <% end %> - <% end %> - diff --git a/app/views/data_explorer/time_series/results/table/_group_rows.html.erb b/app/views/data_explorer/time_series/results/table/_group_rows.html.erb index f7a472a..d04466f 100644 --- a/app/views/data_explorer/time_series/results/table/_group_rows.html.erb +++ b/app/views/data_explorer/time_series/results/table/_group_rows.html.erb @@ -1 +1,103 @@ -<%= render partial: "data_explorer/time_series/results/table/group_row", collection: @composition.results.group_1_unique_members, as: :group_1_member %> +<% @composition.results.group_1_unique_members&.each do |group_1_member| %> + <% label_displayed = false %> + + <% @composition.results.group_2_unique_members&.each do |group_2_member| %> + <% + values = [] + @composition.results.granularity_unique_members.each do |granularity_member| + @composition.metrics.each do |metric| + @composition.comparisons.each do |comparison| + comparison.lookback.times do |i| + lookback = -(comparison.lookback - i) + value = @composition.results.get_value_comparison(comparison, lookback, metric, granularity_member, group_1_member, group_2_member) + + values << value + end + end + + values << @composition.results.get_value(metric, granularity_member, group_1_member, group_2_member) + end + end + %> + + <% unless values.compact.size == 0 %> + + + scope="row"> + + <% label = @composition.results.group_member_label(@composition.groups[0], group_1_member) %> + + <% unless label_displayed %> + <%= Labeler.label(label, @composition.groups[0]) %> + <% label_displayed = true %> + <% end %> + + + scope="row"> + + <%= @composition.results.group_member_label(@composition.groups[1], group_2_member) %> + + + <% @composition.results.granularity_unique_members.each do |granularity_member| %> + <% @composition.metrics.each do |metric| %> + <% @composition.comparisons.each do |comparison| %> + <% comparison.lookback.times do |i| %> + <%# if +comparison.lookback+ is 3, +lookback+ should be -3, -2, %> + <%# and -1 for the loops. So when i=0, lookback=-3, and i=1 l=-2 %> + <% lookback = -(comparison.lookback - i) %> + <% value = @composition.results.get_value_comparison(comparison, lookback, metric, granularity_member, group_1_member, group_2_member) %> + + + <%= html_attributes("data-raw-value": value) %>> + <%= number_with_delimiter(value) %> + + <% end %> + <% end %> + + <% value = @composition.results.get_value(metric, granularity_member, group_1_member, group_2_member) %> + + + <%= html_attributes("data-raw-value": value) %>> + <%= number_with_delimiter(value) %> + + <% end %> + <% end %> + + <% end %> + <% end %> + + + + scope="row"> + + <% label = @composition.results.group_member_label(@composition.groups[0], group_1_member) %> + <%= Labeler.label(label, @composition.groups[0]) %> + + UNKNOWN + + <% @composition.results.granularity_unique_members.each do |granularity_member| %> + <% @composition.metrics.each do |metric| %> + <% @composition.comparisons.each do |comparison| %> + <% comparison.lookback.times do |i| %> + <%# if +comparison.lookback+ is 3, +lookback+ should be -3, -2, %> + <%# and -1 for the loops. So when i=0, lookback=-3, and i=1 l=-2 %> + <% lookback = -(comparison.lookback - i) %> + <% value = @composition.results.get_value_comparison(comparison, lookback, metric, granularity_member, group_1_member, nil) %> + + > + <%= number_with_delimiter(value) %> + + <% end %> + <% end %> + + <% value = @composition.results.get_value(metric, granularity_member, group_1_member, nil) %> + + > + <%= number_with_delimiter(value) %> + + <% end %> + <% end %> + +<% end %>