Albirew/nyaa-pantsu
Archivé
1
0
Bifurcation 0
Ce dépôt a été archivé le 2022-05-07. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.
nyaa-pantsu/service/moderation/torrent_report.go
2017-05-10 00:34:00 -04:00

38 lignes
1,2 Kio
Go

package moderationService
import (
"errors"
"net/http"
"github.com/ewhal/nyaa/db"
"github.com/ewhal/nyaa/model"
)
// Return torrentReport in case we did modified it (ie: CreatedAt field)
func CreateTorrentReport(torrentReport model.TorrentReport) (model.TorrentReport, error) {
if db.ORM.Create(&torrentReport).Error != nil {
return torrentReport, errors.New("TorrentReport was not created")
}
return torrentReport, nil
}
func DeleteTorrentReport(id int) (int, error) {
var torrentReport model.TorrentReport
if db.ORM.First(&torrentReport, id).RecordNotFound() {
return http.StatusNotFound, errors.New("Trying to delete a torrent report that does not exists.")
}
if db.ORM.Delete(&torrentReport).Error != nil {
return http.StatusInternalServerError, errors.New("User is not deleted.")
}
return http.StatusOK, nil
}
// TODO Add WhereParams to filter the torrent reports (ie: searching description)
// TODO Use limit, offset
func GetTorrentReports() ([]model.TorrentReport, error) {
var torrentReports []model.TorrentReport
if db.ORM.Preload("User").Preload("Torrents").Find(&torrentReports).Error != nil {
return nil, errors.New("Problem finding all torrent reports.")
}
return torrentReports, nil
}