2727namespace OC \Core \Controller ;
2828
2929use OC \Profile \ProfileManager ;
30+ use OCP \Profile \BeforeTemplateRenderedEvent ;
3031use OCP \AppFramework \Controller ;
3132use OCP \AppFramework \Http \TemplateResponse ;
3233use OCP \AppFramework \Services \IInitialState ;
3637use OCP \IUserSession ;
3738use OCP \Share \IManager as IShareManager ;
3839use OCP \UserStatus \IManager as IUserStatusManager ;
40+ use OCP \EventDispatcher \IEventDispatcher ;
3941
4042class ProfilePageController extends Controller {
4143 private IInitialState $ initialStateService ;
@@ -44,6 +46,7 @@ class ProfilePageController extends Controller {
4446 private IUserManager $ userManager ;
4547 private IUserSession $ userSession ;
4648 private IUserStatusManager $ userStatusManager ;
49+ private IEventDispatcher $ eventDispatcher ;
4750
4851 public function __construct (
4952 $ appName ,
@@ -53,7 +56,8 @@ public function __construct(
5356 IShareManager $ shareManager ,
5457 IUserManager $ userManager ,
5558 IUserSession $ userSession ,
56- IUserStatusManager $ userStatusManager
59+ IUserStatusManager $ userStatusManager ,
60+ IEventDispatcher $ eventDispatcher
5761 ) {
5862 parent ::__construct ($ appName , $ request );
5963 $ this ->initialStateService = $ initialStateService ;
@@ -62,6 +66,7 @@ public function __construct(
6266 $ this ->userManager = $ userManager ;
6367 $ this ->userSession = $ userSession ;
6468 $ this ->userStatusManager = $ userStatusManager ;
69+ $ this ->eventDispatcher = $ eventDispatcher ;
6570 }
6671
6772 /**
@@ -111,6 +116,8 @@ public function index(string $targetUserId): TemplateResponse {
111116 $ this ->profileManager ->getProfileParams ($ targetUser , $ visitingUser ),
112117 );
113118
119+ $ this ->eventDispatcher ->dispatchTyped (new BeforeTemplateRenderedEvent ($ targetUserId ));
120+
114121 \OCP \Util::addScript ('core ' , 'profile ' );
115122
116123 return new TemplateResponse (
0 commit comments