diff options
-rw-r--r-- | include/expire.php | 2 | ||||
-rw-r--r-- | mod/filer.php | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/include/expire.php b/include/expire.php index f1002b890..2d94d64c0 100644 --- a/include/expire.php +++ b/include/expire.php @@ -9,7 +9,7 @@ function expire_run($argv, $argc){ // physically remove anything that has been deleted for more than two months - $r = q("delete from item where item_flags & %d and changed < UTC_TIMESTAMP() - INTERVAL 60 DAY", + $r = q("delete from item where ( item_flags & %d ) and changed < UTC_TIMESTAMP() - INTERVAL 60 DAY", intval(ITEM_DELETED) ); diff --git a/mod/filer.php b/mod/filer.php index adc6245e1..3340fc999 100644 --- a/mod/filer.php +++ b/mod/filer.php @@ -19,6 +19,20 @@ function filer_content(&$a) { if($item_id && strlen($term)){ // file item store_item_tag(local_user(),$item_id,TERM_OBJ_POST,TERM_FILE,$term,''); + + // protect the entire conversation from periodic expiration + + $r = q("select parent from item where id = %d and uid = %d limit 1", + intval($item_id), + intval(local_user()) + ); + if($r) { + $x = q("update item set item_flags = ( item_flags | %d ) where id = %d and uid = %d limit 1", + intval(ITEM_RETAINED), + intval($r[0]['parent']), + intval(local_user()) + ); + } } else { $filetags = array(); |