Dalphi/dalphi

View on GitHub
app/views/projects/dashboard/services/_compatibility.slim

Summary

Maintainability
Test Coverage
ruby:
  service_problem_ids = project_services.values
                                        .compact
                                        .map { |i| i[:problem_id] }
                                        .uniq
  problem_names = service_problem_ids.map do |problem_name|
    t('projects.dashboard-card.delimited-problem', problem: problem_name)
  end.join(', ')

h4
  = t('projects.dashboard-card.services.compatibility.title')
ul.card-text
  li
    .compatibility-check-details data-url="#{check_problem_identifiers_path(project)}"
      .compatibility-state-sign.compatible.no-display data-toggle='tooltip' data-placement='bottom' title="#{t('projects.dashboard-card.services.compatibility.compatible')}"
        = fa_icon 'check-circle'
      .compatibility-state-sign.checking.no-display data-toggle='tooltip' data-placement='bottom' title="#{t('projects.dashboard-card.services.compatibility.checking')}"
        i.fa.fa-spinner.fa-spin
      .compatibility-state-sign.empty.no-display
        = fa_icon 'exclamation-circle'
      .compatibility-state-sign.incompatible.no-display
        = fa_icon 'exclamation-circle'
      .compatibility-state-sign.undefined data-toggle='tooltip' data-placement='bottom' title="#{t('projects.dashboard-card.services.compatibility.undefined')}"
        = fa_icon 'question-circle'
    = t('projects.dashboard-card.services.compatibility.compatibility-of-services')
    - hints = { compatible: t('projects.dashboard-card.services.compatibility.compatible'),
                empty: t('projects.dashboard-card.services.compatibility.empty',
                         add_link: link_to(t('projects.dashboard-card.services.compatibility.empty-label'), edit_project_path(project))),
                incompatible: t('projects.dashboard-card.services.compatibility.incompatible',
                                fix_link: link_to(t('projects.dashboard-card.services.compatibility.incompatible-label'), edit_project_path(project))) }
    small data=hints
    coffee:
      window.compatibilityCheckIndicator = new window.CompatibilityCheckIndicator()