mirror of https://github.com/status-im/fathom.git
add CountUsers func to sqlstore
This commit is contained in:
parent
b860937107
commit
291d53fcaf
|
@ -72,7 +72,7 @@ func (api *API) LogoutHandler(w http.ResponseWriter, r *http.Request) error {
|
||||||
return respond(w, envelope{Data: true})
|
return respond(w, envelope{Data: true})
|
||||||
}
|
}
|
||||||
|
|
||||||
/* middleware */
|
// Authorize is middleware that aborts the request if unauthorized
|
||||||
func (api *API) Authorize(next http.Handler) http.Handler {
|
func (api *API) Authorize(next http.Handler) http.Handler {
|
||||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||||
// clear context from request after it is handled
|
// clear context from request after it is handled
|
||||||
|
|
|
@ -10,11 +10,13 @@ import (
|
||||||
// ErrNoResults is returned whenever a single-item query returns 0 results
|
// ErrNoResults is returned whenever a single-item query returns 0 results
|
||||||
var ErrNoResults = sqlstore.ErrNoResults // ???
|
var ErrNoResults = sqlstore.ErrNoResults // ???
|
||||||
|
|
||||||
|
// Datastore represents a database implementations
|
||||||
type Datastore interface {
|
type Datastore interface {
|
||||||
// users
|
// users
|
||||||
GetUser(int64) (*models.User, error)
|
GetUser(int64) (*models.User, error)
|
||||||
GetUserByEmail(string) (*models.User, error)
|
GetUserByEmail(string) (*models.User, error)
|
||||||
SaveUser(*models.User) error
|
SaveUser(*models.User) error
|
||||||
|
CountUsers() (int64, error)
|
||||||
|
|
||||||
// site stats
|
// site stats
|
||||||
GetSiteStats(time.Time) (*models.SiteStats, error)
|
GetSiteStats(time.Time) (*models.SiteStats, error)
|
||||||
|
|
|
@ -2,6 +2,7 @@ package sqlstore
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
|
|
||||||
"github.com/usefathom/fathom/pkg/models"
|
"github.com/usefathom/fathom/pkg/models"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -49,3 +50,12 @@ func (db *sqlstore) SaveUser(u *models.User) error {
|
||||||
u.ID, _ = result.LastInsertId()
|
u.ID, _ = result.LastInsertId()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CountUsers returns the number of users
|
||||||
|
func (db *sqlstore) CountUsers() (int64, error) {
|
||||||
|
var c int64
|
||||||
|
var sql = `SELECT COUNT(*) FROM users`
|
||||||
|
query := db.Rebind(sql)
|
||||||
|
err := db.Get(&c, query)
|
||||||
|
return c, err
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue