All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sonar.server.dashboard.widget.alerts.html.erb Maven / Gradle / Ivy

There is a newer version: 7.2.1
Show newest version
<% m=measure(Metric::QUALITY_GATE_DETAILS)
   if m && !m.data.blank?
     details = JSON.parse m.data
     m.alert_status = details['level']
     raw_conditions = details['conditions']
     conditions = []
     missing_metric = false
     raw_conditions.each do |condition|
       if metric(condition['metric']).nil?
         missing_metric = true
       else
         conditions << condition
       end
     end
     alert_metric = metric(Metric::ALERT_STATUS)

     warn_message = message('measure_filter.criteria.alert.warn')
     error_message = message('measure_filter.criteria.alert.error')

     css_class = "color_#{m.alert_status}"
     if m.alert_status==Metric::TYPE_LEVEL_OK
       label = "#{message('widget.alerts.no_alert')}."
     elsif m.alert_status==Metric::TYPE_LEVEL_WARN
       label = "#{message('widget.alerts.warnings')}"
     else
       label = "#{message('widget.alerts.errors')}"
     end
-%>
<%= format_measure(measure(Metric::ALERT_STATUS)) -%> <%= label -%>
<% if conditions.any? {|condition| condition['level'] != 'OK'} || widget_properties['show_ok'] && !conditions.empty? -%> <% conditions.sort_by {|condition| [ -condition['level'].length, metric(condition['metric']).short_name] }.each do |condition| level = condition['level'] condition_metric = metric(condition['metric']) operator = message("quality_gates.operator.#{condition['op']}.short") period = condition['period'] warning_value = condition['warning'] error_value = condition['error'] actual_value = condition['actual'] detail_measure = ProjectMeasure.new :metric => alert_metric, :alert_status => level drilldown_url = period.blank? ? url_for_drilldown(condition_metric) : url_for_drilldown(condition_metric, :period => period) actual_measure = ProjectMeasure.new :metric => condition_metric, :value => actual_value, :alert_status => level warning_measure = ProjectMeasure.new :metric => condition_metric, :value => warning_value error_measure = ProjectMeasure.new :metric => condition_metric, :value => error_value is_difference_measure = condition_metric.name.start_with?('new_') is_issue_measure = get_issue_metrics.include? condition_metric.name is_not_difference_measure_with_period = !is_difference_measure && !period.blank? && !is_issue_measure tooltip = message('widget.as_calculated_on_x', :params => l(@snapshot.created_at)) unless level == 'OK' && !widget_properties['show_ok'] -%>

<%= condition_metric.short_name -%>

<% if is_not_difference_measure_with_period %> <%= format_measure(actual_measure) -%> <% else %> <%= format_measure(actual_measure, :url => drilldown_url) -%> <% end %> <% if level == 'WARN' -%><%= operator -%> <%= format_measure(warning_measure) -%><% end -%> <% if level == 'ERROR' -%><%= operator -%> <%= format_measure(error_measure) -%><% end -%> <% if level == 'OK' -%> <% unless warning_value.blank? -%><%= warn_message -%> <%= operator -%> <%= format_measure(warning_measure) -%> <%= '|' unless error_value.blank? -%><% end -%> <% unless error_value.blank? -%><%= error_message -%> <%= operator -%> <%= format_measure(error_measure) -%><% end -%> <% end -%>

<%= period_label(@snapshot, period) unless period.blank? -%>

<% end end end if missing_metric -%>
<%= message('widget.alerts.missing_metric') -%>
<% end -%>
<% else -%> <% m=measure(Metric::ALERT_STATUS) if m && !m.alert_status.blank? css_class = "widget color_#{m.alert_status}" if m.alert_status==Metric::TYPE_LEVEL_OK label = "#{message('widget.alerts.no_alert')}." elsif m.alert_status==Metric::TYPE_LEVEL_WARN label = "#{message('widget.alerts.warnings')}#{h(m.alert_text)}." else label = "#{message('widget.alerts.errors')}#{h(m.alert_text)}." end -%>
<%= format_measure(m) -%> <%= label -%>
<% end end -%>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy