dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

data.go (22031B)


      1 package handlers
      2 
      3 import (
      4 	"dkforest/pkg/managers"
      5 	"dkforest/pkg/odometer"
      6 	"dkforest/pkg/web/handlers/interceptors"
      7 	"time"
      8 
      9 	"dkforest/pkg/database"
     10 	"dkforest/pkg/utils"
     11 )
     12 
     13 type firstUseData struct {
     14 	Username   string
     15 	Email      string
     16 	Password   string
     17 	RePassword string
     18 	Errors     database.UserErrors
     19 }
     20 
     21 type homeData struct {
     22 }
     23 
     24 type homeAttackData struct {
     25 }
     26 
     27 type loginData struct {
     28 	Autofocus          int64
     29 	Username           string
     30 	Password           string
     31 	SessionDurationSec int64
     32 	Redirect           string
     33 	Error              string
     34 	HomeUsersList      bool
     35 	CaptchaRequired    bool
     36 	ErrCaptcha         string
     37 	CaptchaID          string
     38 	CaptchaImg         string
     39 	CaptchaAnswerImg   string
     40 	Online             []managers.UserInfo
     41 }
     42 
     43 type sessionsTwoFactorData struct {
     44 	Token string
     45 	Error string
     46 }
     47 
     48 type sessionsGpgTwoFactorData struct {
     49 	Token            string
     50 	EncryptedMessage string
     51 	Code             string
     52 	Error            string
     53 	ErrorCode        string
     54 }
     55 
     56 type sessionsGpgSignTwoFactorData struct {
     57 	Token              string
     58 	ToBeSignedMessage  string
     59 	SignedMessage      string
     60 	Error              string
     61 	ErrorSignedMessage string
     62 }
     63 
     64 type sessionsTwoFactorRecoveryData struct {
     65 	Token string
     66 	Error string
     67 }
     68 
     69 type waitData struct {
     70 	WaitTime  int64
     71 	Frames    []string
     72 	WaitToken string
     73 }
     74 
     75 type signupData struct {
     76 	Username         string
     77 	Password         string
     78 	RePassword       string
     79 	Pow              string
     80 	CaptchaImg       string
     81 	CaptchaAnswerImg string
     82 	CaptchaID        string
     83 	Captcha          string
     84 	CaptchaSec       int64
     85 	Frames           []string
     86 	HasSolvedCaptcha bool
     87 	ErrCaptcha       string
     88 	ErrPow           string
     89 	Errors           database.UserErrors
     90 	PowEnabled       bool
     91 	Redirect         string
     92 }
     93 
     94 type byteRoadChallengeData struct {
     95 	ActiveTab            string
     96 	CaptchaImg           string
     97 	CaptchaAnswerImg     string
     98 	CaptchaID            string
     99 	Captcha              string
    100 	Username             string
    101 	Password             string
    102 	ErrCaptcha           string
    103 	ErrRegistration      string
    104 	CaptchaSolved        bool
    105 	Registered           bool
    106 	FlagFound            bool
    107 	NbAccountsRegistered int64
    108 	SessionExp           time.Duration
    109 }
    110 
    111 type forgotPasswordBypassChallengeData struct {
    112 	ActiveTab string
    113 }
    114 
    115 type forgotPasswordData struct {
    116 	Error              string
    117 	Username           database.Username
    118 	UsernameError      string
    119 	Frames             []string
    120 	CaptchaSec         int64
    121 	Captcha            string
    122 	CaptchaID          string
    123 	CaptchaImg         string
    124 	CaptchaAnswerImg   string
    125 	ErrCaptcha         string
    126 	GpgMode            bool
    127 	ToBeSignedMessage  string
    128 	SignedMessage      string
    129 	ErrorSignedMessage string
    130 	EncryptedMessage   string
    131 	Code               string
    132 	ErrorCode          string
    133 	Token              string
    134 	Step               int64
    135 	NewPassword        string
    136 	ErrorNewPassword   string
    137 	RePassword         string
    138 	ErrorRePassword    string
    139 	Redirect           string
    140 }
    141 
    142 type forgotPasswordResetData struct {
    143 	Error      string
    144 	Username   string
    145 	Password   string
    146 	RePassword string
    147 }
    148 
    149 type newsData struct {
    150 	News []database.ForumNews
    151 }
    152 
    153 type gistData struct {
    154 	Gist        database.Gist
    155 	Highlighted string
    156 	Error       string
    157 }
    158 
    159 type ForumThreadSearch struct {
    160 	UUID             string
    161 	Name             string
    162 	Author           string
    163 	AuthorChatColor  string
    164 	LastMsgAuthor    string
    165 	LastMsgChatColor string
    166 	LastMsgChatFont  string
    167 	LastMsgCreatedAt time.Time
    168 	RepliesCount     int64
    169 	CreatedAt        time.Time
    170 }
    171 
    172 type ForumMessageSearch struct {
    173 	UUID            string
    174 	ThreadUUID      string
    175 	ThreadName      string
    176 	Message         string
    177 	Snippet         string
    178 	Author          string
    179 	AuthorChatFont  string
    180 	AuthorChatColor string
    181 	CreatedAt       time.Time
    182 }
    183 
    184 type forumSearchData struct {
    185 	Search        string
    186 	AuthorFilter  string
    187 	ForumThreads  []ForumThreadSearch
    188 	ForumMessages []ForumMessageSearch
    189 }
    190 
    191 type linksUploadData struct {
    192 	CsvStr string
    193 	Error  string
    194 }
    195 
    196 type newLinkData struct {
    197 	IsEdit              bool
    198 	Link                string
    199 	Title               string
    200 	Description         string
    201 	Shorthand           string
    202 	Categories          string
    203 	Tags                string
    204 	ErrorLink           string
    205 	ErrorTitle          string
    206 	ErrorDescription    string
    207 	ErrorShorthand      string
    208 	ErrorCategories     string
    209 	ErrorTags           string
    210 	PGPTitle            string
    211 	PGPDescription      string
    212 	PGPPublicKey        string
    213 	ErrorPGPTitle       string
    214 	ErrorPGPDescription string
    215 	ErrorPGPPublicKey   string
    216 	MirrorLink          string
    217 	ErrorMirrorLink     string
    218 	LinkPgps            []database.LinksPgp
    219 	Mirrors             []database.LinksMirror
    220 }
    221 
    222 type editLinkData struct {
    223 	IsEdit              bool
    224 	Link                string
    225 	Title               string
    226 	Description         string
    227 	Shorthand           string
    228 	Categories          string
    229 	Tags                string
    230 	ErrorLink           string
    231 	ErrorTitle          string
    232 	ErrorDescription    string
    233 	ErrorShorthand      string
    234 	ErrorCategories     string
    235 	ErrorTags           string
    236 	PGPTitle            string
    237 	PGPDescription      string
    238 	PGPPublicKey        string
    239 	ErrorPGPTitle       string
    240 	ErrorPGPDescription string
    241 	ErrorPGPPublicKey   string
    242 	MirrorLink          string
    243 	ErrorMirrorLink     string
    244 	LinkPgps            []database.LinksPgp
    245 	Mirrors             []database.LinksMirror
    246 }
    247 
    248 type claimLinkData struct {
    249 	Link        database.Link
    250 	Certificate string
    251 	Signature   string
    252 	Error       string
    253 }
    254 
    255 type linkData struct {
    256 	Link    database.Link
    257 	PgpKeys []database.LinksPgp
    258 	Mirrors []database.LinksMirror
    259 }
    260 
    261 type linksData struct {
    262 	Categories  []database.CategoriesResult
    263 	Links       []database.Link
    264 	LinksCount  int64
    265 	CurrentPage int64
    266 	MaxPage     int64
    267 	Search      string
    268 }
    269 
    270 type forumData struct {
    271 	ForumCategories []database.ForumCategory
    272 	ForumThreads    []database.ForumThreadAug
    273 }
    274 
    275 type forumCategoryData struct {
    276 	ForumCategories []database.ForumCategory
    277 	ForumThreads    []database.ForumThreadAug
    278 }
    279 
    280 type threadData struct {
    281 	Thread        database.ForumThread
    282 	Messages      []database.ForumMessage
    283 	MessagesCount int64
    284 	CurrentPage   int64
    285 	MaxPage       int64
    286 	Search        string
    287 	IsSubscribed  bool
    288 }
    289 
    290 type deleteForumMessageData struct {
    291 	Thread  database.ForumThread
    292 	Message database.ForumMessage
    293 }
    294 
    295 type deleteLinkData struct {
    296 	Link database.Link
    297 }
    298 
    299 type deleteLinkPgpData struct {
    300 	Link    database.Link
    301 	LinkPgp database.LinksPgp
    302 }
    303 
    304 type deleteLinkMirrorData struct {
    305 	Link       database.Link
    306 	LinkMirror database.LinksMirror
    307 }
    308 
    309 type editForumThreadData struct {
    310 	Thread     database.ForumThread
    311 	Categories []database.ForumCategory
    312 }
    313 
    314 type deleteForumThreadData struct {
    315 	Thread database.ForumThread
    316 }
    317 
    318 type clubData struct {
    319 	ActiveTab    string
    320 	ForumThreads []database.ForumThreadAug
    321 }
    322 
    323 type threadReplyData struct {
    324 	IsEdit       bool
    325 	Thread       database.ForumThread
    326 	Message      string
    327 	ErrorMessage string
    328 }
    329 
    330 type clubNewThreadReplyData struct {
    331 	ActiveTab    string
    332 	IsEdit       bool
    333 	Thread       database.ForumThread
    334 	Message      string
    335 	ErrorMessage string
    336 }
    337 
    338 type newThreadData struct {
    339 	ThreadName      string
    340 	Message         string
    341 	ErrorMessage    string
    342 	ErrorThreadName string
    343 }
    344 
    345 type clubNewThreadData struct {
    346 	ActiveTab       string
    347 	ThreadName      string
    348 	Message         string
    349 	ErrorMessage    string
    350 	ErrorThreadName string
    351 }
    352 
    353 type clubMembersData struct {
    354 	ActiveTab string
    355 	Members   []database.User
    356 }
    357 
    358 type clubThreadData struct {
    359 	ActiveTab string
    360 	Thread    database.ForumThread
    361 	Messages  []database.ForumMessage
    362 }
    363 
    364 type vipData struct {
    365 	ActiveTab   string
    366 	UsersBadges []database.UserBadge
    367 }
    368 
    369 type roomsData struct {
    370 	Rooms []database.ChatRoomAug
    371 }
    372 
    373 type chatData struct {
    374 	Error            string
    375 	RoomPassword     string
    376 	GuestUsername    string
    377 	Pow              string
    378 	Room             database.ChatRoom
    379 	IsOfficialRoom   bool
    380 	DisplayTutorial  bool
    381 	Multiline        bool
    382 	ChatQueryParams  string
    383 	RedRoom          bool
    384 	IsSubscribed     bool
    385 	CaptchaID        string
    386 	CaptchaImg       string
    387 	CaptchaAnswerImg string
    388 	ErrGuestUsername string
    389 	ErrPow           string
    390 	ErrCaptcha       string
    391 	TutoSecs         int64
    392 	TutoFrames       []string
    393 	IsStream         bool
    394 	PowEnabled       bool
    395 }
    396 
    397 type chatCodepData struct {
    398 	Code string
    399 }
    400 
    401 type chatHelpData struct {
    402 }
    403 
    404 type chatDeleteData struct {
    405 	Room database.ChatRoom
    406 }
    407 
    408 type chatArchiveData struct {
    409 	Room          database.ChatRoom
    410 	Messages      database.ChatMessages
    411 	DateFormat    string
    412 	UUID          string
    413 	MessagesCount int64
    414 	CurrentPage   int64
    415 	MaxPage       int64
    416 }
    417 
    418 type roomChatSettingsData struct {
    419 	Room database.ChatRoom
    420 }
    421 
    422 type chatCreateRoomData struct {
    423 	RoomName         string
    424 	Password         string
    425 	IsListed         bool
    426 	IsEphemeral      bool
    427 	Error            string
    428 	ErrorRoomName    string
    429 	CaptchaImg       string
    430 	CaptchaAnswerImg string
    431 	CaptchaID        string
    432 	Captcha          string
    433 	ErrCaptcha       string
    434 }
    435 
    436 type odometerData struct {
    437 	Odometer *odometer.Odometer
    438 }
    439 
    440 type captchaData struct {
    441 	Ts               int64
    442 	Seed             int64
    443 	CaptchaSec       int64
    444 	Frames           []string
    445 	CaptchaImg       string
    446 	CaptchaAnswerImg string
    447 	CaptchaID        string
    448 	ShowAnswer       bool
    449 	Answer           string
    450 	Captcha          string
    451 	Success          string
    452 	Error            string
    453 }
    454 
    455 type captchaRequiredData struct {
    456 	CaptchaDescription string
    457 	CaptchaID          string
    458 	CaptchaImg         string
    459 	CaptchaAnswerImg   string
    460 	ErrCaptcha         string
    461 }
    462 
    463 type bhcData struct {
    464 	CaptchaImg       string
    465 	CaptchaAnswerImg string
    466 	CaptchaID        string
    467 	Captcha          string
    468 	Success          string
    469 	Error            string
    470 }
    471 
    472 type adminData struct {
    473 	ActiveTab   string
    474 	Query       string
    475 	Users       []database.User
    476 	UsersCount  int64
    477 	CurrentPage int64
    478 	MaxPage     int64
    479 	Error       string
    480 }
    481 
    482 type adminSessionsData struct {
    483 	ActiveTab     string
    484 	Query         string
    485 	Sessions      []database.Session
    486 	SessionsCount int64
    487 	CurrentPage   int64
    488 	MaxPage       int64
    489 	Error         string
    490 }
    491 
    492 type adminIgnoredData struct {
    493 	ActiveTab    string
    494 	Query        string
    495 	Ignored      []database.IgnoredUser
    496 	IgnoredCount int64
    497 	CurrentPage  int64
    498 	MaxPage      int64
    499 	Error        string
    500 }
    501 
    502 type backupData struct {
    503 	ActiveTab string
    504 	Error     string
    505 }
    506 
    507 type adminDdosData struct {
    508 	ActiveTab                string
    509 	RPS                      int64
    510 	RejectedReq              int64
    511 	SignupPageLoad           int64
    512 	SignupFailed             int64
    513 	SignupSucceed            int64
    514 	BHCCaptchaGenerated      int64
    515 	BHCCaptchaSuccess        int64
    516 	BHCCaptchaFailed         int64
    517 	CaptchaRequiredGenerated int64
    518 	CaptchaRequiredSuccess   int64
    519 	CaptchaRequiredFailed    int64
    520 }
    521 
    522 type adminAuditsData struct {
    523 	ActiveTab      string
    524 	AuditLogs      []database.AuditLog
    525 	AuditLogsCount int64
    526 	CurrentPage    int64
    527 	MaxPage        int64
    528 	Error          string
    529 }
    530 
    531 type adminRoomsData struct {
    532 	ActiveTab   string
    533 	Query       string
    534 	Rooms       []database.ChatRoom
    535 	RoomsCount  int64
    536 	CurrentPage int64
    537 	MaxPage     int64
    538 	Error       string
    539 }
    540 
    541 type adminCaptchaData struct {
    542 	ActiveTab     string
    543 	Query         string
    544 	Captchas      []database.CaptchaRequest
    545 	CaptchasCount int64
    546 	CurrentPage   int64
    547 	MaxPage       int64
    548 	Error         string
    549 }
    550 
    551 type adminSettingsData struct {
    552 	ActiveTab            string
    553 	ProtectHome          bool
    554 	HomeUsersList        bool
    555 	ForceLoginCaptcha    bool
    556 	SignupEnabled        bool
    557 	SignupFakeEnabled    bool
    558 	DownloadsEnabled     bool
    559 	ForumEnabled         bool
    560 	MaybeAuthEnabled     bool
    561 	PowEnabled           bool
    562 	PokerWithdrawEnabled bool
    563 	CaptchaDifficulty    int64
    564 	MoneroPrice          float64
    565 }
    566 
    567 type settingsPGPData struct {
    568 	ActiveTab      string
    569 	PGPPublicKeyID string
    570 }
    571 
    572 type settingsAgeData struct {
    573 	ActiveTab    string
    574 	AgePublicKey string
    575 }
    576 
    577 type addPGPData struct {
    578 	GpgMode            bool
    579 	SignedMessage      string
    580 	ToBeSignedMessage  string
    581 	ErrorSignedMessage string
    582 	PGPPublicKey       string
    583 	ErrorPGPPublicKey  string
    584 	Error              string
    585 	Code               string
    586 	EncryptedMessage   string
    587 	ErrorCode          string
    588 }
    589 
    590 type addAgeData struct {
    591 	AgePublicKey      string
    592 	ErrorAgePublicKey string
    593 	Error             string
    594 	Code              string
    595 	EncryptedMessage  string
    596 	ErrorCode         string
    597 }
    598 
    599 type diableTotpData struct {
    600 	IsEnabled     bool
    601 	Password      string
    602 	ErrorPassword string
    603 }
    604 
    605 type gpgTwoFactorAuthenticationVerifyData struct {
    606 	IsEnabled        bool
    607 	GpgTwoFactorMode bool
    608 	Password         string
    609 	ErrorPassword    string
    610 }
    611 
    612 type twoFactorAuthenticationVerifyData struct {
    613 	QRCode        string
    614 	Secret        string
    615 	RecoveryCode  string
    616 	Password      string
    617 	Error         string
    618 	ErrorPassword string
    619 }
    620 
    621 type settingsChatPMData struct {
    622 	ActiveTab        string
    623 	PmMode           int64
    624 	BlockNewUsersPm  bool
    625 	AddWhitelist     database.Username
    626 	AddBlacklist     database.Username
    627 	WhitelistedUsers []database.PmWhitelistedUsers
    628 	BlacklistedUsers []database.PmBlacklistedUsers
    629 	Error            string
    630 }
    631 
    632 type settingsChatIgnoreData struct {
    633 	ActiveTab    string
    634 	PmMode       int64
    635 	AddIgnored   database.Username
    636 	IgnoredUsers []database.IgnoredUser
    637 	Error        string
    638 }
    639 
    640 type settingsChatSnippetsData struct {
    641 	ActiveTab string
    642 	Snippets  []database.Snippet
    643 	Name      string
    644 	Text      string
    645 	Error     string
    646 }
    647 
    648 type shopData struct {
    649 	Img     string
    650 	Invoice database.XmrInvoice
    651 }
    652 
    653 type settingsChatData struct {
    654 	ActiveTab                   string
    655 	ChatColor                   string
    656 	ChatBackgroundColor         string
    657 	ChatFont                    int64
    658 	RefreshRate                 int64
    659 	ChatBold                    bool
    660 	DateFormat                  int64
    661 	ChatItalic                  bool
    662 	AllFonts                    []utils.Font
    663 	ChatReadMarkerEnabled       bool
    664 	ChatReadMarkerColor         string
    665 	ChatReadMarkerSize          int64
    666 	DisplayHellbanned           bool
    667 	DisplayModerators           bool
    668 	HideIgnoredUsersFromList    bool
    669 	HellbanOpacity              float64
    670 	CodeBlockHeight             int64
    671 	HideRightColumn             bool
    672 	ChatBarAtBottom             bool
    673 	AutocompleteCommandsEnabled bool
    674 	SpellcheckEnabled           bool
    675 	AfkIndicatorEnabled         bool
    676 	DisplayDeleteButton         bool
    677 	DisplayKickButton           bool
    678 	DisplayHellbanButton        bool
    679 	UseStream                   bool
    680 	UseStreamMenu               bool
    681 	UseStreamTopBar             bool
    682 	DisplayAliveIndicator       bool
    683 	ManualMultiline             bool
    684 	ConfirmExternalLinks        bool
    685 	ChessSoundsEnabled          bool
    686 	PokerSoundsEnabled          bool
    687 	NotifyChessGames            bool
    688 	NotifyChessMove             bool
    689 	NotifyNewMessage            bool
    690 	NotifyTagged                bool
    691 	NotifyPmmed                 bool
    692 	NotifyNewMessageSound       int64
    693 	NotifyTaggedSound           int64
    694 	NotifyPmmedSound            int64
    695 	Theme                       int64
    696 	Error                       string
    697 }
    698 
    699 type settingsUploadsData struct {
    700 	ActiveTab string
    701 	TotalSize int64
    702 	Files     []database.Upload
    703 }
    704 
    705 type settingsPublicNotesData struct {
    706 	ActiveTab string
    707 	Notes     database.UserPublicNote
    708 	Error     string
    709 }
    710 
    711 type settingsPrivateNotesData struct {
    712 	ActiveTab string
    713 	Notes     database.UserPrivateNote
    714 	Error     string
    715 }
    716 
    717 type InboxTmp struct {
    718 	IsNotif bool
    719 	database.ChatInboxMessage
    720 	database.Notification
    721 	database.SessionNotification
    722 }
    723 
    724 type settingsInboxData struct {
    725 	ActiveTab            string
    726 	Notifs               []InboxTmp
    727 	ChatMessages         []database.ChatInboxMessage
    728 	Notifications        []database.Notification
    729 	SessionNotifications []database.SessionNotification
    730 }
    731 
    732 type settingsInboxSentData struct {
    733 	ActiveTab     string
    734 	ChatInboxSent []database.ChatInboxMessage
    735 }
    736 
    737 type WrapperSession struct {
    738 	database.Session
    739 	CurrentSession bool
    740 }
    741 
    742 type settingsAPIData struct {
    743 	ActiveTab   string
    744 	APIKey      string
    745 	NeedConfirm bool
    746 }
    747 
    748 type settingsSecurityData struct {
    749 	ActiveTab string
    750 	Logs      []database.SecurityLog
    751 }
    752 
    753 type settingsSessionsData struct {
    754 	ActiveTab string
    755 	Sessions  []WrapperSession
    756 }
    757 
    758 type loginCompletedData struct {
    759 	SecretPhrase string
    760 	RedirectURL  string
    761 }
    762 
    763 type settingsSecretPhraseData struct {
    764 	ActiveTab            string
    765 	CurrentPassword      string
    766 	SecretPhrase         string
    767 	ErrorCurrentPassword string
    768 	ErrorSecretPhrase    string
    769 }
    770 
    771 type settingsPasswordData struct {
    772 	ActiveTab              string
    773 	OldPassword            string
    774 	NewPassword            string
    775 	RePassword             string
    776 	ErrorOldPassword       string
    777 	ErrorNewPassword       string
    778 	ErrorRePassword        string
    779 	OldDuressPassword      string
    780 	NewDuressPassword      string
    781 	ReDuressPassword       string
    782 	ErrorOldDuressPassword string
    783 	ErrorNewDuressPassword string
    784 	ErrorReDuressPassword  string
    785 }
    786 
    787 type settingsAccountData struct {
    788 	AccountTooYoungErrorString   string
    789 	ActiveTab                    string
    790 	Username                     database.Username
    791 	Website                      string
    792 	Email                        string
    793 	LastSeenPublic               bool
    794 	TerminateAllSessionsOnLogout bool
    795 	Error                        string
    796 	ErrorLang                    string
    797 	ErrorUsername                string
    798 	ErrorAvatar                  string
    799 	ErrorEmail                   string
    800 	ErrorWebsite                 string
    801 }
    802 
    803 type settingsInvitationsData struct {
    804 	ActiveTab   string
    805 	Invitations []database.Invitation
    806 	Error       string
    807 	DkfOnion    string
    808 }
    809 
    810 type settingsWebsiteData struct {
    811 	ActiveTab      string
    812 	SignupEnabled  bool
    813 	SilentSelfKick bool
    814 	ForumEnabled   bool
    815 	Error          string
    816 }
    817 
    818 type adminEditUsereData struct {
    819 	IsEdit             bool
    820 	ActiveTab          string
    821 	User               database.User
    822 	Username           database.Username
    823 	Password           string
    824 	RePassword         string
    825 	ApiKey             string
    826 	Role               string
    827 	IsAdmin            bool
    828 	IsHellbanned       bool
    829 	Verified           bool
    830 	IsClubMember       bool
    831 	CanUploadFile      bool
    832 	CanUseForum        bool
    833 	CanUseMultiline    bool
    834 	CanUseChessAnalyze bool
    835 	CanSeeHellbanned   bool
    836 	IsIncognito        bool
    837 	CanChangeUsername  bool
    838 	CanUseUppercase    bool
    839 	CanChangeColor     bool
    840 	Vetted             bool
    841 	ChatColor          string
    842 	ChatFont           int64
    843 	SignupMetadata     string
    844 	CollectMetadata    bool
    845 	ChatTutorial       int64
    846 	Errors             database.UserErrors
    847 	AllFonts           []utils.Font
    848 }
    849 
    850 type adminEditRoomData struct {
    851 	IsEdit      bool
    852 	ActiveTab   string
    853 	IsEphemeral bool
    854 	IsListed    bool
    855 }
    856 
    857 type bhcliDownloadsHandlerData struct {
    858 	Files []downloadableFileInfo
    859 }
    860 
    861 type vipDownloadsHandlerData struct {
    862 	ActiveTab   string
    863 	Files       []downloadableFileInfo
    864 	FlagMessage string
    865 }
    866 
    867 type adminUploadsData struct {
    868 	ActiveTab string
    869 	Uploads   []database.Upload
    870 	TotalSize int64
    871 }
    872 
    873 type adminFiledropsData struct {
    874 	ActiveTab string
    875 	Filedrops []database.Filedrop
    876 	TotalSize int64
    877 }
    878 
    879 type adminDownloadsData struct {
    880 	ActiveTab      string
    881 	Downloads      []database.Download
    882 	DownloadsCount int64
    883 	CurrentPage    int64
    884 	MaxPage        int64
    885 }
    886 
    887 type adminGistsData struct {
    888 	ActiveTab   string
    889 	Gists       []database.Gist
    890 	GistsCount  int64
    891 	CurrentPage int64
    892 	MaxPage     int64
    893 }
    894 
    895 type adminCreateGistData struct {
    896 	ActiveTab string
    897 	IsEdit    bool
    898 	Name      string
    899 	Content   string
    900 	Password  string
    901 	Error     string
    902 	ErrorName string
    903 }
    904 
    905 type adminPokerAddressesData struct {
    906 	ActiveTab string
    907 	Addresses []string
    908 	Users     []database.User
    909 }
    910 
    911 type adminPokerTransactionsData struct {
    912 	ActiveTab           string
    913 	PokerCasino         database.PokerCasino
    914 	Transactions        []database.PokerXmrTransaction
    915 	TransactionsCount   int64
    916 	CurrentPage         int64
    917 	MaxPage             int64
    918 	Balance             database.Piconero
    919 	UnlockedBalance     database.Piconero
    920 	SumIn               database.Piconero
    921 	SumOut              database.Piconero
    922 	DiffInOut           database.Piconero
    923 	UsersRakeBack       database.PokerChip
    924 	Discrepancy         int64
    925 	DiscrepancyPiconero database.Piconero
    926 }
    927 
    928 type adminSpamFiltersData struct {
    929 	ActiveTab        string
    930 	SpamFiltersCount int64
    931 	SpamFilters      []database.SpamFilter
    932 	ID               int64
    933 	Filter           string
    934 	IsRegex          bool
    935 	Action           int64
    936 	NbMsg            int64
    937 	Error            string
    938 }
    939 
    940 type publicProfileData struct {
    941 	User              database.User
    942 	PublicNotes       database.UserPublicNote
    943 	UserStyle         string
    944 	GpgKeyExpiredTime *time.Time
    945 	GpgKeyExpired     bool
    946 	GpgKeyExpiredSoon bool
    947 }
    948 
    949 type fileDropData struct {
    950 	Filedrop database.Filedrop
    951 	Error    string
    952 	Success  string
    953 }
    954 
    955 type stego1RoadChallengeData struct {
    956 	ActiveTab   string
    957 	FlagMessage string
    958 }
    959 
    960 type chessData struct {
    961 	Games    []interceptors.ChessGame
    962 	Error    string
    963 	Username database.Username
    964 	Color    string
    965 	Pgn      string
    966 }
    967 
    968 type TmpTable struct {
    969 	database.PokerTable
    970 	TableBalance database.PokerChip
    971 	NbSeated     int
    972 }
    973 
    974 type pokerRakeBackData struct {
    975 	ReferralToken    string
    976 	ReferralURL      string
    977 	ReferredCount    int64
    978 	RakeBackPct      float64
    979 	SetReferralError string
    980 }
    981 
    982 type pokerTableData struct {
    983 	PokerTableSlug string
    984 }
    985 
    986 type pokerData struct {
    987 	XmrPrice           string
    988 	XmrBalance         database.Piconero
    989 	PokerXmrSubAddress string
    990 	Img                string
    991 	RakeBack           database.PokerChip
    992 	ChipsTest          database.PokerChip
    993 	Tables             []TmpTable
    994 	Transactions       []database.PokerXmrTransaction
    995 	MinWithdrawAmount  database.Piconero
    996 	WithdrawAmount     database.Piconero
    997 	WithdrawAddress    string
    998 	WithdrawUnique     int64
    999 	Error              string
   1000 	ErrorTable         string
   1001 	HelperAmount       string
   1002 	HelperType         string
   1003 	HelperXmr          string
   1004 	HelperpXmr         string
   1005 	HelperChips        database.PokerChip
   1006 	HelperUsd          string
   1007 	RakeBackPct        float64
   1008 }
   1009 
   1010 type powHelperData struct {
   1011 	Difficulty int64
   1012 }
   1013 
   1014 type externalLink1Data struct {
   1015 	Link string
   1016 }
   1017 
   1018 type chessAnalyzeData struct {
   1019 	Pgn string
   1020 }