/**
  * Guarda formulario de alarma
  */
 public function guardar()
 {
     header('Content-type: application/json');
     $this->load->model("comuna_model", "_comuna_model");
     $this->load->model("region_model", "_region_model");
     $this->load->helper(array("modulo/alarma/alarma"));
     $this->load->library(array("alarma/alarma_validar", "emergencia/email/emergencia_email_revision"));
     $se_envia_email = false;
     $params = $this->input->post(null, true);
     if (trim($params['latitud']) == "" or trim($params['longitud']) == "") {
         $comuna = $this->_comuna_model->getAllDataById($params["comunas"][0]);
         if (!is_null($comuna)) {
             $region = $this->_region_model->getById($comuna->reg_ia_id);
             if (!is_null($region)) {
                 $params['latitud'] = $region->lat;
                 $params['longitud'] = $region->lon;
             }
         }
     }
     if ($this->alarma_validar->esValido($params)) {
         $data = array("eme_c_nombre_informante" => $params['nombre_informante'], "eme_c_nombre_emergencia" => $params['nombre_emergencia'], "tip_ia_id" => $params['tipo_emergencia'], "est_ia_id" => $params['estado_emergencia'], "eme_c_lugar_emergencia" => $params['nombre_lugar'], "eme_d_fecha_emergencia" => spanishDateToISO($params['fecha_emergencia']), "rol_ia_id" => $this->session->userdata('session_idCargo'), "usu_ia_id" => $this->session->userdata('session_idUsuario'), "eme_c_descripcion" => $params['descripcion_emergencia'], "eme_c_observacion" => $params['observacion'], "eme_c_utm_lat" => $params['latitud'], "eme_c_utm_lng" => $params['longitud'], "eme_nivel" => $params['nivel_emergencia']);
         $evento = $this->_emergencia_model->query()->getById("eme_ia_id", $params["eme_id"]);
         //la alarma ya existia
         if (!is_null($evento)) {
             $id = $evento->eme_ia_id;
             $this->_emergencia_model->update($data, $evento->eme_ia_id);
             /*$se_envia_email = $this->_enviaEmail($id);*/
         } else {
             $data["eme_d_fecha_recepcion"] = DATE("Y-m-d H:i:s");
             $data["hash"] = $this->_nuevoHash();
             $id = $this->_emergencia_model->insert($data);
             /*$se_envia_email = $this->_enviaEmail($id);*/
             Evento_historial::putHistorial($id, 'Se ha creado el Evento con estado ' . nombreAlarmaEstado($params['estado_emergencia']));
         }
         if (count($params['comunas']) == 1 and $params['comunas'][0] == 0) {
             $comunas_usuario = $this->_comuna_model->listarComunasPorUsuario($this->session->userdata("session_idUsuario"));
             $lista_comunas = array();
             foreach ($comunas_usuario as $com) {
                 $lista_comunas[] = $com['com_ia_id'];
             }
         } else {
             $lista_comunas = $params['comunas'];
         }
         $this->_emergencia_comuna_model->query()->insertOneToMany("eme_ia_id", "com_ia_id", $id, $lista_comunas);
         /*$this->_emergencia_comuna_model
           ->query()
           ->insertOneToMany(
               "eme_ia_id",
               "com_ia_id",
               $id,
               $params['comunas']
           );*/
         $se_envia_email = $this->_enviaEmail($id);
         $this->_guardarFormularioTipoEmergencia($id);
         //$this->_guardarArchivos($id,$this->session->userdata('session_idUsuario'));
     }
     $respuesta = array("se_envia_email" => $se_envia_email, "correcto" => $this->alarma_validar->getCorrecto(), "error" => $this->alarma_validar->getErrores());
     echo Zend_Json::encode($respuesta);
 }
 /**
  * 
  * @param array $comunas
  */
 public function setComunas($comunas)
 {
     if (!is_null($this->_emergencia)) {
         $this->_emergencia_comuna_model->query()->insertOneToMany("eme_ia_id", "com_ia_id", $this->_emergencia->eme_ia_id, $comunas);
     }
 }