// Checks wether the given email address is used.
function isEmailTaken ($email) {
+ // Default is no userid
+ $useridSql = ' IS NOT NULL';
+
+ // Is a member logged in?
+ if (isMember()) {
+ // Get userid
+ $useridSql = '!= ' . bigintval(getMemberId());
+ } // END - if
+
// Replace dot with {DOT}
$email = str_replace('.', '{DOT}', $email);
// Query the database
- $result = SQL_QUERY_ESC("SELECT `userid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `email` LIKE '%%%s%%' LIMIT 1",
- array($email), __FUNCTION__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT
+ COUNT(`userid`) AS `cnt`
+FROM
+ `{?_MYSQL_PREFIX?}_user_data`
+WHERE
+ REGEX '%s' `email` AND
+ `userid` %s
+LIMIT 1",
+ array(
+ $email,
+ $useridSql
+ ), __FUNCTION__, __LINE__);
// Is the email there?
- $isTaken = (SQL_NUMROWS($result) == 1);
+ list($count) = SQL_FETCHROW($result);
// Free the result
SQL_FREERESULT($result);
// Return result
- return $isTaken;
+ return ($count == 1);
}
// Validate the given menu action
}
// Remove a receiver's id from $receivers and add a link for him to confirm
-function removeReceiver (&$receivers, $key, $userid, $pool_id, $stats_id = 0, $isBonusMail = false) {
+function removeReceiver (&$receivers, $key, $userid, $poolId, $statsId = 0, $isBonusMail = false) {
// Default is not removed
$ret = 'failed';
unset($receivers[$key]);
// Is there already a line for this user available?
- if ($stats_id > 0) {
+ if ($statsId > 0) {
// Default is 'normal' mail
$type = 'NORMAL';
$rowName = 'stats_id';
} // END - if
// Try to look the entry up
- $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_links` WHERE %s='%s' AND `userid`=%s AND link_type='%s' LIMIT 1",
- array($rowName, $stats_id, bigintval($userid), $type), __FUNCTION__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_links` WHERE `%s`=%s AND `userid`=%s AND link_type='%s' LIMIT 1",
+ array(
+ $rowName,
+ bigintval($statsId),
+ bigintval($userid),
+ $type
+ ), __FUNCTION__, __LINE__);
// Was it *not* found?
if (SQL_HASZERONUMS($result)) {
// So we add one!
SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_links` (`%s`,`userid`,`link_type`) VALUES ('%s','%s','%s')",
- array($rowName, $stats_id, bigintval($userid), $type), __FUNCTION__, __LINE__);
+ array(
+ $rowName,
+ bigintval($statsId),
+ bigintval($userid),
+ $type
+ ), __FUNCTION__, __LINE__);
// Update 'mails_sent' if sql_patches is updated
if (isExtensionInstalledAndNewer('sql_patches', '0.7.4')) {
// Update the pool
SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_pool` SET `mails_sent`=`mails_sent`+1 WHERE `id`=%s LIMIT 1",
- array(bigintval($pool_id)), __FUNCTION__, __LINE__);
+ array(bigintval($poolId)), __FUNCTION__, __LINE__);
} // END - if
$ret = 'done';
} else {