Compare commits

...

58 Commits

Author SHA1 Message Date
c13b947628 Merge branch 'devel' 2025-02-03 10:44:19 +01:00
951949f98d Give an article's clone its own uuid. This fixes a bug resulting in an infinite loop of writing stuff to a file. 2025-02-03 10:44:06 +01:00
9b4a8e1890 Add error checking for every occurance of rows.Next() 2025-02-03 10:40:54 +01:00
1cf537662a Check if data is long enough to be decrypted 2025-02-03 10:40:33 +01:00
e0fa31b7a1 Merge branch 'devel' 2025-01-26 08:53:36 +01:00
ed614026ec Merge branch 'devel' 2025-01-19 10:16:44 +01:00
87f8786c43 Merge branch 'devel' 2025-01-19 10:04:36 +01:00
acae07b8f3 Merge branch 'devel' 2025-01-17 18:13:12 +01:00
1b100483de Merge branch 'devel' 2025-01-17 17:52:45 +01:00
e03fd78ea9 Merge branch 'devel' 2025-01-12 14:36:01 +01:00
370ef205a9 Merge branch 'devel' 2024-12-27 21:36:02 +01:00
d328ddb749 Merge branch 'devel' 2024-10-30 03:25:18 +01:00
5dc5590da9 Merge branch 'devel' 2024-10-30 02:24:50 +01:00
364112a0a4 Merge branch 'devel' 2024-10-30 02:14:16 +01:00
a38523e933 Merge branch 'devel' 2024-10-30 02:13:03 +01:00
200672dae2 Merge branch 'devel' 2024-10-28 18:28:31 +01:00
3d3aad88c8 Merge branch 'devel' 2024-10-28 18:27:33 +01:00
e4e43d1a83 Merge branch 'devel' 2024-10-28 18:02:56 +01:00
737a9ec314 Merge branch 'devel' 2024-10-27 15:29:50 +01:00
1ebe0380ee Merge branch 'devel' 2024-10-27 15:28:22 +01:00
d62d71b5d1 Merge branch 'devel' 2024-10-27 15:14:11 +01:00
b36e0ea503 Merge branch 'devel' 2024-10-04 16:06:57 +02:00
bc4d8fa37e Merge branch 'devel' 2024-09-28 13:59:34 +02:00
d2b21e7405 Merge branch 'devel' 2024-09-28 12:36:46 +02:00
e3c192359f Merge branch 'devel' 2024-09-11 18:15:31 +02:00
46532e4c85 Merge branch 'devel' 2024-09-11 18:15:07 +02:00
c722135a56 Merge branch 'devel' 2024-09-11 17:18:42 +02:00
887fa863bc Merge branch 'devel' 2024-09-10 19:43:22 +02:00
74d71cfb6a Merge branch 'devel' 2024-09-09 22:03:43 +02:00
ca7e7cddd3 Merge branch 'devel' 2024-09-08 16:22:59 +02:00
94431a2aa9 Merge branch 'devel' 2024-09-08 16:21:38 +02:00
5b1f20c5bc Merge branch 'devel' 2024-09-08 13:36:22 +02:00
d0c566f8df Merge branch 'devel' 2024-09-01 21:14:05 +02:00
5e586aa49a Merge branch 'devel' 2024-09-01 18:51:33 +02:00
66b2743d3d Merge branch 'devel' 2024-09-01 18:48:26 +02:00
3723b2b5e6 Merge branch 'devel' 2024-09-01 18:18:18 +02:00
ce788bfd50 Merge branch 'devel' 2024-09-01 12:54:12 +02:00
230a6278cc Merge branch 'devel' 2024-09-01 12:49:30 +02:00
42d6e0c198 Merge branch 'devel' 2024-08-31 12:17:41 +02:00
e1af2979af Merge branch 'devel' 2024-08-31 11:27:15 +02:00
f6dedc6f10 Merge branch 'devel' 2024-08-31 01:43:53 +02:00
cdf0a49550 Merge branch 'devel' 2024-08-31 01:38:28 +02:00
c3c0650210 Merge branch 'devel' 2024-08-31 01:00:55 +02:00
d077f700d8 Merge branch 'devel' 2024-08-31 00:36:48 +02:00
ec752b1c66 Merge branch 'devel' 2024-08-30 23:43:12 +02:00
46aef4f12f Merge branch 'devel' 2024-08-25 10:51:35 +02:00
1b29e328cf Merge branch 'devel' 2024-08-25 06:38:55 +02:00
e50cb819f3 Merge branch 'devel' 2024-08-23 21:45:30 +02:00
c32e38ca10 Merge branch 'devel' 2024-08-23 20:57:11 +02:00
d7c8c7a43a Merge branch 'devel' 2024-08-18 17:31:00 +02:00
1cd3edc90c Merge branch 'devel' 2024-08-18 12:06:29 +02:00
0e768c9f61 Merge branch 'devel' 2024-08-08 21:27:07 +02:00
1fcd775cc5 Merge branch 'devel' 2024-08-08 21:14:24 +02:00
203a1ed147 Implemented EasyMDE 2024-08-08 21:13:25 +02:00
ef1914ee5c Implemented article preview 2024-08-08 21:13:25 +02:00
084b101e31 Register f.ArticlePreviewHtmlData in init() 2024-08-08 21:13:25 +02:00
b2db128aa9 Shorten lines by referencing frontend as f and backend as b 2024-08-08 21:13:25 +02:00
081e880fb6 Change structure of code tor frontend and backend one 2024-08-08 21:13:25 +02:00
7 changed files with 39 additions and 2 deletions

View File

@ -175,6 +175,10 @@ func (db *DB) GetCertainArticles(attribute string, value bool) ([]*Article, erro
articleList = append(articleList, article)
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return articleList, nil
}
@ -243,6 +247,13 @@ func (db *DB) GetCurrentIssueArticles() ([]*Article, error) {
articleList = append(articleList, article)
}
if err = rows.Err(); err != nil {
if rollbackErr := tx.Rollback(); rollbackErr != nil {
log.Fatalf("transaction error: %v, rollback error: %v", err, rollbackErr)
}
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
if err = tx.Commit(); err != nil {
return nil, fmt.Errorf("error committing transaction when getting articles of issue %v: %v", issueID, err)
}

View File

@ -68,6 +68,10 @@ func (db *DB) GetArticleAuthors(c *Config, articleID int64) ([]*User, error) {
authors = append(authors, author)
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return authors, nil
}

View File

@ -68,6 +68,10 @@ func (db *DB) GetArticleContributors(c *Config, articleID int64) ([]*User, error
contributors = append(contributors, contributor)
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return contributors, nil
}

View File

@ -61,6 +61,10 @@ func (db *DB) GetArticleTags(articleID int64) ([]*Tag, error) {
tags = append(tags, tag)
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return tags, nil
}

View File

@ -31,5 +31,9 @@ func (db *DB) GetTagList() ([]*Tag, error) {
tagList = append(tagList, tag)
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return tagList, nil
}

View File

@ -117,6 +117,9 @@ func aesDecrypt(c *Config, ciphertext string) (string, error) {
}
nonceSize := gcm.NonceSize()
if len(data) < nonceSize {
return "", errors.New("ciphertext too short")
}
nonce, cipherText := data[:nonceSize], data[nonceSize:]
plaintext, err := gcm.Open(nil, nonce, cipherText, nil)
@ -450,8 +453,6 @@ func (db *DB) AddFirstUser(c *Config, u *User, pass string) (int64, error) {
func (db *DB) GetAllUsers(c *Config) ([]*User, error) {
var aesFirstName, aesLastName, aesEmail string
var err error
query := "SELECT id, username, first_name, last_name, email, profile_pic_link, role FROM users"
rows, err := db.Query(query)
@ -484,6 +485,10 @@ func (db *DB) GetAllUsers(c *Config) ([]*User, error) {
users = append(users, user)
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return users, nil
}
@ -523,6 +528,10 @@ func (db *DB) GetAllUsersMap(c *Config) (map[int64]*User, error) {
users[user.ID] = user
}
if err = rows.Err(); err != nil {
return nil, fmt.Errorf("error iterating over rows: %v", err)
}
return users, nil
}

View File

@ -901,6 +901,7 @@ func AllowEditArticle(c *b.Config, db *b.DB, s map[string]*Session) http.Handler
}
newArticle := *oldArticle
newArticle.UUID = uuid.New()
newArticle.Published = false
newArticle.Rejected = true
newArticle.EditedID = oldArticle.ID