|
|
|
|
@@ -154,7 +154,7 @@
|
|
|
|
|
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)
|
|
|
|
|
|
|
|
|
|
/proc/browse_messages(type, target_ckey, index, linkless = 0)
|
|
|
|
|
/proc/browse_messages(type, target_ckey, index, linkless = 0, filter)
|
|
|
|
|
if(!dbcon.IsConnected())
|
|
|
|
|
usr << "<span class='danger'>Failed to establish database connection.</span>"
|
|
|
|
|
return
|
|
|
|
|
@@ -176,7 +176,11 @@
|
|
|
|
|
output += "<a href='?_src_=holder;addmemo=1'>\[Add memo\]</a></center>"
|
|
|
|
|
else if(type == "watchlist entry")
|
|
|
|
|
output += "<h2><center>Watchlist entries</h2>"
|
|
|
|
|
output += "<a href='?_src_=holder;addwatchempty=1'>\[Add watchlist entry\]</a></center>"
|
|
|
|
|
output += "<a href='?_src_=holder;addwatchempty=1'>\[Add watchlist entry\]</a>"
|
|
|
|
|
if(filter)
|
|
|
|
|
output += "|<a href='?_src_=holder;showwatch=1'>\[Unfilter clients\]</a></center>"
|
|
|
|
|
else
|
|
|
|
|
output += "|<a href='?_src_=holder;showwatchfilter=1'>\[Filter offline clients\]</a></center>"
|
|
|
|
|
output += ruler
|
|
|
|
|
var/DBQuery/query_get_type_messages = dbcon.NewQuery("SELECT id, targetckey, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type = '[type]'")
|
|
|
|
|
if(!query_get_type_messages.Execute())
|
|
|
|
|
@@ -186,6 +190,8 @@
|
|
|
|
|
while(query_get_type_messages.NextRow())
|
|
|
|
|
var/id = query_get_type_messages.item[1]
|
|
|
|
|
var/t_ckey = query_get_type_messages.item[2]
|
|
|
|
|
if(type == "watchlist entry" && filter && !(t_ckey in directory))
|
|
|
|
|
continue
|
|
|
|
|
var/admin_ckey = query_get_type_messages.item[3]
|
|
|
|
|
var/text = query_get_type_messages.item[4]
|
|
|
|
|
var/timestamp = query_get_type_messages.item[5]
|
|
|
|
|
@@ -229,13 +235,20 @@
|
|
|
|
|
data += " <a href='?_src_=holder;deletemessage=[id]'>\[Delete\]</a>"
|
|
|
|
|
if(type == "note")
|
|
|
|
|
data += " <a href='?_src_=holder;secretmessage=[id]'>[secret ? "<b>\[Secret\]</b>" : "\[Not secret\]"]</a>"
|
|
|
|
|
data += " <a href='?_src_=holder;editmessage=[id]'>\[Edit\]</a>"
|
|
|
|
|
if(type == "message sent")
|
|
|
|
|
data += " <font size='2'>Message has been sent</font>"
|
|
|
|
|
if(editor_ckey)
|
|
|
|
|
data += "|"
|
|
|
|
|
else
|
|
|
|
|
data += " <a href='?_src_=holder;editmessage=[id]'>\[Edit\]</a>"
|
|
|
|
|
if(editor_ckey)
|
|
|
|
|
data += " <font size='2'>Last edit by [editor_ckey] <a href='?_src_=holder;messageedits=[id]'>(Click here to see edit log)</a></font>"
|
|
|
|
|
data += "<br>[text]<hr style='background:#000000; border:0; height:1px'>"
|
|
|
|
|
switch(type)
|
|
|
|
|
if("message")
|
|
|
|
|
messagedata += data
|
|
|
|
|
if("message sent")
|
|
|
|
|
messagedata += data
|
|
|
|
|
if("watchlist entry")
|
|
|
|
|
watchdata += data
|
|
|
|
|
if("note")
|
|
|
|
|
@@ -303,7 +316,7 @@ proc/get_message_output(type, target_ckey)
|
|
|
|
|
log_game("SQL ERROR obtaining id, adminckey, text, timestamp, lasteditor from messages table. Error : \[[err]\]\n")
|
|
|
|
|
return
|
|
|
|
|
while(query_get_message_output.NextRow())
|
|
|
|
|
var/id = query_get_message_output.item[1]
|
|
|
|
|
var/message_id = query_get_message_output.item[1]
|
|
|
|
|
var/admin_ckey = query_get_message_output.item[2]
|
|
|
|
|
var/text = query_get_message_output.item[3]
|
|
|
|
|
var/timestamp = query_get_message_output.item[4]
|
|
|
|
|
@@ -311,15 +324,19 @@ proc/get_message_output(type, target_ckey)
|
|
|
|
|
switch(type)
|
|
|
|
|
if("message")
|
|
|
|
|
output += "<font color='red' size='3'><b>Admin message left by <span class='prefix'>[admin_ckey]</span> on [timestamp]</b></font>"
|
|
|
|
|
output += "<br><font color='red'>[text]</font>"
|
|
|
|
|
delete_message(id, 0)
|
|
|
|
|
output += "<br><font color='red'>[text]</font><br>"
|
|
|
|
|
var/DBQuery/query_message_read = dbcon.NewQuery("UPDATE [format_table_name("messages")] SET type = 'message sent' WHERE id = [message_id]")
|
|
|
|
|
if(!query_message_read.Execute())
|
|
|
|
|
var/err = query_message_read.ErrorMsg()
|
|
|
|
|
log_game("SQL ERROR updating message type. Error : \[[err]\]\n")
|
|
|
|
|
return
|
|
|
|
|
if("watchlist entry")
|
|
|
|
|
message_admins("<font color='red'><B>Notice: </B></font><font color='blue'>[key_name_admin(target_ckey)] is on the watchlist and has just connected - Reason: [text]</font>")
|
|
|
|
|
send2irc_adminless_only("Watchlist", "[key_name(target_ckey)] is on the watchlist and has just connected - Reason: [text]")
|
|
|
|
|
if("memo")
|
|
|
|
|
output += "<span class='memo'>Memo by <span class='prefix'>[admin_ckey]</span> on [timestamp]"
|
|
|
|
|
if(editor_ckey)
|
|
|
|
|
output += "<br><span class='memoedit'>Last edit by [editor_ckey] <A href='?_src_=holder;messageedits=[id]'>(Click here to see edit log)</A></span>"
|
|
|
|
|
output += "<br><span class='memoedit'>Last edit by [editor_ckey] <A href='?_src_=holder;messageedits=[message_id]'>(Click here to see edit log)</A></span>"
|
|
|
|
|
output += "<br>[text]</span><br>"
|
|
|
|
|
return output
|
|
|
|
|
|
|
|
|
|
@@ -368,4 +385,4 @@ this proc can take several minutes to execute fully if converting and cause DD t
|
|
|
|
|
world << "Deleting NOTESFILE"
|
|
|
|
|
fdel(NOTESFILE)
|
|
|
|
|
world << "Finished mass note conversion, remember to turn off AUTOCONVERT_NOTES"*/
|
|
|
|
|
#undef NOTESFILE
|
|
|
|
|
#undef NOTESFILE
|
|
|
|
|
|