commit 1728607e30d2d0f179a792089265bde40dd80247
parent 13b33999ba436959cb731dbc27362404e903d009
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Mon, 22 May 2023 01:09:48 -0700
fix styling
Diffstat:
3 files changed, 617 insertions(+), 624 deletions(-)
diff --git a/pkg/web/handlers/api/v1/messages.qtpl b/pkg/web/handlers/api/v1/messages.qtpl
@@ -4,6 +4,55 @@
{%- func GenerateStyle(AuthUser *database.User, Data ChatMessagesData) -%}
<style>
+ /* http://meyerweb.com/eric/tools/css/reset/
+ v2.0 | 20110126
+ License: none (public domain)
+ */
+ html, body, div, span, applet, object, iframe,
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+ a, abbr, acronym, address, big, cite, code,
+ del, dfn, em, img, ins, kbd, q, s, samp,
+ small, strike, strong, sub, sup, tt, var,
+ b, u, i, center,
+ dl, dt, dd, ol, ul, li,
+ fieldset, form, label, legend,
+ table, caption, tbody, tfoot, thead, tr, th, td,
+ article, aside, canvas, details, embed,
+ figure, figcaption, footer, header, hgroup,
+ menu, nav, output, ruby, section, summary,
+ time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 100%;
+ font: inherit;
+ vertical-align: baseline;
+ }
+ /* HTML5 display-role reset for older browsers */
+ article, aside, details, figcaption, figure,
+ footer, header, hgroup, menu, nav, section {
+ display: block;
+ }
+ body {
+ line-height: 1;
+ }
+ ol, ul {
+ list-style: none;
+ }
+ blockquote, q {
+ quotes: none;
+ }
+ blockquote:before, blockquote:after,
+ q:before, q:after {
+ content: '';
+ content: none;
+ }
+ table {
+ border-collapse: collapse;
+ border-spacing: 0;
+ }
+ /* --- end --- */
+
i { font-style: italic; }
/* Remove button padding in FF */
@@ -124,57 +173,6 @@
<title></title>
{%- if !Data.PreventRefresh && !Data.ForceManualRefresh -%}<meta http-equiv="refresh" content="{%dl AuthUser.RefreshRate %}">{%- endif -%}
{%- if AuthUser.CollectMetadata -%}<link rel="stylesheet" type="text/css" href="/public/css/meta.css?v={%s VERSION %}" />{%- endif -%}
-
- <style>
- /* http://meyerweb.com/eric/tools/css/reset/
- v2.0 | 20110126
- License: none (public domain)
- */
- html, body, div, span, applet, object, iframe,
- h1, h2, h3, h4, h5, h6, p, blockquote, pre,
- a, abbr, acronym, address, big, cite, code,
- del, dfn, em, img, ins, kbd, q, s, samp,
- small, strike, strong, sub, sup, tt, var,
- b, u, i, center,
- dl, dt, dd, ol, ul, li,
- fieldset, form, label, legend,
- table, caption, tbody, tfoot, thead, tr, th, td,
- article, aside, canvas, details, embed,
- figure, figcaption, footer, header, hgroup,
- menu, nav, output, ruby, section, summary,
- time, mark, audio, video {
- margin: 0;
- padding: 0;
- border: 0;
- font-size: 100%;
- font: inherit;
- vertical-align: baseline;
- }
- /* HTML5 display-role reset for older browsers */
- article, aside, details, figcaption, figure,
- footer, header, hgroup, menu, nav, section {
- display: block;
- }
- body {
- line-height: 1;
- }
- ol, ul {
- list-style: none;
- }
- blockquote, q {
- quotes: none;
- }
- blockquote:before, blockquote:after,
- q:before, q:after {
- content: '';
- content: none;
- }
- table {
- border-collapse: collapse;
- border-spacing: 0;
- }
- /* --- end --- */
- </style>
{%-= GenerateStyle(AuthUser, Data) -%}
</head>
<body>
@@ -266,17 +264,17 @@
{%- func RenderMessages(AuthUser *database.User, Data ChatMessagesData, CSRF, NullUsername string) -%}
- {%- code
- baseTopBarURL := "/api/v1/chat/top-bar/" + Data.RoomName
- readMarkerRendered := false
- isFirstMsg := true
- -%}
- {%- for idx, e := range Data.Messages -%}
- {%-= RenderMessage(idx, e, AuthUser, Data, baseTopBarURL, &readMarkerRendered, &isFirstMsg, CSRF, NullUsername) -%}
- {% endfor %}
- {% if len(Data.Messages) == 0 %}
- <div id="no-msg"><em>No message yet</em></div>
- {% endif %}
+ {%- code
+ baseTopBarURL := "/api/v1/chat/top-bar/" + Data.RoomName
+ readMarkerRendered := false
+ isFirstMsg := true
+ -%}
+ {%- for idx, e := range Data.Messages -%}
+ {%-= RenderMessage(idx, e, AuthUser, Data, baseTopBarURL, &readMarkerRendered, &isFirstMsg, CSRF, NullUsername) -%}
+ {% endfor %}
+ {% if len(Data.Messages) == 0 %}
+ <div id="no-msg"><em>No message yet</em></div>
+ {% endif %}
{%- endfunc -%}
{%- func RenderMessage(idx int, e database.ChatMessage, AuthUser *database.User,
diff --git a/pkg/web/handlers/api/v1/messages.qtpl.go b/pkg/web/handlers/api/v1/messages.qtpl.go
@@ -30,6 +30,55 @@ var (
func StreamGenerateStyle(qw422016 *qt422016.Writer, AuthUser *database.User, Data ChatMessagesData) {
//line messages.qtpl:5
qw422016.N().S(`<style>
+ /* http://meyerweb.com/eric/tools/css/reset/
+ v2.0 | 20110126
+ License: none (public domain)
+ */
+ html, body, div, span, applet, object, iframe,
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+ a, abbr, acronym, address, big, cite, code,
+ del, dfn, em, img, ins, kbd, q, s, samp,
+ small, strike, strong, sub, sup, tt, var,
+ b, u, i, center,
+ dl, dt, dd, ol, ul, li,
+ fieldset, form, label, legend,
+ table, caption, tbody, tfoot, thead, tr, th, td,
+ article, aside, canvas, details, embed,
+ figure, figcaption, footer, header, hgroup,
+ menu, nav, output, ruby, section, summary,
+ time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 100%;
+ font: inherit;
+ vertical-align: baseline;
+ }
+ /* HTML5 display-role reset for older browsers */
+ article, aside, details, figcaption, figure,
+ footer, header, hgroup, menu, nav, section {
+ display: block;
+ }
+ body {
+ line-height: 1;
+ }
+ ol, ul {
+ list-style: none;
+ }
+ blockquote, q {
+ quotes: none;
+ }
+ blockquote:before, blockquote:after,
+ q:before, q:after {
+ content: '';
+ content: none;
+ }
+ table {
+ border-collapse: collapse;
+ border-spacing: 0;
+ }
+ /* --- end --- */
+
i { font-style: italic; }
/* Remove button padding in FF */
@@ -82,20 +131,20 @@ func StreamGenerateStyle(qw422016 *qt422016.Writer, AuthUser *database.User, Dat
.k_btn::after { content: "k"; }
#manualrefresh {
`)
-//line messages.qtpl:58
+//line messages.qtpl:107
if !Data.ForceManualRefresh {
-//line messages.qtpl:58
+//line messages.qtpl:107
qw422016.N().S(`
top: -200%;
animation: timeout_messages `)
-//line messages.qtpl:60
+//line messages.qtpl:109
qw422016.N().DL(Data.ManualRefreshTimeout)
-//line messages.qtpl:60
+//line messages.qtpl:109
qw422016.N().S(`s forwards;
`)
-//line messages.qtpl:61
+//line messages.qtpl:110
}
-//line messages.qtpl:61
+//line messages.qtpl:110
qw422016.N().S(`
color: #bf2718;
display: block;
@@ -141,28 +190,28 @@ func StreamGenerateStyle(qw422016 *qt422016.Writer, AuthUser *database.User, Dat
.f-white-clr, .f-white-clr:hover { color: white; }
.line-through { text-decoration: line-through; }
.hb-row { background-color: rgba(0, 0, 0, 0.7); opacity: `)
-//line messages.qtpl:105
+//line messages.qtpl:154
qw422016.N().F(AuthUser.GetHellbanOpacityF64())
-//line messages.qtpl:105
+//line messages.qtpl:154
qw422016.N().S(`; }
.own-highlight { background-color: rgba(255,241,176,0.05); }
.read-marker { border-top: `)
-//line messages.qtpl:107
+//line messages.qtpl:156
qw422016.N().DL(AuthUser.ChatReadMarkerSize)
-//line messages.qtpl:107
+//line messages.qtpl:156
qw422016.N().S(`px solid `)
-//line messages.qtpl:107
+//line messages.qtpl:156
qw422016.E().S(AuthUser.ChatReadMarkerColor)
-//line messages.qtpl:107
+//line messages.qtpl:156
qw422016.N().S(`; }
#msgs { `)
-//line messages.qtpl:108
+//line messages.qtpl:157
if !AuthUser.HideRightColumn {
-//line messages.qtpl:108
+//line messages.qtpl:157
qw422016.N().S(`width: calc(100% - 170px); float: left; `)
-//line messages.qtpl:108
+//line messages.qtpl:157
}
-//line messages.qtpl:108
+//line messages.qtpl:157
qw422016.N().S(`line-height: 1.2; }
#no-msg { padding-left: 10px; color: #ddd; }
#rgt-pane { width: 150px; height: 100%; float: left; margin-left: 20px; position: fixed; right: 0; overflow-y: auto; line-height: 1.15; }
@@ -175,139 +224,86 @@ func StreamGenerateStyle(qw422016 *qt422016.Writer, AuthUser *database.User, Dat
#msg-err { background-color: #8f2d2d; color: #ffffff; padding: 1px 5px 2px 5px; display: block; text-decoration: none; }
</style>
`)
-//line messages.qtpl:119
+//line messages.qtpl:168
}
-//line messages.qtpl:119
+//line messages.qtpl:168
func WriteGenerateStyle(qq422016 qtio422016.Writer, AuthUser *database.User, Data ChatMessagesData) {
-//line messages.qtpl:119
+//line messages.qtpl:168
qw422016 := qt422016.AcquireWriter(qq422016)
-//line messages.qtpl:119
+//line messages.qtpl:168
StreamGenerateStyle(qw422016, AuthUser, Data)
-//line messages.qtpl:119
+//line messages.qtpl:168
qt422016.ReleaseWriter(qw422016)
-//line messages.qtpl:119
+//line messages.qtpl:168
}
-//line messages.qtpl:119
+//line messages.qtpl:168
func GenerateStyle(AuthUser *database.User, Data ChatMessagesData) string {
-//line messages.qtpl:119
+//line messages.qtpl:168
qb422016 := qt422016.AcquireByteBuffer()
-//line messages.qtpl:119
+//line messages.qtpl:168
WriteGenerateStyle(qb422016, AuthUser, Data)
-//line messages.qtpl:119
+//line messages.qtpl:168
qs422016 := string(qb422016.B)
-//line messages.qtpl:119
+//line messages.qtpl:168
qt422016.ReleaseByteBuffer(qb422016)
-//line messages.qtpl:119
+//line messages.qtpl:168
return qs422016
-//line messages.qtpl:119
+//line messages.qtpl:168
}
-//line messages.qtpl:121
+//line messages.qtpl:170
func StreamMessages(qw422016 *qt422016.Writer, VERSION, CSRF, NullUsername string, AuthUser *database.User, Data ChatMessagesData) {
-//line messages.qtpl:121
+//line messages.qtpl:170
qw422016.N().S(`<html lang="en">
<head>
<title></title>
`)
-//line messages.qtpl:125
+//line messages.qtpl:174
if !Data.PreventRefresh && !Data.ForceManualRefresh {
-//line messages.qtpl:125
+//line messages.qtpl:174
qw422016.N().S(`<meta http-equiv="refresh" content="`)
-//line messages.qtpl:125
+//line messages.qtpl:174
qw422016.N().DL(AuthUser.RefreshRate)
-//line messages.qtpl:125
+//line messages.qtpl:174
qw422016.N().S(`">`)
-//line messages.qtpl:125
+//line messages.qtpl:174
}
-//line messages.qtpl:126
+//line messages.qtpl:175
if AuthUser.CollectMetadata {
-//line messages.qtpl:126
+//line messages.qtpl:175
qw422016.N().S(`<link rel="stylesheet" type="text/css" href="/public/css/meta.css?v=`)
-//line messages.qtpl:126
+//line messages.qtpl:175
qw422016.E().S(VERSION)
-//line messages.qtpl:126
+//line messages.qtpl:175
qw422016.N().S(`" />`)
-//line messages.qtpl:126
+//line messages.qtpl:175
}
-//line messages.qtpl:126
- qw422016.N().S(`
- <style>
- /* http://meyerweb.com/eric/tools/css/reset/
- v2.0 | 20110126
- License: none (public domain)
- */
- html, body, div, span, applet, object, iframe,
- h1, h2, h3, h4, h5, h6, p, blockquote, pre,
- a, abbr, acronym, address, big, cite, code,
- del, dfn, em, img, ins, kbd, q, s, samp,
- small, strike, strong, sub, sup, tt, var,
- b, u, i, center,
- dl, dt, dd, ol, ul, li,
- fieldset, form, label, legend,
- table, caption, tbody, tfoot, thead, tr, th, td,
- article, aside, canvas, details, embed,
- figure, figcaption, footer, header, hgroup,
- menu, nav, output, ruby, section, summary,
- time, mark, audio, video {
- margin: 0;
- padding: 0;
- border: 0;
- font-size: 100%;
- font: inherit;
- vertical-align: baseline;
- }
- /* HTML5 display-role reset for older browsers */
- article, aside, details, figcaption, figure,
- footer, header, hgroup, menu, nav, section {
- display: block;
- }
- body {
- line-height: 1;
- }
- ol, ul {
- list-style: none;
- }
- blockquote, q {
- quotes: none;
- }
- blockquote:before, blockquote:after,
- q:before, q:after {
- content: '';
- content: none;
- }
- table {
- border-collapse: collapse;
- border-spacing: 0;
- }
- /* --- end --- */
- </style>
-`)
-//line messages.qtpl:178
+//line messages.qtpl:176
StreamGenerateStyle(qw422016, AuthUser, Data)
-//line messages.qtpl:178
+//line messages.qtpl:176
qw422016.N().S(` </head>
<body>
`)
-//line messages.qtpl:182
+//line messages.qtpl:180
if Data.ForceManualRefresh {
-//line messages.qtpl:182
+//line messages.qtpl:180
qw422016.N().S(` <div id="manualrefresh">
<h4>Manual refresh required</h4>
<form method="get" action="/chat/`)
-//line messages.qtpl:185
+//line messages.qtpl:183
qw422016.E().S(Data.RoomName)
-//line messages.qtpl:185
+//line messages.qtpl:183
qw422016.N().S(`" target="_top">
<input type="submit" value="Reload" />
</form>
</div>
`)
-//line messages.qtpl:189
+//line messages.qtpl:187
} else if !Data.PreventRefresh {
-//line messages.qtpl:189
+//line messages.qtpl:187
qw422016.N().S(` <div id="manualrefresh">
<h4>Manual refresh required</h4>
<form method="get">
@@ -315,1033 +311,1033 @@ func StreamMessages(qw422016 *qt422016.Writer, VERSION, CSRF, NullUsername strin
</form>
</div>
`)
-//line messages.qtpl:196
+//line messages.qtpl:194
}
-//line messages.qtpl:196
+//line messages.qtpl:194
qw422016.N().S(`
`)
-//line messages.qtpl:198
+//line messages.qtpl:196
if Data.Error != "" {
-//line messages.qtpl:198
+//line messages.qtpl:196
qw422016.N().S(` <a href="/api/v1/chat/messages/`)
-//line messages.qtpl:199
+//line messages.qtpl:197
qw422016.E().S(Data.RoomName)
-//line messages.qtpl:199
+//line messages.qtpl:197
qw422016.N().S(`" id="msg-err">× `)
-//line messages.qtpl:199
+//line messages.qtpl:197
qw422016.E().S(Data.Error)
-//line messages.qtpl:199
+//line messages.qtpl:197
qw422016.N().S(`</a>
`)
-//line messages.qtpl:200
+//line messages.qtpl:198
}
-//line messages.qtpl:200
+//line messages.qtpl:198
qw422016.N().S(`
`)
-//line messages.qtpl:202
+//line messages.qtpl:200
if Data.PmSound || Data.TaggedSound {
-//line messages.qtpl:202
+//line messages.qtpl:200
qw422016.N().S(` <audio src="/public/mp3/sound5.mp3" autoplay></audio>
`)
-//line messages.qtpl:204
+//line messages.qtpl:202
} else if Data.NewMessageSound {
-//line messages.qtpl:204
+//line messages.qtpl:202
qw422016.N().S(` <audio src="/public/mp3/sound6.mp3" autoplay></audio>
`)
-//line messages.qtpl:206
+//line messages.qtpl:204
}
-//line messages.qtpl:206
+//line messages.qtpl:204
qw422016.N().S(`
<div id="msgs">
`)
-//line messages.qtpl:209
+//line messages.qtpl:207
StreamRenderMessages(qw422016, AuthUser, Data, CSRF, NullUsername)
-//line messages.qtpl:209
+//line messages.qtpl:207
qw422016.N().S(` </div>
`)
-//line messages.qtpl:212
+//line messages.qtpl:210
if !AuthUser.HideRightColumn {
-//line messages.qtpl:212
+//line messages.qtpl:210
qw422016.N().S(`
<div id="rgt-pane">
<div class="mb-20px">
<div class="rgt-title">Inbox (<a href="/settings/inbox" target="_top"`)
-//line messages.qtpl:215
+//line messages.qtpl:213
if Data.InboxCount > 0 {
-//line messages.qtpl:215
+//line messages.qtpl:213
qw422016.N().S(`class="notif"`)
-//line messages.qtpl:215
+//line messages.qtpl:213
}
-//line messages.qtpl:215
+//line messages.qtpl:213
qw422016.N().S(`>`)
-//line messages.qtpl:215
+//line messages.qtpl:213
qw422016.N().DL(Data.InboxCount)
-//line messages.qtpl:215
+//line messages.qtpl:213
qw422016.N().S(`</a>)</div>
</div>
<div class="mb-20px">
<div class="rgt-title">Rooms:</div>
`)
-//line messages.qtpl:219
+//line messages.qtpl:217
for _, e := range Data.OfficialRooms {
-//line messages.qtpl:220
+//line messages.qtpl:218
if e.Name == "club" {
-//line messages.qtpl:221
+//line messages.qtpl:219
if AuthUser.IsClubMember {
-//line messages.qtpl:221
+//line messages.qtpl:219
qw422016.N().S(` <div><a href="/chat/club" target="_top"`)
-//line messages.qtpl:222
+//line messages.qtpl:220
if e.IsUnread {
-//line messages.qtpl:222
+//line messages.qtpl:220
qw422016.N().S(` class="unread_room"`)
-//line messages.qtpl:222
+//line messages.qtpl:220
}
-//line messages.qtpl:222
+//line messages.qtpl:220
qw422016.N().S(`>#club</a></div>
`)
-//line messages.qtpl:223
+//line messages.qtpl:221
}
-//line messages.qtpl:224
+//line messages.qtpl:222
} else if e.Name == "moderators" {
-//line messages.qtpl:225
+//line messages.qtpl:223
if AuthUser.IsModerator() {
-//line messages.qtpl:225
+//line messages.qtpl:223
qw422016.N().S(` <div><a href="/chat/moderators" target="_top"`)
-//line messages.qtpl:226
+//line messages.qtpl:224
if e.IsUnread {
-//line messages.qtpl:226
+//line messages.qtpl:224
qw422016.N().S(` class="unread_room"`)
-//line messages.qtpl:226
+//line messages.qtpl:224
}
-//line messages.qtpl:226
+//line messages.qtpl:224
qw422016.N().S(`>#moderators</a></div>
`)
-//line messages.qtpl:227
+//line messages.qtpl:225
}
-//line messages.qtpl:228
+//line messages.qtpl:226
} else {
-//line messages.qtpl:228
+//line messages.qtpl:226
qw422016.N().S(` <div><a href="/chat/`)
-//line messages.qtpl:229
+//line messages.qtpl:227
qw422016.E().S(e.Name)
-//line messages.qtpl:229
+//line messages.qtpl:227
qw422016.N().S(`" target="_top"`)
-//line messages.qtpl:229
+//line messages.qtpl:227
if e.IsUnread {
-//line messages.qtpl:229
+//line messages.qtpl:227
qw422016.N().S(` class="unread_room"`)
-//line messages.qtpl:229
+//line messages.qtpl:227
}
-//line messages.qtpl:229
+//line messages.qtpl:227
qw422016.N().S(`>#`)
-//line messages.qtpl:229
+//line messages.qtpl:227
qw422016.E().S(e.Name)
-//line messages.qtpl:229
+//line messages.qtpl:227
qw422016.N().S(`</a></div>
`)
-//line messages.qtpl:230
+//line messages.qtpl:228
}
-//line messages.qtpl:231
+//line messages.qtpl:229
}
-//line messages.qtpl:232
+//line messages.qtpl:230
if len(Data.SubscribedRooms) > 0 {
-//line messages.qtpl:232
+//line messages.qtpl:230
qw422016.N().S(` <div class="mt-10px"></div>
`)
-//line messages.qtpl:234
+//line messages.qtpl:232
for _, e := range Data.SubscribedRooms {
-//line messages.qtpl:234
+//line messages.qtpl:232
qw422016.N().S(` <div><a href="/chat/`)
-//line messages.qtpl:235
+//line messages.qtpl:233
qw422016.E().S(e.Name)
-//line messages.qtpl:235
+//line messages.qtpl:233
qw422016.N().S(`" target="_top"`)
-//line messages.qtpl:235
+//line messages.qtpl:233
if e.IsUnread {
-//line messages.qtpl:235
+//line messages.qtpl:233
qw422016.N().S(` class="unread_room"`)
-//line messages.qtpl:235
+//line messages.qtpl:233
}
-//line messages.qtpl:235
+//line messages.qtpl:233
qw422016.N().S(`>#`)
-//line messages.qtpl:235
+//line messages.qtpl:233
qw422016.E().S(e.Name)
-//line messages.qtpl:235
+//line messages.qtpl:233
qw422016.N().S(`</a></div>
`)
-//line messages.qtpl:236
+//line messages.qtpl:234
}
-//line messages.qtpl:237
+//line messages.qtpl:235
}
-//line messages.qtpl:237
+//line messages.qtpl:235
qw422016.N().S(` <div class="mt-5px"><a href="/rooms" target="_top">[...]</a></div>
</div>
<div class="mb-20px">
<div class="rgt-title">In this room:</div>
`)
-//line messages.qtpl:242
+//line messages.qtpl:240
for _, e := range Data.Members {
-//line messages.qtpl:242
+//line messages.qtpl:240
qw422016.N().S(` `)
-//line messages.qtpl:243
+//line messages.qtpl:241
StreamMember(qw422016, AuthUser, Data, e)
-//line messages.qtpl:243
+//line messages.qtpl:241
qw422016.N().S(`
`)
-//line messages.qtpl:244
+//line messages.qtpl:242
}
-//line messages.qtpl:244
+//line messages.qtpl:242
qw422016.N().S(` </div>
`)
-//line messages.qtpl:246
+//line messages.qtpl:244
if Data.VisibleMemberInChat || AuthUser.DisplayHellbanned {
-//line messages.qtpl:246
+//line messages.qtpl:244
qw422016.N().S(` <div class="mb-30px">
`)
-//line messages.qtpl:248
+//line messages.qtpl:246
if len(Data.MembersInChat) > 0 {
-//line messages.qtpl:248
+//line messages.qtpl:246
qw422016.N().S(` <div class="rgt-title">In other rooms:</div>
`)
-//line messages.qtpl:250
+//line messages.qtpl:248
for _, e := range Data.MembersInChat {
-//line messages.qtpl:250
+//line messages.qtpl:248
qw422016.N().S(` `)
-//line messages.qtpl:251
+//line messages.qtpl:249
StreamMember(qw422016, AuthUser, Data, e)
-//line messages.qtpl:251
+//line messages.qtpl:249
qw422016.N().S(`
`)
-//line messages.qtpl:252
+//line messages.qtpl:250
}
-//line messages.qtpl:253
+//line messages.qtpl:251
}
-//line messages.qtpl:253
+//line messages.qtpl:251
qw422016.N().S(` </div>
`)
-//line messages.qtpl:255
+//line messages.qtpl:253
}
-//line messages.qtpl:255
+//line messages.qtpl:253
qw422016.N().S(` </div>
`)
-//line messages.qtpl:257
+//line messages.qtpl:255
}
-//line messages.qtpl:258
+//line messages.qtpl:256
if AuthUser.CollectMetadata {
-//line messages.qtpl:258
+//line messages.qtpl:256
qw422016.N().S(` <div class="div_1"></div>
<div class="div_2"></div>
<div class="div_f0">a</div>
`)
-//line messages.qtpl:262
+//line messages.qtpl:260
}
-//line messages.qtpl:262
+//line messages.qtpl:260
qw422016.N().S(` </body>
</html>
`)
-//line messages.qtpl:265
+//line messages.qtpl:263
}
-//line messages.qtpl:265
+//line messages.qtpl:263
func WriteMessages(qq422016 qtio422016.Writer, VERSION, CSRF, NullUsername string, AuthUser *database.User, Data ChatMessagesData) {
-//line messages.qtpl:265
+//line messages.qtpl:263
qw422016 := qt422016.AcquireWriter(qq422016)
-//line messages.qtpl:265
+//line messages.qtpl:263
StreamMessages(qw422016, VERSION, CSRF, NullUsername, AuthUser, Data)
-//line messages.qtpl:265
+//line messages.qtpl:263
qt422016.ReleaseWriter(qw422016)
-//line messages.qtpl:265
+//line messages.qtpl:263
}
-//line messages.qtpl:265
+//line messages.qtpl:263
func Messages(VERSION, CSRF, NullUsername string, AuthUser *database.User, Data ChatMessagesData) string {
-//line messages.qtpl:265
+//line messages.qtpl:263
qb422016 := qt422016.AcquireByteBuffer()
-//line messages.qtpl:265
+//line messages.qtpl:263
WriteMessages(qb422016, VERSION, CSRF, NullUsername, AuthUser, Data)
-//line messages.qtpl:265
+//line messages.qtpl:263
qs422016 := string(qb422016.B)
-//line messages.qtpl:265
+//line messages.qtpl:263
qt422016.ReleaseByteBuffer(qb422016)
-//line messages.qtpl:265
+//line messages.qtpl:263
return qs422016
-//line messages.qtpl:265
+//line messages.qtpl:263
}
-//line messages.qtpl:268
+//line messages.qtpl:266
func StreamRenderMessages(qw422016 *qt422016.Writer, AuthUser *database.User, Data ChatMessagesData, CSRF, NullUsername string) {
-//line messages.qtpl:270
+//line messages.qtpl:268
baseTopBarURL := "/api/v1/chat/top-bar/" + Data.RoomName
readMarkerRendered := false
isFirstMsg := true
-//line messages.qtpl:274
+//line messages.qtpl:272
for idx, e := range Data.Messages {
-//line messages.qtpl:275
+//line messages.qtpl:273
StreamRenderMessage(qw422016, idx, e, AuthUser, Data, baseTopBarURL, &readMarkerRendered, &isFirstMsg, CSRF, NullUsername)
-//line messages.qtpl:275
- qw422016.N().S(` `)
-//line messages.qtpl:276
+//line messages.qtpl:273
+ qw422016.N().S(` `)
+//line messages.qtpl:274
}
-//line messages.qtpl:276
+//line messages.qtpl:274
qw422016.N().S(`
- `)
-//line messages.qtpl:277
+ `)
+//line messages.qtpl:275
if len(Data.Messages) == 0 {
-//line messages.qtpl:277
+//line messages.qtpl:275
qw422016.N().S(`
- <div id="no-msg"><em>No message yet</em></div>
- `)
-//line messages.qtpl:279
+ <div id="no-msg"><em>No message yet</em></div>
+ `)
+//line messages.qtpl:277
}
-//line messages.qtpl:279
+//line messages.qtpl:277
qw422016.N().S(`
`)
-//line messages.qtpl:280
+//line messages.qtpl:278
}
-//line messages.qtpl:280
+//line messages.qtpl:278
func WriteRenderMessages(qq422016 qtio422016.Writer, AuthUser *database.User, Data ChatMessagesData, CSRF, NullUsername string) {
-//line messages.qtpl:280
+//line messages.qtpl:278
qw422016 := qt422016.AcquireWriter(qq422016)
-//line messages.qtpl:280
+//line messages.qtpl:278
StreamRenderMessages(qw422016, AuthUser, Data, CSRF, NullUsername)
-//line messages.qtpl:280
+//line messages.qtpl:278
qt422016.ReleaseWriter(qw422016)
-//line messages.qtpl:280
+//line messages.qtpl:278
}
-//line messages.qtpl:280
+//line messages.qtpl:278
func RenderMessages(AuthUser *database.User, Data ChatMessagesData, CSRF, NullUsername string) string {
-//line messages.qtpl:280
+//line messages.qtpl:278
qb422016 := qt422016.AcquireByteBuffer()
-//line messages.qtpl:280
+//line messages.qtpl:278
WriteRenderMessages(qb422016, AuthUser, Data, CSRF, NullUsername)
-//line messages.qtpl:280
+//line messages.qtpl:278
qs422016 := string(qb422016.B)
-//line messages.qtpl:280
+//line messages.qtpl:278
qt422016.ReleaseByteBuffer(qb422016)
-//line messages.qtpl:280
+//line messages.qtpl:278
return qs422016
-//line messages.qtpl:280
+//line messages.qtpl:278
}
-//line messages.qtpl:282
+//line messages.qtpl:280
func StreamRenderMessage(qw422016 *qt422016.Writer, idx int, e database.ChatMessage, AuthUser *database.User,
Data ChatMessagesData, baseTopBarURL string, readMarkerRendered, isFirstMsg *bool, CSRF, NullUsername string) {
-//line messages.qtpl:284
+//line messages.qtpl:282
if e.UserCanSee(*AuthUser) {
-//line messages.qtpl:284
+//line messages.qtpl:282
qw422016.N().S(` <div id="msgid-`)
-//line messages.qtpl:285
+//line messages.qtpl:283
qw422016.E().S(e.UUID)
-//line messages.qtpl:285
+//line messages.qtpl:283
qw422016.N().S(`" class="msg
`)
-//line messages.qtpl:286
+//line messages.qtpl:284
if (e.User.IsHellbanned || e.IsHellbanned) && AuthUser.DisplayHellbanned {
-//line messages.qtpl:286
+//line messages.qtpl:284
qw422016.N().S(` hb-row
`)
-//line messages.qtpl:287
+//line messages.qtpl:285
} else if AuthUser.ID == e.User.ID && AuthUser.HighlightOwnMessages {
-//line messages.qtpl:287
+//line messages.qtpl:285
qw422016.N().S(` own-highlight`)
-//line messages.qtpl:287
+//line messages.qtpl:285
}
-//line messages.qtpl:288
+//line messages.qtpl:286
if AuthUser.ChatReadMarkerEnabled && e.CreatedAt.Before(Data.ReadMarker.ReadAt) && !*readMarkerRendered {
-//line messages.qtpl:288
+//line messages.qtpl:286
qw422016.N().S(`
`)
-//line messages.qtpl:289
+//line messages.qtpl:287
if idx > 0 {
-//line messages.qtpl:289
+//line messages.qtpl:287
qw422016.N().S(`read-marker`)
-//line messages.qtpl:289
+//line messages.qtpl:287
}
-//line messages.qtpl:290
+//line messages.qtpl:288
*readMarkerRendered = true
-//line messages.qtpl:291
+//line messages.qtpl:289
}
-//line messages.qtpl:291
+//line messages.qtpl:289
qw422016.N().S(` ">
`)
-//line messages.qtpl:293
+//line messages.qtpl:291
if e.UserCanDelete(*AuthUser) {
-//line messages.qtpl:294
+//line messages.qtpl:292
if !e.TooOldToDelete() {
-//line messages.qtpl:295
+//line messages.qtpl:293
if AuthUser.DisplayDeleteButton {
-//line messages.qtpl:295
+//line messages.qtpl:293
qw422016.N().S(` <form method="post" action="/api/v1/chat/messages/delete/`)
-//line messages.qtpl:296
+//line messages.qtpl:294
qw422016.E().S(e.UUID)
-//line messages.qtpl:296
+//line messages.qtpl:294
qw422016.N().S(`" class="d-inline">
<input type="hidden" name="csrf" value="`)
-//line messages.qtpl:297
+//line messages.qtpl:295
qw422016.E().S(CSRF)
-//line messages.qtpl:297
+//line messages.qtpl:295
qw422016.N().S(`" />
<button class="mod-btn delete_msg_btn" title="delete"></button>
</form>
`)
-//line messages.qtpl:300
+//line messages.qtpl:298
}
-//line messages.qtpl:301
+//line messages.qtpl:299
} else if (AuthUser.IsModerator() && e.TooOldToDelete() && e.UserID != AuthUser.ID) || AuthUser.IsAdmin || (e.Room.OwnerUserID != nil && *e.Room.OwnerUserID == AuthUser.ID) {
-//line messages.qtpl:302
+//line messages.qtpl:300
if AuthUser.DisplayDeleteButton {
-//line messages.qtpl:302
+//line messages.qtpl:300
qw422016.N().S(` <form method="post" action="/api/v1/chat/messages/delete/`)
-//line messages.qtpl:303
+//line messages.qtpl:301
qw422016.E().S(e.UUID)
-//line messages.qtpl:303
+//line messages.qtpl:301
qw422016.N().S(`" class="d-inline">
<input type="hidden" name="csrf" value="`)
-//line messages.qtpl:304
+//line messages.qtpl:302
qw422016.E().S(CSRF)
-//line messages.qtpl:304
+//line messages.qtpl:302
qw422016.N().S(`" />
<button class="mod-btn delete_msg_btn f-orange-clr" title="delete"></button>
</form>
`)
-//line messages.qtpl:307
+//line messages.qtpl:305
}
-//line messages.qtpl:308
+//line messages.qtpl:306
} else if AuthUser.IsModerator() {
-//line messages.qtpl:309
+//line messages.qtpl:307
if AuthUser.DisplayDeleteButton {
-//line messages.qtpl:309
+//line messages.qtpl:307
qw422016.N().S(` <div class="spacer16"></div>
`)
-//line messages.qtpl:311
+//line messages.qtpl:309
}
-//line messages.qtpl:312
+//line messages.qtpl:310
} else {
-//line messages.qtpl:313
+//line messages.qtpl:311
if AuthUser.DisplayDeleteButton {
-//line messages.qtpl:313
+//line messages.qtpl:311
qw422016.N().S(` <div class="spacer16"></div>
`)
-//line messages.qtpl:315
+//line messages.qtpl:313
}
-//line messages.qtpl:316
+//line messages.qtpl:314
}
-//line messages.qtpl:317
+//line messages.qtpl:315
if AuthUser.IsModerator() {
-//line messages.qtpl:318
+//line messages.qtpl:316
if e.UserID != AuthUser.ID {
-//line messages.qtpl:319
+//line messages.qtpl:317
if AuthUser.DisplayHellbanButton {
-//line messages.qtpl:320
+//line messages.qtpl:318
if e.User.Username == NullUsername {
-//line messages.qtpl:320
+//line messages.qtpl:318
qw422016.N().S(` <div class="spacer16"></div>
`)
-//line messages.qtpl:322
+//line messages.qtpl:320
} else {
-//line messages.qtpl:323
+//line messages.qtpl:321
if e.User.IsHellbanned {
-//line messages.qtpl:323
+//line messages.qtpl:321
qw422016.N().S(` <form method="post" action="/api/v1/users/`)
-//line messages.qtpl:324
+//line messages.qtpl:322
qw422016.E().S(e.UserID.String())
-//line messages.qtpl:324
+//line messages.qtpl:322
qw422016.N().S(`/unhellban" class="d-inline">
<input type="hidden" name="csrf" value="`)
-//line messages.qtpl:325
+//line messages.qtpl:323
qw422016.E().S(CSRF)
-//line messages.qtpl:325
+//line messages.qtpl:323
qw422016.N().S(`" />
<button class="mod-btn hb_btn f-orange-clr line-through" title="unhellban"></button>
</form>
`)
-//line messages.qtpl:328
+//line messages.qtpl:326
} else {
-//line messages.qtpl:328
+//line messages.qtpl:326
qw422016.N().S(` <form method="post" action="/api/v1/users/`)
-//line messages.qtpl:329
+//line messages.qtpl:327
qw422016.E().S(e.UserID.String())
-//line messages.qtpl:329
+//line messages.qtpl:327
qw422016.N().S(`/hellban" class="d-inline">
<input type="hidden" name="csrf" value="`)
-//line messages.qtpl:330
+//line messages.qtpl:328
qw422016.E().S(CSRF)
-//line messages.qtpl:330
+//line messages.qtpl:328
qw422016.N().S(`" />
<button class="mod-btn hb_btn f-orange-clr" title="hellban"></button>
</form>
`)
-//line messages.qtpl:333
+//line messages.qtpl:331
}
-//line messages.qtpl:334
+//line messages.qtpl:332
}
-//line messages.qtpl:335
+//line messages.qtpl:333
}
-//line messages.qtpl:336
+//line messages.qtpl:334
if AuthUser.DisplayKickButton {
-//line messages.qtpl:336
+//line messages.qtpl:334
qw422016.N().S(` <form method="post" action="/api/v1/users/`)
-//line messages.qtpl:337
+//line messages.qtpl:335
qw422016.E().S(e.UserID.String())
-//line messages.qtpl:337
+//line messages.qtpl:335
qw422016.N().S(`/kick" class="d-inline">
<input type="hidden" name="csrf" value="`)
-//line messages.qtpl:338
+//line messages.qtpl:336
qw422016.E().S(CSRF)
-//line messages.qtpl:338
+//line messages.qtpl:336
qw422016.N().S(`" />
<button class="mod-btn k_btn f-orange-clr" title="kick"></button>
</form>
`)
-//line messages.qtpl:341
+//line messages.qtpl:339
}
-//line messages.qtpl:342
+//line messages.qtpl:340
} else {
-//line messages.qtpl:343
+//line messages.qtpl:341
if AuthUser.DisplayKickButton && AuthUser.DisplayHellbanButton {
-//line messages.qtpl:343
+//line messages.qtpl:341
qw422016.N().S(` <div class="spacer36"></div>
`)
-//line messages.qtpl:345
+//line messages.qtpl:343
} else if AuthUser.DisplayKickButton || AuthUser.DisplayHellbanButton {
-//line messages.qtpl:345
+//line messages.qtpl:343
qw422016.N().S(` <div class="spacer16"></div>
`)
-//line messages.qtpl:347
+//line messages.qtpl:345
}
-//line messages.qtpl:348
+//line messages.qtpl:346
}
-//line messages.qtpl:349
+//line messages.qtpl:347
}
-//line messages.qtpl:350
+//line messages.qtpl:348
} else {
-//line messages.qtpl:351
+//line messages.qtpl:349
if Data.NbButtons == 3 {
-//line messages.qtpl:351
+//line messages.qtpl:349
qw422016.N().S(` <div class="spacer56"></div>
`)
-//line messages.qtpl:353
+//line messages.qtpl:351
} else if Data.NbButtons == 2 {
-//line messages.qtpl:353
+//line messages.qtpl:351
qw422016.N().S(` <div class="spacer36"></div>
`)
-//line messages.qtpl:355
+//line messages.qtpl:353
} else if Data.NbButtons == 1 {
-//line messages.qtpl:355
+//line messages.qtpl:353
qw422016.N().S(` <div class="spacer16"></div>
`)
-//line messages.qtpl:357
+//line messages.qtpl:355
}
-//line messages.qtpl:358
+//line messages.qtpl:356
}
-//line messages.qtpl:359
+//line messages.qtpl:357
if AuthUser.GetDateFormat() != "" {
-//line messages.qtpl:359
+//line messages.qtpl:357
qw422016.N().S(` <a href="`)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.N().S(`?quote=`)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.E().S(e.UUID)
-//line messages.qtpl:360
+//line messages.qtpl:358
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.N().S(`" target="iframe1" class="date date-link" title="`)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.E().S(e.CreatedAt.Format("01-02 15:04:05"))
-//line messages.qtpl:360
+//line messages.qtpl:358
if *isFirstMsg {
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.N().S(` (`)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.E().S(humanize.Time(e.CreatedAt))
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.N().S(`)`)
-//line messages.qtpl:360
+//line messages.qtpl:358
}
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.N().S(`">`)
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.E().S(e.CreatedAt.Format(AuthUser.GetDateFormat()))
-//line messages.qtpl:360
+//line messages.qtpl:358
qw422016.N().S(`</a>
`)
-//line messages.qtpl:361
+//line messages.qtpl:359
*isFirstMsg = false
-//line messages.qtpl:361
+//line messages.qtpl:359
qw422016.N().S(`
`)
-//line messages.qtpl:362
+//line messages.qtpl:360
}
-//line messages.qtpl:362
+//line messages.qtpl:360
qw422016.N().S(` <a href="/u/`)
-//line messages.qtpl:363
+//line messages.qtpl:361
qw422016.E().S(e.GetProfile(AuthUser))
-//line messages.qtpl:363
+//line messages.qtpl:361
qw422016.N().S(`" target="_blank" class="f-def-clr">-</a>
`)
-//line messages.qtpl:364
+//line messages.qtpl:362
if e.System {
-//line messages.qtpl:364
+//line messages.qtpl:362
qw422016.N().S(` <span class="sysmsg">`)
-//line messages.qtpl:365
+//line messages.qtpl:363
streamunesc(qw422016, e.Message)
-//line messages.qtpl:365
+//line messages.qtpl:363
qw422016.N().S(`</span>
`)
-//line messages.qtpl:366
+//line messages.qtpl:364
} else {
-//line messages.qtpl:367
+//line messages.qtpl:365
if e.Moderators {
-//line messages.qtpl:367
+//line messages.qtpl:365
qw422016.N().S(`<span class="sysmsg">[<a href="`)
-//line messages.qtpl:367
+//line messages.qtpl:365
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:367
+//line messages.qtpl:365
qw422016.N().S(`?m=1`)
-//line messages.qtpl:367
+//line messages.qtpl:365
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:367
+//line messages.qtpl:365
qw422016.N().S(`" target="iframe1" class="sysmsg f-white-clr">M</a>]</span> `)
-//line messages.qtpl:367
+//line messages.qtpl:365
}
-//line messages.qtpl:368
+//line messages.qtpl:366
if e.GroupID != nil {
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.N().S(`<span class="sysmsg">[<a href="`)
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.N().S(`?g=`)
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.E().S(e.Group.Name)
-//line messages.qtpl:368
+//line messages.qtpl:366
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.N().S(`" target="iframe1" class="sysmsg f-white-clr">`)
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.E().S(e.Group.Name)
-//line messages.qtpl:368
+//line messages.qtpl:366
qw422016.N().S(`</a>]</span> `)
-//line messages.qtpl:368
+//line messages.qtpl:366
}
-//line messages.qtpl:369
+//line messages.qtpl:367
if e.ToUserID != nil {
-//line messages.qtpl:369
+//line messages.qtpl:367
qw422016.N().S(` [`)
-//line messages.qtpl:370
+//line messages.qtpl:368
streamfromUsername(qw422016, AuthUser, Data, e, baseTopBarURL)
-//line messages.qtpl:370
+//line messages.qtpl:368
qw422016.N().S(` →
`)
-//line messages.qtpl:372
+//line messages.qtpl:370
if e.ToUser.ID == AuthUser.ID {
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`<span `)
-//line messages.qtpl:372
+//line messages.qtpl:370
streamunesc(qw422016, e.ToUser.GenerateChatStyle())
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`>`)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.E().S(e.ToUser.Username)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`</span>`)
-//line messages.qtpl:372
+//line messages.qtpl:370
} else {
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`<a `)
-//line messages.qtpl:372
+//line messages.qtpl:370
streamunesc(qw422016, e.ToUser.GenerateChatStyle())
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(` href="`)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`?pm=`)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.E().S(e.ToUser.Username)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.E().S(Data.TopBarQueryParams)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`" target="iframe1">`)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.E().S(e.ToUser.Username)
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`</a>`)
-//line messages.qtpl:372
+//line messages.qtpl:370
}
-//line messages.qtpl:372
+//line messages.qtpl:370
qw422016.N().S(`] -
`)
-//line messages.qtpl:373
+//line messages.qtpl:371
} else {
-//line messages.qtpl:374
+//line messages.qtpl:372
streamfromUsername(qw422016, AuthUser, Data, e, baseTopBarURL)
-//line messages.qtpl:375
+//line messages.qtpl:373
if !e.IsMe() {
-//line messages.qtpl:376
+//line messages.qtpl:374
if AuthUser.CanSeeHB() && (e.IsHellbanned || e.User.IsHellbanned) && (e.ToUserID == nil) {
-//line messages.qtpl:376
+//line messages.qtpl:374
qw422016.N().S(` <a href="`)
-//line messages.qtpl:377
+//line messages.qtpl:375
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:377
+//line messages.qtpl:375
qw422016.N().S(`?hbm=1`)
-//line messages.qtpl:377
+//line messages.qtpl:375
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:377
+//line messages.qtpl:375
qw422016.N().S(`" target="iframe1" class="f-def-clr">-</a>
`)
-//line messages.qtpl:378
+//line messages.qtpl:376
} else {
-//line messages.qtpl:378
+//line messages.qtpl:376
qw422016.N().S(` -
`)
-//line messages.qtpl:380
+//line messages.qtpl:378
}
-//line messages.qtpl:381
+//line messages.qtpl:379
}
-//line messages.qtpl:382
+//line messages.qtpl:380
}
-//line messages.qtpl:382
+//line messages.qtpl:380
qw422016.N().S(` <span `)
-//line messages.qtpl:383
+//line messages.qtpl:381
streamunesc(qw422016, e.User.GenerateChatStyle())
-//line messages.qtpl:383
+//line messages.qtpl:381
qw422016.N().S(`><span class="o-wrap">`)
-//line messages.qtpl:383
+//line messages.qtpl:381
qw422016.N().S(unesc(e.MsgToDisplay()))
-//line messages.qtpl:383
+//line messages.qtpl:381
qw422016.N().S(`</span></span>
`)
-//line messages.qtpl:384
+//line messages.qtpl:382
}
-//line messages.qtpl:384
+//line messages.qtpl:382
qw422016.N().S(` </div>
`)
-//line messages.qtpl:386
+//line messages.qtpl:384
}
-//line messages.qtpl:387
+//line messages.qtpl:385
}
-//line messages.qtpl:387
+//line messages.qtpl:385
func WriteRenderMessage(qq422016 qtio422016.Writer, idx int, e database.ChatMessage, AuthUser *database.User,
Data ChatMessagesData, baseTopBarURL string, readMarkerRendered, isFirstMsg *bool, CSRF, NullUsername string) {
-//line messages.qtpl:387
+//line messages.qtpl:385
qw422016 := qt422016.AcquireWriter(qq422016)
-//line messages.qtpl:387
+//line messages.qtpl:385
StreamRenderMessage(qw422016, idx, e, AuthUser, Data, baseTopBarURL, readMarkerRendered, isFirstMsg, CSRF, NullUsername)
-//line messages.qtpl:387
+//line messages.qtpl:385
qt422016.ReleaseWriter(qw422016)
-//line messages.qtpl:387
+//line messages.qtpl:385
}
-//line messages.qtpl:387
+//line messages.qtpl:385
func RenderMessage(idx int, e database.ChatMessage, AuthUser *database.User,
Data ChatMessagesData, baseTopBarURL string, readMarkerRendered, isFirstMsg *bool, CSRF, NullUsername string) string {
-//line messages.qtpl:387
+//line messages.qtpl:385
qb422016 := qt422016.AcquireByteBuffer()
-//line messages.qtpl:387
+//line messages.qtpl:385
WriteRenderMessage(qb422016, idx, e, AuthUser, Data, baseTopBarURL, readMarkerRendered, isFirstMsg, CSRF, NullUsername)
-//line messages.qtpl:387
+//line messages.qtpl:385
qs422016 := string(qb422016.B)
-//line messages.qtpl:387
+//line messages.qtpl:385
qt422016.ReleaseByteBuffer(qb422016)
-//line messages.qtpl:387
+//line messages.qtpl:385
return qs422016
-//line messages.qtpl:387
+//line messages.qtpl:385
}
-//line messages.qtpl:390
+//line messages.qtpl:388
func StreamMember(qw422016 *qt422016.Writer, AuthUser *database.User, Data ChatMessagesData, El managers.UserInfo) {
-//line messages.qtpl:390
+//line messages.qtpl:388
qw422016.N().S(`
`)
-//line messages.qtpl:391
+//line messages.qtpl:389
baseTopBarURL := "/api/v1/chat/top-bar/" + Data.RoomName
-//line messages.qtpl:392
+//line messages.qtpl:390
if El.Username == AuthUser.Username {
-//line messages.qtpl:392
+//line messages.qtpl:390
qw422016.N().S(` <div>
<span style="color: `)
-//line messages.qtpl:394
+//line messages.qtpl:392
qw422016.E().S(El.Color)
-//line messages.qtpl:394
+//line messages.qtpl:392
qw422016.N().S(`;">`)
-//line messages.qtpl:394
+//line messages.qtpl:392
qw422016.E().S(El.Username)
-//line messages.qtpl:394
+//line messages.qtpl:392
qw422016.N().S(`</span>
`)
-//line messages.qtpl:395
+//line messages.qtpl:393
if El.AfkIndicatorEnabled {
-//line messages.qtpl:395
+//line messages.qtpl:393
qw422016.N().S(` <small class="afk-indicator">afk</small>
`)
-//line messages.qtpl:397
+//line messages.qtpl:395
}
-//line messages.qtpl:397
+//line messages.qtpl:395
qw422016.N().S(` </div>
`)
-//line messages.qtpl:399
+//line messages.qtpl:397
} else {
-//line messages.qtpl:400
+//line messages.qtpl:398
if !El.IsHellbanned || AuthUser.ID == El.UserID || (El.IsHellbanned && AuthUser.IsHellbanned) || AuthUser.DisplayHellbanned {
-//line messages.qtpl:400
+//line messages.qtpl:398
qw422016.N().S(` <div>
`)
-//line messages.qtpl:402
+//line messages.qtpl:400
tagType := "tag"
-//line messages.qtpl:403
+//line messages.qtpl:401
if AuthUser.CanSeeHB() && El.IsHellbanned {
-//line messages.qtpl:404
+//line messages.qtpl:402
tagType = "htag"
-//line messages.qtpl:405
+//line messages.qtpl:403
}
-//line messages.qtpl:406
+//line messages.qtpl:404
qw422016.N().S(`<a href="`)
-//line messages.qtpl:407
+//line messages.qtpl:405
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:407
+//line messages.qtpl:405
qw422016.N().S(`?`)
-//line messages.qtpl:407
+//line messages.qtpl:405
qw422016.E().S(tagType)
-//line messages.qtpl:407
+//line messages.qtpl:405
qw422016.N().S(`=`)
-//line messages.qtpl:407
+//line messages.qtpl:405
qw422016.E().S(El.Username)
-//line messages.qtpl:407
+//line messages.qtpl:405
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:407
+//line messages.qtpl:405
qw422016.N().S(`"target="iframe1"`)
-//line messages.qtpl:409
+//line messages.qtpl:407
if El.IsHellbanned && AuthUser.DisplayHellbanned {
-//line messages.qtpl:409
+//line messages.qtpl:407
qw422016.N().S(`class="hb-row"`)
-//line messages.qtpl:409
+//line messages.qtpl:407
}
-//line messages.qtpl:409
+//line messages.qtpl:407
qw422016.N().S(`style="color:`)
-//line messages.qtpl:410
+//line messages.qtpl:408
qw422016.E().S(El.Color)
-//line messages.qtpl:410
+//line messages.qtpl:408
qw422016.N().S(`;">`)
-//line messages.qtpl:410
+//line messages.qtpl:408
qw422016.E().S(string(El.Username[0]))
-//line messages.qtpl:410
+//line messages.qtpl:408
qw422016.N().S(`</a><a href="`)
-//line messages.qtpl:411
+//line messages.qtpl:409
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:411
+//line messages.qtpl:409
qw422016.N().S(`?pm=`)
-//line messages.qtpl:411
+//line messages.qtpl:409
qw422016.E().S(El.Username)
-//line messages.qtpl:411
+//line messages.qtpl:409
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:411
+//line messages.qtpl:409
qw422016.N().S(`"target="iframe1"`)
-//line messages.qtpl:413
+//line messages.qtpl:411
if El.IsHellbanned && AuthUser.DisplayHellbanned {
-//line messages.qtpl:413
+//line messages.qtpl:411
qw422016.N().S(`class="hb-row"`)
-//line messages.qtpl:413
+//line messages.qtpl:411
}
-//line messages.qtpl:413
+//line messages.qtpl:411
qw422016.N().S(`style="color:`)
-//line messages.qtpl:414
+//line messages.qtpl:412
qw422016.E().S(El.Color)
-//line messages.qtpl:414
+//line messages.qtpl:412
qw422016.N().S(`;">`)
-//line messages.qtpl:414
+//line messages.qtpl:412
qw422016.E().S(string(El.Username[1 : len(El.Username)-1]))
-//line messages.qtpl:414
+//line messages.qtpl:412
qw422016.N().S(`</a><a href="/u/`)
-//line messages.qtpl:415
+//line messages.qtpl:413
qw422016.E().S(El.Username)
-//line messages.qtpl:415
+//line messages.qtpl:413
qw422016.N().S(`"rel="noopener noreferrer" target="_blank"`)
-//line messages.qtpl:417
+//line messages.qtpl:415
if El.IsHellbanned && AuthUser.DisplayHellbanned {
-//line messages.qtpl:417
+//line messages.qtpl:415
qw422016.N().S(`class="hb-row"`)
-//line messages.qtpl:417
+//line messages.qtpl:415
}
-//line messages.qtpl:417
+//line messages.qtpl:415
qw422016.N().S(`style="color:`)
-//line messages.qtpl:418
+//line messages.qtpl:416
qw422016.E().S(El.Color)
-//line messages.qtpl:418
+//line messages.qtpl:416
qw422016.N().S(`;">`)
-//line messages.qtpl:418
+//line messages.qtpl:416
qw422016.E().S(string(El.Username[len(El.Username)-1]))
-//line messages.qtpl:418
+//line messages.qtpl:416
qw422016.N().S(`</a>`)
-//line messages.qtpl:420
+//line messages.qtpl:418
if El.AfkIndicatorEnabled {
-//line messages.qtpl:420
+//line messages.qtpl:418
qw422016.N().S(` <small class="afk-indicator">afk</small>
`)
-//line messages.qtpl:422
+//line messages.qtpl:420
}
-//line messages.qtpl:422
+//line messages.qtpl:420
qw422016.N().S(` </div>
`)
-//line messages.qtpl:424
+//line messages.qtpl:422
}
-//line messages.qtpl:425
+//line messages.qtpl:423
}
-//line messages.qtpl:426
+//line messages.qtpl:424
}
-//line messages.qtpl:426
+//line messages.qtpl:424
func WriteMember(qq422016 qtio422016.Writer, AuthUser *database.User, Data ChatMessagesData, El managers.UserInfo) {
-//line messages.qtpl:426
+//line messages.qtpl:424
qw422016 := qt422016.AcquireWriter(qq422016)
-//line messages.qtpl:426
+//line messages.qtpl:424
StreamMember(qw422016, AuthUser, Data, El)
-//line messages.qtpl:426
+//line messages.qtpl:424
qt422016.ReleaseWriter(qw422016)
-//line messages.qtpl:426
+//line messages.qtpl:424
}
-//line messages.qtpl:426
+//line messages.qtpl:424
func Member(AuthUser *database.User, Data ChatMessagesData, El managers.UserInfo) string {
-//line messages.qtpl:426
+//line messages.qtpl:424
qb422016 := qt422016.AcquireByteBuffer()
-//line messages.qtpl:426
+//line messages.qtpl:424
WriteMember(qb422016, AuthUser, Data, El)
-//line messages.qtpl:426
+//line messages.qtpl:424
qs422016 := string(qb422016.B)
-//line messages.qtpl:426
+//line messages.qtpl:424
qt422016.ReleaseByteBuffer(qb422016)
-//line messages.qtpl:426
+//line messages.qtpl:424
return qs422016
-//line messages.qtpl:426
+//line messages.qtpl:424
}
-//line messages.qtpl:429
+//line messages.qtpl:427
func streamfromUsername(qw422016 *qt422016.Writer, AuthUser *database.User, Data ChatMessagesData, El database.ChatMessage, baseTopBarURL string) {
-//line messages.qtpl:430
+//line messages.qtpl:428
tagType := "tag"
-//line messages.qtpl:431
+//line messages.qtpl:429
if El.ToUserID != nil {
-//line messages.qtpl:432
+//line messages.qtpl:430
tagType = "pm"
-//line messages.qtpl:433
+//line messages.qtpl:431
} else if AuthUser.CanSeeHB() && (El.IsHellbanned || El.User.IsHellbanned) {
-//line messages.qtpl:434
+//line messages.qtpl:432
tagType = "htag"
-//line messages.qtpl:435
+//line messages.qtpl:433
} else if AuthUser.IsModerator() && El.Moderators {
-//line messages.qtpl:436
+//line messages.qtpl:434
tagType = "mtag"
-//line messages.qtpl:437
+//line messages.qtpl:435
}
-//line messages.qtpl:438
+//line messages.qtpl:436
if El.User.ID == AuthUser.ID {
-//line messages.qtpl:439
+//line messages.qtpl:437
if El.CanBeEdited() {
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`<a `)
-//line messages.qtpl:439
+//line messages.qtpl:437
streamunesc(qw422016, El.User.GenerateChatStyle())
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(` href="`)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`?e=`)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.E().S(El.CreatedAt.Format("15:04:05"))
-//line messages.qtpl:439
+//line messages.qtpl:437
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`" target="iframe1">`)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.E().S(El.User.Username)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`</a>`)
-//line messages.qtpl:439
+//line messages.qtpl:437
} else {
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`<span `)
-//line messages.qtpl:439
+//line messages.qtpl:437
streamunesc(qw422016, El.User.GenerateChatStyle())
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`>`)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.E().S(El.User.Username)
-//line messages.qtpl:439
+//line messages.qtpl:437
qw422016.N().S(`</span>`)
-//line messages.qtpl:439
+//line messages.qtpl:437
}
-//line messages.qtpl:440
+//line messages.qtpl:438
} else {
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.N().S(`<a `)
-//line messages.qtpl:440
+//line messages.qtpl:438
streamunesc(qw422016, El.User.GenerateChatStyle())
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.N().S(` href="`)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.E().S(baseTopBarURL)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.N().S(`?`)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.E().S(tagType)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.N().S(`=`)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.E().S(El.User.Username)
-//line messages.qtpl:440
+//line messages.qtpl:438
streamunesc(qw422016, Data.TopBarQueryParams)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.N().S(`" target="iframe1">`)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.E().S(El.User.Username)
-//line messages.qtpl:440
+//line messages.qtpl:438
qw422016.N().S(`</a>`)
-//line messages.qtpl:440
+//line messages.qtpl:438
}
-//line messages.qtpl:441
+//line messages.qtpl:439
}
-//line messages.qtpl:441
+//line messages.qtpl:439
func writefromUsername(qq422016 qtio422016.Writer, AuthUser *database.User, Data ChatMessagesData, El database.ChatMessage, baseTopBarURL string) {
-//line messages.qtpl:441
+//line messages.qtpl:439
qw422016 := qt422016.AcquireWriter(qq422016)
-//line messages.qtpl:441
+//line messages.qtpl:439
streamfromUsername(qw422016, AuthUser, Data, El, baseTopBarURL)
-//line messages.qtpl:441
+//line messages.qtpl:439
qt422016.ReleaseWriter(qw422016)
-//line messages.qtpl:441
+//line messages.qtpl:439
}
-//line messages.qtpl:441
+//line messages.qtpl:439
func fromUsername(AuthUser *database.User, Data ChatMessagesData, El database.ChatMessage, baseTopBarURL string) string {
-//line messages.qtpl:441
+//line messages.qtpl:439
qb422016 := qt422016.AcquireByteBuffer()
-//line messages.qtpl:441
+//line messages.qtpl:439
writefromUsername(qb422016, AuthUser, Data, El, baseTopBarURL)
-//line messages.qtpl:441
+//line messages.qtpl:439
qs422016 := string(qb422016.B)
-//line messages.qtpl:441
+//line messages.qtpl:439
qt422016.ReleaseByteBuffer(qb422016)
-//line messages.qtpl:441
+//line messages.qtpl:439
return qs422016
-//line messages.qtpl:441
+//line messages.qtpl:439
}
diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go
@@ -4917,7 +4917,6 @@ func ChatStreamMessagesHandler(c echo.Context) error {
c.Response().Header().Set("Transfer-Encoding", "chunked")
c.Response().Header().Set("Connection", "keep-alive")
- _, _ = c.Response().Write([]byte(cssReset))
data := v1.ChatMessagesData{}
data.RoomName = room.Name
_, _ = c.Response().Write([]byte(v1.GenerateStyle(authUser, data)))