Security line in all includes changed
[mailer.git] / inc / modules / member / what-order.php
index 9635d3d515f199872130b4fdc2c707e7e1215101..0577688f285f31497906f59009f8ad233552a853 100644 (file)
  ************************************************************************/
 
 // 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);
-}
- elseif (!IS_LOGGED_IN())
-{
+} elseif (!IS_MEMBER()) {
        LOAD_URL("modules.php?module=index");
-}
- elseif ((!EXT_IS_ACTIVE("order")) && (!IS_ADMIN()))
-{
+} elseif (!EXT_IS_ACTIVE("order")) {
        ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "order");
        return;
 }
@@ -61,7 +56,7 @@ if (empty($_POST['receiver'])) $_POST['receiver'] = "";
 if (is_admin()) $whereStatement = "";
 
 // Add slashes to every value
-foreach($_POST as $key=>$value)
+foreach($_POST as $key => $value)
 {
        // Skip submit buttons
        if (($key != "data") && ($key != "frametester")) $_POST[$key] = addslashes($value);
@@ -71,7 +66,7 @@ foreach($_POST as $key=>$value)
 define('__MIN_VALUE', $_CONFIG['order_min']);
 
 // Count unconfirmed mails
-$result_links = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_links WHERE userid=%d",
+$result_links = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_links WHERE userid=%s",
  array($GLOBALS['userid']), __FILE__, __LINE__);
 $links = SQL_NUMROWS($result_links);
 SQL_FREERESULT($result_links);
@@ -86,7 +81,7 @@ if (GET_EXT_VERSION("holiday") >= "0.1.3")
 
 $result_mmails = SQL_QUERY_ESC("SELECT userid, receive_mails, mail_orders, ".$HOLIDAY."
 FROM "._MYSQL_PREFIX."_user_data
-WHERE userid=%d AND max_mails > 0 LIMIT 1",
+WHERE userid=%s AND max_mails > 0 LIMIT 1",
  array($GLOBALS['userid']), __FILE__, __LINE__);
 
 $mmails = SQL_NUMROWS($result_mmails);
@@ -95,16 +90,16 @@ SQL_FREERESULT($result_mmails);
 if ($HOLIDAY == $DMY) $HOLIDAY='N';
 
 $ALLOWED = $MAXI - $ORDERS;
-if ($_CONFIG['order_max'] == "MAX") $ALLOWED = $MAXI;
+if ($_CONFIG['order_max_full'] == "MAX") $ALLOWED = $MAXI;
 
 // Check HTML extension
 $HTML_EXT = EXT_IS_ACTIVE("html_mail");
 
 // Now check his points amount
-$result_p = SQL_QUERY_ESC("SELECT SUM(points) FROM "._MYSQL_PREFIX."_user_points WHERE userid=%d",
+$result_p = SQL_QUERY_ESC("SELECT SUM(points) FROM "._MYSQL_PREFIX."_user_points WHERE userid=%s",
  array($GLOBALS['userid']), __FILE__, __LINE__);
 
-$TOTAL = "0";
+$TOTAL = 0;
 if (SQL_NUMROWS($result_p) > 0)
 {
        // Load points
@@ -112,12 +107,7 @@ if (SQL_NUMROWS($result_p) > 0)
        SQL_FREERESULT($result_p);
 
        // And subtract his used points...
-       $result_p = SQL_QUERY_ESC("SELECT used_points FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",
-        array($GLOBALS['userid']), __FILE__, __LINE__);
-
-       list($p) = SQL_FETCHROW($result_p);
-       SQL_FREERESULT($result_p);
-       $TOTAL -= $p;
+       $TOTAL -= GET_TOTAL_DATA($GLOBALS['userid'], "user_data", "used_points");
 
        // Add (maybe) missing three zeros
        if (!ereg(".", $TOTAL)) $TOTAL .= ".00000";
@@ -134,10 +124,10 @@ if (($HOLIDAY == "Y") && (GET_EXT_VERSION("holiday") >= "0.1.3"))
        // Continue with the frametester, we first need to store the data temporary in the pool
        //
        // First we would like to store the data and get it's pool position back...
-       $result = SQL_QUERY_ESC("SELECT id, data_type FROM "._MYSQL_PREFIX."_pool WHERE sender=%d AND url='%s' AND timestamp > %d LIMIT 1",
+       $result = SQL_QUERY_ESC("SELECT id, data_type FROM "._MYSQL_PREFIX."_pool WHERE sender=%s AND url='%s' AND timestamp > %s LIMIT 1",
         array($GLOBALS['userid'], $_POST['url'], bigintval(time() - $_CONFIG['url_tlock'])), __FILE__, __LINE__);
 
-       $type = "TEMP"; $id = "0";
+       $type = "TEMP"; $id = 0;
        if (SQL_NUMROWS($result) == 1)
        {
                list($id, $type) = SQL_FETCHROW($result);
@@ -235,7 +225,7 @@ if (($HOLIDAY == "Y") && (GET_EXT_VERSION("holiday") >= "0.1.3"))
                $result = SQL_QUERY_ESC("SELECT DISTINCT c.userid FROM "._MYSQL_PREFIX."_user_cats AS c
 LEFT JOIN "._MYSQL_PREFIX."_user_data AS d
 ON c.userid=d.userid
-WHERE c.cat_id=%d AND c.userid != '%s' AND d.status='CONFIRMED' AND d.receive_mails > 0
+WHERE c.cat_id=%s AND c.userid != '%s' AND d.status='CONFIRMED' AND d.receive_mails > 0
 ".$ADD."
 ORDER BY d.%s %s",
  array(
@@ -264,7 +254,7 @@ ORDER BY d.%s %s",
                                {
                                        // Check for his holiday status
                                        $result_holiday = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_holidays
-WHERE userid=%d AND holiday_start < ".time()." AND holiday_end > ".time()." LIMIT 1",
+WHERE userid=%s AND holiday_start < UNIX_TIMESTAMP() AND holiday_end > UNIX_TIMESTAMP() LIMIT 1",
  array(bigintval($REC)), __FILE__, __LINE__);
                                        if (SQL_NUMROWS($result_holiday) == 1) $REC = 0; // Exclude user who are in holiday
 
@@ -356,14 +346,14 @@ array(
 subject='%s',
 text='%s',
 receivers='%s',
-payment_id=%d,
+payment_id=%s,
 timestamp=UNIX_TIMESTAMP(),
 url='%s',
-cat_id=%d,
-target_send=%d,
-zip=%d,
+cat_id=%s,
+target_send=%s,
+zip=%s,
 html_msg='%s'
-WHERE id=%d LIMIT 1",
+WHERE id=%s LIMIT 1",
 array(
        $_POST['subject'],
        $_POST['text'],
@@ -384,13 +374,13 @@ array(
 subject='%s',
 text='%s',
 receivers='%s',
-payment_id=%d,
+payment_id=%s,
 timestamp=UNIX_TIMESTAMP(),
 url='%s',
-cat_id=%d,
-target_send=%d,
-zip=%d
-WHERE id=%d LIMIT 1",
+cat_id=%s,
+target_send=%s,
+zip=%s
+WHERE id=%s LIMIT 1",
 array(
        $_POST['subject'],
        $_POST['text'],
@@ -408,7 +398,7 @@ array(
                                // Do we need to get the ID number?
                                if ($id == 0) {
                                        // Order is placed as temporary. We need to get it's id for the frametester
-                                       $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_pool WHERE sender=%d AND subject='%s' AND payment_id=%d AND data_type='TEMP' AND timestamp=%d LIMIT 1",
+                                       $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_pool WHERE sender=%s AND subject='%s' AND payment_id=%s AND data_type='TEMP' AND timestamp=%s LIMIT 1",
                                        array(
                                                $GLOBALS['userid'],
                                                $_POST['subject'],
@@ -446,7 +436,7 @@ array(
        // Not enougth receivers selected
        $URL = URL."/modules.php?module=login&amp;what=order&amp;msg=".CODE_MORE_RECEIVERS1;
 }
- elseif (($ALLOWED == 0) && ($_CONFIG['order_max'] == "ORDER"))
+ elseif (($ALLOWED == 0) && ($_CONFIG['order_max_full'] == "ORDER"))
 {
        // No more mail orders allowed
        LOAD_TEMPLATE("admin_settings_saved", false, MEMBER_ORDER_ALLOWED_EXHAUSTED);
@@ -482,10 +472,10 @@ array(
                                $CATS['name'][] = $cat;
 
                                // Select users in current category
-                               $result_uids = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_cats WHERE cat_id=%d AND userid != '%s' ORDER BY userid",
+                               $result_uids = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_cats WHERE cat_id=%s AND userid != '%s' ORDER BY userid",
                                 array(bigintval($id), $GLOBALS['userid']), __FILE__, __LINE__);
 
-                               $uid_cnt = "0";
+                               $uid_cnt = 0;
                                while (list($ucat) = SQL_FETCHROW($result_uids))
                                {
                                        // Check for holiday system
@@ -496,8 +486,8 @@ array(
                                                $result_holiday = SQL_QUERY_ESC("SELECT DISTINCT d.userid FROM "._MYSQL_PREFIX."_user_data AS d
 LEFT JOIN "._MYSQL_PREFIX."_user_holidays AS h
 ON d.userid=h.userid
-WHERE d.userid=%d AND d.receive_mails > 0 AND d.status='CONFIRMED' AND d.holiday_active='Y'
-AND h.holiday_start < ".time()." AND h.holiday_end > ".time()."
+WHERE d.userid=%s AND d.receive_mails > 0 AND d.status='CONFIRMED' AND d.holiday_active='Y'
+AND h.holiday_start < UNIX_TIMESTAMP() AND h.holiday_end > UNIX_TIMESTAMP()
 LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                                if (SQL_NUMROWS($result_holiday) == 1)
                                                {
@@ -512,7 +502,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                        if (!$HOL_ACTIVE)
                                        {
                                                // Check if the user want's to receive mails?
-                                               $result_ver = SQL_QUERY_ESC("SELECT zip FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d".$HTML." AND receive_mails > 0 AND status='CONFIRMED' LIMIT 1",
+                                               $result_ver = SQL_QUERY_ESC("SELECT zip FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s".$HTML." AND receive_mails > 0 AND status='CONFIRMED' LIMIT 1",
                                                 array(bigintval($ucat)), __FILE__, __LINE__);
 
                                                if ((SQL_NUMROWS($result_ver) == 1) && (!empty($_POST['zip'])) && ($_CONFIG['order_multi_page'] == "Y"))
@@ -552,7 +542,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                switch ($_GET['msg'])
                                {
                                case CODE_URL_TLOCK:
-                                       $result = SQL_QUERY_ESC("SELECT timestamp FROM "._MYSQL_PREFIX."_pool WHERE id=%d LIMIT 1",
+                                       $result = SQL_QUERY_ESC("SELECT timestamp FROM "._MYSQL_PREFIX."_pool WHERE id=%s LIMIT 1",
                                         array(bigintval($_GET['id'])), __FILE__, __LINE__);
 
                                        // Load timestamp from last order
@@ -573,7 +563,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
 
                                        // Finally contruct the message
                                        $MSG = MEMBER_URL_TIME_LOCK."<br />".CONFIG_URL_TLOCK." ".$STD." ".
-                                               HOURS.", ".$MIN." ".MINS." "._AND." ".$SEC." ".SECS."<br />".
+                                               _HOURS.", ".$MIN." "._MINUTES." "._AND." ".$SEC." "._SECONDS."<br />".
                                                MEMBER_LAST_TLOCK.": ".$LORDER;
                                        break;
 
@@ -648,7 +638,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                $TOTAL = TRANSLATE_COMMA($TOTAL);
 
                                // Check how many mail orders he has placed today and how many he's allowed to send
-                               switch ($_CONFIG['order_max'])
+                               switch ($_CONFIG['order_max_full'])
                                {
                                case "MAX": // He is allowed to send as much as possible
                                        define('ORDER_MAX_VALUE', ORDER_ALLOED_MAX);
@@ -666,7 +656,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                $OLD_ORDER = false; $subject = ""; $text = ""; $target = "";
 
                                // Check if we already have an order placed and make it editable
-                               $result = SQL_QUERY_ESC("SELECT subject, text, payment_id, timestamp, url, target_send, cat_id, zip FROM "._MYSQL_PREFIX."_pool WHERE sender=%d AND data_type='TEMP' LIMIT 1",
+                               $result = SQL_QUERY_ESC("SELECT subject, text, payment_id, timestamp, url, target_send, cat_id, zip FROM "._MYSQL_PREFIX."_pool WHERE sender=%s AND data_type='TEMP' LIMIT 1",
                                 array($GLOBALS['userid']), __FILE__, __LINE__);
 
                                if (SQL_NUMROWS($result) == 1)
@@ -692,7 +682,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                {
                                        // Pre-output categories
                                        $CAT = "";
-                                       foreach ($CATS['id'] as $key=>$value)
+                                       foreach ($CATS['id'] as $key => $value)
                                        {
                                                $CAT .= "      <OPTION value=\"".$value."\"";
                                                if (($OLD_ORDER) && ($cat == $value)) $CAT .= " selected=\"selected\"";
@@ -700,7 +690,7 @@ LIMIT 1", array(bigintval($ucat)), __FILE__, __LINE__);
                                        }
                                        // Mail type
                                        $type = "";
-                                       foreach ($typeS as $key=>$value)
+                                       foreach ($typeS as $key => $value)
                                        {
                                                $P = TRANSLATE_COMMA($typeS[$key][1]);
                                                if (is_array($value))