OpenIrekia v4.0.0
Copyright 2009-2013 eFaber, S.L. Copyright 2009-2013 Ejie, S.A. Copyrigth 2009-2013 Dirección de Gobierno Abierto y Comunicación en Internet;
Gobernu Irekirako eta Interneteko Komunikaziorako Zuzendaritza; Lehendakaritza. Gobierno Vasco – Eusko Jaurlaritza
Licencia con arreglo a la EUPL, Versión 1.1 o –en cuanto sean aprobadas por la Comisión Europea– versiones posteriores de la EUPL (la Licencia); Solo podrá usarse esta obra si se respeta la Licencia. Puede obtenerse una copia de la Licencia en: ec.europa.eu/idabc/eupl Salvo cuando lo exija la legislación aplicable o se acuerde por escrito, el programa distribuido con arreglo a la Licencia se distribuye TAL CUAL, SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ni expresas ni implícitas. Véase la Licencia en el idioma concreto que rige los permisos y limitaciones que establece la Licencia
http://open.irekia.net, openirekia@efaber.net
# File app/controllers/irekia_auth_controller.rb, line 37 def authenticate auth_data = {:status => AUTH_STATUS['not_found']} logger.info "data: #{params[:data]}" if user = User.find_by_email(@data["email"]) logger.info "salt: #{SALT}" logger.info "plain: #{user.plain_password}" logger.info "received: #{@data["password"]}" logger.info "db: #{User.encrypt(user.plain_password, SALT)}" if User.encrypt(user.plain_password, SALT).eql?(@data["password"]) auth_data[:user_id] = user.id ['role', 'name', 'lastname', 'postal_code', 'province', 'city'].each do |label| auth_data[label] = user.send("#{label}4api") end auth_data[:status] = AUTH_STATUS[user.status] end end @auth_response = JSON.generate(auth_data) render :text => @auth_response rescue render :text => JSON.generate({:error => 'Invalid data'}) end
# File app/controllers/irekia_auth_controller.rb, line 60 def register logger.info "data: #{params[:data]}" user_params = {:email => @data["email"], :password => @data["password"], :password_confirmation => @data["password"], :name => @data["name"], :last_names => @data["lastname"], :raw_location => @data["postal_code"]} user = Person.new(user_params) user.user_ip = request.remote_ip response_data = {} if user.save response_data = {:status => USER_STATUS['creado'], :id => user.id, :province => user.province4api, :city => user.city4api} email = Notifier.create_activate_person_account(user) begin logger.info("API: Mandando activacion a #{user.email}") Notifier.deliver(email) rescue Net::SMTPServerBusy, Net::SMTPSyntaxError => err_type logger.info("API: Error al mandar mail de activacion: " + err_type) flash[:error] = t('session.Error_servidor_correo') end else logger.info "API: registro con datos erróneos: #{user.errors.inspect}" if user.errors.on(:email) && user.errors.on(:email).match(I18n.t('users.ya_existe_email')) response_data[:status] = USER_STATUS['ya_existe'] else response_data[:status] = USER_STATUS['datos_erroneos'] end end @registro_response = JSON.generate(response_data) render :text => @registro_response rescue render :text => JSON.generate({:error => 'Invalid data'}) end