demarches-normaliennes/app/controllers/carte_controller.rb

44 lines
1.4 KiB
Ruby
Raw Normal View History

2015-08-10 11:05:06 +02:00
class CarteController < ApplicationController
include DossierConcern
2015-08-10 11:05:06 +02:00
def show
@dossier = current_dossier
2015-08-18 10:43:22 +02:00
rescue ActiveRecord::RecordNotFound
redirect_to url_for(controller: :start, action: :error_dossier)
2015-08-10 11:05:06 +02:00
end
def save_ref_api_carto
dossier = current_dossier
2015-08-18 10:43:22 +02:00
if dossier.ref_dossier.blank?
dossier.update_attributes(ref_dossier: params[:ref_dossier])
2015-08-20 16:34:14 +02:00
redirect_to url_for(controller: :description, action: :show, dossier_id: params[:dossier_id])
2015-08-18 10:43:22 +02:00
else
commentaire_params = {
email: 'Modification localisation',
body: 'La localisation de la demande a été modifiée. Merci de le prendre en compte.',
dossier_id: dossier.id
}
commentaire = Commentaire.new commentaire_params
commentaire.save
2015-08-20 16:34:14 +02:00
redirect_to url_for(controller: :recapitulatif, action: :show, dossier_id: params[:dossier_id])
2015-08-18 10:43:22 +02:00
2015-08-10 11:05:06 +02:00
end
end
def get_position
dossier = current_dossier
2015-08-10 11:05:06 +02:00
2015-08-20 16:34:14 +02:00
if dossier.position_lat.nil?
tmp_position = Carto::Geocodeur.convert_adresse_to_point(dossier.etablissement.adresse.gsub("\r\n", ' '))
2015-08-10 11:05:06 +02:00
2015-08-20 16:34:14 +02:00
if tmp_position.point.nil?
dossier.update_attributes(position_lat: '0', position_lon: '0')
else
dossier.update_attributes(position_lat: tmp_position.point.y, position_lon: tmp_position.point.x)
end
2015-08-10 11:05:06 +02:00
end
render json: { lon: dossier.position_lon, lat: dossier.position_lat, dossier_id: params[:dossier_id] }
2015-08-10 11:05:06 +02:00
end
2015-08-20 16:34:14 +02:00
end