| Module | ExtensoReal |
| In: |
vendor/plugins/brazilian-rails/lib/number_portuguese.rb
|
Escreve o numero por extenso em reais.
Exemplo:
Extenso.por_extenso_em_reais(1) ==> "um real" Extenso.por_extenso_em_reais(100) ==> "cem reais" Extenso.por_extenso_em_reais(100.58) ==> "cem reais e cinquenta e oito centavos"
# File vendor/plugins/brazilian-rails/lib/number_portuguese.rb, line 128
128: def ExtensoReal.por_extenso_em_reais(valor)
129: return 'grátis' if valor == 0
130: case valor
131: when Integer
132: extenso = Extenso.por_extenso(valor)
133: if extenso =~ /^(.*)(ão$|ões$)/
134: complemento = 'de '
135: else
136: complemento = ''
137: end
138: %(#{extenso} #{valor <= 1 ? 'real': "#{complemento}reais"})
139: when Float
140: real,cents=("%.2f" % valor).split(/\./).map{ |m| m.to_i}
141: valor_cents=Extenso.por_extenso(cents%100)
142:
143: valor_cents+= case cents.to_i%100
144: when 0: ""
145: when 1: " centavo"
146: when 2..99: " centavos"
147: end
148:
149: if real.to_i > 0
150: "#{ExtensoReal.por_extenso_em_reais(real.to_i)}#{cents > 0 ? ' e ' + valor_cents : ''}"
151: else
152: "#{valor_cents}"
153: end
154: else
155: ExtensoReal.por_extenso_em_reais(valor.to_s.strip.gsub(/[^\d]/,'.').to_f)
156: end
157: end
Escreve por extenso em reais.
Exemplo:
1.por_extenso_em_reais ==> 'um real' (100.58).por_extenso_em_reais ==> 'cem reais e cinquenta e oito centavos'
# File vendor/plugins/brazilian-rails/lib/number_portuguese.rb, line 112
112: def por_extenso_em_reais
113: ExtensoReal.por_extenso_em_reais(self.to_s)
114: end
DEPRECATION WARNING: use por_extenso_em_reais, pois este sera removido no proximo release.
# File vendor/plugins/brazilian-rails/lib/number_portuguese.rb, line 117
117: def to_extenso_real
118: warn('DEPRECATION WARNING: use por_extenso_em_reais, pois este sera removido no proximo release.')
119: self.por_extenso_em_reais
120: end