mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-12-28 05:05:12 -05:00
feat: additional events dispatch (#1999)
* formatting * add new user type * add registration event * publish events on new mealplan * update UI for supported types + type updates
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from fastapi import APIRouter, HTTPException, status
|
||||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
|
||||
from mealie.core.config import get_app_settings
|
||||
from mealie.repos.all_repositories import get_repositories
|
||||
@@ -6,6 +6,8 @@ from mealie.routes._base import BasePublicController, controller
|
||||
from mealie.schema.response import ErrorResponse
|
||||
from mealie.schema.user.registration import CreateUserRegistration
|
||||
from mealie.schema.user.user import UserOut
|
||||
from mealie.services.event_bus_service.event_bus_service import EventBusService
|
||||
from mealie.services.event_bus_service.event_types import EventTypes, EventUserSignupData
|
||||
from mealie.services.user_services.registration_service import RegistrationService
|
||||
|
||||
router = APIRouter(prefix="/register")
|
||||
@@ -13,6 +15,8 @@ router = APIRouter(prefix="/register")
|
||||
|
||||
@controller(router)
|
||||
class RegistrationController(BasePublicController):
|
||||
event_bus: EventBusService = Depends(EventBusService.create)
|
||||
|
||||
@router.post("", response_model=UserOut, status_code=status.HTTP_201_CREATED)
|
||||
def register_new_user(self, data: CreateUserRegistration):
|
||||
settings = get_app_settings()
|
||||
@@ -29,4 +33,13 @@ class RegistrationController(BasePublicController):
|
||||
self.translator,
|
||||
)
|
||||
|
||||
return registration_service.register_user(data)
|
||||
result = registration_service.register_user(data)
|
||||
|
||||
self.event_bus.dispatch(
|
||||
integration_id="registration",
|
||||
group_id=result.group_id,
|
||||
event_type=EventTypes.user_signup,
|
||||
document_data=EventUserSignupData(username=result.username, email=result.email),
|
||||
)
|
||||
|
||||
return result
|
||||
|
||||
Reference in New Issue
Block a user