Forum: Rails-ES Pregunta preguntona

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
F0bc94e112ad7ad2cc9f11ab4a13e370?d=identicon&s=25 ecorrales (Guest)
on 2007-08-01 20:07
(Received via mailing list)
Hola Foro

Tengo una aplicación en RoR que usa autenticación y que mantiene la sesión del
usuario activa durante una ventana de tiempo, pasado ese tiempo la
sesión del
usario es borrada.

Uso un filter en ApplicationController, que se ejecuta antes de cada
acción,así determino si la hora actual se encuentra de la ventana de tiempo. Si
es
así la acción se ejecuta y se ajusta la ventana de tiempo, sino se borra la
sesión (reset_session) y se redirecciona a el formulario de
autenticación (login).

El problema que tengo es cuando se expira la ventana de tiempo y la
acción es
del tipo Ajax. En este caso lo que sucede es que el formulario de
autenticación se dibuja en la sección donde la petición Ajax dibujaría el
resultado.
Esto es visualmente confuso y desagradable para el usuario.
Necesito que el formulario de autenticación se dibuje en una "pantalla en
blanco" independiente de si la petición es Ajax o Normal.

Gracias de antemano.
7223c62b7310e164eb79c740188abbda?d=identicon&s=25 Xavier Noria (Guest)
on 2007-08-01 20:41
(Received via mailing list)
El Aug 1, 2007, a las 8:08 PM, ecorrales
escribió:
> El problema que tengo es cuando se expira la ventana de tiempo y la
> acción es
> del tipo Ajax. En este caso lo que sucede es que el formulario de
> autenticación se dibuja en la sección donde la petición Ajax
> dibujaría el
> resultado.
> Esto es visualmente confuso y desagradable para el usuario.
> Necesito que el formulario de autenticación se dibuje en una
> "pantalla en
> blanco" independiente de si la petición es Ajax o Normal.

Has de hacer una redireccion por JavaScript, pon algo en el filtro al
estilo de esto:

   if request.xhr?
     render :update do |page|
       page.redirect_to :action => 'login'
     end
   end

-- fxn
F0bc94e112ad7ad2cc9f11ab4a13e370?d=identicon&s=25 ecorrales (Guest)
on 2007-08-01 21:28
(Received via mailing list)
Funcionó correctamente, gracias mil
This topic is locked and can not be replied to.