dkforest

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

commit 31a334c67af02a4aa7802b37529b607630df2696
parent a485ea06d549deaba61bae1cf8eedc5a5803547c
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Tue,  3 Oct 2023 20:38:02 -0400

prevent self-kick

Diffstat:
Mpkg/database/utils/utils.go | 4++++
1 file changed, 4 insertions(+), 0 deletions(-)

diff --git a/pkg/database/utils/utils.go b/pkg/database/utils/utils.go @@ -130,6 +130,10 @@ func kick(db *database.DkfDB, kicked, kickedBy database.User, silent, purge bool if !kickedBy.IsAdmin && kicked.IsModerator() { return errors.New("cannot kick another moderator") } + // Can't kick yourself as a moderator/admin + if (kicked.IsAdmin || kicked.IsModerator()) && kickedBy.ID == kicked.ID { + return errors.New("cannot kick yourself") + } db.NewAudit(kickedBy, fmt.Sprintf("kick %s #%d", kicked.Username, kicked.ID)) kicked.Verified = false