Add Renew button to make renewal a separate action

This commit is contained in:
Alex Sherman 2020-12-15 13:36:17 +05:00
parent 3edf8a500a
commit a1b3398e0e
4 changed files with 14 additions and 10 deletions

View file

@ -12,16 +12,22 @@ class Registrar
authorize! :manage, :repp authorize! :manage, :repp
set_form_data set_form_data
if domain_ids_for_bulk_renew.present? if ready_to_renew?
domains = Epp::Domain.where(id: domain_ids_for_bulk_renew).to_a domains = Epp::Domain.where(id: domain_ids_for_bulk_renew).to_a
task = renew_task(domains) task = renew_task(domains)
flash[:notice] = flash_message(task) flash[:notice] = flash_message(task)
else
flash[:notice] = nil
end end
render file: 'registrar/bulk_change/new', locals: { active_tab: :bulk_renew } render file: 'registrar/bulk_change/new', locals: { active_tab: :bulk_renew }
end end
private private
def ready_to_renew?
domain_ids_for_bulk_renew.present? && params[:renew].present?
end
def set_form_data def set_form_data
@expire_date = params[:expire_date].to_date @expire_date = params[:expire_date].to_date
@domains = domains_by_date(@expire_date) @domains = domains_by_date(@expire_date)

View file

@ -48,11 +48,10 @@
</div> </div>
<% end %> <% end %>
<div class="form-group"> <div class="form-group pull-left">
<div class="col-md-4 col-md-offset-2 text-right"> <%= f.submit "#{t '.filter_btn'}", name: 'filter', class: 'btn btn-warning' %>
<button class="btn btn-warning"> <% if @domains.present? %>
<%= t '.filter_btn' %> <%= f.submit "#{t '.renew_btn'}", name: 'renew', class: 'btn btn-primary' %>
</button> <% end %>
</div>
</div> </div>
<% end %> <% end %>

View file

@ -33,6 +33,7 @@ en:
bulk_renew_form: bulk_renew_form:
filter_btn: Filter filter_btn: Filter
renew_btn: Renew
expire_date: Expire date until expire_date: Expire date until
domain_ids: Domains for bulk renewal domain_ids: Domains for bulk renewal
current_balance: Current balance current_balance: Current balance

View file

@ -30,11 +30,9 @@ class BulkRenewTest < ApplicationSystemTestCase
visit new_registrar_bulk_change_url visit new_registrar_bulk_change_url
click_link('Bulk renew') click_link('Bulk renew')
select '1 year', from: 'Period' select '1 year', from: 'Period'
click_button 'Filter' click_button 'Filter'
click_button 'Renew'
click_button 'Filter'
assert_text 'invalid.test' assert_text 'invalid.test'
assert_no_text 'shop.test' assert_no_text 'shop.test'