return $array;
}
- static public function get($uid, $email)
+ static public function get($uid, $email, $recentOnly = false)
{
$res = XDB::query("SELECT uid, email, message, message_data, type, sender
FROM register_marketing
- WHERE uid = {?} AND email = {?}", $uid, $email);
+ WHERE uid = {?}
+ AND email = {?}".(
+ $recentOnly ? ' AND DATEDIFF(NOW(), last) < 30' : ''), $uid, $email);
+
if ($res->numRows() == 0) {
return null;
}
if (Post::has('valide')) {
require_once('xorg.misc.inc.php');
$email = trim(Post::v('mail'));
- $market = Marketing::get($uid, $email);
+
if (!isvalid_email_redirection($email)) {
$page->trig("Email invalide !");
- } elseif ($market) {
- $page->assign('already', true);
} else {
- $page->assign('ok', true);
- check_email($email, "Une adresse surveillée est proposée au marketing par " . S::v('forlife'));
- $market = new Marketing($uid, $email, 'default', null, Post::v('origine'), S::v('uid'));
- $market->add();
+ // On cherche les marketings précédents sur cette adresse
+ // email, en se restreignant au dernier mois
+
+ if (Marketing::get($uid, $email, true)) {
+ $page->assign('already', true);
+ } else {
+ $page->assign('ok', true);
+ check_email($email, "Une adresse surveillée est proposée au marketing par " . S::v('forlife'));
+ $market = new Marketing($uid, $email, 'default', null, Post::v('origine'), S::v('uid'));
+ $market->add();
+ }
}
}
}