diff options
| author | Guillaume | 2017-11-22 14:55:05 +0100 |
|---|---|---|
| committer | Guillaume | 2017-11-22 14:55:05 +0100 |
| commit | cf8c8352bd4b5493c3e1cdfb8ea27c78ac9abab0 (patch) | |
| tree | f03ad3aae1427a560c09a443b88fc23a4c2c8265 /app | |
| parent | acb37189bea8e0bd2c36d9b02042a8e3ee5bb238 (diff) | |
| download | chouette-core-cf8c8352bd4b5493c3e1cdfb8ea27c78ac9abab0.tar.bz2 | |
Refs #4987 create compliance_check_sets#show
Diffstat (limited to 'app')
| -rw-r--r-- | app/controllers/compliance_check_sets_controller.rb | 8 | ||||
| -rw-r--r-- | app/decorators/compliance_check_set_decorator.rb | 17 | ||||
| -rw-r--r-- | app/helpers/compliance_check_sets_helper.rb | 14 | ||||
| -rw-r--r-- | app/views/compliance_check_sets/index.html.slim | 6 | ||||
| -rw-r--r-- | app/views/compliance_check_sets/show.html.slim | 55 |
5 files changed, 97 insertions, 3 deletions
diff --git a/app/controllers/compliance_check_sets_controller.rb b/app/controllers/compliance_check_sets_controller.rb index 175c22191..776275d52 100644 --- a/app/controllers/compliance_check_sets_controller.rb +++ b/app/controllers/compliance_check_sets_controller.rb @@ -19,6 +19,14 @@ class ComplianceCheckSetsController < InheritedResources::Base end end + def show + show! do + @compliance_check_set = @compliance_check_set.decorate(context: { + compliance_check_set: @compliance_check_set + }) + end + end + def executed show! do |format| # But now nobody is aware anymore that `format.html` passes a parameter into the block diff --git a/app/decorators/compliance_check_set_decorator.rb b/app/decorators/compliance_check_set_decorator.rb index 5f3821cbe..096596b19 100644 --- a/app/decorators/compliance_check_set_decorator.rb +++ b/app/decorators/compliance_check_set_decorator.rb @@ -3,6 +3,23 @@ class ComplianceCheckSetDecorator < Draper::Decorator def action_links links = [] + + links << Link.new( + content: h.destroy_link_content, + href: h.workbench_compliance_check_sets_path(object.id), + method: :delete, + data: {confirm: h.t('imports.actions.destroy_confirm')} + ) + + links + end + + def lines_status + object.compliance_check_resources.where(status: :OK, resource_type: :line).count + end + + def lines_in_compliance_check_set + object.compliance_check_resources.where(resource_type: :line).count end end diff --git a/app/helpers/compliance_check_sets_helper.rb b/app/helpers/compliance_check_sets_helper.rb index fc7165fed..b255aee63 100644 --- a/app/helpers/compliance_check_sets_helper.rb +++ b/app/helpers/compliance_check_sets_helper.rb @@ -13,4 +13,18 @@ module ComplianceCheckSetsHelper compliance_check.compliance_check_set, compliance_check) end + + # Import statuses helper + def compliance_check_set_status(status) + if %w[new running pending].include? status + content_tag :span, '', class: "fa fa-clock-o" + else + cls ='' + cls = 'success' if status == 'OK' + cls = 'warning' if status == 'WARNING' + cls = 'danger' if %w[ERROR IGNORED].include? status + + content_tag :span, '', class: "fa fa-circle text-#{cls}" + end + end end diff --git a/app/views/compliance_check_sets/index.html.slim b/app/views/compliance_check_sets/index.html.slim index 4ca5a2ee7..194749104 100644 --- a/app/views/compliance_check_sets/index.html.slim +++ b/app/views/compliance_check_sets/index.html.slim @@ -22,7 +22,7 @@ [ \ TableBuilderHelper::Column.new( \ key: :ref, \ - attribute: 'referential_id' \ + attribute: 'compliance_check_set_id' \ ), \ TableBuilderHelper::Column.new( \ key: :creation_date, \ @@ -31,8 +31,8 @@ TableBuilderHelper::Column.new( \ key: :associated_object, \ attribute: Proc.new{|n| n.referential.name}, \ - link_to: lambda do |referential| \ - referential_path(referential, current_workbench_id: params[:id]) \ + link_to: lambda do |compliance_check_set| \ + referential_path(compliance_check_set.referential_id) \ end \ ), \ TableBuilderHelper::Column.new( \ diff --git a/app/views/compliance_check_sets/show.html.slim b/app/views/compliance_check_sets/show.html.slim new file mode 100644 index 000000000..659413b28 --- /dev/null +++ b/app/views/compliance_check_sets/show.html.slim @@ -0,0 +1,55 @@ +- breadcrumb :compliance_check_sets, @workbench, @compliance_check_set +/ PageHeader += pageheader 'jeux-de-donnees', + @compliance_check_set.name, + '', + t('last_update', time: l(@compliance_check_set.updated_at, format: :short)) do + + / Below is secundary actions & optional contents (filters, ...) + .row + .col-lg-12.text-right.mb-sm + - @compliance_check_set.action_links.each do |link| + = link_to link.href, + method: link.method, + data: link.data, + class: 'btn btn-primary' do + = link.content + +/ PageContent +.page_content.import_messages + .container-fluid + .row + .col-lg-12 + h1 + span.status_icon = compliance_check_set_status(@compliance_check_set.status) + span = t('compliance_check_sets.show.table_state', lines_status: @compliance_check_set.lines_status , lines_in_compliance_check_set: @compliance_check_set.lines_in_compliance_check_set ) + .col-lg-12 + = t('compliance_check_sets.show.table_explanation') + .row + .col-lg-12 + = table_builder_2 @compliance_check_set.compliance_check_resources, + [ \ + TableBuilderHelper::Column.new( \ + key: :name, \ + attribute: 'name', \ + sortable: false, \ + #link_to: lambda do |compliance_check_set| \ + # compliance_check_set_path(compliance_check_set.referential) if compliance_check_set.referential.present? \ + #end \ + ), \ + TableBuilderHelper::Column.new( \ + key: :status, \ + attribute: Proc.new { |n| compliance_check_set_status(n.status) }, \ + sortable: false, \ + #link_to: lambda do |compliance_check_set| \ + # workbench_compliance_check_set_path(compliance_check_set.compliance_control_set_id, compliance_check_set) \ + #end \ + ), \ + TableBuilderHelper::Column.new( \ + key: :metrics, \ + attribute: 'metrics', \ + sortable: false, \ + ) \ + ], + links: [], + cls: 'table' |
