X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ffilter%2Fregister_filter.php;h=14adc971c1c0da889a5cb951159e8cde3d9b9664;hb=6bd47661d7ec406cd276f0835364b1e3f933d6c8;hp=e73d8a45a9a182a66ad1d74c5efebd781c468a72;hpb=24dfd21baed6a9a112992bdabf7da96576012bc4;p=mailer.git diff --git a/inc/filter/register_filter.php b/inc/filter/register_filter.php index e73d8a45a9..14adc971c1 100644 --- a/inc/filter/register_filter.php +++ b/inc/filter/register_filter.php @@ -16,8 +16,8 @@ * $Author:: $ * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009 - 2011 by Mailer Developer Team * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -41,8 +41,9 @@ if (!defined('__SECURITY')) { } // END - if // Run a filter for must-fillout fields -function FILTER_REGISTER_MUST_FILLOUT ($content) { +function FILTER_REGISTER_MUST_FILLOUT ($filterData) { // Get all fields for output + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!'); $result = SQL_QUERY('SELECT `field_name`, `field_required` FROM `{?_MYSQL_PREFIX?}_must_register` ORDER BY `id` ASC', __FUNCTION__, __LINE__); @@ -55,14 +56,66 @@ function FILTER_REGISTER_MUST_FILLOUT ($content) { } // END - if // Add it - $content['must_fillout_' . strtolower($row['field_name']) . ''] = $value; + $filterData['must_fillout_' . strtolower($row['field_name']) . ''] = $value; } // END - while // Free memory SQL_FREERESULT($result); // Return it - return $content; + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!'); + return $filterData; +} + +/** + * Run a filter for pre user registration - generic code (e.g. create hash, + * init global array elements). WARNING: This filter MUST run filter before all + * others, make your extension/-update depending on ext-register to avoid + * missing global array elements, etc. + * + * @param $filterData Filter data from previous filter + * @return $filterData Unchanged filter data + */ +function FILTER_PRE_USER_REGISTRATION_GENERIC ($filterData) { + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!'); + + // Generate hash which will be inserted into confirmation mail + $GLOBALS['register_confirm_hash'] = generateHash(sha1( + // Get total confirmed, ... + getTotalConfirmedUser() . getEncryptSeparator() . + // ... unconfirmed ... + getTotalUnconfirmedUser() . getEncryptSeparator() . + // ... and locked users + getTotalLockedUser() . getEncryptSeparator() . + postRequestElement('month') . '-' . + postRequestElement('day') . '-' . + postRequestElement('year') . getEncryptSeparator() . + postRequestElement('pass1') . getEncryptSeparator() . + detectServerName() . getEncryptSeparator() . + detectRemoteAddr() . getEncryptSeparator() . + detectUserAgent() . '/' . + getSiteKey() . '/' . + getDateKey() . '/' . + getConfig('CACHE_BUSTER') + )); + + // Old way with enterable two-char-code + $GLOBALS['register_country_row'] = '`country`'; + $GLOBALS['register_country_data'] = substr(postRequestElement('cntry'), 0, 2); + + // Init "status" as for many users + setPostRequestElement('status', 'UNCONFIRMED'); + + // Add ip for later POST pings + setPostRequestElement('remote_addr', detectRemoteAddr()); + + // Generic initialization is done + $filterData['init_done'] = TRUE; + + // Return it + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!'); + //* NOISY-DEBUG: */ print __FUNCTION__.':filterData=
'.print_r($filterData,TRUE).'
'; + return $filterData; } // [EOF]