auth: Moved token and user to models package, added graphql endpoint to check token
the build failed
the build failed
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
package users
|
||||
|
||||
import (
|
||||
"git.aiterp.net/rpdata/api/internal/store"
|
||||
"github.com/globalsign/mgo"
|
||||
)
|
||||
|
||||
var collection *mgo.Collection
|
||||
|
||||
func init() {
|
||||
store.HandleInit(func(db *mgo.Database) {
|
||||
collection = db.C("core.users")
|
||||
})
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package users
|
||||
|
||||
import (
|
||||
"git.aiterp.net/rpdata/api/models"
|
||||
"github.com/globalsign/mgo"
|
||||
)
|
||||
|
||||
// Ensure finds a user by id, or makes a new one.
|
||||
func Ensure(id string) (models.User, error) {
|
||||
user := models.User{}
|
||||
err := collection.FindId(id).One(&user)
|
||||
|
||||
if err == mgo.ErrNotFound {
|
||||
user = models.User{
|
||||
ID: id,
|
||||
Nick: "",
|
||||
Permissions: []string{
|
||||
"member",
|
||||
"log.edit",
|
||||
"post.edit",
|
||||
"post.move",
|
||||
"file.upload",
|
||||
},
|
||||
}
|
||||
|
||||
err := collection.Insert(user)
|
||||
if err != nil {
|
||||
return models.User{}, err
|
||||
}
|
||||
}
|
||||
|
||||
return user, err
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package users
|
||||
|
||||
import (
|
||||
"git.aiterp.net/rpdata/api/models"
|
||||
)
|
||||
|
||||
// Find finds a user by id
|
||||
func Find(id string) (models.User, error) {
|
||||
user := models.User{}
|
||||
err := collection.FindId(id).One(&user)
|
||||
|
||||
return user, err
|
||||
}
|
||||
Reference in New Issue
Block a user