X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmodules%2Fguest%2Fwhat-confirm.php;h=fcbbddb482f44af4b7a450b87d5852839fcafa5e;hb=7e17864b7d07fb5123b1b1d68f83db28ea5394ef;hp=44cff6fe255763ee5c4340280967297726b6c277;hpb=508228c85fba8448d00865b1639cb8cd7a69e457;p=mailer.git diff --git a/inc/modules/guest/what-confirm.php b/inc/modules/guest/what-confirm.php index 44cff6fe25..fcbbddb482 100644 --- a/inc/modules/guest/what-confirm.php +++ b/inc/modules/guest/what-confirm.php @@ -1,7 +1,7 @@ '{--GUEST_CONFIRMED_FAILED--}', + 'userid' => 0, +); -if (REQUEST_ISSET_GET(('hash'))) { - // Initialize the user ID - $uid = 0; +if (isGetRequestParameterSet('hash')) { + // Initialize the user id + $userid = '0'; // Search for an unconfirmed or confirmed account - $result = SQL_QUERY_ESC("SELECT userid, email, refid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE user_hash='%s' AND (`status`='UNCONFIRMED' OR `status`='CONFIRMED') LIMIT 1", - array(REQUEST_GET('hash')), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `userid`, `email`, `refid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `user_hash`='%s' AND (`status`='UNCONFIRMED' OR `status`='CONFIRMED') LIMIT 1", + array(getRequestParameter('hash')), __FILE__, __LINE__); if (SQL_NUMROWS($result) == 1) { // Ok, he want's to confirm now so we load some data - list ($uid, $email, $rid) = SQL_FETCHROW($result); + list($userid, $email, $refid) = SQL_FETCHROW($result); + + // Fetch user data + if (!fetchUserData($userid)) { + // Not found, should not happen + debug_report_bug(__FILE__, __LINE__, 'User account ' . $userid . ' not found.'); + } // END - if + + // Load all data and add points + $content = getUserDataArray(); // Unlock his account (but only when it is on UNCONFIRMED!) - SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_data` SET `status`='CONFIRMED', ref_payout=%s, user_hash=NULL WHERE user_hash='%s' AND `status`='UNCONFIRMED' LIMIT 1", - array(getConfig('ref_payout'), REQUEST_GET('hash')), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE + `{?_MYSQL_PREFIX?}_user_data` +SET + `status`='CONFIRMED', + `ref_payout`={?ref_payout?}, + `user_hash`=NULL +WHERE + `user_hash`='%s' AND + `status`='UNCONFIRMED' +LIMIT 1", + array(getRequestParameter('hash')), __FILE__, __LINE__); if (SQL_AFFECTEDROWS() == 1) { - $msg = LOAD_EMAIL_TEMPLATE("confirm-member", array('points' => getConfig('points_register')), bigintval($uid)); + // Send email if updated + $message = loadEmailTemplate('confirm-member', $content, bigintval($userid)); // And send him right away the confirmation mail - SEND_EMAIL($email, getMessage('GUEST_THANX_CONFIRM'), $msg); + sendEmail($email, '{--GUEST_THANX_CONFIRM--}', $message); // Maybe he got "referaled"? - if (($rid > 0) && ($rid != $uid)) { + if (($refid > 0) && ($refid != $userid)) { // Select the referal userid - $result = SQL_QUERY_ESC("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1", - array(bigintval($rid)), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) { + if (fetchUserData($refid)) { // Update ref counter... - UPDATE_REF_COUNTER($rid); + updateReferalCounter($refid); - // Ok, write the ref-points to this user and his parent-ref - unset($GLOBALS['ref_level']); - - // Shall I "pay" the referal points imidiately? - if (getConfig('ref_payout') == "0") { - // Yes, "pay" it now + // Shall I 'pay' the referal points imidiately? + if (getConfig('ref_payout') == '0') { + // Yes, 'pay' it now $locked = false; } else { - // No, "pay" it later + // No, 'pay' it later $locked = true; } // If version matches add ref bonus to refid's account - if ((GET_EXT_VERSION("bonus") >= "0.4.4") && (getConfig('bonus_active') == "Y")) { + if ((isExtensionInstalledAndNewer('bonus', '0.4.4')) && (getConfig('bonus_active') == 'Y')) { // Add points (directly only!) - SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_data` SET bonus_ref=bonus_ref+%s WHERE userid=%s LIMIT 1", - array(getConfig('bonus_ref'), bigintval($rid)), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `bonus_ref`=`bonus_ref`+{?bonus_ref?} WHERE `userid`=%s LIMIT 1", + array(bigintval($refid)), __FILE__, __LINE__); // Subtract points from system - BONUS_POINTS_HANDLER(getConfig('bonus_ref')); + handleBonusPoints(getConfig('bonus_ref')); } // END - if // Add one-time referal bonus over referal system or directly + // @TODO Try to rewrite the following unset() unset($GLOBALS['ref_level']); - ADD_POINTS_REFSYSTEM("referal_bonus", $rid, getConfig('points_ref'), true, bigintval($uid), $locked, getConfig('reg_points_mode')); + addPointsThroughReferalSystem('referal_bonus', $refid, getConfig('points_ref'), true, bigintval($userid), $locked, getConfig('reg_points_mode')); } // END - if } // END - if - if (EXT_IS_ACTIVE("rallye")) { + if (isExtensionActive('rallye')) { // Add user to rallye (or not?) - RALLYE_AUTOADD_USER(bigintval($uid)); + addUserToReferalRallye(bigintval($userid)); } // END - if // Account confirmed! - if (defined('LEAD_CODE_ENABLED') && defined('LEAD_EXPIRY_TIME')) { + if (isExtensionActive('lead')) { // Set special lead cookie - set_session('lead_uid', bigintval($uid)); + setSession('lead_userid', bigintval($userid)); // Lead-Code mode enabled - LOAD_URL("lead-confirm.php"); + redirectToUrl('lead-confirm.php'); } else { - define('__CONFIRM_MSG', getMessage('GUEST_CONFIRMED_DONE')); - define('__UID', bigintval($uid)); - LOAD_TEMPLATE("guest_confirm_table"); + $content['message'] = '{--GUEST_CONFIRMED_DONE--}'; + $content['userid'] = bigintval($userid); } - } elseif (defined('LEAD_CODE_ENABLED') && defined('LEAD_EXPIRY_TIME')) { + } elseif (isExtensionActive('lead')) { // Set special lead cookie - set_session('lead_uid', bigintval($uid)); + setSession('lead_userid', bigintval($userid)); // Lead-Code mode enabled - LOAD_URL("lead-confirm.php"); + redirectToUrl('lead-confirm.php'); } else { // Nobody was found unter this hash key... or our new member want's to confirm twice? - define('__CONFIRM_MSG', getMessage('GUEST_CONFIRMED_TWICE')); - define('__UID', "0"); - LOAD_TEMPLATE("guest_confirm_table"); + $content['message'] = '{--GUEST_CONFIRMED_TWICE--}'; } } else { // Nobody was found unter this hash key... or our new member want's to confirm twice? - define('__CONFIRM_MSG', getMessage('GUEST_CONFIRMED_TWICE')); - define('__UID', "0"); - LOAD_TEMPLATE("guest_confirm_table"); + $content['message'] = '{--GUEST_CONFIRMED_TWICE--}'; } -} elseif ((IS_FORM_SENT()) && (REQUEST_ISSET_POST(('email')))) { - // Confirmation link requested 0 1 2 - $result = SQL_QUERY_ESC("SELECT userid, status, user_hash FROM `{!_MYSQL_PREFIX!}_user_data` WHERE email='%s' LIMIT 1", - array(REQUEST_POST('email')), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) { + + // Load template + loadTemplate('admin_settings_saved', false, $content['message']); +} elseif ((isFormSent()) && (isPostRequestParameterSet('email'))) { + // Confirmation link requested 0 1 2 + if (fetchUserData(postRequestParameter('email'), 'email')) { // Email address found - $DATA = SQL_FETCHROW($result); - switch ($DATA[1]) - { - case "UNCONFIRMED": // Account not confirmed - $msg = LOAD_EMAIL_TEMPLATE("guest_request_confirm", array('hash' => $DATA[2]), $DATA[0]); - SEND_EMAIL(REQUEST_POST('email'), getMessage('REQUEST_CONFIRM_LINK_SUBJ'), $msg); - $content = getMessage('CONFIRM_LINK_SENT'); - break; - - case "CONFIRMED": // Account already confirmed - $content = getMessage('LOGIN_ID_CONFIRMED'); - break; - - case "LOCKED": // Account is locked - $content = getMessage('LOGIN_ID_LOCKED'); - break; - } + $content = getUserDataArray(); + + // Detect status + switch ($content['status']) { + case 'UNCONFIRMED': // Account not confirmed + // Load email template + $message = loadEmailTemplate('guest_request_confirm', array('hash' => $content['user_hash']), $content['userid']); + + // Send email + sendEmail(postRequestParameter('email'), '{--REQUEST_CONFIRM_LINK_SUBJECT--}', $message); + + // And set message + $content['message'] = '{--CONFIRM_LINK_SENT--}'; + break; + + case 'CONFIRMED': // Account already confirmed + $content['message'] = '{--LOGIN_ID_CONFIRMED--}'; + break; + + case 'LOCKED': // Account is locked + $content['message'] = '{--LOGIN_ID_LOCKED--}'; + break; + } // END - switch } else { // Email address not registered - $content = getMessage('EMAIL_ADDY_404'); + $content['message'] = '{--EMAIL_404--}'; } - define('__CONFIRM_MSG', $content); - LOAD_TEMPLATE("guest_confirm_table"); + // Load template + loadTemplate('admin_settings_saved', false, $content['message']); } else { // No hash found, the guest may want to enter his email address to re-get his confirmation link? - LOAD_TEMPLATE("guest_confirm_link"); + loadTemplate('guest_confirm_link'); } -// +// [EOF] ?>