2021-11-10 15:32:44 +01:00
|
|
|
#ifndef RBAC_USER_CONTROLLER_H
|
|
|
|
#define RBAC_USER_CONTROLLER_H
|
|
|
|
|
|
|
|
#include "modules/users/user_controller.h"
|
|
|
|
|
2021-11-10 19:35:02 +01:00
|
|
|
class Request;
|
|
|
|
|
2021-11-10 15:32:44 +01:00
|
|
|
class RBACUserController : public UserController {
|
|
|
|
RCPP_OBJECT(RBACUserController, UserController);
|
2022-01-07 17:50:39 +01:00
|
|
|
|
2021-11-10 15:32:44 +01:00
|
|
|
public:
|
2022-01-07 17:50:39 +01:00
|
|
|
// just session setup
|
2021-11-10 19:35:02 +01:00
|
|
|
static void rbac_user_session_setup_middleware(Object *instance, Request *request);
|
2022-01-07 17:50:39 +01:00
|
|
|
// this one also handles missing read permission / redirect
|
2021-11-10 19:35:02 +01:00
|
|
|
static void rbac_default_user_session_middleware(Object *instance, Request *request);
|
|
|
|
|
2022-01-07 17:50:39 +01:00
|
|
|
// db
|
|
|
|
|
|
|
|
Ref<User> db_get_user(const int id);
|
|
|
|
Ref<User> db_get_user(const String &user_name_input);
|
|
|
|
|
|
|
|
Vector<Ref<User> > db_get_all();
|
|
|
|
|
|
|
|
Ref<User> create_user();
|
|
|
|
|
2021-11-10 15:32:44 +01:00
|
|
|
RBACUserController();
|
|
|
|
~RBACUserController();
|
|
|
|
|
|
|
|
protected:
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|