Fixes for member registration (IP lock) and rewrites for remote IP address
authorRoland Häder <roland@mxchange.org>
Thu, 4 Mar 2010 18:42:44 +0000 (18:42 +0000)
committerRoland Häder <roland@mxchange.org>
Thu, 4 Mar 2010 18:42:44 +0000 (18:42 +0000)
15 files changed:
inc/db/lib-mysql3.php
inc/language/de.php
inc/libs/register_functions.php
inc/libs/theme_functions.php
inc/libs/uberwach_functions.php
inc/wrapper-functions.php
templates/de/emails/admin/admin_sponsor_pending.tpl
templates/de/emails/admin/admin_sponsor_reg.tpl
templates/de/emails/sponsor/sponsor_activate.tpl
templates/de/emails/sponsor/sponsor_confirm.tpl
templates/de/emails/sponsor/sponsor_lost.tpl
templates/de/emails/sponsor/sponsor_pending.tpl
templates/de/emails/sponsor/sponsor_unlock.tpl
templates/de/html/theme/theme_select_form.tpl
templates/de/html/uberwach/uberwach_snippet.tpl

index c7cc26c7fae8ee02da7c98dd0d3e0e6d7f889995..1ef2a798899b380b8fb3b5eb421993a345495dcc 100644 (file)
@@ -88,7 +88,7 @@ function SQL_QUERY ($sqlString, $F, $L) {
                or addFatalMessage(__FUNCTION__, __LINE__, $F . ' (' . $L . '):' . mysql_error() . '<br />
 Query string:<br />
 ' . $sqlString);
                or addFatalMessage(__FUNCTION__, __LINE__, $F . ' (' . $L . '):' . mysql_error() . '<br />
 Query string:<br />
 ' . $sqlString);
-       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'sql=' . $sqlString . ',numRows=' . SQL_NUMROWS($result) . ',affected=' . SQL_AFFECTEDROWS());
+       /* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'sql=' . $sqlString . ',numRows=' . SQL_NUMROWS($result) . ',affected=' . SQL_AFFECTEDROWS());
 
        // Calculate query time
        $queryTime = microtime(true) - $querytimeBefore;
 
        // Calculate query time
        $queryTime = microtime(true) - $querytimeBefore;
index b4acd61e176236311fe86f48a9effd66fcfa7c54..dca70d03fe50b2ca9d46e46c7c542163bfaab3b6 100644 (file)
@@ -798,7 +798,7 @@ addMessages(array(
        'HIGHER' => "H&ouml;her",
        'LOWER' => "Niedriger",
        'MEMBER_SETTINGS_SAVED' => "Einstellungen gespeichert.",
        'HIGHER' => "H&ouml;her",
        'LOWER' => "Niedriger",
        'MEMBER_SETTINGS_SAVED' => "Einstellungen gespeichert.",
-       'REMOTE_ADDR_TIMEOUT' => "Ein Mitglied ist mit Ihrer IP-Nummer <u>{?REMOTE_ADDR?}</u> bereits registriert! Bitte kontaktieren Sie uns, wenn dies ein Fehler sein sollte.",
+       'REMOTE_ADDR_TIMEOUT' => "Ein Mitglied ist mit Ihrer IP-Nummer <u>{%server,remote_addr%}</u> bereits registriert! Bitte kontaktieren Sie uns, wenn dies ein Fehler sein sollte.",
        'IP_TIMEOUT' => "IP-Zeitsperre",
        'ADMIN_PAYOUT_NOT_INSTALLED' => "payout-Erweiterung nicht installiert.",
        'ADMIN_WERNIS_NOT_INSTALLED' => "wernis-Erweiterung nicht installiert.",
        'IP_TIMEOUT' => "IP-Zeitsperre",
        'ADMIN_PAYOUT_NOT_INSTALLED' => "payout-Erweiterung nicht installiert.",
        'ADMIN_WERNIS_NOT_INSTALLED' => "wernis-Erweiterung nicht installiert.",
index 8dc9420473d6b80a321838fcbef9b7dbc5fe0ad1..5a50b7df0741121bac180c4c2b534d8017e23b75 100644 (file)
@@ -223,11 +223,18 @@ function isRegistrationDataComplete () {
        } // END - if
 
        // Do this check only when no admin is logged in
        } // 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?
 
        // 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')) {
        $isOkay = (($isOkay) && ($GLOBALS['register_selected_cats'] >= getConfig('least_cats')));
 
        if ((postRequestParameter('email') != '!') && (getConfig('check_double_email') == 'Y')) {
@@ -239,13 +246,16 @@ function isRegistrationDataComplete () {
        } // END - if
 
        // Check for IP timeout?
        } // END - if
 
        // Check for IP timeout?
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isOkay='.intval($isOkay));
        if ((!isAdmin()) && (getConfig('ip_timeout') > 0)) {
                // Check his IP number
        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
        } // END - if
 
        // Return result
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isOkay='.intval($isOkay));
        return $isOkay;
 }
 
        return $isOkay;
 }
 
index a1b563054a0e02599f65d9848e68bdfe9ea7aa26..2fb7de3b7f8a9b8d1a36c7c8bd45c2767fed3609 100644 (file)
@@ -320,6 +320,9 @@ function FILTER_HANDLE_THEME_CHANGE () {
 
                // Add new theme
                addIncludeToPool('theme', sprintf("theme/%s/theme.php", $newTheme));
 
                // Add new theme
                addIncludeToPool('theme', sprintf("theme/%s/theme.php", $newTheme));
+
+               // Redirect to same URL
+               redirectToRequestUri();
        } // END - if
 }
 
        } // END - if
 }
 
index 6977d468d9f3b1000f0f30ceee65fb9721910939..ece6ad2457503c220d31cab91f0fb7114af13b4c 100644 (file)
@@ -44,9 +44,6 @@ if (!defined('__SECURITY')) {
 
 // Loads the snippet for the uberwach action
 function loadUberwachSnippet () {
 
 // Loads the snippet for the uberwach action
 function loadUberwachSnippet () {
-       // Detect IP address
-       $content['REMOTE_ADDR'] = detectRemoteAddr();
-
        // Simply load the template here
        $GLOBALS['page_footer'] .= loadTemplate('uberwach_snippet', true, $content);
 }
        // Simply load the template here
        $GLOBALS['page_footer'] .= loadTemplate('uberwach_snippet', true, $content);
 }
index c56adab059809f21e5346f07a19d2ac1a4a25a76..055cf55b888473364fe3687fc25f61491d18439a 100644 (file)
@@ -671,7 +671,18 @@ function addPointsDirectly ($subject, $userid, $points) {
 // Wrapper function to redirect from member-only modules to index
 function redirectToIndexMemberOnlyModule () {
        // Do the redirect here
 // Wrapper function to redirect from member-only modules to index
 function redirectToIndexMemberOnlyModule () {
        // Do the redirect here
-       redirectToUrl('modules.php?module=index&amp;code=' . getCode('MODULE_MEM_ONLY') . '&amp;mod=' . getModule());
+       redirectToUrl('modules.php?module=index&code=' . getCode('MODULE_MEM_ONLY') . '&mod=' . getModule());
+}
+
+// Wrapper function to redirect to current URL
+function redirectToRequestUri () {
+       redirectToUrl(basename(detectRequestUri()));
+}
+
+// Wrapper function to redirect to de-refered URL
+function redirectToDereferedUrl ($URL) {
+       // Redirect to to
+       redirectToUrl(generateDerefererUrl($URL));
 }
 
 // Wrapper function for checking if extension is installed and newer or same version
 }
 
 // Wrapper function for checking if extension is installed and newer or same version
@@ -725,15 +736,6 @@ function isDemoModeActive () {
        return ((isExtensionActive('demo')) && (getSession('admin_login') == 'demo'));
 }
 
        return ((isExtensionActive('demo')) && (getSession('admin_login') == 'demo'));
 }
 
-// Wrapper function to redirect to de-refered URL
-function redirectToDereferedUrl ($URL) {
-       // De-refer the URL
-       $URL = generateDerefererUrl($URL);
-
-       // Redirect to to
-       redirectToUrl($URL);
-}
-
 // Getter for PHP caching value
 function getPhpCaching () {
        return $GLOBALS['php_caching'];
 // Getter for PHP caching value
 function getPhpCaching () {
        return $GLOBALS['php_caching'];
index 0c981995a7d093a0bae3250709b713e5b9132458..2578303632bb99f367a426eac8996316c59887f5 100644 (file)
@@ -1,6 +1,6 @@
 Hallo Administrator,
 
 Hallo Administrator,
 
-soeben hat ein neuer Sponsor seine EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer $REMOTE_ADDR aus durchgefuehrt.
+soeben hat ein neuer Sponsor seine EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer {%server,remote_addr%} aus durchgefuehrt.
 
 Bitte setzen Sie sich mit ihm in Verbindung (die EMail-Adresse finden Sie weiter unten) und teilen Sie ihm Ihre
 Kontoverbindung mit!
 
 Bitte setzen Sie sich mit ihm in Verbindung (die EMail-Adresse finden Sie weiter unten) und teilen Sie ihm Ihre
 Kontoverbindung mit!
index b981fa4525a9ea788c44ec57488ed6263129145f..83236fdb60b1f5544aa1c780aba0fe39cd79374b 100644 (file)
@@ -1,6 +1,6 @@
 Hallo Administrator,
 
 Hallo Administrator,
 
-soeben hat sich ein neuer Sponsor zu unserem {?mt_word?} mit der IP-Nummer $REMOTE_ADDR angemeldet. Er wird
+soeben hat sich ein neuer Sponsor zu unserem {?mt_word?} mit der IP-Nummer {%server,remote_addr%} angemeldet. Er wird
 als naechstes seine EMail-Adresse best&auml;tigen.
 
 Folgende Daten wurden dabei &uuml;bermittelt:
 als naechstes seine EMail-Adresse best&auml;tigen.
 
 Folgende Daten wurden dabei &uuml;bermittelt:
index b93459f80d55d66aff39a6a9a8b0a55d05305539..68b5c14010a68e96c9fe85de5fd879f23c97a704 100644 (file)
@@ -1,6 +1,6 @@
 Hallo $content[gender] $content[surname] $content[family],
 
 Hallo $content[gender] $content[surname] $content[family],
 
-Sie (oder ein anderer mit der IP-Nummer $REMOTE_ADDR) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
 
 Hier ist Ihr Link:
 ------------------------------
 
 Hier ist Ihr Link:
 ------------------------------
index 65d9cc1c45b05471965942d3bdd11fd05be7ff6a..d2c36f411903659023d14150fd6fe87e540b5dce 100644 (file)
@@ -1,6 +1,6 @@
 Hallo $content[gender] $content[surname] $content[family],
 
 Hallo $content[gender] $content[surname] $content[family],
 
-Sie (oder ein anderer mit der IP-Nummer $REMOTE_ADDR) haben sich soeben als Sponsor zu unserem {?mt_word?} angemeldet. Sie haben somit den ersten Schritt zu uns getan wof&uuml;r wir uns sehr bedanken.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben sich soeben als Sponsor zu unserem {?mt_word?} angemeldet. Sie haben somit den ersten Schritt zu uns getan wof&uuml;r wir uns sehr bedanken.
 
 Als naechstes muessen Sie Ihre EMail-Adresse best&auml;tigen. Dieser Schritt ist erforderlich, um sicher zu gehen, dass auch kein anderer Sie angemeldet hat.
 
 
 Als naechstes muessen Sie Ihre EMail-Adresse best&auml;tigen. Dieser Schritt ist erforderlich, um sicher zu gehen, dass auch kein anderer Sie angemeldet hat.
 
index 2737d41da9117e3ce3397f077c0592bf3587cd26..f55d91f3631c7c04d2cfe4453616ce7ee954718f 100644 (file)
@@ -1,6 +1,6 @@
 Hallo $content[gender] $content[surname] $content[family],
 
 Hallo $content[gender] $content[surname] $content[family],
 
-Sie (oder ein anderer mit der IP-Nummer $REMOTE_ADDR) haben soeben ein neues Passwort angefordert.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben soeben ein neues Passwort angefordert.
 
 Hier sind Ihre neuen Zugangsdaten:
 ------------------------------
 
 Hier sind Ihre neuen Zugangsdaten:
 ------------------------------
index 27957378a60db7b28f46bdb2664480e0827cac24..07653983eb6ad93ec12b18e9cc096aae3925d88b 100644 (file)
@@ -1,6 +1,6 @@
 Hallo $content[gender] $content[surname] $content[family],
 
 Hallo $content[gender] $content[surname] $content[family],
 
-Sie haben soeben Ihre EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer $REMOTE_ADDR aus durchgefuehrt.
+Sie haben soeben Ihre EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer {%server,remote_addr%} aus durchgefuehrt.
 
 Wir werden uns bald mit Ihnen in Verbindung setzen und Ihnen unsere Kontodaten mitteilen. Zu unserer Sicherheit haben wir diese hier nicht aufgelistet. Bitte notieren Sie sich vorab folgende Daten:
 
 
 Wir werden uns bald mit Ihnen in Verbindung setzen und Ihnen unsere Kontodaten mitteilen. Zu unserer Sicherheit haben wir diese hier nicht aufgelistet. Bitte notieren Sie sich vorab folgende Daten:
 
index b93459f80d55d66aff39a6a9a8b0a55d05305539..68b5c14010a68e96c9fe85de5fd879f23c97a704 100644 (file)
@@ -1,6 +1,6 @@
 Hallo $content[gender] $content[surname] $content[family],
 
 Hallo $content[gender] $content[surname] $content[family],
 
-Sie (oder ein anderer mit der IP-Nummer $REMOTE_ADDR) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
 
 Hier ist Ihr Link:
 ------------------------------
 
 Hier ist Ihr Link:
 ------------------------------
index 4e371b8d8d6565e86bd55e23d823827c7aa23971..691b7bfae452228137cce926359f069fe0e607f2 100644 (file)
@@ -3,5 +3,5 @@
                $content[selection]
        </select>
        <br />
                $content[selection]
        </select>
        <br />
-       <input type="submit" name="ok" class="guest_submit" value="{--CHANGE_THEME--}" />
+       <input type="submit" name="theme_change" class="guest_submit" value="{--CHANGE_THEME--}" />
 </form>
 </form>
index 4050da7b583d74015b554e298f20832edfb038b3..f3fd7962c837d6d8cf5f08daa85224d5e24307ff 100644 (file)
@@ -1,7 +1,7 @@
 <!-- Einbauanleitung: http://www.uberwach.de/code-snippet.html -->
 <!-- start uberwach code :: do not change :: v2.2.2 -->
 <script type="text/javascript">/* <![CDATA[ */
 <!-- Einbauanleitung: http://www.uberwach.de/code-snippet.html -->
 <!-- start uberwach code :: do not change :: v2.2.2 -->
 <script type="text/javascript">/* <![CDATA[ */
-au_ip='$content[REMOTE_ADDR]';
+au_ip='{%server,remote_addr%}';
 /* ]]> */</script>
 <script src="{%url=js.php?js=uberwach%}{%ext,version=uberwach%}" type="text/javascript"></script>
 <noscript><a href="http://www.uberwach.de/" rel="external" target="_blank" title="Aktion: &Uuml;berwach!">?mg src="http://www.uberwach.de/wanze.gif" alt="Aktion UBERWACH!" width="80" height="15" border="0" /></a></noscript>
 /* ]]> */</script>
 <script src="{%url=js.php?js=uberwach%}{%ext,version=uberwach%}" type="text/javascript"></script>
 <noscript><a href="http://www.uberwach.de/" rel="external" target="_blank" title="Aktion: &Uuml;berwach!">?mg src="http://www.uberwach.de/wanze.gif" alt="Aktion UBERWACH!" width="80" height="15" border="0" /></a></noscript>