aboutsummaryrefslogtreecommitdiffstats
path: root/include/functions_user.inc.php
diff options
context:
space:
mode:
authorplegall <plg@piwigo.org>2016-06-23 17:57:54 +0200
committerplegall <plg@piwigo.org>2016-06-23 17:57:54 +0200
commitba2b2ab574698eb70de3700953cfac6b1dfbe790 (patch)
tree040a358c01f75b7432897a57747a52a1fcd4996e /include/functions_user.inc.php
parent1c7b673e4c5083561ad2fc7fd7decef1dd1dee9e (diff)
parent3f1dbf19c5ef84ae048501f6270e74d7d9638a71 (diff)
Merge branch 'feature/478-last-visit'
Diffstat (limited to 'include/functions_user.inc.php')
-rw-r--r--include/functions_user.inc.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/include/functions_user.inc.php b/include/functions_user.inc.php
index de8f87c7f..6a910c511 100644
--- a/include/functions_user.inc.php
+++ b/include/functions_user.inc.php
@@ -1614,4 +1614,46 @@ UPDATE '.USER_AUTH_KEYS_TABLE.'
;';
pwg_query($query);
}
+
+/**
+ * Gets the last visit (datetime) of a user, based on history table
+ *
+ * @since 2.9
+ * @param int $user_id
+ * @param boolean $save_in_user_infos to store result in user_infos.last_visit
+ * @return string date & time of last visit
+ */
+function get_user_last_visit_from_history($user_id, $save_in_user_infos=false)
+{
+ $last_visit = null;
+
+ $query = '
+SELECT
+ date,
+ time
+FROM '.HISTORY_TABLE.'
+ WHERE user_id = '.$user_id.'
+ ORDER BY id DESC
+ LIMIT 1
+;';
+ $result = pwg_query($query);
+ while ($row = pwg_db_fetch_assoc($result))
+ {
+ $last_visit = $row['date'].' '.$row['time'];
+ }
+
+ if ($save_in_user_infos)
+ {
+ $query = '
+UPDATE '.USER_INFOS_TABLE.'
+ SET last_visit = '.(is_null($last_visit) ? 'NULL' : "'".$last_visit."'").',
+ last_visit_from_history = \'true\',
+ lastmodified = lastmodified
+ WHERE user_id = '.$user_id.'
+';
+ pwg_query($query);
+ }
+
+ return $last_visit;
+}
?>