Browse Source

models2: Added post removal on log removal.

1.0
Gisle Aune 6 years ago
parent
commit
90681c67b0
  1. 11
      models/logs/remove.go
  2. 6
      models/posts/remove.go

11
models/logs/remove.go

@ -1,6 +1,11 @@
package logs package logs
import "git.aiterp.net/rpdata/api/models"
import (
"errors"
"git.aiterp.net/rpdata/api/models"
"git.aiterp.net/rpdata/api/models/posts"
)
// Remove removes the log. // Remove removes the log.
func Remove(log models.Log) (models.Log, error) { func Remove(log models.Log) (models.Log, error) {
@ -9,5 +14,9 @@ func Remove(log models.Log) (models.Log, error) {
return models.Log{}, err return models.Log{}, err
} }
if err := posts.RemoveAllInLog(log); err != nil {
return models.Log{}, errors.New("The log was removed, but its posts couldn't be: " + err.Error())
}
return log, nil return log, nil
} }

6
models/posts/remove.go

@ -22,3 +22,9 @@ func Remove(post models.Post) (models.Post, error) {
return post, nil return post, nil
} }
// RemoveAllInLog removes all posts for the given log.
func RemoveAllInLog(log models.Log) error {
_, err := collection.RemoveAll(bson.M{"logId": log.ShortID})
return err
}
Loading…
Cancel
Save