diff options
Diffstat (limited to '')
| -rw-r--r-- | internal/server/display.go | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/internal/server/display.go b/internal/server/display.go deleted file mode 100644 index c3450ad..0000000 --- a/internal/server/display.go +++ /dev/null @@ -1,83 +0,0 @@ -package server - -import ( - "fmt" - "io" - "regexp" - "strings" - - "go.neonxp.ru/qchat/internal/chat" -) - -var replacements = []replacement{ - { - From: *regexp.MustCompile(`\*(.+?)\*`), - To: fmt.Sprintf("%s$1%s", escapeCodes[Bold], escapeCodes[Reset]), - }, - { - From: *regexp.MustCompile(`_(.+?)_`), - To: fmt.Sprintf("%s$1%s", escapeCodes[Italic], escapeCodes[Reset]), - }, -} - -func displayMessage(t io.Writer, message chat.Message, user *chat.User) { - msg := message.Message - mentionFrom := "@" + user.Username - mentionTo := string(escapeCodes[Blink]) + string(escapeCodes[Underline]) + "@" + user.Username + string(escapeCodes[Reset]) - if strings.Contains(msg, mentionFrom) { - msg = strings.ReplaceAll(msg, mentionFrom, mentionTo) - msg = "\x07\a" + msg - } - - for _, r := range replacements { - msg = r.From.ReplaceAllString(msg, r.To) - } - - fmt.Fprintf(t, "%s%15s%s [%s]%s: %s\n", - escapeCodes[Blue], - message.User.NUsername(), - escapeCodes[Green], - message.Time.Format("15:04:05"), - escapeCodes[Reset], - msg, - ) -} - -func displaySystemMessage(t io.Writer, message chat.SystemMessage) { - fmt.Fprintf(t, "%s* %s %s\n", - escapeCodes[Green], - message.Message, - escapeCodes[Reset], - ) -} -func displaySelfMessage(t io.Writer, message chat.SelfMessage) { - fmt.Fprintf(t, "%s* %s %s%s\n", - escapeCodes[Blue], - message.User.NUsername(), - message.Message, - escapeCodes[Reset], - ) -} - -func displayUserJoined(t io.Writer, presence chat.UserJoined) { - fmt.Fprintf(t, "%s* %s joined to %s chan%s\n", - escapeCodes[Green], - presence.User.NUsername(), - presence.Chan.Name, - escapeCodes[Reset], - ) -} - -func displayUserLeft(t io.Writer, presence chat.UserLeft) { - fmt.Fprintf(t, "%s* %s left %s chan%s\n", - escapeCodes[Red], - presence.User.NUsername(), - presence.Chan.Name, - escapeCodes[Reset], - ) -} - -type replacement struct { - From regexp.Regexp - To string -} |
