aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/chat.php16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/chat.php b/include/chat.php
index 4c79319ee..9d2341dfa 100644
--- a/include/chat.php
+++ b/include/chat.php
@@ -152,6 +152,8 @@ function chatroom_enter($observer_xchan,$room_id,$status,$client) {
dbesc($status),
dbesc($client)
);
+
+ chatroom_flush($room_id,$xchan);
return $r;
}
@@ -224,5 +226,19 @@ function chat_message($uid,$room_id,$xchan,$text) {
);
$ret['success'] = true;
+ chatroom_flush($room_id,$xchan);
return $ret;
}
+
+/**
+ * Reduces the number of lines shown in chat by removing those older than MAX_CHATROOM_HOURS
+ */
+
+function chatroom_flush($room_id,$xchan) {
+ $date_limit = date('Y-m-d H:i:s', time() - 3600 * MAX_CHATROOM_HOURS);
+ $d = q("delete from chat where chat_room = %d and chat_xchan = '%s' and created < '%s'",
+ intval($room_id),
+ dbesc($xchan),
+ datetime_convert('','', $date_limit));
+ return true;
+}