Module: Msip::UbicacionHelper

Defined in:
app/helpers/msip/ubicacion_helper.rb

Class Method Summary collapse

Class Method Details

.formato_ubicacion(u, con_centropoblado = true, con_pais = true) ⇒ Object



49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'app/helpers/msip/ubicacion_helper.rb', line 49

def formato_ubicacion(u, con_centropoblado = true, con_pais = true)
  if u.nil?
    return ""
  end

  formato_ubicacion_partes(
    (u ? u.pais_id : nil),
    (u ? u.departamento_id : nil),
    (u ? u.municipio_id : nil),
    (u ? u.centropoblado_id : nil),
    con_centropoblado,
    con_pais,
  )
end

.formato_ubicacion_partes(pais_id, departamento_id, municipio_id, centropoblado_id, con_centropoblado, con_pais) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'app/helpers/msip/ubicacion_helper.rb', line 5

def formato_ubicacion_partes(pais_id, departamento_id, municipio_id,
  centropoblado_id, con_centropoblado, con_pais)
  r = ""
  if pais_id.nil? || Msip::Pais.where(id: pais_id).count != 1
    return r
  end

  if con_pais
    r = Msip::Pais.find(pais_id).nombre
  end
  if departamento_id.nil? ||
      Msip::Departamento.where(
        pais_id: pais_id,
        id: departamento_id,
      ).count != 1
    return r
  end

  if con_pais
    r += " / "
  end
  r += Msip::Departamento.where(id: departamento_id).take.nombre
  if municipio_id.nil? ||
      Msip::Municipio.where(
        departamento_id: departamento_id,
        id: municipio_id,
      ).count != 1
    return r
  end

  r += " / " + Msip::Municipio.where(id: municipio_id).take.nombre
  if !con_centropoblado || centropoblado_id.nil? ||
      Msip::Centropoblado.where(
        municipio_id: municipio_id,
        id: centropoblado_id,
      ).count != 1
    return r
  end

  r += " / " + Msip::Centropoblado.where(id: centropoblado_id).take.nombre
  r
end