fixed search form

This commit is contained in:
Oleg Hasjanov 2021-07-06 10:32:20 +03:00
parent fd34d3330d
commit fee6b897af
2 changed files with 23 additions and 11 deletions

View file

@ -5,13 +5,15 @@ module Admin
def index
params[:q] ||= {}
if params[:statuses_contains]
domains = Domain.includes(:registrar, :registrant).where(
"domains.statuses @> ?::varchar[]", "{#{params[:statuses_contains].join(',')}}"
)
else
domains = Domain.includes(:registrar, :registrant)
end
domains = if params[:statuses_contains]
Domain.includes(:registrar, :registrant).where(
'domains.statuses @> ?::varchar[]', "{#{params[:statuses_contains].join(',')}}"
)
else
Domain.includes(:registrar, :registrant)
end
domains = get_domains_which_related_to_registrars
normalize_search_parameters do
@q = domains.search(params[:q])
@ -59,7 +61,7 @@ module Admin
redirect_to [:admin, @domain]
else
build_associations
flash.now[:alert] = I18n.t('failed_to_update_domain') + ' ' + @domain.errors.full_messages.join(", ")
flash.now[:alert] = I18n.t('failed_to_update_domain') + ' ' + @domain.errors.full_messages.join(', ')
render 'edit'
end
end
@ -105,7 +107,7 @@ module Admin
begin
end_time = params[:q][:valid_to_lteq].try(:to_date)
params[:q][:valid_to_lteq] = end_time.try(:end_of_day)
rescue
rescue StandardError
logger.warn('Invalid date')
end
@ -113,5 +115,15 @@ module Admin
params[:q][:valid_to_lteq] = ca_cache
end
def get_domains_which_related_to_registrars
if params[:registrar_id_eq]
Domain.includes(:registrar, :registrant).where(
registrar: params[:registrar_id_eq]
)
else
Domain.includes(:registrar, :registrant)
end
end
end
end

View file

@ -29,7 +29,7 @@
<div class="col-md-5">
<div class="form-group">
<%= f.label :registrar_name, for: nil %>
<%= select_tag 'q[registrar_id_eq]', options_for_select(Registrar.all.map { |x| [x, x.id] }, params[:q][:registrar_id_eq]), { multiple: true, class: 'form-control js-combobox' } %>
<%= select_tag :registrar_id_eq, options_for_select(Registrar.all.map { |x| [x, x.id] }, params[:registrar_id_eq]), { multiple: true, class: 'form-control js-combobox' } %>
</div>
</div>
<div class="col-md-3">