lib/polish_invoicer/validator.rb in polish_invoicer-0.0.19 vs lib/polish_invoicer/validator.rb in polish_invoicer-0.0.20

- old
+ new

@@ -16,10 +16,11 @@ check_booleans check_price check_vat check_proforma check_create_and_payment_date + check_currency @errors.empty? end private @@ -38,10 +39,11 @@ end def check_not_nil @errors[:gross_price] = 'Konieczne jest ustawienie znacznika rodzaju ceny (netto/brutto)' if @invoice.gross_price.nil? @errors[:paid] = 'Konieczne jest ustawienie znacznika opłacenia faktury' if @invoice.paid.nil? + @errors[:currency] = 'Konieczne jest ustawienie waluty rozliczeniowej' if @invoice.currency.nil? end def check_arrays @errors[:seller] = 'Sprzedawca musi być podany jako tablica stringów' unless @invoice.seller.is_a?(Array) @errors[:buyer] = 'Nabywca musi być podany jako tablica stringów' unless @invoice.buyer.is_a?(Array) @@ -98,9 +100,15 @@ def check_create_and_payment_date return if @errors[:create_date] return if @errors[:payment_date] return if @invoice.create_date <= @invoice.payment_date @errors[:payment_date] = 'Termin płatności nie może być wcześniejszy niż data wystawienia' + end + + def check_currency + return if @errors[:currency] + return if %w[PLN EUR USD GBP].include?(@invoice.currency) + @errors[:currency] = 'Nieznana waluta' end def blank?(value) value.to_s.strip == '' end