Archived
1
0
Fork 0
This repository has been archived on 2026-05-10. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
fiktivkod/application/modules/default/controllers/ProfileController.php
2010-09-22 22:22:50 +02:00

100 lines
No EOL
2.7 KiB
PHP

<?php
class ProfileController extends Fiktiv_Controller_Action
{
public function indexAction()
{
$form = $this->view->form = new Zend_Form();
$form->addElement('text', 'email', array(
'label' => 'u:email',
'validators' => array(new Zend_Validate_EmailAddress())
));
$form->addElement('text', 'firstName', array(
'label' => 'u:firstname',
'validators' => array(new Zend_Validate_Alpha())
));
$form->addElement('text', 'lastName', array(
'label' => 'u:lastname',
'validators' => array(new Zend_Validate_Alpha())
));
$form->addElement('password', 'password', array(
'label' => 'u:password',
'validators' => array(new Zend_Validate_Alnum())
));
$form->addElement('password', 'passwordConfirm', array(
'label' => 'u:confirm password',
'validators' => array(new Zend_Validate_Alnum())
));
$form->addElement('Submit', 'save', array(
'label' => 'u:save'
));
$form->addDisplayGroup(
array(
'email',
'firstName',
'lastName'
),
'partOne',
array(
'legend' => 'u:user information'
)
);
$form->addDisplayGroup(
array(
'password',
'passwordConfirm'
),
'partTwo',
array(
'legend' => 'u:change password'
)
);
$form->addDisplayGroup(
array(
'save'
),
'partThree'
);
if ($this->_request->isPost()) {
$data = $this->_request->getPost();
if ($data['password'] !== $data['passwordConfirm']) {
if (!empty($data['password']))
$this->view->messages = 'passwords dont match';
} else {
if ($this->dataService->User->changePassword(Zend_Auth::getInstance()->getIdentity()->id, $data['password']))
$this->view->messages = 'Lösenordet är ändrat!';
unset($data['password']);
}
unset($data['passwordConfirm']);
unset($data['save']);
$this->dataService->User->update($data, 'id = '.Zend_Auth::getInstance()->getIdentity()->id);
}
$user = $this->dataService->User->findById(Zend_Auth::getInstance()->getIdentity()->id);
$form->populate($user->toArray());
}
}