Skip to content

Commit

Permalink
#1253 Add an organisation parameter in delete user API
Browse files Browse the repository at this point in the history
  • Loading branch information
To-om committed Mar 6, 2020
1 parent 05f676c commit 6de9456
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 16 deletions.
24 changes: 12 additions & 12 deletions thehive/app/org/thp/thehive/controllers/v1/Router.scala
Original file line number Diff line number Diff line change
Expand Up @@ -46,18 +46,18 @@ class Router @Inject() (
case PATCH(p"/caseTemplate/$caseTemplateId") => caseTemplateCtrl.update(caseTemplateId)
//case DELETE(p"/caseTemplate/$caseTemplateId") ⇒ caseTemplateCtrl.delete(caseTemplateId)

case POST(p"/user") => userCtrl.create
case GET(p"/user/current") => userCtrl.current
case GET(p"/user/$userId") => userCtrl.get(userId)
case PATCH(p"/user/$userId") => userCtrl.update(userId)
case DELETE(p"/user/$userId") => userCtrl.lock(userId)
case DELETE(p"/user/$userId/force") => userCtrl.delete(userId)
case POST(p"/user/$userId/password/set") => userCtrl.setPassword(userId)
case POST(p"/user/$userId/password/change") => userCtrl.changePassword(userId)
case GET(p"/user/$userId/key") => userCtrl.getKey(userId)
case DELETE(p"/user/$userId/key") => userCtrl.removeKey(userId)
case POST(p"/user/$userId/key/renew") => userCtrl.renewKey(userId)
case GET(p"/user/$userId/avatar$file*") => userCtrl.avatar(userId)
case POST(p"/user") => userCtrl.create
case GET(p"/user/current") => userCtrl.current
case GET(p"/user/$userId") => userCtrl.get(userId)
case PATCH(p"/user/$userId") => userCtrl.update(userId)
case DELETE(p"/user/$userId") => userCtrl.lock(userId)
case DELETE(p"/user/$userId/force" ? q_o"organisation=$organisation") => userCtrl.delete(userId, organisation)
case POST(p"/user/$userId/password/set") => userCtrl.setPassword(userId)
case POST(p"/user/$userId/password/change") => userCtrl.changePassword(userId)
case GET(p"/user/$userId/key") => userCtrl.getKey(userId)
case DELETE(p"/user/$userId/key") => userCtrl.removeKey(userId)
case POST(p"/user/$userId/key/renew") => userCtrl.renewKey(userId)
case GET(p"/user/$userId/avatar$file*") => userCtrl.avatar(userId)

case POST(p"/organisation") => organisationCtrl.create
case GET(p"/organisation/$organisationId") => organisationCtrl.get(organisationId)
Expand Down
8 changes: 4 additions & 4 deletions thehive/app/org/thp/thehive/controllers/v1/UserCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -102,13 +102,13 @@ class UserCtrl @Inject() (
} yield Results.NoContent
}

def delete(userId: String): Action[AnyContent] =
def delete(userId: String, organisation: Option[String]): Action[AnyContent] =
entrypoint("delete user")
.authTransaction(db) { implicit request => implicit graph =>
for {
organisation <- userSrv.current.organisations(Permissions.manageUser).has("name", request.organisation).getOrFail()
user <- organisationSrv.get(organisation).users.get(userId).getOrFail()
_ <- userSrv.delete(user, organisation)
org <- organisationSrv.getOrFail(organisation.getOrElse(request.organisation))
user <- userSrv.current.organisations(Permissions.manageUser).users.get(userId).getOrFail()
_ <- userSrv.delete(user, org)
} yield Results.NoContent
}

Expand Down

0 comments on commit 6de9456

Please sign in to comment.