super-mario-maker/database/datastore/is_object_available.go

31 lines
740 B
Go

package datastore_db
import (
"database/sql"
"github.com/PretendoNetwork/nex-go"
"github.com/PretendoNetwork/super-mario-maker-secure/database"
"github.com/PretendoNetwork/super-mario-maker-secure/globals"
)
func IsObjectAvailable(dataID uint64) uint32 {
var underReview bool
err := database.Postgres.QueryRow(`SELECT under_review FROM datastore.objects WHERE data_id=$1 AND upload_completed=TRUE AND deleted=FALSE`, dataID).Scan(&underReview)
if err != nil {
if err == sql.ErrNoRows {
return nex.Errors.DataStore.NotFound
}
globals.Logger.Error(err.Error())
// TODO - Send more specific errors?
return nex.Errors.DataStore.Unknown
}
if underReview {
return nex.Errors.DataStore.UnderReviewing
}
return 0
}