Fixes for warnings in loader/frametester
[mailer.git] / inc / modules / frametester.php
index 48ff5cc346718b6c90f8791683774fdfba22ceb3..f605ae58248732ec20218b7bd98d07ba4fa509ee 100644 (file)
@@ -32,7 +32,7 @@
  ************************************************************************/
 
 // Some security stuff...
-if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
+if (!defined('__SECURITY')) {
        $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
        require($INC);
 }
@@ -41,9 +41,9 @@ $MODE = "guest";
 
 if (!empty($_GET['order'])) {
        // Order number placed, is he also logged in?
-       if(IS_LOGGED_IN()) {
+       if(IS_MEMBER()) {
                // Ok, test passed... :)
-               $result = SQL_QUERY_ESC("SELECT subject, url FROM "._MYSQL_PREFIX."_pool WHERE id=%d AND sender=%d AND data_type='TEMP' LIMIT 1",
+               $result = SQL_QUERY_ESC("SELECT subject, url FROM "._MYSQL_PREFIX."_pool WHERE id=%s AND sender=%s AND data_type='TEMP' LIMIT 1",
                 array(bigintval($_GET['order']), $GLOBALS['userid']), __FILE__, __LINE__);
 
                // Finally is the entry valid?
@@ -71,11 +71,14 @@ if (!empty($_GET['order'])) {
 }
 
 if ((!empty($_POST['url'])) || (!empty($_GET['url'])) || (!empty($_GET['frame']))) {
+       // Default URL is ours
        $url = URL;
-       if (!empty($_POST['url'])) $url = $_POST['url'];
 
-       // Decode URL if set
-       if (!empty($_GET['url']))  $url = COMPILE_CODE(gzuncompress(base64_decode(urldecode($_GET['url']))));
+       // Decode URL if set in GET parameters
+       if (!empty($_GET['url']))  $url = gzuncompress(base64_decode(str_replace(" ", "+", COMPILE_CODE(urldecode($_GET['url'])))));
+
+       // Use URL from POST data if set
+       if (!empty($_POST['url'])) $url = $_POST['url'];
 
        // Add missing element
        $frame = "";