From: Roland Häder Date: Sun, 30 Sep 2012 22:27:14 +0000 (+0000) Subject: Code improved: X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=d3ea83baa3f2607db46c26f7d8527c84b994f116;p=mailer.git Code improved: - Introduced addRenameTableSql() which renames a table if some criteria is met - Moved determineReferralId() to referral-functions.php (which makes sense) - Added module title for ext-beg to get it working again - Other minor improvements --- diff --git a/inc/extensions-functions.php b/inc/extensions-functions.php index fb71395536..a2222b2655 100644 --- a/inc/extensions-functions.php +++ b/inc/extensions-functions.php @@ -1853,6 +1853,19 @@ function addDropTableSql ($tableName) { } // END - if } +// Adds a RENAME TABLE stament if 'from' table exist and 'to' table not +function addRenameTableSql ($fromTable, $toTable) { + // Is renaming required? + if ((ifSqlTableExists($fromTable)) && (!ifSqlTableExists($toTable))) { + // Add it + addExtensionSql('RENAME TABLE `{?_MYSQL_PREFIX?}_' . $fromTable . '` TO `{?_MYSQL_PREFIX?}_' . $toTable . '`'); + + // Mark both tables + $GLOBALS['ifSqlTableExists'][$fromTable] = false; + $GLOBALS['ifSqlTableExists'][$toTable] = true; + } // END - if +} + // Adds an admin menu to the SQL queue of the menu entry is not found function addAdminMenuSql ($action, $what, $title, $descr, $sort) { // Now check if this menu is there diff --git a/inc/extensions/ext-beg.php b/inc/extensions/ext-beg.php index 0286d9e366..da485c63be 100644 --- a/inc/extensions/ext-beg.php +++ b/inc/extensions/ext-beg.php @@ -336,7 +336,7 @@ INDEX (`userid`)", case '0.3.2': // SQL queries for v0.3.2 // Add module entry - addModuleSql('beg', 'Y', 'Y', 'N', 'N'); + addModuleSql('beg', '{OPEN_TEMPLATE}MODULE_BEG_TITLE{CLOSE_TEMPLATE}', 'Y', 'Y', 'N', 'N'); // Set module title addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `title`='Betteln bei {OPEN_CONFIG}MAIN_TITLE{CLOSE_CONFIG}' WHERE `module`='beg' AND `title`='' LIMIT 1"); @@ -363,7 +363,7 @@ INDEX (`userid`)", registerExtensionPointsData('monthly_beg_ref', 'points', 'LOCKED', 'DIRECT'); // SQL queries (renaming) - addExtensionSql("RENAME TABLE `{?_MYSQL_PREFIX?}_beg_referals` TO `{?_MYSQL_PREFIX?}_beg_referrals`"); + addRenameTableSql('beg_referrals', 'referrals'); addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_beg_referrals` CHANGE `referal_url` `referral_url` TINYTEXT NOT NULL"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `what`='list_beg_referral_urls' WHERE `what`='list_beg_referal_urls' LIMIT 1"); diff --git a/inc/filter/register_filter.php b/inc/filter/register_filter.php index 0be63a434b..9b242a2aa7 100644 --- a/inc/filter/register_filter.php +++ b/inc/filter/register_filter.php @@ -43,6 +43,7 @@ if (!defined('__SECURITY')) { // Run a filter for must-fillout fields function FILTER_REGISTER_MUST_FILLOUT ($filterData) { // Get all fields for output + die('!Ok'); //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!'); $result = SQL_QUERY('SELECT `field_name`,`field_required` FROM `{?_MYSQL_PREFIX?}_must_register` ORDER BY `id` ASC', __FUNCTION__, __LINE__); diff --git a/inc/functions.php b/inc/functions.php index ea660839fa..2afef01eab 100644 --- a/inc/functions.php +++ b/inc/functions.php @@ -1493,104 +1493,6 @@ function addNewBonusMail ($data, $mode = '', $output = true) { } } -// Determines referral id and sets it -function determineReferralId () { - // Do we have it already detected? - if (isReferralIdValid()) { - // Do not determine it, just return it - return getReferralId(); - } // END - if - - // Skip this in non-html-mode and outside ref.php - if ((!isHtmlOutputMode()) && (basename($_SERVER['PHP_SELF']) != 'ref.php')) { - return false; - } // END - if - - // Check if refid is set - if (isReferralIdValid()) { - // This is fine... - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from GLOBALS (' . getReferralId() . ')'); - } elseif (isPostRequestElementSet('refid')) { - // Get referral id from POST element refid - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from POST data (' . postRequestElement('refid') . ')'); - setReferralId(secureString(postRequestElement('refid'))); - } elseif (isGetRequestElementSet('refid')) { - // Get referral id from GET parameter refid - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from GET data (' . getRequestElement('refid') . ')'); - setReferralId(secureString(getRequestElement('refid'))); - } elseif (isGetRequestElementSet('ref')) { - // Set refid=ref (the referral link uses such variable) - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using ref from GET data (' . getRequestElement('refid') . ')'); - setReferralId(secureString(getRequestElement('ref'))); - } elseif ((isGetRequestElementSet('user')) && (basename($_SERVER['PHP_SELF']) == 'click.php')) { - // The variable user comes from click.php - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using user from GET data (' . getRequestElement('user') . ')'); - setReferralId(bigintval(getRequestElement('user'))); - } elseif ((isSessionVariableSet('refid')) && (isValidUserId(getSession('refid')))) { - // Set session refid as global - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from SESSION data (' . getSession('refid') . ')'); - setReferralId(bigintval(getSession('refid'))); - } elseif ((isExtensionInstalledAndNewer('user', '0.3.4')) && (isRandomReferralIdEnabled())) { - // Select a random user which has confirmed enougth mails - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Checking random referral id'); - setReferralId(determineRandomReferralId()); - } elseif ((isExtensionInstalledAndNewer('sql_patches', '0.1.2')) && (isValidUserId(getDefRefid()))) { - // Set default refid as refid in URL - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using default refid (' . getDefRefid() . ')'); - setReferralId(getDefRefid()); - } else { - // No default id when sql_patches is not installed or none set - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using NULL as refid'); - setReferralId(NULL); - } - - // Set cookie when default refid > 0 - if ((!isSessionVariableSet('refid')) || (!isValidUserId(getReferralId())) || ((!isValidUserId(getSession('refid'))) && (isExtensionInstalledAndNewer('sql_patches', '0.1.2')) && (isValidUserId(getDefRefid())))) { - // Default is not found - $found = false; - - // Do we have nickname or userid set? - if ((isExtensionActive('nickname')) && (isNicknameUsed(getReferralId()))) { - // Nickname in URL, so load the id - $found = fetchUserData(getReferralId(), 'nickname'); - - // If we found it, use the userid as referral id - if ($found === true) { - // Set the userid as 'refid' - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from user account by nickname (' . getUserData('userid') . ')'); - setReferralId(getUserData('userid')); - } // END - if - } elseif (isValidUserId(getReferralId())) { - // Direct userid entered - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using direct userid (' . getReferralId() . ')'); - $found = fetchUserData(getReferralId()); - } - - // Is the record valid? - if ((($found === false) || (!isUserDataValid())) && (isExtensionInstalledAndNewer('sql_patches', '0.1.2'))) { - // No, then reset referral id - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using default refid (' . getDefRefid() . ')'); - setReferralId(getDefRefid()); - } // END - if - - // Set cookie - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Saving refid to session (' . getReferralId() . ') #1'); - setSession('refid', getReferralId()); - } elseif ((!isReferralIdValid()) || (!fetchUserData(getReferralId()))) { - // Not valid! - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Not valid referral id (' . getReferralId() . '), setting NULL in session'); - setReferralId(NULL); - setSession('refid', NULL); - } else { - // Set it from GLOBALS array in session - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Saving refid to session (' . getReferralId() . ') #2'); - setSession('refid', getReferralId()); - } - - // Return determined refid - return getReferralId(); -} - // Enables the reset mode and runs it function doReset () { // Enable the reset mode diff --git a/inc/language/beg_de.php b/inc/language/beg_de.php index 15fe28557a..84736a38aa 100644 --- a/inc/language/beg_de.php +++ b/inc/language/beg_de.php @@ -151,6 +151,9 @@ addMessages(array( 'MEMBER_REFERRAL_BEG_SUBJECT' => "Sie haben anteilig {?POINTS?} beim Betteln erhalten", 'MEMBER_REFERRAL_BEG_REF_SUBJECT' => "Sie haben {?POINTS?} beim Betteln erhalten", 'MEMBER_REFERRAL_MONTHLY_BEG_SUBJECT' => "{?POINTS?} in der monatl. Bettelrallye per Referralgutschrift erhalten", + + // Module title + 'MODULE_BEG_TITLE' => "Bettellink", )); // [EOF] diff --git a/inc/mysql-manager.php b/inc/mysql-manager.php index c6924af057..bb31db5bdf 100644 --- a/inc/mysql-manager.php +++ b/inc/mysql-manager.php @@ -1800,7 +1800,7 @@ function registerExtensionPointsData ($subject, $columnName, $lockedMode, $payme } // END - if // Is the 'subject' there? - if (((!ifSqlTableExists('points_data')) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (countSumTotalData($subject, 'points_data', 'id', 'subject', true, $add) == 0)) { + if (((!ifSqlTableExist('points_data')) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (countSumTotalData($subject, 'points_data', 'id', 'subject', true, $add) == 0)) { // Not found so add an SQL query addExtensionSql(sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`,`column_name`,`locked_mode`,`payment_method`) VALUES ('%s','%s','%s','%s')", $subject, diff --git a/inc/referral-functions.php b/inc/referral-functions.php index a0261d9293..667a25e0d4 100644 --- a/inc/referral-functions.php +++ b/inc/referral-functions.php @@ -806,5 +806,103 @@ function getReferralId () { return $GLOBALS['__refid']; } +// Determines referral id and sets it +function determineReferralId () { + // Do we have it already detected? + if (isReferralIdValid()) { + // Do not determine it, just return it + return getReferralId(); + } // END - if + + // Skip this in non-html-mode and outside ref.php + if ((!isHtmlOutputMode()) && (basename($_SERVER['PHP_SELF']) != 'ref.php')) { + return false; + } // END - if + + // Check if refid is set + if (isReferralIdValid()) { + // This is fine... + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from GLOBALS (' . getReferralId() . ')'); + } elseif (isPostRequestElementSet('refid')) { + // Get referral id from POST element refid + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from POST data (' . postRequestElement('refid') . ')'); + setReferralId(secureString(postRequestElement('refid'))); + } elseif (isGetRequestElementSet('refid')) { + // Get referral id from GET parameter refid + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from GET data (' . getRequestElement('refid') . ')'); + setReferralId(secureString(getRequestElement('refid'))); + } elseif (isGetRequestElementSet('ref')) { + // Set refid=ref (the referral link uses such variable) + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using ref from GET data (' . getRequestElement('refid') . ')'); + setReferralId(secureString(getRequestElement('ref'))); + } elseif ((isGetRequestElementSet('user')) && (basename($_SERVER['PHP_SELF']) == 'click.php')) { + // The variable user comes from click.php + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using user from GET data (' . getRequestElement('user') . ')'); + setReferralId(bigintval(getRequestElement('user'))); + } elseif ((isSessionVariableSet('refid')) && (isValidUserId(getSession('refid')))) { + // Set session refid as global + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from SESSION data (' . getSession('refid') . ')'); + setReferralId(bigintval(getSession('refid'))); + } elseif ((isExtensionInstalledAndNewer('user', '0.3.4')) && (isRandomReferralIdEnabled())) { + // Select a random user which has confirmed enougth mails + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Checking random referral id'); + setReferralId(determineRandomReferralId()); + } elseif ((isExtensionInstalledAndNewer('sql_patches', '0.1.2')) && (isValidUserId(getDefRefid()))) { + // Set default refid as refid in URL + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using default refid (' . getDefRefid() . ')'); + setReferralId(getDefRefid()); + } else { + // No default id when sql_patches is not installed or none set + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using NULL as refid'); + setReferralId(NULL); + } + + // Set cookie when default refid > 0 + if ((!isSessionVariableSet('refid')) || (!isValidUserId(getReferralId())) || ((!isValidUserId(getSession('refid'))) && (isExtensionInstalledAndNewer('sql_patches', '0.1.2')) && (isValidUserId(getDefRefid())))) { + // Default is not found + $found = false; + + // Do we have nickname or userid set? + if ((isExtensionActive('nickname')) && (isNicknameUsed(getReferralId()))) { + // Nickname in URL, so load the id + $found = fetchUserData(getReferralId(), 'nickname'); + + // If we found it, use the userid as referral id + if ($found === true) { + // Set the userid as 'refid' + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from user account by nickname (' . getUserData('userid') . ')'); + setReferralId(getUserData('userid')); + } // END - if + } elseif (isValidUserId(getReferralId())) { + // Direct userid entered + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using direct userid (' . getReferralId() . ')'); + $found = fetchUserData(getReferralId()); + } + + // Is the record valid? + if ((($found === false) || (!isUserDataValid())) && (isExtensionInstalledAndNewer('sql_patches', '0.1.2'))) { + // No, then reset referral id + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using default refid (' . getDefRefid() . ')'); + setReferralId(getDefRefid()); + } // END - if + + // Set cookie + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Saving refid to session (' . getReferralId() . ') #1'); + setSession('refid', getReferralId()); + } elseif ((!isReferralIdValid()) || (!fetchUserData(getReferralId()))) { + // Not valid! + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Not valid referral id (' . getReferralId() . '), setting NULL in session'); + setReferralId(NULL); + setSession('refid', NULL); + } else { + // Set it from GLOBALS array in session + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Saving refid to session (' . getReferralId() . ') #2'); + setSession('refid', getReferralId()); + } + + // Return determined refid + return getReferralId(); +} + // [EOF] ?>