Plugin ---Acts as Authenticated--mandar E-mail

Hola, estoy probando el plugin: Acts as Authenticated. Para implantar un
sistema de registro de usuarios. He conseguido que los usuarios se
registren, pero
cuando quiero hacer el registro mediante verificacion por e-mail, no
consigo
que el e-mail se mande. En la base de datos veo que el
activation_code (campo de la tabla USERS) se crea cuando registro un
usuario, pero insisto el mail no me sale.

Supongo que sera porque hay algo que hago mal con → ActionMailer::
Base.smtp_settings, pero NO SÉ el QUÉ???

La documentación que estoy consultando es esta:
http://technoweenie.stikipad.com/plugins/show/Acts+as+Authenticated

La App en la que estoy usando el plugin la acabo de crear para usarlo,
entonces no puede ser nada que yo haya tocado en ningún sitio.

Alguna idea?

¿Qué dicen los logs?

El 22/10/07, Andrés gutiérrez [email protected]
escribió:> Hola, estoy probando el plugin: Acts as Authenticated. Para implantar un

Los logs me daban los datos bien, el problema esta resuelto. Era el
ActionMailer::Base.smtp_settings todo eso que hay que poner
de mis datos de correo para que sepa desde que cuenta hay que mandar los
mensajes de validacion. El principal problema es que soy nuevo en todo y
tengo que ir averiguando las cosas poco a poco, pero muy contento de
haber
conocido a Mr. Ruby y a Mr. Rails

Gracias Javier

Hola, sigo mirando este plugin (Acts as Authenticated), y hoy tengo dos
PREGUNTAS. Las he puesto en pasti[1], pero explicare un poco
PREGUNTA 1

Cuando registro un usuario, quiero que que el plugin mande un mail de
confirmación a ese usuario. El mail le llega y cuando pincha en el link
para

activar su cuenta le redirige bien al index de mi App. Hasta aquí
perfecto,
solo que el campo [activated_at] sige siendo nulo una vez que el usuario
ha
abierto el e-mail y ha pinchado en el link. He comprobado que si quito
esto
[attr_protected :activated_at] en -->User.rb el usuario si que se activa
Parece logico, ese campo, con esa linea esta protegido y no se puede
modificar. Pero en el tutorial:

http://technoweenie.stikipad.com/plugins/show/User+Activation

recomiendan ponerlo por motivos de seguridad. Lo que creo es que hay
algo
que se me escapa ¿Qué?

PREGUNTA 2

Cuando yo (como usuario que me registro en mi App) recibo el mail para
activar mi cuenta, recibo las instrucciones en ingles
y no sé cómo se puede cambiar el cuerpo del mensaje para que aparezca en
castellano

MAS DETALLES DE MIS PREGUNTAS EN EL PASTIE:

Pincha aqui para verlo:
http://pastie.caboo.se/110392

Muchas gracias por tus aclaraciones. Lo voy a probar ahora mismo. Sólo
una
cosa. Estoy empezando con RoR y no me atrevo a empezar por REST sin
conocer
lo que le precede, pero tu que me recomiendas.

El día 24/10/07, Javier Vidal P. [email protected] escribió:

La wiki de technoweenie necesitaría una buena limpieza, je, je.

Si lees la doc de attr_protected[1], verás que si utilizas éste
método, el método attributes= se ignorará para los atributos
especificados.

Como estás ejecutando:

update_attributes(:activated_at => Time.now.utc, :activation_code =>
nil)

pues es normal que no funcione, ya que update_attributes no es más que
“attributes=” + “save”.

Simplemente puedes hacer:

def activate
  @activated = true
  self.activated_at => Time.now.utc
  self.activation_code => nil
  save(false)
end

Yo uso restful_authentication [2], un plugin del mismo autor, pero
másmoderno, que sigue el paradigma REST.

Y lo que hago es lo contrario de attr_protected. Uso attr_accessible y
le digo cuáles son los únicos atributos que se pueden actualizar
mediante “mass assigment”, es decir, voy a prevenir que alguien
construya un formulario malicioso con campos que no quiero permitir al
público editar:

attr_accessible :login, :password, :password_confirmation

[1] ActiveRecord::Base
[2] http://agilewebdevelopment.com/plugins/restful_authentication

Y sobre la segunda pregunta, échale un vistazo al directorio
views/user_mailer.

Salu2,

Javi

El 24/10/07, Andrés gutiérrez [email protected]
escribi

No me ha funcionado lo que me has recomendado Javier:

def activate
@activated = true
self.activated_at => Time.now.utc
self.activation_code => nil
save(false)
end

Me da este error:

app/models/user.rb:40: syntax error, unexpected tASSOC, expecting kEND
self.activated_at => Time.now.utc
^
app/models/user.rb:41: syntax error, unexpected tASSOC, expecting kEND
self.activation_code => nil

Problema resuelto, en lugar de :

self.activated_at => Time.now.utc

es:

self.activated_at = Time.now.utc

Ya está, sólo era eso. Ya me activa la cuenta, gracias Javier

Un saludo

2007/10/24, Andrés gutiérrez [email protected]: