X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Flibs%2Fregister_functions.php;h=665a4b7873fdd09c5722ac56952747e918634f61;hb=e5dde615db05fb62ebe91bd1c030f40c9b91fe17;hp=817cc3f3dd3b639af46cd7f81f027e55b5c55bab;hpb=325bb973c136c921d0c36384ca9655aa7744283e;p=mailer.git diff --git a/inc/libs/register_functions.php b/inc/libs/register_functions.php index 817cc3f3dd..665a4b7873 100644 --- a/inc/libs/register_functions.php +++ b/inc/libs/register_functions.php @@ -18,6 +18,7 @@ * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * + * Copyright (c) 2009, 2010 by Mailer Developer Team * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -47,8 +48,10 @@ function ifRequiredRegisterFieldsAreSet (&$array) { $ret = true; foreach ($array as $key => $value) { // Check all fields that must register - $result = SQL_QUERY("SELECT `id` FROM `{?_MYSQL_PREFIX?}_must_register` WHERE `field_name`='".$key."' AND `field_required`='Y' LIMIT 1", - __FUNCTION__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_must_register` WHERE `field_name`='%s' AND `field_required`='Y' LIMIT 1", + array($key), __FUNCTION__, __LINE__); + + // Entry found? if (SQL_NUMROWS($result) == 1) { // Check if extension country is not found (you have to enter the 2-chars long country code) or // if extensions is present check if country code was selected @@ -84,14 +87,12 @@ function registerGenerateCategoryTable ($mode, $return=false) { $result = SQL_QUERY("SELECT `id`, `cat`, `visible` FROM `{?_MYSQL_PREFIX?}_cats` ".$AND." ORDER BY `sort` ASC", __FUNCTION__, __LINE__); - if (SQL_NUMROWS($result) > 0) { + if (!SQL_HASZERONUMS($result)) { // List alle visible modules (or all to the admin) - $SW = 2; $OUT .= ''; while ($content = SQL_FETCHARRAY($result)) { // Prepare array for the template $content = array( - 'sw' => $SW, 'cat' => $content['cat'], 'def_y' => '', 'def_n' => '', @@ -107,15 +108,14 @@ function registerGenerateCategoryTable ($mode, $return=false) { // Load template and switch color $OUT .= loadTemplate('guest_cat_row', true, $content); - $SW = 3 - $SW; - } + } // END - while $OUT .= '
'; // Free memory SQL_FREERESULT($result); } else { // No categories setted up so far... - $OUT .= loadTemplate('admin_settings_saved', true, getMessage('NO_CATEGORIES_VISIBLE')); + $OUT .= loadTemplate('admin_settings_saved', true, '{--NO_CATEGORIES_VISIBLE--}'); } if ($return === true) { @@ -222,11 +222,18 @@ function isRegistrationDataComplete () { } // END - if // Do this check only when no admin is logged in - foreach (postRequestParameter('cat') as $id => $answer) { - if ($answer == 'Y') $GLOBALS['register_selected_cats']++; - } // END - foreach + if (is_array(postRequestParameter('cat'))) { + // Only continue with array + foreach (postRequestParameter('cat') as $id => $answer) { + // Is this category choosen? + if ($answer == 'Y') { + $GLOBALS['register_selected_cats']++; + } // END - if + } // END - foreach + } // END - if // Enougth categories selected? + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isOkay='.intval($isOkay).',selected='.$GLOBALS['register_selected_cats'].'/'.getConfig('least_cats')); $isOkay = (($isOkay) && ($GLOBALS['register_selected_cats'] >= getConfig('least_cats'))); if ((postRequestParameter('email') != '!') && (getConfig('check_double_email') == 'Y')) { @@ -238,13 +245,16 @@ function isRegistrationDataComplete () { } // END - if // Check for IP timeout? + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isOkay='.intval($isOkay)); if ((!isAdmin()) && (getConfig('ip_timeout') > 0)) { // Check his IP number - $GLOBALS['registration_ip_timeout'] = (countSumTotalData(detectRemoteAddr() , 'user_data', 'userid', 'REMOTE_ADDR', true, " AND (`joined` > (UNIX_TIMESTAMP() - {?ip_timeout?}) OR `last_update` > (UNIX_TIMESTAMP() - {?ip_timeout?}))") == 1); - $isOkay = false; + $GLOBALS['registration_ip_timeout'] = (countSumTotalData(detectRemoteAddr() , 'user_data', 'userid', 'REMOTE_ADDR', true, " AND ((UNIX_TIMESTAMP() - `joined`) < {?ip_timeout?} OR (UNIX_TIMESTAMP() - `last_update`) < {?ip_timeout?}) LIMIT 1") == 1); + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isOkay='.intval($isOkay).',timeout='.intval($GLOBALS['registration_ip_timeout'])); + $isOkay = (($isOkay) && (!$GLOBALS['registration_ip_timeout'])); } // END - if // Return result + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isOkay='.intval($isOkay)); return $isOkay; } @@ -264,14 +274,14 @@ function doRegistration () { // Generate hash which will be inserted into confirmation mail $hash = generateHash(sha1( - $confirmedUsers . getConfig('ENCRYPT_SEPERATOR') . - $unconfirmedUsers . getConfig('ENCRYPT_SEPERATOR') . - $lockedUsers . getConfig('ENCRYPT_SEPERATOR') . + $confirmedUsers . getEncryptSeperator() . + $unconfirmedUsers . getEncryptSeperator() . + $lockedUsers . getEncryptSeperator() . postRequestParameter('month') . '-' . postRequestParameter('day') . '-' . - postRequestParameter('year') . getConfig('ENCRYPT_SEPERATOR') . - detectServerName() . getConfig('ENCRYPT_SEPERATOR') . - detectRemoteAddr() . getConfig('ENCRYPT_SEPERATOR') . + postRequestParameter('year') . getEncryptSeperator() . + detectServerName() . getEncryptSeperator() . + detectRemoteAddr() . getEncryptSeperator() . detectUserAgent() . '/' . getConfig('SITE_KEY') . '/' . getConfig('DATE_KEY') . '/' . @@ -295,19 +305,19 @@ function doRegistration () { // Check if I shall disable sending mail to newly registered members out about active/begging rallye // // First comes first: begging rallye - if (isExtensionInstalledAndNewer('beg', '0.1.7')) { + if (isExtensionInstalledAndNewer('beg', '0.2.8')) { // Okay, shall I disable now? - if (getConfig('beg_new_mem_notify') != 'Y') { - $GLOBALS['register_sql_columns'] .= ', `beg_ral_notify`, `beg_ral_en_notify`'; + if (getConfig('beg_new_member_notify') != 'Y') { + $GLOBALS['register_sql_columns'] .= ', `beg_rallye_notify`, `beg_rallye_enable_notify`'; $GLOBALS['register_sql_data'] .= ', UNIX_TIMESTAMP(), UNIX_TIMESTAMP()'; } // END - if } // END - if // Second: active rallye - if (isExtensionInstalledAndNewer('bonus', '0.7.7')) { + if (isExtensionInstalledAndNewer('bonus', '0.9.2')) { // Okay, shall I disable now? - if (getConfig('bonus_new_mem_notify') != 'Y') { - $GLOBALS['register_sql_columns'] .= ', `bonus_ral_notify`, `bonus_ral_en_notify`'; + if (getConfig('bonus_new_member_notify') != 'Y') { + $GLOBALS['register_sql_columns'] .= ', `bonus_rallye_notify`, `bonus_rallye_enable_notify`'; $GLOBALS['register_sql_data'] .= ', UNIX_TIMESTAMP(), UNIX_TIMESTAMP()'; } // END - if } // END - if @@ -344,7 +354,7 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF bigintval(postRequestParameter('refid')), $hash, detectRemoteAddr(), - ), __FILE__, __LINE__); + ), __FUNCTION__, __LINE__); // Get his userid $userid = bigintval(SQL_INSERTID()); @@ -352,7 +362,7 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF // Did this work? if ($userid == '0') { // Something bad happened! - loadTemplate('admin_settings_saved', false, getMessage('USER_NOT_REGISTERED')); + loadTemplate('admin_settings_saved', false, '{--USER_NOT_REGISTERED--}'); // Stop here return; @@ -366,26 +376,8 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF } // END - if // Write his welcome-points - // @TODO Rewrite this whole if() block to addPointsThroughReferalSystem(). This will also make following if() block obsolete // @TODO Wether the registration bonus should only be added to user directly or through referal system should be configurable - $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_points` WHERE `userid`=%s AND `ref_depth`=0 LIMIT 1", - array($userid), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == '0') { - // Add only when the line was not found (maybe some more secure?) - $locked = 'points'; - - // Pay him later. First he has to confirm some mails! - if (getConfig('ref_payout') > 0) $locked = 'locked_points'; - - SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_points` (`userid`, `ref_depth`, `%s`) VALUES (%s,0,'{?points_register?}')", - array($locked, $userid), __FILE__, __LINE__); - - // Update mediadata as well - if ((isExtensionInstalledAndNewer('mediadata', '0.0.4')) && ($locked == 'points')) { - // Update database - updateMediadataEntry(array('total_points'), 'add', getConfig('points_register')); - } // END - if - } // END - if + addPointsDirectly('register_welcome', $userid, getConfig('points_register')); // Write catgories if ((is_array(postRequestParameter('cat'))) && (count(postRequestParameter('cat')))) { @@ -393,13 +385,13 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF if ($joined == 'Y') { // Insert category entry SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_cats` (`userid`, `cat_id`) VALUES (%s, %s)", - array($userid, bigintval($cat)), __FILE__, __LINE__); + array($userid, bigintval($cat)), __FUNCTION__, __LINE__); } // END - if } // END - foreach } // END - if // ... rewrite a zero referal id to the main title - if (postRequestParameter('refid') == '0') setPostRequestParameter('refid', getConfig('MAIN_TITLE')); + if (postRequestParameter('refid') == '0') setPostRequestParameter('refid', getMainTitle()); // Is ZIP code set? if (isPostRequestParameterSet('zip')) { @@ -408,7 +400,7 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF $content = array( 'hash' => $hash, 'userid' => $userid, - 'gender' => translateGender(postRequestParameter('gender')), + 'gender' => SQL_ESCAPE(postRequestParameter('gender')), 'surname' => SQL_ESCAPE(postRequestParameter('surname')), 'family' => SQL_ESCAPE(postRequestParameter('family')), 'email' => SQL_ESCAPE(postRequestParameter('email')), @@ -424,7 +416,7 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF $content = array( 'hash' => $hash, 'userid' => $userid, - 'gender' => translateGender(postRequestParameter('gender')), + 'gender' => SQL_ESCAPE(postRequestParameter('gender')), 'surname' => SQL_ESCAPE(postRequestParameter('surname')), 'family' => SQL_ESCAPE(postRequestParameter('family')), 'email' => SQL_ESCAPE(postRequestParameter('email')), @@ -453,11 +445,11 @@ VALUES ('%s','%s','%s','%s','%s',%s,'%s','%s',%s, %s,%s,'%s',%s, %s,'%s','UNCONF // Send mail to user (confirmation link!) $email = $content['email']; - sendEmail($content['email'], getMessage('GUEST_SUBJECT_CONFIRM_LINK'), $messageGuest); + sendEmail($content['email'], '{--GUEST_CONFIRM_LINK_SUBJECT--}', $messageGuest); $content['email'] = $email; // Send mail to admin - sendAdminNotification(getMessage('ADMIN_SUBJECT_NEW_ACCOUNT'), 'register-admin', $content, $userid); + sendAdminNotification('{--ADMIN_NEW_ACCOUNT_SUBJECT--}', 'register-admin', $content, $userid); } // [EOF]