dkforest

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

commit 7df839c3c615fc3488e2ff1c95ac454b1ff646bf
parent ac32bdc7f13bc333b86d14d2844034d58c56c800
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Fri,  3 Mar 2023 00:11:41 -0800

refactor + doc

Diffstat:
Mpkg/database/tableUploads.go | 4+++-
Mpkg/web/handlers/api/v1/topBarHandler.go | 8++++----
2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/pkg/database/tableUploads.go b/pkg/database/tableUploads.go @@ -25,7 +25,9 @@ type Upload struct { User User } -func (u *Upload) GetHTMLLink() string { +// DangerouslyGetHTMLLink makes a html link using the OrigFileName +// which is not sanitized and can be provided by the user. +func (u *Upload) DangerouslyGetHTMLLink() string { return `<a href="/uploads/` + u.FileName + `" rel="noopener noreferrer" target="_blank">` + u.OrigFileName + `</a>` } diff --git a/pkg/web/handlers/api/v1/topBarHandler.go b/pkg/web/handlers/api/v1/topBarHandler.go @@ -1051,7 +1051,7 @@ func convertPGPMessageToFile(html string, authUserID database.UserID) string { upload, _ := database.CreateUpload("pgp.txt", []byte(tmp), authUserID) msgBefore := html[0:startIdx] msgAfter := html[endIdx+len(pgpSuffix):] - html = msgBefore + ` [` + upload.GetHTMLLink() + `] ` + msgAfter + html = msgBefore + ` [` + upload.DangerouslyGetHTMLLink() + `] ` + msgAfter html = strings.TrimSpace(html) } return html @@ -1068,7 +1068,7 @@ func convertPGPPublicKeyToFile(html string, authUserID database.UserID) string { upload, _ := database.CreateUpload("pgp_pkey.txt", []byte(tmp), authUserID) msgBefore := html[0:startIdx] msgAfter := html[endIdx+len(pgpPKeySuffix):] - html = msgBefore + ` [` + upload.GetHTMLLink() + `] ` + msgAfter + html = msgBefore + ` [` + upload.DangerouslyGetHTMLLink() + `] ` + msgAfter html = strings.TrimSpace(html) } return html @@ -1082,7 +1082,7 @@ func convertPGPClearsignToFile(html string, authUserID database.UserID) string { upload, _ := database.CreateUpload("pgp_clearsign.txt", []byte(tmp), authUserID) msgBefore := html[0:startIdx] msgAfter := html[endIdx+len(pgpSignedSuffix):] - html = msgBefore + ` [` + upload.GetHTMLLink() + `] ` + msgAfter + html = msgBefore + ` [` + upload.DangerouslyGetHTMLLink() + `] ` + msgAfter html = strings.TrimSpace(html) } return html @@ -1141,7 +1141,7 @@ func convertAgeMessageToFile(html string, authUserID database.UserID) string { upload, _ := database.CreateUpload("age.txt", []byte(tmp), authUserID) msgBefore := html[0:startIdx] msgAfter := html[endIdx+len(ageSuffix):] - html = msgBefore + ` [` + upload.GetHTMLLink() + `] ` + msgAfter + html = msgBefore + ` [` + upload.DangerouslyGetHTMLLink() + `] ` + msgAfter html = strings.TrimSpace(html) } return html