]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/user_functions.php
Code moved because it depends on tables created by ext-user
[mailer.git] / inc / libs / user_functions.php
index ef8c29fa9672373c42f9825beeecfbc2be4abb1e..547148947cb461456ef3a10108040a33e2befbef 100644 (file)
@@ -464,5 +464,70 @@ function doNewUserPassword ($email, $userid) {
        return $errorCode;
 }
 
+// Get timestamp for given stats type and data
+function getTimestampFromUserStats ($statsType, $statsData, $userid = '0') {
+       // Default timestamp is zero
+       $data['inserted'] = '0';
+
+       // User id set?
+       if ((isMemberIdSet()) && ($userid == '0')) {
+               $userid = getMemberId();
+       } // END - if
+
+       // Is the extension installed and updated?
+       if ((!isExtensionActive('sql_patches')) || (isExtensionOlder('sql_patches', '0.5.6'))) {
+               // Return zero here
+               return $data['inserted'];
+       } // END - if
+
+       // Try to find the entry
+       $result = SQL_QUERY_ESC("SELECT
+       UNIX_TIMESTAMP(`inserted`) AS inserted
+FROM
+       `{?_MYSQL_PREFIX?}_user_stats_data`
+WHERE
+       `userid`=%s AND
+       `stats_type`='%s' AND
+       `stats_data`='%s'
+LIMIT 1",
+               array(
+                       bigintval($userid),
+                       $statsType,
+                       $statsData
+               ), __FUNCTION__, __LINE__);
+
+       // Is the entry there?
+       if (SQL_NUMROWS($result) == 1) {
+               // Get this stamp
+               $data = SQL_FETCHARRAY($result);
+       } // END - if
+
+       // Free result
+       SQL_FREERESULT($result);
+
+       // Return stamp
+       return $data['inserted'];
+}
+
+// Inserts user stats
+function insertUserStatsRecord ($userid, $statsType, $statsData) {
+       // Is the extension installed and updated?
+       if ((!isExtensionActive('sql_patches')) || (isExtensionOlder('sql_patches', '0.5.6'))) {
+               // Return zero here
+               return false;
+       } // END - if
+
+       // Does it exist?
+       if ((!getTimestampFromUserStats($statsType, $statsData, $userid)) && (!is_array($statsData))) {
+               // Then insert it!
+               SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_stats_data` (`userid`,`stats_type`,`stats_data`) VALUES (%s,'%s','%s')",
+                       array(bigintval($userid), $statsType, $statsData), __FUNCTION__, __LINE__);
+       } elseif (is_array($statsData)) {
+               // Invalid data!
+               logDebugMessage(__FUNCTION__, __LINE__, "userid={$userid},type={$statsType},data={".gettype($statsData).": Invalid statistics data type!");
+       }
+}
+
 // [EOF]
 ?>
+