chat.gohtml (24444B)
1 {{ define "sub-content" }} 2 3 <ul class="nav nav-tabs mb-3"> 4 <li class="nav-item"> 5 <a class="nav-link active" href="/settings/chat">General</a> 6 </li> 7 <li class="nav-item"> 8 <a class="nav-link" href="/settings/chat/pm">PM</a> 9 </li> 10 <li class="nav-item"> 11 <a class="nav-link" href="/settings/chat/ignore">Ignore</a> 12 </li> 13 <li class="nav-item"> 14 <a class="nav-link" href="/settings/chat/snippets">Snippets</a> 15 </li> 16 </ul> 17 18 {{ if .Data.Error }} 19 <div class="alert alert-danger">{{ .Data.Error }}</div> 20 {{ end }} 21 22 23 <div class="card mb-3"> 24 <div class="card-header"> 25 {{ t "Chat settings" . }} 26 </div> 27 <div class="card-body"> 28 <form method="post" novalidate> 29 <input type="hidden" name="csrf" value="{{ .CSRF }}" /> 30 <input type="hidden" name="formName" value="changeSettings" /> 31 <div class="form-group"> 32 <label for="date_format">{{ t "Date format" . }}</label> 33 <select name="date_format" id="date_format" class="form-control"> 34 <option value="0"{{ if eq .Data.DateFormat 0 }} selected{{ end }}>%m-%d %H:%M:%S</option> 35 <option value="1"{{ if eq .Data.DateFormat 1 }} selected{{ end }}>%H:%M:%S</option> 36 <option value="2"{{ if eq .Data.DateFormat 2 }} selected{{ end }}>%m-%d %I:%M:%S (12-hour clock)</option> 37 <option value="3"{{ if eq .Data.DateFormat 3 }} selected{{ end }}>%I:%M:%S (12-hour clock)</option> 38 <option value="4"{{ if eq .Data.DateFormat 4 }} selected{{ end }}>Do not display date</option> 39 </select> 40 </div> 41 <div class="form-group"> 42 <label for="refresh_rate">{{ t "Refresh rate" . }}</label> 43 <input type="number" min="5" max="60" id="refresh_rate" name="refresh_rate" value="{{ .Data.RefreshRate }}" class="form-control" /> 44 </div> 45 <div> 46 <div class="form-group d-inline-block mr-3"> 47 <label for="chat_color">{{ t "Text color" . }}</label> 48 <div class="input-group color-pkr"> 49 <div class="input-group-prepend"><span style="background-color: {{ .Data.ChatColor }};" class="input-group-text"></span></div> 50 <input type="color" id="chat_color" name="chat_color" value="{{ .Data.ChatColor }}" class="form-control"{{ if not .AuthUser.CanChangeColor }} disabled{{ end }} /> 51 </div> 52 </div> 53 <div class="form-group d-inline-block mr-3"> 54 <label for="chat_background_color">{{ t "Background color" . }}</label> 55 <div class="input-group color-pkr"> 56 <div class="input-group-prepend"><span style="background-color: {{ .Data.ChatBackgroundColor }};" class="input-group-text"></span></div> 57 <input type="color" id="chat_background_color" name="chat_background_color" value="{{ .Data.ChatBackgroundColor }}" class="form-control" /> 58 </div> 59 </div> 60 </div> 61 <div class="form-group"> 62 <label for="chat_font">{{ t "Font" . }}</label> 63 <select name="chat_font" id="chat_font" class="form-control"> 64 {{ range .Data.AllFonts }} 65 <option value="{{ .Value }}" style="font-family:{{ .Style | css }}"{{ if eq $.Data.ChatFont .Value }} selected{{ end }}>{{ .Display }}</option> 66 {{ end }} 67 </select> 68 </div> 69 <div class="form-group"> 70 <div class="form-check form-check-1"> 71 <div class="checkbox-wrapper form-check-input"> 72 <input class="my-cbx" type="checkbox" name="chat_bold" id="chat_bold" value="1"{{ if .Data.ChatBold }} checked{{ end }} /> 73 <label for="chat_bold" class="toggle"><span></span></label> 74 </div> 75 <label class="form-check-label" for="chat_bold">{{ t "Bold" . }}</label> 76 </div> 77 78 <div class="form-check form-check-1"> 79 <div class="checkbox-wrapper form-check-input"> 80 <input class="my-cbx" type="checkbox" name="chat_italic" id="chat_italic" value="1"{{ if .Data.ChatItalic }} checked{{ end }} /> 81 <label for="chat_italic" class="toggle"><span></span></label> 82 </div> 83 <label class="form-check-label" for="chat_italic">{{ t "Italic" . }}</label> 84 </div> 85 </div> 86 <div class="form-group"> 87 <span {{ .AuthUser.GenerateChatStyle | attr }}>{{ t "This is a sample text" . }}</span> 88 </div> 89 90 <hr /> 91 92 <div class="form-group"> 93 <div class="form-check form-check-1"> 94 <div class="checkbox-wrapper form-check-input"> 95 <input class="my-cbx" type="checkbox" name="chat_read_marker_enabled" id="chat_read_marker_enabled" value="1"{{ if .Data.ChatReadMarkerEnabled }} checked{{ end }} /> 96 <label for="chat_read_marker_enabled" class="toggle"><span></span></label> 97 </div> 98 <label class="form-check-label" for="chat_read_marker_enabled">{{ t "Enable read marker" . }}</label> 99 </div> 100 </div> 101 <div class="form-group"> 102 <label for="chat_read_marker_color">{{ t "Marker color" . }}</label> 103 <div class="input-group color-pkr"> 104 <div class="input-group-prepend"><span style="background-color: {{ .Data.ChatReadMarkerColor }};" class="input-group-text"></span></div> 105 <input type="color" id="chat_read_marker_color" name="chat_read_marker_color" value="{{ .Data.ChatReadMarkerColor }}" class="form-control" /> 106 </div> 107 </div> 108 <div class="form-group"> 109 <label for="chat_read_marker_size">{{ t "Marker size in px" . }}</label> 110 <input type="number" min="1" max="5" id="chat_read_marker_size" name="chat_read_marker_size" value="{{ .Data.ChatReadMarkerSize }}" class="form-control" /> 111 </div> 112 113 <hr /> 114 115 <div> 116 <label for="code_block_height" class="toggle"><span>Code block height (15-300px)</span></label> 117 <input name="code_block_height" id="code_block_height" type="number" min="15" max="300" step="1" value="{{ .Data.CodeBlockHeight }}" /> 118 </div> 119 {{ if $.AuthUser.CanSeeHB }} 120 <div> 121 <label for="hellban_opacity" class="toggle"><span>Hellban opacity</span></label> 122 <input name="hellban_opacity" id="hellban_opacity" type="number" min="0.1" max="1.0" step="0.1" value="{{ .Data.HellbanOpacity }}" /> 123 </div> 124 {{ end }} 125 126 <div class="form-group"> 127 <div class="form-check form-check-1"> 128 <div class="checkbox-wrapper form-check-input"> 129 <input class="my-cbx" type="checkbox" name="hide_ignored_users_from_list" id="hide_ignored_users_from_list" value="1"{{ if .Data.HideIgnoredUsersFromList }} checked{{ end }} /> 130 <label for="hide_ignored_users_from_list" class="toggle"><span></span></label> 131 </div> 132 <label class="form-check-label" for="hide_ignored_users_from_list">{{ t "Hide ignored users from users lists" . }}</label> 133 </div> 134 <div class="form-check form-check-1"> 135 <div class="checkbox-wrapper form-check-input"> 136 <input class="my-cbx" type="checkbox" name="hide_right_column" id="hide_right_column" value="1"{{ if .Data.HideRightColumn }} checked{{ end }} /> 137 <label for="hide_right_column" class="toggle"><span></span></label> 138 </div> 139 <label class="form-check-label" for="hide_right_column">{{ t "Hide right column" . }}</label> 140 </div> 141 <div class="form-check form-check-1"> 142 <div class="checkbox-wrapper form-check-input"> 143 <input class="my-cbx" type="checkbox" name="chat_bar_at_bottom" id="chat_bar_at_bottom" value="1"{{ if .Data.ChatBarAtBottom }} checked{{ end }} /> 144 <label for="chat_bar_at_bottom" class="toggle"><span></span></label> 145 </div> 146 <label class="form-check-label" for="chat_bar_at_bottom">{{ t "Chat bar at bottom" . }}</label> 147 </div> 148 <div class="form-check form-check-1"> 149 <div class="checkbox-wrapper form-check-input"> 150 <input class="my-cbx" type="checkbox" name="autocomplete_commands_enabled" id="autocomplete_commands_enabled" value="1"{{ if .Data.AutocompleteCommandsEnabled }} checked{{ end }} /> 151 <label for="autocomplete_commands_enabled" class="toggle"><span></span></label> 152 </div> 153 <label class="form-check-label" for="autocomplete_commands_enabled">{{ t "Autocomplete slash commands" . }}</label> 154 </div> 155 <div class="form-check form-check-1"> 156 <div class="checkbox-wrapper form-check-input"> 157 <input class="my-cbx" type="checkbox" name="spellcheck_enabled" id="spellcheck_enabled" value="1"{{ if .Data.SpellcheckEnabled }} checked{{ end }} /> 158 <label for="spellcheck_enabled" class="toggle"><span></span></label> 159 </div> 160 <label class="form-check-label" for="spellcheck_enabled">{{ t "Enable spellcheck in chat input" . }}</label> 161 </div> 162 <div class="form-check form-check-1"> 163 <div class="checkbox-wrapper form-check-input"> 164 <input class="my-cbx" type="checkbox" name="afk_indicator_enabled" id="afk_indicator_enabled" value="1"{{ if .Data.AfkIndicatorEnabled }} checked{{ end }} /> 165 <label for="afk_indicator_enabled" class="toggle"><span></span></label> 166 </div> 167 <label class="form-check-label" for="afk_indicator_enabled">{{ t "Display afk indicator" . }}</label> 168 </div> 169 <div class="form-check form-check-1"> 170 <div class="checkbox-wrapper form-check-input"> 171 <input class="my-cbx" type="checkbox" name="display_delete_button" id="display_delete_button" value="1"{{ if .Data.DisplayDeleteButton }} checked{{ end }} /> 172 <label for="display_delete_button" class="toggle"><span></span></label> 173 </div> 174 <label class="form-check-label" for="display_delete_button">{{ t "Display delete button" . }}</label> 175 </div> 176 {{ if $.AuthUser.CanUseMultiline }} 177 <div class="form-check form-check-1"> 178 <div class="checkbox-wrapper form-check-input"> 179 <input class="my-cbx" type="checkbox" name="manual_multiline" id="manual_multiline" value="1"{{ if .Data.ManualMultiline }} checked{{ end }} /> 180 <label for="manual_multiline" class="toggle"><span></span></label> 181 </div> 182 <label class="form-check-label" for="manual_multiline">{{ t "Enable manual multiline" . }}</label> 183 </div> 184 {{ end }} 185 <div class="form-check form-check-1"> 186 <div class="checkbox-wrapper form-check-input"> 187 <input class="my-cbx" type="checkbox" name="notify_chess_games" id="notify_chess_games" value="1"{{ if .Data.NotifyChessGames }} checked{{ end }} /> 188 <label for="notify_chess_games" class="toggle"><span></span></label> 189 </div> 190 <label class="form-check-label" for="notify_chess_games">{{ t "Notify chess games" . }}</label> 191 </div> 192 <div class="form-check form-check-1"> 193 <div class="checkbox-wrapper form-check-input"> 194 <input class="my-cbx" type="checkbox" name="notify_chess_move" id="notify_chess_move" value="1"{{ if .Data.NotifyChessMove }} checked{{ end }} /> 195 <label for="notify_chess_move" class="toggle"><span></span></label> 196 </div> 197 <label class="form-check-label" for="notify_chess_move">{{ t "Notify chess move" . }}</label> 198 </div> 199 <div class="form-check form-check-1"> 200 <div class="checkbox-wrapper form-check-input"> 201 <input class="my-cbx" type="checkbox" name="use_stream" id="use_stream" value="1"{{ if .Data.UseStream }} checked{{ end }} /> 202 <label for="use_stream" class="toggle"><span></span></label> 203 </div> 204 <label class="form-check-label" for="use_stream">{{ t "Use chat stream version" . }}</label> 205 </div> 206 <div class="form-check form-check-1"> 207 <div class="checkbox-wrapper form-check-input"> 208 <input class="my-cbx" type="checkbox" name="use_stream_menu" id="use_stream_menu" value="1"{{ if .Data.UseStreamMenu }} checked{{ end }} /> 209 <label for="use_stream_menu" class="toggle"><span></span></label> 210 </div> 211 <label class="form-check-label" for="use_stream_menu">{{ t "Use chat menu stream version" . }}</label> 212 </div> 213 <div class="form-check form-check-1"> 214 <div class="checkbox-wrapper form-check-input"> 215 <input class="my-cbx" type="checkbox" name="use_stream_top_bar" id="use_stream_top_bar" value="1"{{ if .Data.UseStreamTopBar }} checked{{ end }} /> 216 <label for="use_stream_top_bar" class="toggle"><span></span></label> 217 </div> 218 <label class="form-check-label" for="use_stream_top_bar">{{ t "Use chat top-bar stream version" . }}</label> 219 </div> 220 <div class="form-check form-check-1"> 221 <div class="checkbox-wrapper form-check-input"> 222 <input class="my-cbx" type="checkbox" name="display_alive_indicator" id="display_alive_indicator" value="1"{{ if .Data.DisplayAliveIndicator }} checked{{ end }} /> 223 <label for="display_alive_indicator" class="toggle"><span></span></label> 224 </div> 225 <label class="form-check-label" for="display_alive_indicator">{{ t "Display alive indicator" . }}</label> 226 </div> 227 <div class="form-check form-check-1"> 228 <div class="checkbox-wrapper form-check-input"> 229 <input class="my-cbx" type="checkbox" name="confirm_external_links" id="confirm_external_links" value="1"{{ if .AuthUser.ConfirmExternalLinks }} checked{{ end }} /> 230 <label for="confirm_external_links" class="toggle"><span></span></label> 231 </div> 232 <label class="form-check-label" for="confirm_external_links">Confirm before opening external links</label> 233 </div> 234 <div class="form-check form-check-1"> 235 <div class="checkbox-wrapper form-check-input"> 236 <input class="my-cbx" type="checkbox" name="chess_sounds_enabled" id="chess_sounds_enabled" value="1"{{ if .AuthUser.ChessSoundsEnabled }} checked{{ end }} /> 237 <label for="chess_sounds_enabled" class="toggle"><span></span></label> 238 </div> 239 <label class="form-check-label" for="chess_sounds_enabled">Enabled chess sounds</label> 240 </div> 241 <div class="form-check form-check-1"> 242 <div class="checkbox-wrapper form-check-input"> 243 <input class="my-cbx" type="checkbox" name="poker_sounds_enabled" id="poker_sounds_enabled" value="1"{{ if .AuthUser.PokerSoundsEnabled }} checked{{ end }} /> 244 <label for="poker_sounds_enabled" class="toggle"><span></span></label> 245 </div> 246 <label class="form-check-label" for="poker_sounds_enabled">Enabled poker sounds</label> 247 </div> 248 {{ if $.AuthUser.IsModerator }} 249 <div class="form-check form-check-1"> 250 <div class="checkbox-wrapper form-check-input"> 251 <input class="my-cbx" type="checkbox" name="display_hellbanned" id="display_hellbanned" value="1"{{ if .Data.DisplayHellbanned }} checked{{ end }} /> 252 <label for="display_hellbanned" class="toggle"><span></span></label> 253 </div> 254 <label class="form-check-label" for="display_hellbanned">{{ t "Display hellbanned messages" . }}</label> 255 </div> 256 <div class="form-check form-check-1"> 257 <div class="checkbox-wrapper form-check-input"> 258 <input class="my-cbx" type="checkbox" name="display_moderators" id="display_moderators" value="1"{{ if .Data.DisplayModerators }} checked{{ end }} /> 259 <label for="display_moderators" class="toggle"><span></span></label> 260 </div> 261 <label class="form-check-label" for="display_moderators">{{ t "Display moderators messages" . }}</label> 262 </div> 263 <div class="form-check form-check-1"> 264 <div class="checkbox-wrapper form-check-input"> 265 <input class="my-cbx" type="checkbox" name="display_hellban_button" id="display_hellban_button" value="1"{{ if .Data.DisplayHellbanButton }} checked{{ end }} /> 266 <label for="display_hellban_button" class="toggle"><span></span></label> 267 </div> 268 <label class="form-check-label" for="display_hellban_button">{{ t "Display hellban button" . }}</label> 269 </div> 270 <div class="form-check form-check-1"> 271 <div class="checkbox-wrapper form-check-input"> 272 <input class="my-cbx" type="checkbox" name="display_kick_button" id="display_kick_button" value="1"{{ if .Data.DisplayKickButton }} checked{{ end }} /> 273 <label for="display_kick_button" class="toggle"><span></span></label> 274 </div> 275 <label class="form-check-label" for="display_kick_button">{{ t "Display kick button" . }}</label> 276 </div> 277 {{ end }} 278 </div> 279 <div class="form-group"> 280 <label for="theme">{{ t "Theme" . }}</label> 281 <select id="theme" name="theme" class="form-control"> 282 <option value="0"{{ if eq .Data.Theme 0 }} selected{{ end }}>Default</option> 283 <option value="1"{{ if eq .Data.Theme 1 }} selected{{ end }}>Christmas</option> 284 <option value="2"{{ if eq .Data.Theme 2 }} selected{{ end }}>Plain</option> 285 </select> 286 </div> 287 <div class="form-group"> 288 <table> 289 <tr> 290 <td> 291 <div class="form-check form-check-1"> 292 <div class="checkbox-wrapper form-check-input"> 293 <input class="my-cbx" type="checkbox" name="notify_new_message" id="notify_new_message" value="1"{{ if .Data.NotifyNewMessage }} checked{{ end }} /> 294 <label for="notify_new_message" class="toggle"><span></span></label> 295 </div> 296 <label class="form-check-label" for="notify_new_message">{{ t "Notify on new message" . }}</label> 297 </div> 298 </td> 299 <!-- <td>--> 300 <!-- <select name="notify_new_message_sound">--> 301 <!-- <option value="1"{{ if eq .Data.NotifyNewMessageSound 1 }} selected{{ end }}>Sound 1</option>--> 302 <!-- <option value="2"{{ if eq .Data.NotifyNewMessageSound 2 }} selected{{ end }}>Sound 2</option>--> 303 <!-- <option value="3"{{ if eq .Data.NotifyNewMessageSound 3 }} selected{{ end }}>Sound 3</option>--> 304 <!-- <option value="4"{{ if eq .Data.NotifyNewMessageSound 4 }} selected{{ end }}>Sound 4</option>--> 305 <!-- </select>--> 306 <!-- </td>--> 307 </tr> 308 <tr> 309 <td> 310 <div class="form-check form-check-1"> 311 <div class="checkbox-wrapper form-check-input"> 312 <input class="my-cbx" type="checkbox" name="notify_tagged" id="notify_tagged" value="1"{{ if .Data.NotifyTagged }} checked{{ end }} /> 313 <label for="notify_tagged" class="toggle"><span></span></label> 314 </div> 315 <label class="form-check-label" for="notify_tagged">{{ t "Notify when tagged" . }}</label> 316 </div> 317 </td> 318 <!-- <td>--> 319 <!-- <select name="notify_tagged_sound">--> 320 <!-- <option value="1"{{ if eq .Data.NotifyTaggedSound 1 }} selected{{ end }}>Sound 1</option>--> 321 <!-- <option value="2"{{ if eq .Data.NotifyTaggedSound 2 }} selected{{ end }}>Sound 2</option>--> 322 <!-- <option value="3"{{ if eq .Data.NotifyTaggedSound 3 }} selected{{ end }}>Sound 3</option>--> 323 <!-- <option value="4"{{ if eq .Data.NotifyTaggedSound 4 }} selected{{ end }}>Sound 4</option>--> 324 <!-- </select>--> 325 <!-- </td>--> 326 </tr> 327 <tr> 328 <td> 329 <div class="form-check form-check-1"> 330 <div class="checkbox-wrapper form-check-input"> 331 <input class="my-cbx" type="checkbox" name="notify_pmmed" id="notify_pmmed" value="1"{{ if .Data.NotifyPmmed }} checked{{ end }} /> 332 <label for="notify_pmmed" class="toggle"><span></span></label> 333 </div> 334 <label class="form-check-label" for="notify_pmmed">{{ t "Notify when receiving private message" . }}</label> 335 </div> 336 </td> 337 <!-- <td>--> 338 <!-- <select name="notify_pmmed_sound">--> 339 <!-- <option value="1"{{ if eq .Data.NotifyPmmedSound 1 }} selected{{ end }}>Sound 1</option>--> 340 <!-- <option value="2"{{ if eq .Data.NotifyPmmedSound 2 }} selected{{ end }}>Sound 2</option>--> 341 <!-- <option value="3"{{ if eq .Data.NotifyPmmedSound 3 }} selected{{ end }}>Sound 3</option>--> 342 <!-- <option value="4"{{ if eq .Data.NotifyPmmedSound 4 }} selected{{ end }}>Sound 4</option>--> 343 <!-- </select>--> 344 <!-- </td>--> 345 </tr> 346 </table> 347 </div> 348 <div class="form-group"> 349 <input type="submit" value="{{ t "Save" . }}" class="btn btn-primary" /> 350 </div> 351 </form> 352 </div> 353 </div> 354 355 {{ end }}