From cc37fbef13949de3af735185f3c0f8b60634b1b5 Mon Sep 17 00:00:00 2001 From: Umputun Date: Thu, 16 May 2019 23:16:08 -0500 Subject: [PATCH] switch admin rest to interface with subset of store api --- backend/app/rest/api/admin.go | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/backend/app/rest/api/admin.go b/backend/app/rest/api/admin.go index 59b3b979..dec80e92 100644 --- a/backend/app/rest/api/admin.go +++ b/backend/app/rest/api/admin.go @@ -15,18 +15,31 @@ import ( "github.com/umputun/remark/backend/app/rest" "github.com/umputun/remark/backend/app/store" - "github.com/umputun/remark/backend/app/store/service" ) // admin provides router for all requests available for admin users only type admin struct { - dataService *service.DataStore + dataService adminStore cache cache.LoadingCache authenticator *auth.Service readOnlyAge int migrator *Migrator } +type adminStore interface { + Delete(locator store.Locator, commentID string, mode store.DeleteMode) error + DeleteUser(siteID string, userID string) error + User(siteID, userID string, limit, skip int, user store.User) ([]store.Comment, error) + IsBlocked(siteID string, userID string) bool + SetBlock(siteID string, userID string, status bool, ttl time.Duration) error + Blocked(siteID string) ([]store.BlockedUser, error) + Info(locator store.Locator, readonlyAge int) (store.PostInfo, error) + SetTitle(locator store.Locator, commentID string) (comment store.Comment, err error) + SetVerified(siteID string, userID string, status bool) error + SetReadOnly(locator store.Locator, status bool) error + SetPin(locator store.Locator, commentID string, status bool) error +} + // DELETE /comment/{id}?site=siteID&url=post-url - removes comment func (a *admin) deleteCommentCtrl(w http.ResponseWriter, r *http.Request) { @@ -218,7 +231,3 @@ func (a *admin) setPinCtrl(w http.ResponseWriter, r *http.Request) { a.cache.Flush(cache.Flusher(locator.SiteID).Scopes(locator.URL)) render.JSON(w, r, R.JSON{"id": commentID, "locator": locator, "pin": pinStatus}) } - -func (a *admin) checkBlocked(siteID string, user store.User) bool { - return a.dataService.IsBlocked(siteID, user.ID) -}