From de7aec1db094d6b8a8f6d2dd96f3fa4975bd0d27 Mon Sep 17 00:00:00 2001
From: PowerfulBacon <26465327+PowerfulBacon@users.noreply.github.com>
Date: Tue, 11 Oct 2022 23:53:32 +0100
Subject: [PATCH] Improves the ahelp resolution message (#7376)
* Improves the ahelp resolution message
* Improves the messages, adds ones for rejection, IC and MHELP
* Fixes unterminated text
* Fixes unterminated text again
* Fixes another case of unterminated text
* Update adminhelp.dm
* Address meow reviews
---
code/modules/admin/verbs/adminhelp.dm | 37 +++++++++++--------
interface/stylesheet.dm | 10 +++++
.../tgui-panel/styles/goon/chat-dark.scss | 10 +++++
.../tgui-panel/styles/goon/chat-light.scss | 10 +++++
4 files changed, 52 insertions(+), 15 deletions(-)
diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm
index 4848fe344b8c0..8ae5626d62c0d 100644
--- a/code/modules/admin/verbs/adminhelp.dm
+++ b/code/modules/admin/verbs/adminhelp.dm
@@ -615,9 +615,15 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
discordsendmsg("ahelp", "Ticket #[id] closed by [key_name(usr, include_link=0)]")
//Mark open ticket as resolved/legitimate, returns ahelp verb
-/datum/admin_help/proc/Resolve(key_name = key_name_admin(usr), silent = FALSE)
+/datum/admin_help/proc/Resolve(key_name = key_name_admin(usr), silent = FALSE, status = "Resolved", message = null)
if(state > AHELP_ACTIVE)
return
+
+ var/final_output = "Adminhelp [status]
"
+ final_output += message || "An administrator has handled your ticket. If your ticket was a report, then the appropriate action has been taken where necessary.
\
+ Thank you for creating a ticket, the adminhelp verb will be returned to you shortly.
"
+ final_output += "Your ticket was handled by: [usr.ckey]"
+
RemoveActive()
state = AHELP_RESOLVED
GLOB.ahelp_tickets.ListInsert(src)
@@ -625,7 +631,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
addtimer(CALLBACK(initiator, /client/proc/giveadminhelpverb), 50)
AddInteraction("green", "Resolved by [key_name].")
- to_chat(initiator, "Your ticket has been resolved by an admin. The Adminhelp verb will be returned to you shortly.")
+ to_chat(initiator, final_output)
if(!silent)
SSblackbox.record_feedback("tally", "ahelp_stats", 1, "resolved")
var/msg = "Ticket [TicketHref("#[id]")] resolved by [key_name]"
@@ -645,9 +651,10 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
SEND_SOUND(initiator, sound('sound/effects/adminhelp.ogg'))
- to_chat(initiator, "- AdminHelp Rejected! -")
- to_chat(initiator, "The administrators could not resolve your ticket. The adminhelp verb has been returned to you so that you may try again.")
- to_chat(initiator, "Please try to be calm, clear, and descriptive in admin helps, do not assume the admin has seen any related events, and clearly state the names of anybody you are reporting.")
+ to_chat(initiator, "Adminhelp Rejected
\
+ The administrators could not resolve your ticket. The adminhelp verb has been returned to you so that you may try again.
\
+ Please try to be calm, clear, and descriptive in admin helps, do not assume the admin has seen any related events, and clearly state the names of anybody you are reporting.
\
+ Your ticket was handled by: [usr.ckey]")
SSblackbox.record_feedback("tally", "ahelp_stats", 1, "rejected")
var/msg = "Ticket [TicketHref("#[id]")] rejected by [key_name]"
@@ -664,18 +671,17 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
if(state > AHELP_ACTIVE)
return
- var/msg = "- AdminHelp marked as IC issue! -
"
- msg += "Your issue has been determined by an administrator to be an in character issue and does NOT require administrator intervention at this time. For further resolution you should pursue options that are in character.
"
-
- if(initiator)
- to_chat(initiator, msg)
-
SSblackbox.record_feedback("tally", "ahelp_stats", 1, "IC")
- msg = "Ticket [TicketHref("#[id]")] marked as IC by [key_name]"
+ var/msg = "Ticket [TicketHref("#[id]")] marked as IC by [key_name]"
message_admins(msg)
log_admin_private(msg)
AddInteraction("red", "Marked as IC issue by [key_name]")
- Resolve(silent = TRUE)
+ Resolve(
+ silent = TRUE,
+ status = "Resolved - IC Issue",
+ message = "An administrator has handled your ticket and has determined that the issue you are facing is an in-character issue and does not require administrator intervention at this time.
\
+ For further resolution, you should pursue options that are in character, such as filing a report with security or a head of staff.
\
+ Thank you for creating a ticket, the adminhelp verb will be returned to you shortly.
")
if(!bwoink)
discordsendmsg("ahelp", "Ticket #[id] marked as IC by [key_name(usr, include_link=0)]")
@@ -689,8 +695,9 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
SEND_SOUND(initiator, sound('sound/effects/adminhelp.ogg'))
- to_chat(initiator, "- AdminHelp Rejected! -")
- to_chat(initiator, "This question may regard game mechanics or how-tos. Such questions should be asked with Mentorhelp.")
+ to_chat(initiator, "Adminhelp Rejected
\
+ This question may regard game mechanics or how-tos. Such questions should be asked with Mentorhelp
\
+ Your ticket was handled by: [usr.ckey]")
SSblackbox.record_feedback("tally", "ahelp_stats", 1, "mhelp this")
var/msg = "Ticket [TicketHref("#[id]")] told to mentorhelp by [key_name]"
diff --git a/interface/stylesheet.dm b/interface/stylesheet.dm
index 10400d609ef4c..2a4617abec378 100644
--- a/interface/stylesheet.dm
+++ b/interface/stylesheet.dm
@@ -82,6 +82,16 @@ h1.alert, h2.alert {color: #000000;}
.boldnotice {color: #000099; font-weight: bold;}
.adminnotice {color: #0000ff;}
.adminhelp {color: #ff0000; font-weight: bold;}
+.adminhelp_conclusion {
+ display: block;
+ color: white;
+ text-align: center;
+ background-color: black;
+ border: 2px solid red;
+ border-radius: 10px;
+ padding: 10px;
+ margin: 10px 20px;
+}
.unconscious {color: #0000ff; font-weight: bold;}
.suicide {color: #ff5050; font-style: italic;}
.green {color: #03ff39;}
diff --git a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss
index 0f7eb2513bcfc..6ff491bd827a8 100644
--- a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss
+++ b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss
@@ -323,6 +323,16 @@ em {font-style: normal; font-weight: bold;}
.boldnotice {color: #6685f5; font-weight: bold;}
.adminnotice {color: #6685f5;}
.adminhelp {color: #ff0000; font-weight: bold;}
+.adminhelp_conclusion {
+ display: block;
+ color: white;
+ text-align: center;
+ background-color: black;
+ border: 2px solid red;
+ border-radius: 10px;
+ padding: 10px;
+ margin: 10px 20px;
+}
.unconscious {color: #a4bad6; font-weight: bold;}
.suicide {color: #ff5050; font-style: italic;}
.green {color: #059223;}
diff --git a/tgui/packages/tgui-panel/styles/goon/chat-light.scss b/tgui/packages/tgui-panel/styles/goon/chat-light.scss
index e9449538dd49d..92b6aa53a867b 100644
--- a/tgui/packages/tgui-panel/styles/goon/chat-light.scss
+++ b/tgui/packages/tgui-panel/styles/goon/chat-light.scss
@@ -321,6 +321,16 @@ h1.alert, h2.alert {color: #000000;}
.boldnotice {color: #000099; font-weight: bold;}
.adminnotice {color: #0000ff;}
.adminhelp {color: #ff0000; font-weight: bold;}
+.adminhelp_conclusion {
+ display: block;
+ color: white;
+ text-align: center;
+ background-color: black;
+ border: 2px solid red;
+ border-radius: 10px;
+ padding: 10px;
+ margin: 10px 20px;
+}
.unconscious {color: #0000ff; font-weight: bold;}
.suicide {color: #ff5050; font-style: italic;}
.green {color: #03ff39;}