X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fmysql-manager.php;h=ebb1aeb4362d4d86cdc568df5b88d6e792d0edc7;hb=8ad295d1b883eed6cc50ec9e37b6639503ac6aa9;hp=8f9d7bb7a9d8113e9597e7862f29f18126223f74;hpb=78fb6abc2b4141d107610f20e75980e1a58ac939;p=mailer.git
diff --git a/inc/mysql-manager.php b/inc/mysql-manager.php
index 8f9d7bb7a9..ebb1aeb436 100644
--- a/inc/mysql-manager.php
+++ b/inc/mysql-manager.php
@@ -279,7 +279,7 @@ ORDER BY
}
} else {
// Not found - open
- $OUT .= '';
+ $OUT .= '';
}
// Menu title
@@ -294,7 +294,7 @@ ORDER BY
} // END - if
} else {
// Not found - close
- $OUT .= '';
+ $OUT .= '';
}
// Cunt it up
@@ -368,8 +368,8 @@ ORDER BY
// Prepare data
$content = array(
- 'rows' => $GLOBALS['rows'],
- 'mode' => $mode
+ 'rows' => $GLOBALS['rows'],
+ 'menu_mode' => $mode
);
// Load main template
@@ -660,25 +660,44 @@ function addMaxReceiveList ($mode, $default = '', $return = false) {
// 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
+ '%s' REGEXP `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
-function isMenuActionValid ($mode, $action, $what, $updateEntry=false) {
+function isMenuActionValid ($mode, $action, $what, $updateEntry = false) {
// Is the cache entry there and we shall not update?
if ((isset($GLOBALS['action_valid'][$mode][$action][$what])) && ($updateEntry === false)) {
// Count cache hit
@@ -897,7 +916,7 @@ function getPaymentPoints ($pid, $lookFor = 'price') {
}
// 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';
@@ -907,7 +926,7 @@ function removeReceiver (&$receivers, $key, $userid, $pool_id, $stats_id = 0, $i
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';
@@ -919,20 +938,30 @@ function removeReceiver (&$receivers, $key, $userid, $pool_id, $stats_id = 0, $i
} // 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 {
@@ -1513,7 +1542,7 @@ function generateCategoryOptionsList ($mode) {
} // END - foreach
} else {
// No cateogries are defined yet
- $OUT = '';
+ $OUT = '';
}
// Return HTML code
@@ -1695,8 +1724,8 @@ function createNewTask ($subject, $notes, $taskType, $userid = NULL, $adminId =
// Insert the task data into the database
SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_task_system` (`assigned_admin`,`userid`,`status`,`task_type`,`subject`,`text`,`task_created`) VALUES (%s,%s,'NEW','%s','%s','%s', UNIX_TIMESTAMP())",
array(
- makeZeroToNull($adminId),
- makeZeroToNull($userid),
+ convertZeroToNull($adminId),
+ convertZeroToNull($userid),
$taskType,
$subject,
$notes