- // @TODO This can be somehow rewritten
- $UIDs = array();
- while (list($userid) = SQL_FETCHROW($result)) {
- $UIDs[$userid] = $userid;
+ $userids = array();
+ while ($data = SQL_FETCHARRAY($result)) {
+ // By default we want to reduce and have no mails found
+ $num = 0;
+
+ // We must now look if he has already confirmed this mail, so might sound double, but it may resolve problems
+ // @TODO Rewrite this to a filter
+ if ((isset($data['stats_id'])) && ($data['stats_id'] > 0)) {
+ // User email
+ $num = countSumTotalData($data['userid'], 'user_stats_data', 'id', 'userid', true, sprintf(" AND `stats_type`='mailid' AND `stats_data`=%s", bigintval($data['stats_id'])));
+ } elseif ((isset($data['bonus_id'])) && ($data['bonus_id'] > 0)) {
+ // Bonus mail
+ $num = countSumTotalData($data['userid'], 'user_stats_data', 'id', 'userid', true, sprintf(" AND `stats_type`='bonusid' AND `stats_data`=%s", bigintval($data['bonus_id'])));
+ }
+
+ // Reduce this users total received emails?
+ if ($num === 0) $userids[$data['userid']] = $data['userid'];