From c03fb31b1ce3a4c0e1764c54433200a6aa298baf Mon Sep 17 00:00:00 2001
From: LetterJay [timestamp] | [server] | [admin_ckey]"
if(!linkless)
data += " \[Delete\]"
if(type == "note")
@@ -225,13 +239,8 @@
else
data += " \[Edit\]"
if(editor_ckey)
-<<<<<<< HEAD
- data += " Last edit by [editor_ckey] (Click here to see edit log)"
- data += "
[old_text]
to
[new_text]
")
- var/datum/DBQuery/query_edit_message = SSdbcore.NewQuery("UPDATE [format_table_name("messages")] SET text = '[new_text]', lasteditor = '[editor_ckey]', edits = CONCAT(IFNULL(edits,''),'[edit_text]') WHERE id = [message_id]")
+ var/datum/DBQuery/query_edit_message = SSdbcore.NewQuery("UPDATE [format_table_name("messages")] SET text = '[new_text]', lasteditor = '[editor_ckey]', edits = CONCAT(IFNULL(edits,''),'[edit_text]') WHERE id = [message_id] AND deleted = 0")
if(!query_edit_message.warn_execute())
return
log_admin_private("[key_name(usr)] has edited a [type] [(type == "note" || type == "message" || type == "watchlist entry") ? " for [target_ckey]" : ""] made by [admin_ckey] from [old_text] to [new_text]")
@@ -115,7 +115,7 @@
if(browse)
browse_messages("[type]")
else
- browse_messages(target_ckey = target_ckey)
+ browse_messages(target_ckey = target_ckey, agegate = TRUE)
/proc/toggle_message_secrecy(message_id)
if(!SSdbcore.Connect())
@@ -124,7 +124,7 @@
message_id = text2num(message_id)
if(!message_id)
return
- var/datum/DBQuery/query_find_message_secret = SSdbcore.NewQuery("SELECT type, targetckey, adminckey, secret FROM [format_table_name("messages")] WHERE id = [message_id]")
+ var/datum/DBQuery/query_find_message_secret = SSdbcore.NewQuery("SELECT type, targetckey, adminckey, secret FROM [format_table_name("messages")] WHERE id = [message_id] AND deleted = 0")
if(!query_find_message_secret.warn_execute())
return
if(query_find_message_secret.NextRow())
@@ -139,9 +139,9 @@
return
log_admin_private("[key_name(usr)] has toggled [target_ckey]'s [type] made by [admin_ckey] to [secret ? "not secret" : "secret"]")
message_admins("[key_name_admin(usr)] has toggled [target_ckey]'s [type] made by [admin_ckey] to [secret ? "not secret" : "secret"]")
- browse_messages(target_ckey = target_ckey)
+ browse_messages(target_ckey = target_ckey, agegate = TRUE)
-/proc/browse_messages(type, target_ckey, index, linkless = 0, filter)
+/proc/browse_messages(type, target_ckey, index, linkless = FALSE, filter, agegate = FALSE)
if(!SSdbcore.Connect())
to_chat(usr, "Failed to establish database connection.")
return
@@ -169,7 +169,7 @@
else
output += "|\[Filter offline clients\]"
output += ruler
- var/datum/DBQuery/query_get_type_messages = SSdbcore.NewQuery("SELECT id, targetckey, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type = '[type]'")
+ var/datum/DBQuery/query_get_type_messages = SSdbcore.NewQuery("SELECT id, targetckey, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type = '[type]' AND deleted = 0")
if(!query_get_type_messages.warn_execute())
return
while(query_get_type_messages.NextRow())
@@ -193,12 +193,13 @@
output += "
[text]
"
if(target_ckey)
target_ckey = sanitizeSQL(target_ckey)
- var/datum/DBQuery/query_get_messages = SSdbcore.NewQuery("SELECT type, secret, id, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type <> 'memo' AND targetckey = '[target_ckey]' ORDER BY timestamp DESC")
+ var/datum/DBQuery/query_get_messages = SSdbcore.NewQuery("SELECT type, secret, id, adminckey, text, timestamp, server, lasteditor, DATEDIFF(NOW(), timestamp) AS `age` FROM [format_table_name("messages")] WHERE type <> 'memo' AND targetckey = '[target_ckey]' AND deleted = 0 ORDER BY timestamp DESC")
if(!query_get_messages.warn_execute())
return
var/messagedata
var/watchdata
var/notedata
+ var/skipped = 0
while(query_get_messages.NextRow())
type = query_get_messages.item[1]
if(type == "memo")
@@ -212,8 +213,21 @@
var/timestamp = query_get_messages.item[6]
var/server = query_get_messages.item[7]
var/editor_ckey = query_get_messages.item[8]
+ var/age = text2num(query_get_messages.item[9])
+ var/alphatext = ""
+ if (agegate && type == "note" && isnum(config.note_stale_days) && isnum(config.note_fresh_days) && config.note_stale_days > config.note_fresh_days)
+ var/alpha = Clamp(100 - (age - config.note_fresh_days) * (85 / (config.note_stale_days - config.note_fresh_days)), 15, 100)
+ if (alpha < 100)
+ if (alpha <= 15)
+ if (skipped)
+ skipped++
+ continue
+ alpha = 10
+ skipped = TRUE
+ alphatext = "filter: alpha(opacity=[alpha]); opacity: [alpha/100];"
+
var/data
- data += "[timestamp] | [server] | [admin_ckey]"
+ data += "
[text]
"
-=======
data += " Last edit by [editor_ckey] (Click here to see edit log)"
data += "
[text]