function handlers()
{
return array(
- 'phpinfo' => $this->make_hook('phpinfo', AUTH_MDP, 'admin'),
+ 'phpinfo' => $this->make_hook('phpinfo', AUTH_PASSWD, 'admin'),
'get_rights' => $this->make_hook('get_rights', AUTH_COOKIE, 'admin'),
'set_skin' => $this->make_hook('set_skin', AUTH_COOKIE, 'admin'),
- 'admin' => $this->make_hook('default', AUTH_MDP, 'admin'),
- 'admin/dead-but-active' => $this->make_hook('dead_but_active', AUTH_MDP, 'admin'),
- 'admin/deaths' => $this->make_hook('deaths', AUTH_MDP, 'admin'),
- 'admin/downtime' => $this->make_hook('downtime', AUTH_MDP, 'admin'),
- 'admin/homonyms' => $this->make_hook('homonyms', AUTH_MDP, 'admin'),
- 'admin/logger' => $this->make_hook('logger', AUTH_MDP, 'admin'),
- 'admin/logger/actions' => $this->make_hook('logger_actions', AUTH_MDP, 'admin'),
- 'admin/postfix/blacklist' => $this->make_hook('postfix_blacklist', AUTH_MDP, 'admin'),
- 'admin/postfix/delayed' => $this->make_hook('postfix_delayed', AUTH_MDP, 'admin'),
- 'admin/postfix/regexp_bounces' => $this->make_hook('postfix_regexpsbounces', AUTH_MDP, 'admin'),
- 'admin/postfix/whitelist' => $this->make_hook('postfix_whitelist', AUTH_MDP, 'admin'),
- 'admin/mx/broken' => $this->make_hook('mx_broken', AUTH_MDP, 'admin'),
- 'admin/skins' => $this->make_hook('skins', AUTH_MDP, 'admin'),
- 'admin/user' => $this->make_hook('user', AUTH_MDP, 'admin'),
- 'admin/add_accounts' => $this->make_hook('add_accounts', AUTH_MDP, 'admin'),
- 'admin/validate' => $this->make_hook('validate', AUTH_MDP, 'admin,edit_directory'),
- 'admin/validate/answers' => $this->make_hook('validate_answers', AUTH_MDP, 'admin'),
- 'admin/wiki' => $this->make_hook('wiki', AUTH_MDP, 'admin'),
- 'admin/ipwatch' => $this->make_hook('ipwatch', AUTH_MDP, 'admin'),
- 'admin/icons' => $this->make_hook('icons', AUTH_MDP, 'admin'),
- 'admin/geocoding' => $this->make_hook('geocoding', AUTH_MDP, 'admin'),
- 'admin/accounts' => $this->make_hook('accounts', AUTH_MDP, 'admin'),
- 'admin/account/watch' => $this->make_hook('account_watch', AUTH_MDP, 'admin'),
- 'admin/account/types' => $this->make_hook('account_types', AUTH_MDP, 'admin'),
- 'admin/xnet_without_group' => $this->make_hook('xnet_without_group', AUTH_MDP, 'admin'),
- 'admin/jobs' => $this->make_hook('jobs', AUTH_MDP, 'admin,edit_directory'),
- 'admin/profile' => $this->make_hook('profile', AUTH_MDP, 'admin,edit_directory'),
- 'admin/phd' => $this->make_hook('phd', AUTH_MDP, 'admin'),
- 'admin/add_secondary_edu' => $this->make_hook('add_secondary_edu', AUTH_MDP, 'admin')
+ 'admin' => $this->make_hook('default', AUTH_PASSWD, 'admin'),
+ 'admin/dead-but-active' => $this->make_hook('dead_but_active', AUTH_PASSWD, 'admin'),
+ 'admin/deaths' => $this->make_hook('deaths', AUTH_PASSWD, 'admin'),
+ 'admin/downtime' => $this->make_hook('downtime', AUTH_PASSWD, 'admin'),
+ 'admin/homonyms' => $this->make_hook('homonyms', AUTH_PASSWD, 'admin'),
+ 'admin/logger' => $this->make_hook('logger', AUTH_PASSWD, 'admin'),
+ 'admin/logger/actions' => $this->make_hook('logger_actions', AUTH_PASSWD, 'admin'),
+ 'admin/postfix/blacklist' => $this->make_hook('postfix_blacklist', AUTH_PASSWD, 'admin'),
+ 'admin/postfix/delayed' => $this->make_hook('postfix_delayed', AUTH_PASSWD, 'admin'),
+ 'admin/postfix/regexp_bounces' => $this->make_hook('postfix_regexpsbounces', AUTH_PASSWD, 'admin'),
+ 'admin/postfix/whitelist' => $this->make_hook('postfix_whitelist', AUTH_PASSWD, 'admin'),
+ 'admin/mx/broken' => $this->make_hook('mx_broken', AUTH_PASSWD, 'admin'),
+ 'admin/skins' => $this->make_hook('skins', AUTH_PASSWD, 'admin'),
+ 'admin/user' => $this->make_hook('user', AUTH_PASSWD, 'admin'),
+ 'admin/add_accounts' => $this->make_hook('add_accounts', AUTH_PASSWD, 'admin'),
+ 'admin/validate' => $this->make_hook('validate', AUTH_PASSWD, 'admin,edit_directory'),
+ 'admin/validate/answers' => $this->make_hook('validate_answers', AUTH_PASSWD, 'admin'),
+ 'admin/wiki' => $this->make_hook('wiki', AUTH_PASSWD, 'admin'),
+ 'admin/ipwatch' => $this->make_hook('ipwatch', AUTH_PASSWD, 'admin'),
+ 'admin/icons' => $this->make_hook('icons', AUTH_PASSWD, 'admin'),
+ 'admin/geocoding' => $this->make_hook('geocoding', AUTH_PASSWD, 'admin'),
+ 'admin/accounts' => $this->make_hook('accounts', AUTH_PASSWD, 'admin'),
+ 'admin/account/watch' => $this->make_hook('account_watch', AUTH_PASSWD, 'admin'),
+ 'admin/account/types' => $this->make_hook('account_types', AUTH_PASSWD, 'admin'),
+ 'admin/xnet_without_group' => $this->make_hook('xnet_without_group', AUTH_PASSWD, 'admin'),
+ 'admin/jobs' => $this->make_hook('jobs', AUTH_PASSWD, 'admin,edit_directory'),
+ 'admin/profile' => $this->make_hook('profile', AUTH_PASSWD, 'admin,edit_directory'),
+ 'admin/phd' => $this->make_hook('phd', AUTH_PASSWD, 'admin'),
+ 'admin/add_secondary_edu' => $this->make_hook('add_secondary_edu', AUTH_PASSWD, 'admin')
);
}
if (Post::t('comment') != $user->comment) {
$to_update['comment'] = Post::blank('comment') ? null : Post::t('comment');
}
- if (require_email_update($user, Post::t('email'))) {
- $to_update['email'] = Post::t('email');
- $listClient->change_user_email($user->forlifeEmail(), Post::t('email'));
- update_alias_user($user->forlifeEmail(), Post::t('email'));
+ $new_email = strtolower(Post::t('email'));
+ if (require_email_update($user, $new_email)) {
+ $to_update['email'] = $new_email;
+ $listClient->change_user_email($user->forlifeEmail(), $new_email);
+ update_alias_user($user->forlifeEmail(), $new_email);
}
}
if (!empty($to_update)) {
$redirect = ($registered ? new Redirect($user) : null);
if (Post::has('add_fwd')) {
$email = Post::t('email');
- if (!isvalid_email_redirection($email)) {
+ if (!isvalid_email_redirection($email, $user)) {
$page->trigError("Email non valide: $email");
} else {
$redirect->add_email($email);
$page->changeTpl('admin/add_accounts.tpl');
if (Env::has('add_type') && Env::has('people')) {
+ static $titles = array('male' => 'M', 'female' => 'MLLE');
$lines = explode("\n", Env::t('people'));
$separator = Env::t('separator');
$promotion = Env::i('promotion');
continue;
}
- XDB::execute('INSERT INTO profiles (hrpid, xorg_id, ax_id, birthdate_ref, sex)
- VALUES ({?}, {?}, {?}, {?}, {?})',
- $infos['hrid'], $xorgId, (isset($infos[5]) ? $infos[5] : null), $birthDate, $sex);
+ XDB::execute('INSERT INTO profiles (hrpid, xorg_id, ax_id, birthdate_ref, sex, title)
+ VALUES ({?}, {?}, {?}, {?}, {?}, {?})',
+ $infos['hrid'], $xorgId, (isset($infos[5]) ? $infos[5] : null),
+ $birthDate, $sex, $titles[$sex]);
$pid = XDB::insertId();
XDB::execute('INSERT INTO profile_public_names (pid, lastname_initial, lastname_main, firstname_initial, firstname_main)
VALUES ({?}, {?}, {?}, {?}, {?})',