Thanks :)
On Sunday, April 29, 2012 3:30:30 PM UTC-4, MaJerle.Eu wrote:
>
> only PHP basics :)
>
> public function beforeSave()
> {
> if (isset($this->data['User']['password'])) {
> $this->data['User']['password'] =
> AuthComponent::password($this->data['User']['password']);
> }
> return true;
> }
>
>
> --
> Lep pozdrav, Tilen Majerle
> http://majerle.eu
>
>
>
> 2012/4/29 Charles Blackwell <[email protected]>
>
>> This works but, is there a way to NOT has the password when the confirm
>> method is called? Also, in your opinion is beforeSave a good way to hash
>> the password?
>>
>> Thanks!
>>
>>
>> 1. <?php
>> 2. class User extends AppModel {
>> 3. public $name = 'User';
>> 4.
>> 5. public function beforeSave() {
>> 6. $this->data['User']['password'] = AuthComponent::password(
>> $this->data['User']['password']);
>> 7. return true;
>> 8. }
>> 9.
>> 10. <?php
>> 11. App::uses('CakeEmail', 'Network/Email');
>> 12. class UsersController extends AppController {
>> 13. public $name = 'Users';
>> 14. public $components = array <http://www.php.net/array>(
>> 'Auth', 'Email');
>> 15.
>> 16. function beforeFilter(){
>> 17. $this->Auth->allow('signup', 'confirm');
>> 18. }
>> 19.
>> 20. function signup(){
>> 21. if(!empty <http://www.php.net/empty>($this->request->data)){
>> 22. $this->request->data['User']['confirm_code'] =
>> String::uuid();
>> 23. $this->User->create();
>> 24. if($this->User->save($this->request->data)){
>> 25. $email = new CakeEmail();
>> 26. $email->template('welcome', 'default')
>> 27. ->emailFormat('html')
>> 28.
>> ->viewVars(array<http://www.php.net/array>
>> (
>> 29. 'id' => $this->User->
>> getLastInsertID(),
>> 30. 'username' => $this->
>> request->data['User']['username'],
>> 31. 'email' => $this->request
>> ->data['User']['email'],
>> 32. 'server' => $_SERVER[
>> 'SERVER_NAME'],
>> 33. 'code' => $this->request->
>> data['User']['confirm_code']
>> 34. ))
>> 35. ->from(array<http://www.php.net/array>
>> ('[email protected]' => 'QuickWall.com Administrator'))
>> 36. ->to($this->request->data['User'][
>> 'email'])
>> 37. ->subject('Welcome!');
>> 38. if($email->send()){
>> 39. $this->Session->setFlash('Congratulations!
>> You have signed up!');
>> 40.
>> $this->redirect(array<http://www.php.net/array>
>> ('controller' => 'questions', 'action' => 'home'));
>> 41. }
>> 42. } else {
>> 43. $this->Session->setFlash('There was an error
>> signing up. Please, try again.');
>> 44. $this->request->data = null;
>> 45. }
>> 46. }
>> 47. }
>> 48.
>> 49. function confirm($user_id=null, $code=null){
>> 50. if(empty <http://www.php.net/empty>($user_id) ||
>> empty<http://www.php.net/empty>
>> ($code)){
>> 51. $this->set('confirmed', 0);
>> 52. $this-render();
>> 53. }
>> 54.
>> 55. $user = $this->User->read(null, $user_id);
>> 56.
>> 57. if(empty <http://www.php.net/empty>($user)){
>> 58. $this->set('confirmed', 0);
>> 59. $this->render();
>> 60. }
>> 61.
>> 62. if($user['User']['confirm_code'] == $code){
>> 63. $this->User->id = $user_id;
>> 64. $this->User->saveField('confirmed', '1');
>> 65. $this->set('confirmed', 1);
>> 66. } else {
>> 67. $this->set('confirmed', 0);
>> 68. }
>> 69. }
>>
>>
>> --
>> Our newest site for the community: CakePHP Video Tutorials
>> http://tv.cakephp.org
>> Check out the new CakePHP Questions site http://ask.cakephp.org and help
>> others with their CakePHP related questions.
>>
>>
>> To unsubscribe from this group, send email to
>> [email protected] For more options, visit this group
>> at http://groups.google.com/group/cake-php
>>
>
>
--
Our newest site for the community: CakePHP Video Tutorials
http://tv.cakephp.org
Check out the new CakePHP Questions site http://ask.cakephp.org and help others
with their CakePHP related questions.
To unsubscribe from this group, send email to
[email protected] For more options, visit this group at
http://groups.google.com/group/cake-php