class PasswordAction extends SettingsAction {
- function show_form($msg=NULL, $success=false) {
- common_show_header(_t('Change password'));
+ function show_top($arr) {
+ $msg = $arr[0];
+ $success = $arr[1];
+ if ($msg) {
+ $this->message($msg, $success);
+ } else {
+ common_element('div', 'instructions',
+ _t('You can change your password here. Choose a good one!'));
+ }
$this->settings_menu();
- $this->message($msg, $success);
+ }
+
+ function show_form($msg=NULL, $success=false) {
+ common_show_header(_t('Change password'), NULL,
+ array($msg, $success), array($this, 'show_top'));
common_element_start('form', array('method' => 'POST',
'id' => 'password',
'action' =>
common_local_url('password')));
common_password('oldpassword', _t('Old password'));
- common_password('newpassword', _t('New password'));
- common_password('confirm', _t('Confirm'));
- common_element('input', array('name' => 'submit',
- 'type' => 'submit',
- 'id' => 'submit',
- 'value' => _t('Change')));
+ common_password('newpassword', _t('New password'),
+ _t('6 or more characters'));
+ common_password('confirm', _t('Confirm'),
+ _t('same as password above'));
+ common_submit('submit', _t('Change'));
common_element_end('form');
common_show_footer();
}
$user->password = common_munge_password($newpassword, $user->id);
+ $val = $user->validate();
+ if ($val !== TRUE) {
+ $this->show_form(_t('Error saving user; invalid.'));
+ return;
+ }
+
if (!$user->update($original)) {
common_server_error(_t('Can\'t save new password.'));
return;