mdwa_endereco 0.0.1 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +6 -5
- data/Gemfile.lock +135 -0
- data/README.md +42 -17
- data/lib/generators/mdwa_endereco/install/install_generator.rb +85 -0
- data/lib/generators/mdwa_endereco/install/templates/assets/js/endereco.js +35 -0
- data/lib/generators/mdwa_endereco/install/templates/db/seeds.rb +5605 -0
- data/lib/generators/mdwa_endereco/install/templates/entidades/cidade.rb +32 -0
- data/lib/generators/mdwa_endereco/install/templates/entidades/endereco.rb +26 -0
- data/lib/generators/mdwa_endereco/install/templates/entidades/estado.rb +20 -0
- data/lib/generators/mdwa_endereco/install/templates/locales/mdwa.endereco.en.yml +105 -0
- data/lib/generators/mdwa_endereco/install/templates/locales/mdwa.endereco.pt-BR.yml +105 -0
- data/lib/generators/mdwa_endereco/install/templates/requisitos/armazenar_enderecos.rb +10 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/controllers/cidades_controller.rb +167 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/controllers/cidades_controller.rb~ +81 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/controllers/enderecos_controller.rb +36 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/controllers/estados_controller.rb +167 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/controllers/estados_controller.rb~ +81 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/helpers/cidade.rb +7 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/helpers/endereco.rb +7 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/helpers/estado.rb +7 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/models/cidade.rb +14 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/models/endereco.rb +24 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/models/estado.rb +10 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/models/geoposicionamento.rb +46 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/_form.html.erb +18 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/_form_fields.html.erb +31 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/_list.html.erb +36 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/create.js.erb +7 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/destroy.js.erb +2 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/edit.html.erb +9 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/index.html.erb +53 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/index.js.erb +1 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/new.html.erb +9 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/show.html.erb +54 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/update.js.erb +12 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/enderecos/_form.html.erb +18 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/enderecos/_form_fields.html.erb +50 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/enderecos/_form_fields_formatado.html.erb +65 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/enderecos/atualizar_dados_cep.js.erb +17 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/enderecos/gerar_combobox_cidade.js.erb +5 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/_form.html.erb +18 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/_form_fields.html.erb +13 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/_list.html.erb +31 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/create.js.erb +7 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/destroy.js.erb +2 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/edit.html.erb +9 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/index.html.erb +45 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/index.js.erb +1 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/new.html.erb +9 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/show.html.erb +39 -0
- data/lib/generators/mdwa_endereco/install/templates/templates/views/estados/update.js.erb +12 -0
- data/lib/mdwa_endereco.rb +1 -0
- data/lib/mdwa_endereco/version.rb +2 -1
- data/mdwa_endereco.gemspec +1 -0
- metadata +75 -18
@@ -0,0 +1,46 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
require "httparty"
|
3
|
+
class Geoposicionamento
|
4
|
+
|
5
|
+
include HTTParty
|
6
|
+
format :xml
|
7
|
+
|
8
|
+
def Geoposicionamento.posicao endereco
|
9
|
+
|
10
|
+
# importando o helper por meio de um objeto
|
11
|
+
# nao sei porque, mas o include nao funciona
|
12
|
+
brHelper = Object.new.extend(BrHelper)
|
13
|
+
|
14
|
+
# Validando se parametro realmente é um objeto da classe Endereco
|
15
|
+
if !endereco.blank? and endereco.class.name.eql?( Endereco.name ) and !endereco.rua.blank?
|
16
|
+
|
17
|
+
# Montando a url do webservice de geoposicionamento do google
|
18
|
+
url = Settings["GEOPOSICIONAMENTO.url"] + brHelper.remover_caracteres_especiais( self.tratar_espacos( endereco.rua ) )
|
19
|
+
url += "+" + brHelper.remover_caracteres_especiais( endereco.numero.to_s ) unless endereco.numero.blank?
|
20
|
+
url += ",+" + brHelper.remover_caracteres_especiais( self.tratar_espacos( endereco.cidade.nome ) ) unless endereco.cidade_id.blank?
|
21
|
+
url += ",+" + brHelper.remover_caracteres_especiais( endereco.cidade.estado.acronimo.upcase ) unless endereco.cidade.estado_id.blank?
|
22
|
+
url += "&sensor=false" # Parametro obrigatorio para indicar que requisição não vem de dispositivo com sensor de localização
|
23
|
+
|
24
|
+
# Realizando a requisição get
|
25
|
+
resposta = Geoposicionamento.get( url )
|
26
|
+
|
27
|
+
# Validando resposta
|
28
|
+
if resposta.blank? or resposta["GeocodeResponse"].blank? or !resposta["GeocodeResponse"]["status"].eql?( "OK") or !resposta["GeocodeResponse"]["result"].include?("geometry")
|
29
|
+
return nil
|
30
|
+
end
|
31
|
+
|
32
|
+
# Montando coordenadas no objeto de endereco
|
33
|
+
endereco.latitude = resposta["GeocodeResponse"]["result"]["geometry"]["location"]["lat"]
|
34
|
+
endereco.longitude = resposta["GeocodeResponse"]["result"]["geometry"]["location"]["lng"]
|
35
|
+
|
36
|
+
return endereco
|
37
|
+
end
|
38
|
+
|
39
|
+
return nil
|
40
|
+
end
|
41
|
+
|
42
|
+
def Geoposicionamento.tratar_espacos texto
|
43
|
+
return texto.remover_acentos.gsub( " ", "+" )
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<%%= nested_form_for(@cidade, :remote => true, :html => {:class => :mdwa_ajax }) do |f| %>
|
2
|
+
|
3
|
+
<div id="mdwa_error">
|
4
|
+
<%%= render '/template/mdwa/crud_error', :object => @cidade %>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<div class="yui3-g">
|
8
|
+
<div class="yui3-u">
|
9
|
+
<%%= render 'form_fields', :f => f %>
|
10
|
+
</div>
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<div class="actions">
|
14
|
+
<%%= link_to t('system.cancel_button'), '#', :class => :cancel %>
|
15
|
+
<%%= f.submit t('system.save_button'), :class => :button %>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
<%% end %>
|
data/lib/generators/mdwa_endereco/install/templates/templates/views/cidades/_form_fields.html.erb
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
<div class="field">
|
2
|
+
<%%= f.label :nome, t('cidades.edit.nome') %>
|
3
|
+
<%%= f.text_field :nome %>
|
4
|
+
</div>
|
5
|
+
<div class="field">
|
6
|
+
<%%= f.label :latitude, t('cidades.edit.latitude') %>
|
7
|
+
<%%= f.text_field :latitude %>
|
8
|
+
</div>
|
9
|
+
<div class="field">
|
10
|
+
<%%= f.label :longitude, t('cidades.edit.longitude') %>
|
11
|
+
<%%= f.text_field :longitude %>
|
12
|
+
</div>
|
13
|
+
<div class="field">
|
14
|
+
<%%= f.label :populacao, t('cidades.edit.populacao') %>
|
15
|
+
<%%= f.number_field :populacao %>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
<div class="field">
|
24
|
+
<%%= f.label :estado_id, t('cidades.edit.estado') %>
|
25
|
+
<%%= f.select :estado_id,
|
26
|
+
options_for_select( A::Estado.order('nome ASC').collect{ |c| [c.nome, c.id] }, f.object.estado_id ),
|
27
|
+
:prompt => t('cidades.edit.estado_select') %>
|
28
|
+
</div>
|
29
|
+
|
30
|
+
|
31
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
<table class="list">
|
2
|
+
<thead>
|
3
|
+
<th class="list_show"><%%= t 'cidades.index.id' %></th>
|
4
|
+
<th class="list_edit"><%%= t 'cidades.index.edit' %></th>
|
5
|
+
<th><%%= t 'cidades.index.estado' %></th>
|
6
|
+
<th><%%= t 'cidades.index.nome' %></th>
|
7
|
+
<th><%%= t 'cidades.index.populacao' %></th>
|
8
|
+
<th class="list_remove"><%%= t 'cidades.index.remove' %></th>
|
9
|
+
</thead>
|
10
|
+
|
11
|
+
<%% @cidades.each do |cidade| %>
|
12
|
+
<tr class="<%%= cycle 'odd_line', 'even_line' %>" >
|
13
|
+
<td class="list_show">
|
14
|
+
<%%= link_to cidade.id, a_cidade_path(cidade) , :class => 'lightbox various fancybox.ajax' %>
|
15
|
+
</td>
|
16
|
+
<td class="list_edit">
|
17
|
+
<%%= link_to t('cidades.index.edit_label'), edit_a_cidade_path(cidade) , :class => 'lightbox various fancybox.ajax' %>
|
18
|
+
</td>
|
19
|
+
<td>
|
20
|
+
<%%= cidade.estado.nome unless cidade.estado.nil? %>
|
21
|
+
</td>
|
22
|
+
<td>
|
23
|
+
<%%= cidade.nome %>
|
24
|
+
</td>
|
25
|
+
<td>
|
26
|
+
<%%= cidade.populacao %>
|
27
|
+
</td>
|
28
|
+
|
29
|
+
<td class="list_remove">
|
30
|
+
<%%= link_to t('cidades.index.remove_label'), cidade, :method => :delete, :remote => true, :data => {:confirm => t('cidades.index.confirm_deletion')} %>
|
31
|
+
</td>
|
32
|
+
</tr>
|
33
|
+
<%% end %>
|
34
|
+
</table>
|
35
|
+
|
36
|
+
<%%= pagination_footer @cidades %>
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<%% if @cidade.errors.any? %>
|
2
|
+
$("#mdwa_error").html("<%%= j( render '/template/mdwa/crud_error', :object => @cidade )%>");
|
3
|
+
<%% else %>
|
4
|
+
$.fancybox.close(true);
|
5
|
+
$('#cidades_filter_form').submit();
|
6
|
+
$('body').append("<%%= j( render '/template/mdwa/notice', :notice => @system_notice )%>");
|
7
|
+
<%% end %>
|
@@ -0,0 +1,53 @@
|
|
1
|
+
<div id="cidades_index" class="mdwa_index">
|
2
|
+
<div class="page_header">
|
3
|
+
<h1><%%= t 'cidades.title.index' %></h1>
|
4
|
+
<div class="page_header_right_tab">
|
5
|
+
<%%= link_to t('cidades.index.add'), new_a_cidade_path, :class => 'lightbox various fancybox.ajax' %>
|
6
|
+
</div>
|
7
|
+
</div>
|
8
|
+
|
9
|
+
<div class="inside">
|
10
|
+
|
11
|
+
<div class="topo">
|
12
|
+
<div class="yui3-g">
|
13
|
+
<%%= form_tag a_cidades_path, :method => :get, :remote => true, :id => 'cidades_filter_form' do %>
|
14
|
+
|
15
|
+
<div class="yui3-u-1-5">
|
16
|
+
<div class="field">
|
17
|
+
<%%= label_tag :id, t('cidades.filtros.id') %>
|
18
|
+
<%%= text_field_tag :id, '', :onkeypress => "mascara(this, checaNumero)", :maxlength => 10 %>
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
<div class="yui3-u-1-5">
|
22
|
+
<div class="field">
|
23
|
+
<%%= label_tag :nome, t('cidades.filtros.nome') %>
|
24
|
+
<%%= text_field_tag :nome %>
|
25
|
+
</div>
|
26
|
+
</div>
|
27
|
+
|
28
|
+
<div class="yui3-u-1-5">
|
29
|
+
<div class="field">
|
30
|
+
<%%= label_tag :estado, t('cidades.filtros.estado') %>
|
31
|
+
<%%= render '/template/mdwa/autocomplete_tag', :dom_element => '#estado', :dom_element_id => '#estado_id', :data => A::Estado.all, :field_name => 'nome' %>
|
32
|
+
<%%= text_field_tag :estado %>
|
33
|
+
<%%= hidden_field_tag :estado_id %>
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<!-- Botão buscar -->
|
38
|
+
<div class="yui3-u-1-5">
|
39
|
+
<div class="field">
|
40
|
+
<label> </label>
|
41
|
+
<%%= submit_tag t('system.search_button'), :class => :button %>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
|
45
|
+
<%% end %>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
|
49
|
+
<div id="cidades_list">
|
50
|
+
<%%= render 'list' %>
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
$("#cidades_list").html("<%%= j( render 'list' )%>");
|
@@ -0,0 +1,54 @@
|
|
1
|
+
<div id="cidades_show" class="mdwa_show">
|
2
|
+
<div class="page_header">
|
3
|
+
<h1><%%= t('cidades.title.show') %></h1>
|
4
|
+
</div>
|
5
|
+
|
6
|
+
<div class="inside">
|
7
|
+
<div class="field">
|
8
|
+
<label><%%= t 'cidades.show.id' %></label>
|
9
|
+
<span><%%= @cidade.id %></span>
|
10
|
+
</div>
|
11
|
+
<div class="field">
|
12
|
+
<label><%%= t 'cidades.show.nome' %></label>
|
13
|
+
<span><%%= @cidade.nome %></span>
|
14
|
+
</div>
|
15
|
+
<div class="field">
|
16
|
+
<label><%%= t 'cidades.show.latitude' %></label>
|
17
|
+
<span><%%= @cidade.latitude %></span>
|
18
|
+
</div>
|
19
|
+
<div class="field">
|
20
|
+
<label><%%= t 'cidades.show.longitude' %></label>
|
21
|
+
<span><%%= @cidade.longitude %></span>
|
22
|
+
</div>
|
23
|
+
<div class="field">
|
24
|
+
<label><%%= t 'cidades.show.populacao' %></label>
|
25
|
+
<span><%%= @cidade.populacao %></span>
|
26
|
+
</div>
|
27
|
+
<div class="field">
|
28
|
+
<label><%%= t 'cidades.show.created_at' %></label>
|
29
|
+
<span><%%= @cidade.created_at %></span>
|
30
|
+
</div>
|
31
|
+
<div class="field">
|
32
|
+
<label><%%= t 'cidades.show.updated_at' %></label>
|
33
|
+
<span><%%= @cidade.updated_at %></span>
|
34
|
+
</div>
|
35
|
+
<div class="field">
|
36
|
+
<label><%%= t 'cidades.show.endereco' %></label>
|
37
|
+
<span>
|
38
|
+
<ul>
|
39
|
+
<%% @cidade.enderecos.each do |endereco| %>
|
40
|
+
<li><%%= endereco.rua %> </li>
|
41
|
+
<%% end %>
|
42
|
+
</ul>
|
43
|
+
|
44
|
+
</span>
|
45
|
+
</div>
|
46
|
+
<div class="field">
|
47
|
+
<label><%%= t 'cidades.show.estado' %></label>
|
48
|
+
<span>
|
49
|
+
<%%= @cidade.estado.nome unless @cidade.estado.nil? %>
|
50
|
+
|
51
|
+
</span>
|
52
|
+
</div>
|
53
|
+
</div>
|
54
|
+
</div>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
<%% if @cidade.errors.any? %>
|
2
|
+
$("#mdwa_error").html("<%%= j( render '/template/mdwa/crud_error', :object => @cidade )%>");
|
3
|
+
<%% else %>
|
4
|
+
if( $('#cidades_list').length > 0 ) {
|
5
|
+
$.fancybox.close(true);
|
6
|
+
$('#cidades_filter_form').submit();
|
7
|
+
}
|
8
|
+
else if( $("#edit_cidades").length > 0 ) {
|
9
|
+
$("#edit_cidades .inside").html("<%%= j( render 'form' )%>");
|
10
|
+
}
|
11
|
+
$('body').append("<%%= j( render '/template/mdwa/notice', :notice => @system_notice )%>");
|
12
|
+
<%% end %>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<%%= form_for(@endereco, :remote => true, :html => {:class => :mdwa_ajax}) do |f| %>
|
2
|
+
|
3
|
+
<div id="mdwa_error">
|
4
|
+
<%%= render '/template/mdwa/crud_error', :object => @endereco %>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<div class="yui3-g">
|
8
|
+
<div class="yui3-u">
|
9
|
+
<%%= render 'form_fields', :f => f %>
|
10
|
+
</div>
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<div class="actions">
|
14
|
+
<%%= link_to t('system.cancel_button'), '#', :class => :cancel %>
|
15
|
+
<%%= f.submit :class => :button %>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
<%% end %>
|
data/lib/generators/mdwa_endereco/install/templates/templates/views/enderecos/_form_fields.html.erb
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
<div class="endereco">
|
2
|
+
|
3
|
+
<div class="field">
|
4
|
+
<%%= f.label :cep, t('enderecos.edit.cep') %>
|
5
|
+
<%%= f.text_field :cep, :onkeypress => 'mascara(this, checaCEP)', :maxlength => 9, :class => :endereco_cep_ajax %>
|
6
|
+
</div>
|
7
|
+
<div class="field">
|
8
|
+
<%%= f.label :rua, t( 'enderecos.edit.rua') %>
|
9
|
+
<%%= f.text_field :rua %>
|
10
|
+
</div>
|
11
|
+
<div class="field">
|
12
|
+
<%%= f.label :numero, t( 'enderecos.edit.numero') %>
|
13
|
+
<%%= f.text_field :numero %>
|
14
|
+
</div>
|
15
|
+
<div class="field">
|
16
|
+
<%%= f.label :complemento, t( 'enderecos.edit.complemento') %>
|
17
|
+
<%%= f.text_field :complemento %>
|
18
|
+
</div>
|
19
|
+
|
20
|
+
<div class="field">
|
21
|
+
<%%
|
22
|
+
if f.object.new_record?
|
23
|
+
estado_selecionado = ''
|
24
|
+
else
|
25
|
+
estado_selecionado = f.object.cidade.estado.id
|
26
|
+
end
|
27
|
+
%>
|
28
|
+
<%%= label_tag :estado, t('enderecos.edit.estado') %>
|
29
|
+
<%%= select_tag 'estado_id', options_for_select( A::Estado.order('nome ASC').collect{ |e| [e.nome, e.id] }, estado_selecionado ), :prompt => t( 'enderecos.edit.combo_estados' ) %>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<div class="field">
|
33
|
+
<%%= label_tag :cidade_id, t('enderecos.edit.cidade') %>
|
34
|
+
<div id="endereco_cidade">
|
35
|
+
<%% if f.object.new_record? %>
|
36
|
+
<%%= select_tag 'cidade_id', options_for_select([]), :prompt => t( 'enderecos.edit.combo_cidade_inicial' ) %>
|
37
|
+
<%% else %>
|
38
|
+
<%%= select_tag 'cidade_id', options_for_select( A::Cidade.where( :estado_id => f.object.cidade.estado.id ).collect{ |c| [c.nome, c.id] }, f.object.cidade.id ), :prompt => t( 'enderecos.edit.combo_cidade' ) %>
|
39
|
+
<%% end %>
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div class="field">
|
44
|
+
<%%= f.label :bairro, t( 'enderecos.edit.bairro' ) %>
|
45
|
+
<%%= f.text_field :bairro %>
|
46
|
+
</div>
|
47
|
+
|
48
|
+
<%%= hidden_field_tag :endereco_tipo, tipo %>
|
49
|
+
|
50
|
+
</div>
|
@@ -0,0 +1,65 @@
|
|
1
|
+
<div class="yui3-g endereco">
|
2
|
+
<div class="yui3-u-1-6">
|
3
|
+
<div class="field">
|
4
|
+
<%%= f.label :cep, t('enderecos.edit.cep') %>
|
5
|
+
<%%= f.text_field :cep, :onkeypress => 'mascara(this, checaCEP)', :maxlength => 9, :class => :endereco_cep_ajax %>
|
6
|
+
</div>
|
7
|
+
</div>
|
8
|
+
<div class="yui3-u-1-3">
|
9
|
+
<div class="field">
|
10
|
+
<%%
|
11
|
+
if f.object.new_record?
|
12
|
+
estado_selecionado = ''
|
13
|
+
else
|
14
|
+
estado_selecionado = f.object.cidade.estado.id
|
15
|
+
end
|
16
|
+
%>
|
17
|
+
<%%= label_tag :estado, t('enderecos.edit.estado') %>
|
18
|
+
<%%= select_tag 'estado_id', options_for_select( A::Estado.order('nome ASC').collect{ |e| [e.nome, e.id] }, estado_selecionado ), :prompt => t( 'enderecos.edit.combo_estados' ) %>
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
<div class="yui3-u-1-2">
|
22
|
+
<div class="field">
|
23
|
+
<%%= label_tag :cidade_id, t('enderecos.edit.cidade') %>
|
24
|
+
<div id="endereco_cidade">
|
25
|
+
<%% if f.object.new_record? %>
|
26
|
+
<%%= select_tag 'cidade_id', options_for_select([]), :prompt => t( 'enderecos.edit.combo_cidade_inicial' ) %>
|
27
|
+
<%% else %>
|
28
|
+
<%%= select_tag 'cidade_id', options_for_select( A::Cidade.where( :estado_id => f.object.cidade.estado.id ).collect{ |c| [c.nome, c.id] }, f.object.cidade.id ), :prompt => t( 'enderecos.edit.combo_cidade' ) %>
|
29
|
+
<%% end %>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
<div class="yui3-g">
|
35
|
+
<div class="yui3-u-1-3">
|
36
|
+
<div class="yui3-g">
|
37
|
+
<div class="yui3-u-5-6">
|
38
|
+
<div class="field">
|
39
|
+
<%%= f.label :rua, t( 'enderecos.edit.rua' ) %>
|
40
|
+
<%%= f.text_field :rua %>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
<div class="yui3-u-1-6">
|
44
|
+
<div class="field">
|
45
|
+
<%%= f.label :numero, t( 'enderecos.edit.numero') %>
|
46
|
+
<%%= f.text_field :numero %>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
<div class="yui3-u-1-3">
|
52
|
+
<div class="field">
|
53
|
+
<%%= f.label :bairro, t( 'enderecos.edit.bairro' ) %>
|
54
|
+
<%%= f.text_field :bairro %>
|
55
|
+
</div>
|
56
|
+
</div>
|
57
|
+
<div class="yui3-u-1-3">
|
58
|
+
<div class="field">
|
59
|
+
<%%= f.label :complemento, t( 'enderecos.edit.complemento' ) %>
|
60
|
+
<%%= f.text_field :complemento %>
|
61
|
+
</div>
|
62
|
+
</div>
|
63
|
+
</div>
|
64
|
+
|
65
|
+
<%%= hidden_field_tag :endereco_tipo, tipo %>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<%% unless @endereco.blank? %>
|
2
|
+
$("#<%%= @tipo %>_endereco_attributes_rua").val( "<%%= @endereco[0] + " " + @endereco[1] %>" );
|
3
|
+
$("#estado_id").val( "<%%= @estado.id %>" );
|
4
|
+
$("#<%%= @tipo %>_endereco_attributes_bairro").val( "<%%= @endereco[2] %>" );
|
5
|
+
$.ajax({
|
6
|
+
url: '/a/enderecos/gerar_combobox_cidade',
|
7
|
+
type: 'POST',
|
8
|
+
dataType: 'script',
|
9
|
+
data: {
|
10
|
+
estado: '<%%= @estado.id %>',
|
11
|
+
cidade: '<%%= @cidade.id %>',
|
12
|
+
endereco_tipo: '<%%= @tipo %>'
|
13
|
+
}
|
14
|
+
});
|
15
|
+
<%% end %>
|
16
|
+
$("div.endereco img").remove();
|
17
|
+
|