// Fetch existing @alias_dom aliases.
$alias = $user->emailAlias();
$visibility = $user->hasProfile() && $user->profile()->alias_pub;
+ $page->assign('actuel', $alias);
+ $page->assign('user', $user);
+ $page->assign('mail_public', $visibility);
if ($action == 'ask' && Env::has('alias') && Env::has('raison')) {
S::assert_xsrf_token();
$value, $user->profile()->id());
}
$visibility = ($value == 'public');
+ exit;
}
$page->assign('actuel', $alias);
$actifs = Env::v('emails_actifs', Array());
print_r(Env::v('emails_rewrite'));
if (Env::v('emailop') == "ajouter" && Env::has('email')) {
+ $error_email = false;
$new_email = Env::v('email');
if ($new_email == "new@example.org") {
$new_email = Env::v('email_new');
}
$result = $redirect->add_email($new_email);
if ($result == ERROR_INVALID_EMAIL) {
+ $error_email = true;
$page->assign('email', $new_email);
}
$page->assign('retour', $result);
+ $page->assign('error_email', $error_email);
} elseif (empty($actifs)) {
$result = ERROR_INACTIVE_REDIRECTION;
} elseif (is_array($actifs)) {
. $user->forlifeEmail() . ' ne fonctionnerait plus.');
break;
case ERROR_INVALID_EMAIL:
- $page->trigError('Erreur: l\'email n\'est pas valide.');
+ $page->trigError('Erreur : l\'email n\'est pas valide.');
break;
case ERROR_LOOP_EMAIL:
$page->trigError('Erreur : ' . $user->forlifeEmail()
$_POST['cc_contacts'] = explode(';', @$_POST['cc_contacts']);
$data = serialize($_POST);
XDB::execute("REPLACE INTO email_send_save
- VALUES ({?}, {?})", S::i('uid'), $data);
+ VALUES ({?}, {?})",
+ S::user()->id('uid'), $data);
}
exit;
} else if (Env::v('submit') == 'Envoyer') {
if (!is_array($aliases)) {
return null;
}
- $rel = Env::v('contacts');
+ $uf = new UserFilter(new UFC_Hrpid($aliases));
+ $users = $uf->iterUsers();
$ret = array();
- foreach ($aliases as $alias) {
- $ret[$alias] = $rel[$alias];
+ while ($user = $users->next()) {
+ $ret[] = $user->forlife;
}
return join(', ', $ret);
}
if (!$error) {
XDB::execute("DELETE FROM email_send_save
- WHERE uid = {?}", S::i('uid'));
+ WHERE uid = {?}",
+ S::user()->id());
$to2 = getEmails(Env::v('to_contacts'));
$cc2 = getEmails(Env::v('cc_contacts'));
}
}
- $res = XDB::query(
- "SELECT ac.full_name, a.alias as forlife
- FROM accounts AS ac
- INNER JOIN contacts AS c ON (ac.uid = c.contact)
- INNER JOIN aliases AS a ON (ac.uid = a.uid AND FIND_IN_SET('bestalias', a.flags))
- WHERE c.uid = {?}
- ORDER BY ac.full_name", S::i('uid'));
- $page->assign('contacts', $res->fetchAllAssoc());
+ $uf = new UserFilter(new PFC_And(new UFC_Contact(S::user()),
+ new UFC_Registered()),
+ UserFilter::sortByName());
+ $contacts = $uf->getProfiles();
+ $page->assign('contacts', $contacts);
$page->assign('maxsize', ini_get('upload_max_filesize') . 'o');
$page->assign('user', S::user());
}
if (!empty($hash) || !empty($login)) {
$user = User::getSilent($login);
if ($user) {
- $req = XDB::query("SELECT 1 FROM newsletter_ins WHERE user_id = {?} AND hash = {?}", $user->id(), $hash);
+ $req = XDB::query('SELECT 1
+ FROM newsletter_ins
+ WHERE uid = {?} AND hash = {?}',
+ $user->id(), $hash);
if ($req->numRows() == 0) {
$user = null;
}
$sel = Xdb::query(
"SELECT acc.uid, count(e.email) AS nb_mails,
IFNULL(pd.public_name, acc.full_name) AS fullname,
- IFNULL(pd.promo, 0) AS promo,
- FROM aliases AS a
- INNER JOIN accounts AS acc ON a.id = acc.uid
- LEFT JOIN emails AS e ON (e.uid = acc.uid
- AND FIND_IN_SET('active', e.flags) AND e.panne = 0)
- LEFT JOIN account_profiles AS ap ON (acc.uid = ap.uid AND FIND_IN_SET('owner', ap.perms))
- LEFT JOIN profile_display AS pd ON (pd.pid = ap.pid)
+ IFNULL(pd.promo, 0) AS promo
+ FROM aliases AS a
+ INNER JOIN accounts AS acc ON (a.uid = acc.uid)
+ LEFT JOIN emails AS e ON (e.uid = acc.uid
+ AND FIND_IN_SET('active', e.flags) AND e.panne = 0)
+ LEFT JOIN account_profiles AS ap ON (acc.uid = ap.uid AND FIND_IN_SET('owner', ap.perms))
+ LEFT JOIN profile_display AS pd ON (pd.pid = ap.pid)
WHERE a.alias = {?}
GROUP BY acc.uid", $alias);
if ($x = $sel->fetchOneAssoc()) {
if ($x['nb_mails'] == 0) {
- register_profile_update($x['user_id'], 'broken');
+ $user = User::getSilentWithUID($x['uid']);
+ $profile = $user->profile();
+ WatchProfileUpdate::register($profile, 'broken');
}
fputcsv($csv, array($x['fullname'], $x['promo'], $alias,
join(',', $mails), $x['nb_mails'],