diff --git a/app/controllers/admin/invoices_controller.rb b/app/controllers/admin/invoices_controller.rb index 39d4e805c..dce34ac2a 100644 --- a/app/controllers/admin/invoices_controller.rb +++ b/app/controllers/admin/invoices_controller.rb @@ -12,7 +12,7 @@ class Admin::InvoicesController < AdminController @deposit = Deposit.new(deposit_params.merge(registrar: r)) @invoice = @deposit.issue_prepayment_invoice - if @invoice.persisted? + if @invoice && @invoice.persisted? flash[:notice] = t(:record_created) redirect_to [:admin, @invoice] else diff --git a/app/controllers/registrar/deposits_controller.rb b/app/controllers/registrar/deposits_controller.rb index 6f1dfff13..4bd40eaa6 100644 --- a/app/controllers/registrar/deposits_controller.rb +++ b/app/controllers/registrar/deposits_controller.rb @@ -9,7 +9,7 @@ class Registrar::DepositsController < RegistrarController @deposit = Deposit.new(deposit_params.merge(registrar: current_user.registrar)) @invoice = @deposit.issue_prepayment_invoice - if @invoice.persisted? + if @invoice && @invoice.persisted? flash[:notice] = t(:please_pay_the_following_invoice) redirect_to [:registrar, @invoice] else diff --git a/app/models/invoice.rb b/app/models/invoice.rb index 3232b34b9..83145553b 100644 --- a/app/models/invoice.rb +++ b/app/models/invoice.rb @@ -29,7 +29,7 @@ class Invoice < ActiveRecord::Base return if number <= Setting.invoice_number_max.to_i - errors.add(:base, I18n.t('failed_to_generate_invoice')) + errors.add(:base, I18n.t('failed_to_generate_invoice_invoice_number_limit_reached')) logger.error('INVOICE NUMBER LIMIT REACHED, COULD NOT GENERATE INVOICE') false end diff --git a/app/views/admin/invoices/index.haml b/app/views/admin/invoices/index.haml index a79c66f5d..75b6285a4 100644 --- a/app/views/admin/invoices/index.haml +++ b/app/views/admin/invoices/index.haml @@ -1,7 +1,6 @@ - content_for :actions do = link_to(t(:add), new_admin_invoice_path, class: 'btn btn-primary') = render 'shared/title', name: t(:invoices) - .row .col-md-12 .table-responsive diff --git a/app/views/admin/invoices/new.haml b/app/views/admin/invoices/new.haml index 3b10341af..920b11903 100644 --- a/app/views/admin/invoices/new.haml +++ b/app/views/admin/invoices/new.haml @@ -4,7 +4,8 @@ = form_for([:admin, @deposit], url: admin_invoices_path, method: :post, html: { class: 'form-horizontal' }) do |f| = render 'shared/full_errors', object: @deposit - + - if @invoice + = render 'shared/full_errors', object: @invoice .row .col-md-8 .form-group diff --git a/config/locales/en.yml b/config/locales/en.yml index 77fd119bd..5d2f0dfff 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -893,3 +893,4 @@ en: results_per_page: 'Results per page' nameserver_hostname: 'Nameserver hostname' result_count: '%{count} results' + failed_to_generate_invoice_invoice_number_limit_reached: 'Failed to generate invoice - invoice number limit reached'