diff --git a/Readme.md b/Readme.md index f56ca3f..8573326 100644 --- a/Readme.md +++ b/Readme.md @@ -70,10 +70,10 @@ This interface defines methods to Create/Read/ReadAll/Update/Delete something. I ```go type CRUDable interface { Create(*xorm.Session, Auth) error - ReadOne(*xorm.Session) error + ReadOne(*xorm.Session, Auth) error ReadAll(s *xorm.Session, auth Auth, search string, page int, perPage int) (result interface{}, resultCount int, numberOfTotalItems int64, err error) - Update(*xorm.Session) error - Delete(*xorm.Session) error + Update(*xorm.Session, Auth) error + Delete(*xorm.Session, Auth) error } ``` diff --git a/handler/delete.go b/handler/delete.go index a53932a..a5d2100 100644 --- a/handler/delete.go +++ b/handler/delete.go @@ -66,7 +66,7 @@ func (c *WebHandler) DeleteWeb(ctx echo.Context) error { return echo.NewHTTPError(http.StatusForbidden) } - err = currentStruct.Delete(s) + err = currentStruct.Delete(s, currentAuth) if err != nil { _ = s.Rollback() return HandleHTTPError(err, ctx) diff --git a/handler/read_one.go b/handler/read_one.go index eba9e12..65cc737 100644 --- a/handler/read_one.go +++ b/handler/read_one.go @@ -63,7 +63,7 @@ func (c *WebHandler) ReadOneWeb(ctx echo.Context) error { } // Get our object - err = currentStruct.ReadOne(s) + err = currentStruct.ReadOne(s, currentAuth) if err != nil { _ = s.Rollback() return HandleHTTPError(err, ctx) diff --git a/handler/update.go b/handler/update.go index b9d6800..fe05d3e 100644 --- a/handler/update.go +++ b/handler/update.go @@ -68,7 +68,7 @@ func (c *WebHandler) UpdateWeb(ctx echo.Context) error { } // Do the update - err = currentStruct.Update(s) + err = currentStruct.Update(s, currentAuth) if err != nil { _ = s.Rollback() return HandleHTTPError(err, ctx) diff --git a/web.go b/web.go index a5b0e1c..de4d2af 100644 --- a/web.go +++ b/web.go @@ -31,10 +31,10 @@ type Rights interface { // CRUDable defines the crud methods type CRUDable interface { Create(*xorm.Session, Auth) error - ReadOne(*xorm.Session) error + ReadOne(*xorm.Session, Auth) error ReadAll(s *xorm.Session, auth Auth, search string, page int, perPage int) (result interface{}, resultCount int, numberOfTotalItems int64, err error) - Update(*xorm.Session) error - Delete(*xorm.Session) error + Update(*xorm.Session, Auth) error + Delete(*xorm.Session, Auth) error } // HTTPErrorProcessor is executed when the defined error is thrown, it will make sure the user sees an appropriate error message and http status code