Decrement fork counter on gist/user delete
هذا الالتزام موجود في:
@@ -1,6 +1,7 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"gorm.io/gorm"
|
||||
"time"
|
||||
)
|
||||
|
||||
@@ -41,6 +42,15 @@ type Commit struct {
|
||||
Files []File
|
||||
}
|
||||
|
||||
func (g *Gist) BeforeDelete(tx *gorm.DB) error {
|
||||
// Decrement fork counter if the gist was forked
|
||||
err := tx.Model(&Gist{}).
|
||||
Omit("updated_at").
|
||||
Where("id = ?", g.ForkedID).
|
||||
UpdateColumn("nb_forks", gorm.Expr("nb_forks - 1")).Error
|
||||
return err
|
||||
}
|
||||
|
||||
func GetGist(user string, gistUuid string) (*Gist, error) {
|
||||
gist := new(Gist)
|
||||
err := db.Preload("User").Preload("Forked.User").
|
||||
@@ -141,10 +151,6 @@ func IncrementGistForkCount(gist *Gist) error {
|
||||
return db.Model(&gist).Omit("updated_at").Update("nb_forks", gist.NbForks+1).Error
|
||||
}
|
||||
|
||||
func DecrementGistForkCount(gist *Gist) error {
|
||||
return db.Model(&gist).Omit("updated_at").Update("nb_forks", gist.NbForks-1).Error
|
||||
}
|
||||
|
||||
func GetForkedGist(gist *Gist, user *User) (*Gist, error) {
|
||||
fork := new(Gist)
|
||||
err := db.Preload("User").
|
||||
|
||||
المرجع في مشكلة جديدة
حظر مستخدم