Chatroom lines are deleted after MAX_CHATROOM_HOURS or the chat becomes slow to load

This commit is contained in:
Paolo Tacconi 2014-07-29 09:06:04 +02:00
parent 7b8edeaead
commit 87f5544f1f
2 changed files with 20 additions and 0 deletions

View File

@ -358,6 +358,11 @@ define ( 'MAX_LIKERS', 10);
define ( 'ZCURL_TIMEOUT' , (-1));
/**
* Hours before chat lines are deleted
*/
define ( 'MAX_CHATROOM_HOURS' , 36);
/**
* email notification options

View File

@ -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,18 @@ 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) {
$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;
}