From 69a0d3938fde8de7b8d58564ecd2767143656d08 Mon Sep 17 00:00:00 2001 From: Martin Lensment Date: Fri, 26 Sep 2014 10:52:54 +0300 Subject: [PATCH] Prefixes to statuses are added no automatically in admin --- app/controllers/admin/domains_controller.rb | 8 ++++++++ app/models/domain_status.rb | 9 +++++++++ app/views/admin/domains/form_partials/_statuses.haml | 2 +- 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/app/controllers/admin/domains_controller.rb b/app/controllers/admin/domains_controller.rb index 2694af651..bdae28a09 100644 --- a/app/controllers/admin/domains_controller.rb +++ b/app/controllers/admin/domains_controller.rb @@ -15,6 +15,8 @@ class Admin::DomainsController < AdminController end def update + add_prefix_to_statuses + if @domain.update(domain_params) flash[:notice] = I18n.t('shared.domain_updated') redirect_to [:admin, @domain] @@ -36,4 +38,10 @@ class Admin::DomainsController < AdminController domain_statuses_attributes: [:id, :value, :description, :_destroy] ) end + + def add_prefix_to_statuses + domain_params[:domain_statuses_attributes].each do |_k, hash| + hash[:value] = hash[:value].prepend('server') + end + end end diff --git a/app/models/domain_status.rb b/app/models/domain_status.rb index c73beb6ae..139c075bf 100644 --- a/app/models/domain_status.rb +++ b/app/models/domain_status.rb @@ -50,5 +50,14 @@ class DomainStatus < ActiveRecord::Base end ret end + + def statuses_for_admin + ret = [] + STATUSES.each do |x| + next unless x.start_with?('server') + ret << x.sub('server', '') + end + ret + end end end diff --git a/app/views/admin/domains/form_partials/_statuses.haml b/app/views/admin/domains/form_partials/_statuses.haml index ae8eb2f44..4623c85ed 100644 --- a/app/views/admin/domains/form_partials/_statuses.haml +++ b/app/views/admin/domains/form_partials/_statuses.haml @@ -15,7 +15,7 @@ .col-md-6 .form-group = status_fields.label :value - = status_fields.select :value, options_for_select(DomainStatus::STATUSES, status_fields.object.value), {include_blank: true}, {class: 'form-control'} + = status_fields.select :value, options_for_select(DomainStatus.statuses_for_admin, status_fields.object.value.sub('server', '')), {include_blank: true}, {class: 'form-control'} .col-md-6 .form-group = status_fields.label :description