]> git.mxchange.org Git - mailer.git/blobdiff - inc/mysql-manager.php
More fixes for cache, extension and filter sub-system
[mailer.git] / inc / mysql-manager.php
index 8bb5e31797c7a3678f12e729cec427edfdcea8a2..691aa63047e5e7c4a1d6cff98cb81b91895a1ef3 100644 (file)
@@ -571,7 +571,7 @@ function ADD_MAX_RECEIVE_LIST($MODE, $default="", $return=false)
 function SEARCH_EMAIL_USERTAB($email)
 {
        $ret = false;
-       $result = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE email LIKE '{PER}%s{PER}' LIMIT 1", array($email), __FILE__, __LINE__);
+       $result = SQL_QUERY_ESC("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE email LIKE '{PER}%s{PER}' LIMIT 1", array($email), __FILE__, __LINE__);
        if (SQL_NUMROWS($result) == 1) $ret = true;
        SQL_FREERESULT($result);
        return $ret;
@@ -614,7 +614,7 @@ function IS_MEMBER()
        if ((!empty($GLOBALS['userid'])) && (isSessionVariableSet('u_hash')) && (isSessionVariableSet('lifetime')) && (defined('COOKIE_PATH')))
        {
                // Cookies are set with values, but are they valid?
-               $result = SQL_QUERY_ESC("SELECT password, status, last_module, last_online FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
+               $result = SQL_QUERY_ESC("SELECT password, status, last_module, last_online FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1",
                 array($GLOBALS['userid']), __FILE__, __LINE__);
                if (SQL_NUMROWS($result) == 1)
                {
@@ -681,7 +681,7 @@ function UPDATE_LOGIN_DATA () {
        $newl = time() + bigintval(get_session('lifetime'));
 
        // Load last module and last online time
-       $result = SQL_QUERY_ESC("SELECT last_module, last_online FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+       $result = SQL_QUERY_ESC("SELECT last_module, last_online FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
        if (SQL_NUMROWS($result) == 1) {
                // Load last module and online time
                list($mod, $onl) = SQL_FETCHROW($result);
@@ -704,7 +704,7 @@ function UPDATE_LOGIN_DATA () {
                        } // END - if
 
                        // Update last module / online time
-                       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET last_module='%s', last_online=UNIX_TIMESTAMP(), REMOTE_ADDR='%s' WHERE userid=%s LIMIT 1",
+                       $result = SQL_QUERY_ESC("UPDATE `"._MYSQL_PREFIX."_user_data` SET last_module='%s', last_online=UNIX_TIMESTAMP(), REMOTE_ADDR='%s' WHERE userid=%s LIMIT 1",
                         array($GLOBALS['what'], GET_REMOTE_ADDR(), $GLOBALS['userid']), __FILE__, __LINE__);
                }
        }  else {
@@ -793,7 +793,7 @@ function SEND_MODE_MAILS($mod, $modes)
        global $_CONFIG, $DATA;
 
        // Load hash
-       $result_main = SQL_QUERY_ESC("SELECT password FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s AND status='CONFIRMED' LIMIT 1",
+       $result_main = SQL_QUERY_ESC("SELECT password FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s AND status='CONFIRMED' LIMIT 1",
                array($GLOBALS['userid']), __FILE__, __LINE__);
        if (SQL_NUMROWS($result_main) == 1) {
                // Load hash from database
@@ -806,7 +806,7 @@ function SEND_MODE_MAILS($mod, $modes)
                $hash = generatePassString($hashDB);
                if (($hash == get_session('u_hash')) || ($_POST['pass1'] == $_POST['pass2'])) {
                        // Load user's data
-                       $result = SQL_QUERY_ESC("SELECT gender, surname, family, street_nr, country, zip, city, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s AND password='%s' LIMIT 1",
+                       $result = SQL_QUERY_ESC("SELECT gender, surname, family, street_nr, country, zip, city, email FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s AND password='%s' LIMIT 1",
                                array($GLOBALS['userid'], $hashDB), __FILE__, __LINE__);
                        if (SQL_NUMROWS($result) == 1) {
                                // Load the data
@@ -945,7 +945,7 @@ function GET_ACTION ($MODE, &$wht)
                // Get it directly from URL
                return $GLOBALS['action'];
        }
-       //* DEBUG: */ echo __LINE__."*".$ret."*<br />\n";
+       //* DEBUG: */ echo __FUNCTION__."(<font color=\"#0000aa\">".__LINE__."</font>): ret=".$ret."<br />\n";
 
        if (MODULE_HAS_MENU($MODE)) {
                // Rewriting modules to menu
@@ -959,7 +959,7 @@ function GET_ACTION ($MODE, &$wht)
 
                // Load from database
                $result = SQL_QUERY_ESC("SELECT action FROM "._MYSQL_PREFIX."_%s_menu WHERE what='%s' LIMIT 1",
-                array($MODE, $wht), __FILE__, __LINE__);
+                       array($MODE, $wht), __FILE__, __LINE__);
                if (SQL_NUMROWS($result) == 1) {
                        // Load action value and pray that this one is the right you want... ;-)
                        list($ret) = SQL_FETCHROW($result);
@@ -1200,7 +1200,7 @@ function ADD_POINTS_REFSYSTEM ($subject, $uid, $points, $send_notify=false, $rid
        if ($locked) $data = "locked_points";
 
        // Check user account
-       $result_user = SQL_QUERY_ESC("SELECT refid, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s AND status='CONFIRMED' LIMIT 1",
+       $result_user = SQL_QUERY_ESC("SELECT refid, email FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s AND status='CONFIRMED' LIMIT 1",
         array(bigintval($uid)), __FILE__, __LINE__);
 
        //* DEBUG: */ print __FUNCTION__."(<font color=\"#0000aa\">".__LINE__."</font>):uid={$uid},numRows=".SQL_NUMROWS($result_user).",points={$points}<br />\n";
@@ -1311,7 +1311,7 @@ function UPDATE_REF_COUNTER ($uid) {
        } // END - if
 
        // Check for his referal
-       $result = SQL_QUERY_ESC("SELECT refid FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
+       $result = SQL_QUERY_ESC("SELECT refid FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1",
                array(bigintval($uid)), __FILE__, __LINE__);
 
        // Load refid
@@ -1446,7 +1446,19 @@ function GET_ADMIN_ID ($login) {
        }
        return $ret;
 }
-//
+
+// "Getter" for current admin id
+function GET_CURRENT_ADMIN_ID () {
+       // Get the admin login from session
+       $adminLogin = get_session('admin_login');
+
+       // "Solve" it into an id
+       $adminId = GET_ADMIN_ID($adminLogin);
+
+       // Secure and return it
+       return bigintval($adminId);
+}
+
 // Get password hash from administrator's login name
 function GET_ADMIN_HASH ($aid)
 {
@@ -1607,7 +1619,7 @@ function ADD_OPTION_LINES($table, $id, $name, $default="",$special="",$where="")
 // Activate exchange (DEPERECATED???)
 function activateExchange() {
        global $_CONFIG;
-       $result = SQL_QUERY("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE status='CONFIRMED' AND max_mails > 0", __FILE__, __LINE__);
+       $result = SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE status='CONFIRMED' AND max_mails > 0", __FILE__, __LINE__);
        if (SQL_NUMROWS($result) >= $_CONFIG['activate_xchange'])
        {
                // Free memory
@@ -1616,8 +1628,8 @@ function activateExchange() {
                // Activate System
                $SQLs = array(
                        "UPDATE "._MYSQL_PREFIX."_mod_reg SET locked='N', hidden='N', mem_only='Y' WHERE module='order' LIMIT 1",
-                       "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='N' WHERE what='order' OR what='unconfirmed' LIMIT 2",
-                       "UPDATE "._MYSQL_PREFIX."_config SET activate_xchange='0' WHERE config=0 LIMIT 1"
+                       "UPDATE `"._MYSQL_PREFIX."_member_menu` SET visible='Y', locked='N' WHERE what='order' OR what='unconfirmed' LIMIT 2",
+                       "UPDATE `"._MYSQL_PREFIX."_config` SET activate_xchange='0' WHERE config=0 LIMIT 1"
                );
 
                // Run SQLs
@@ -1634,7 +1646,7 @@ function DELETE_USER_ACCOUNT($uid, $reason)
        $points = 0;
        $result = SQL_QUERY_ESC("SELECT (SUM(p.points) - d.used_points) AS points
 FROM "._MYSQL_PREFIX."_user_points AS p
-LEFT JOIN "._MYSQL_PREFIX."_user_data AS d
+LEFT JOIN `"._MYSQL_PREFIX."_user_data` AS d
 ON p.userid=d.userid
 WHERE p.userid=%s", array(bigintval($uid)), __FILE__, __LINE__);
        if (SQL_NUMROWS($result) == 1) {
@@ -1670,7 +1682,7 @@ WHERE p.userid=%s", array(bigintval($uid)), __FILE__, __LINE__);
        SEND_EMAIL($uid, ADMIN_DEL_ACCOUNT, $msg);
 
        // Ok, delete the account!
-       $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__);
+       $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__);
 }
 //
 function META_DESCRIPTION ($mod, $wht) {
@@ -1700,7 +1712,7 @@ function ADD_JACKPOT($points) {
 
                // Update points
                $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_jackpot SET points=points+%s WHERE ok='ok' LIMIT 1",
-                array($points), __FILE__, __LINE__);
+                       array($points), __FILE__, __LINE__);
        }
 }
 //
@@ -1750,7 +1762,7 @@ function LOAD_CONFIG ($no="0") {
                } // END - if
        } elseif ((!EXT_IS_ACTIVE("cache")) || (!isset($cacheArray['config'][$no]))) {
                // Load config from DB
-               $result_config = SQL_QUERY_ESC("SELECT * FROM "._MYSQL_PREFIX."_config WHERE config=%d LIMIT 1",
+               $result_config = SQL_QUERY_ESC("SELECT * FROM `"._MYSQL_PREFIX."_config` WHERE config=%d LIMIT 1",
                        array(bigintval($no)), __FILE__, __LINE__);
 
                // Get config from database
@@ -1792,8 +1804,9 @@ function GET_WHAT($modCheck) {
        // Return what value
        return $wht;
 }
-//
-function MODULE_HAS_MENU($mod, $forceDb = false) {
+
+// Checks if the module has a menu
+function MODULE_HAS_MENU ($mod, $forceDb = false) {
        global $cacheArray, $_CONFIG;
 
        // All is false by default
@@ -1809,12 +1822,18 @@ function MODULE_HAS_MENU($mod, $forceDb = false) {
                        // Check cache and count hit
                        $ret = ($cacheArray['extensions']['ext_menu'][$mod] == "Y");
                        if (isset($_CONFIG['cache_hits'])) { $_CONFIG['cache_hits']++; } else { $_CONFIG['cache_hits'] = 1; }
+               } elseif ((IS_ADMIN()) && ($mod == "admin")) {
+                       // Admin module has always a menu!
+                       $ret = true;
                }
        } elseif ((GET_EXT_VERSION("sql_patches") >= "0.3.6") && ((!EXT_IS_ACTIVE("cache")) || ($forceDb === true))) {
                // Check database for entry
                $result = SQL_QUERY_ESC("SELECT has_menu FROM "._MYSQL_PREFIX."_mod_reg WHERE module='%s' LIMIT 1",
-                array($mod), __FILE__, __LINE__);
+                       array($mod), __FILE__, __LINE__);
+
+               // Entry found?
                if (SQL_NUMROWS($result) == 1) {
+                       // Load "has_menu" column
                        list($has_menu) = SQL_FETCHROW($result);
 
                        // Fake cache... ;-)
@@ -1832,13 +1851,14 @@ function MODULE_HAS_MENU($mod, $forceDb = false) {
        }
 
        // Return status
+       //* DEBUG: */ var_dump($ret);
        return $ret;
 }
 
 // Subtract points from database and mediadata cache
 function SUB_POINTS ($subject, $uid, $points) {
        // Add points to used points
-       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET `used_points`=`used_points`+%s WHERE userid=%s LIMIT 1",
+       $result = SQL_QUERY_ESC("UPDATE `"._MYSQL_PREFIX."_user_data` SET `used_points`=`used_points`+%s WHERE userid=%s LIMIT 1",
         array($points, bigintval($uid)), __FILE__, __LINE__);
 
        // Insert booking record
@@ -1899,7 +1919,7 @@ function UPDATE_CONFIG ($entries, $values, $updateMode="") {
 
        // Run database update
        //* DEBUG: */ DEBUG_LOG(__FUNCTION__, __LINE__, "entries={$entries}");
-       SQL_QUERY("UPDATE "._MYSQL_PREFIX."_config SET ".$entries." WHERE config=0 LIMIT 1", __FILE__, __LINE__);
+       SQL_QUERY("UPDATE `"._MYSQL_PREFIX."_config` SET ".$entries." WHERE config=0 LIMIT 1", __FILE__, __LINE__);
 
        // Get affected rows
        $affectedRows = SQL_AFFECTEDROWS();
@@ -2103,11 +2123,11 @@ function GENERATE_RECEIVER_LIST ($cat, $receiver, $mode="") {
 
        if ((EXT_IS_ACTIVE("html_mail")) && ($mode == "html")) {
                // Only include HTML receivers
-               $result = SQL_QUERY_ESC("SELECT d.userid FROM "._MYSQL_PREFIX."_user_data AS d ".$CAT_TABS." WHERE d.status='CONFIRMED' AND d.html='Y'".$CAT_WHERE." ORDER BY d.%s %s LIMIT %s",
+               $result = SQL_QUERY_ESC("SELECT d.userid FROM `"._MYSQL_PREFIX."_user_data` AS d ".$CAT_TABS." WHERE d.status='CONFIRMED' AND d.html='Y'".$CAT_WHERE." ORDER BY d.%s %s LIMIT %s",
                 array($cat, $_CONFIG['order_select'], $_CONFIG['order_mode'], $receiver), __FILE__, __LINE__);
        } else {
                // Include all
-               $result = SQL_QUERY_ESC("SELECT d.userid FROM "._MYSQL_PREFIX."_user_data AS d ".$CAT_TABS." WHERE d.status='CONFIRMED'".$CAT_WHERE." ORDER BY d.%s %s LIMIT %s",
+               $result = SQL_QUERY_ESC("SELECT d.userid FROM `"._MYSQL_PREFIX."_user_data` AS d ".$CAT_TABS." WHERE d.status='CONFIRMED'".$CAT_WHERE." ORDER BY d.%s %s LIMIT %s",
                 array($cat, $_CONFIG['order_select'], $_CONFIG['order_mode'], $receiver), __FILE__, __LINE__);
        }
 
@@ -2204,7 +2224,7 @@ function GET_USER_REF_POINTS ($uid, $level) {
 FROM "._MYSQL_PREFIX."_user_refs AS ur
 LEFT JOIN "._MYSQL_PREFIX."_user_points AS up
 ON ur.refid=up.userid AND ur.level=0
-LEFT JOIN "._MYSQL_PREFIX."_user_data AS ud
+LEFT JOIN `"._MYSQL_PREFIX."_user_data` AS ud
 ON ur.refid=ud.userid
 WHERE ur.userid=%s AND ur.level=%s
 ORDER BY ur.refid ASC",