1919use OCP \App \IAppManager ;
2020use OCP \AppFramework \Controller ;
2121use OCP \AppFramework \Http ;
22+ use OCP \AppFramework \Http \Attribute \NoCSRFRequired ;
2223use OCP \AppFramework \Http \Attribute \OpenAPI ;
24+ use OCP \AppFramework \Http \Attribute \PasswordConfirmationRequired ;
25+ use OCP \AppFramework \Http \Attribute \PublicPage ;
2326use OCP \AppFramework \Http \ContentSecurityPolicy ;
2427use OCP \AppFramework \Http \FileDisplayResponse ;
2528use OCP \AppFramework \Http \JSONResponse ;
@@ -74,10 +77,9 @@ public function __construct(
7477 }
7578
7679 /**
77- * @NoCSRFRequired
78- *
7980 * @return TemplateResponse
8081 */
82+ #[NoCSRFRequired]
8183 public function viewApps (): TemplateResponse {
8284 $ this ->navigationManager ->setActiveEntry ('core_apps ' );
8385
@@ -100,23 +102,21 @@ public function viewApps(): TemplateResponse {
100102
101103 /**
102104 * Get all active entries for the app discover section
103- *
104- * @NoCSRFRequired
105105 */
106+ #[NoCSRFRequired]
106107 public function getAppDiscoverJSON (): JSONResponse {
107108 $ data = $ this ->discoverFetcher ->get (true );
108109 return new JSONResponse ($ data );
109110 }
110111
111112 /**
112- * @PublicPage
113- * @NoCSRFRequired
114- *
115113 * Get a image for the app discover section - this is proxied for privacy and CSP reasons
116114 *
117115 * @param string $image
118116 * @throws \Exception
119117 */
118+ #[PublicPage]
119+ #[NoCSRFRequired]
120120 public function getAppDiscoverMedia (string $ fileName ): Response {
121121 $ etag = $ this ->discoverFetcher ->getETag () ?? date ('Y-m ' );
122122 $ folder = null ;
@@ -455,12 +455,11 @@ private function getAppsForCategory($requestedCategory = ''): array {
455455 }
456456
457457 /**
458- * @PasswordConfirmationRequired
459- *
460458 * @param string $appId
461459 * @param array $groups
462460 * @return JSONResponse
463461 */
462+ #[PasswordConfirmationRequired]
464463 public function enableApp (string $ appId , array $ groups = []): JSONResponse {
465464 return $ this ->enableApps ([$ appId ], $ groups );
466465 }
@@ -470,11 +469,11 @@ public function enableApp(string $appId, array $groups = []): JSONResponse {
470469 *
471470 * apps will be enabled for specific groups only if $groups is defined
472471 *
473- * @PasswordConfirmationRequired
474472 * @param array $appIds
475473 * @param array $groups
476474 * @return JSONResponse
477475 */
476+ #[PasswordConfirmationRequired]
478477 public function enableApps (array $ appIds , array $ groups = []): JSONResponse {
479478 try {
480479 $ updateRequired = false ;
@@ -522,21 +521,19 @@ private function getGroupList(array $groups) {
522521 }
523522
524523 /**
525- * @PasswordConfirmationRequired
526- *
527524 * @param string $appId
528525 * @return JSONResponse
529526 */
527+ #[PasswordConfirmationRequired]
530528 public function disableApp (string $ appId ): JSONResponse {
531529 return $ this ->disableApps ([$ appId ]);
532530 }
533531
534532 /**
535- * @PasswordConfirmationRequired
536- *
537533 * @param array $appIds
538534 * @return JSONResponse
539535 */
536+ #[PasswordConfirmationRequired]
540537 public function disableApps (array $ appIds ): JSONResponse {
541538 try {
542539 foreach ($ appIds as $ appId ) {
@@ -551,11 +548,10 @@ public function disableApps(array $appIds): JSONResponse {
551548 }
552549
553550 /**
554- * @PasswordConfirmationRequired
555- *
556551 * @param string $appId
557552 * @return JSONResponse
558553 */
554+ #[PasswordConfirmationRequired]
559555 public function uninstallApp (string $ appId ): JSONResponse {
560556 $ appId = OC_App::cleanAppId ($ appId );
561557 $ result = $ this ->installer ->removeApp ($ appId );
0 commit comments