dkforest

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

commit c731477ca87c9f32e74f075790b2d76bb4ab833d
parent 26f5a2f6e142c9ff1e13bf9769fd9fc46ba5d1ea
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Thu, 10 Nov 2022 12:45:15 -0800

add karma history table & general messages count

Diffstat:
Apkg/database/tableKarmaHistory.go | 23+++++++++++++++++++++++
Apkg/migrations/111.sql | 23+++++++++++++++++++++++
2 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/pkg/database/tableKarmaHistory.go b/pkg/database/tableKarmaHistory.go @@ -0,0 +1,23 @@ +package database + +import "time" + +type KarmaHistory struct { + ID int64 + Karma int64 + Description string + UserID int64 + FromUserID *int64 + CreatedAt time.Time +} + +func CreateKarmaHistory(karma int64, description string, userID int64, fromUserID *int64) (out KarmaHistory, err error) { + out = KarmaHistory{ + Karma: karma, + Description: description, + UserID: userID, + FromUserID: fromUserID, + } + err = DB.Create(&out).Error + return +} diff --git a/pkg/migrations/111.sql b/pkg/migrations/111.sql @@ -0,0 +1,23 @@ +-- +migrate Up +ALTER TABLE users ADD COLUMN general_messages_count INTEGER NOT NULL DEFAULT 0; + +CREATE TABLE IF NOT EXISTS karma_history ( + id INTEGER NOT NULL PRIMARY KEY, + user_id INTEGER NOT NULL, + from_user_id INTEGER NULL, + karma INTEGER NOT NULL, + description VARCHAR(255) NOT NULL, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + CONSTRAINT karma_history_user_id_fk + FOREIGN KEY (user_id) + REFERENCES users (id) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT karma_history_from_user_id_fk + FOREIGN KEY (from_user_id) + REFERENCES users (id) + ON DELETE CASCADE + ON UPDATE CASCADE); +CREATE INDEX karma_history_user_id_idx ON karma_history (user_id); + +-- +migrate Down