|
12 | 12 | * limitations under the License. |
13 | 13 | **/ |
14 | 14 |
|
| 15 | +use App\Models\Foundation\Main\IGroup; |
15 | 16 | use App\ModelSerializers\SerializerUtils; |
16 | 17 | use App\Rules\Boolean; |
| 18 | +use App\Security\SummitScopes; |
17 | 19 | use App\Services\Model\ISummitMetricService; |
18 | 20 | use Illuminate\Http\Response; |
19 | 21 | use models\main\IMemberRepository; |
@@ -72,9 +74,10 @@ public function __construct |
72 | 74 | */ |
73 | 75 | #[OA\Put( |
74 | 76 | path: "/api/v1/summits/{id}/metrics/enter", |
| 77 | + operationId: 'enter', |
75 | 78 | summary: "Record a metric entry (enter)", |
76 | | - security: [["Bearer" => []]], |
77 | | - tags: ["summit-metrics"], |
| 79 | + security: [["summit_metrics_oauth2" => [SummitScopes::EnterEvent, SummitScopes::WriteMetrics]]], |
| 80 | + tags: ["Summit Metrics"], |
78 | 81 | parameters: [ |
79 | 82 | new OA\Parameter( |
80 | 83 | name: "id", |
@@ -140,9 +143,10 @@ public function enter($summit_id) |
140 | 143 | */ |
141 | 144 | #[OA\Post( |
142 | 145 | path: "/api/v1/summits/{id}/metrics/leave", |
| 146 | + operationId: 'leave', |
143 | 147 | summary: "Record a metric exit (leave)", |
144 | | - security: [["Bearer" => []]], |
145 | | - tags: ["summit-metrics"], |
| 148 | + security: [["summit_metrics_oauth2" => [SummitScopes::LeaveEvent, SummitScopes::WriteMetrics]]], |
| 149 | + tags: ["Summit Metrics"], |
146 | 150 | parameters: [ |
147 | 151 | new OA\Parameter( |
148 | 152 | name: "id", |
@@ -208,9 +212,10 @@ public function leave($summit_id) |
208 | 212 | */ |
209 | 213 | #[OA\Put( |
210 | 214 | path: "/api/v1/summits/{id}/members/{member_id}/schedule/{event_id}/metrics/enter", |
| 215 | + operationId: 'enterToEvent', |
211 | 216 | summary: "Record a metric entry to a specific event", |
212 | | - security: [["Bearer" => []]], |
213 | | - tags: ["summit-metrics"], |
| 217 | + security: [["summit_metrics_oauth2" => [SummitScopes::EnterEvent]]], |
| 218 | + tags: ["Summit Metrics"], |
214 | 219 | parameters: [ |
215 | 220 | new OA\Parameter( |
216 | 221 | name: "id", |
@@ -278,9 +283,10 @@ public function enterToEvent($summit_id, $member_id, $event_id) |
278 | 283 | */ |
279 | 284 | #[OA\Post( |
280 | 285 | path: "/api/v1/summits/{id}/members/{member_id}/schedule/{event_id}/metrics/leave", |
| 286 | + operationId: 'leaveFromEvent', |
281 | 287 | summary: "Record a metric exit from a specific event", |
282 | | - security: [["Bearer" => []]], |
283 | | - tags: ["summit-metrics"], |
| 288 | + security: [["summit_metrics_oauth2" => [SummitScopes::LeaveEvent]]], |
| 289 | + tags: ["Summit Metrics"], |
284 | 290 | parameters: [ |
285 | 291 | new OA\Parameter( |
286 | 292 | name: "id", |
@@ -342,9 +348,13 @@ public function leaveFromEvent($summit_id, $member_id, $event_id) |
342 | 348 |
|
343 | 349 | #[OA\Put( |
344 | 350 | path: "/api/v1/summits/{id}/metrics/onsite/enter", |
| 351 | + operationId: 'onSiteEnter', |
345 | 352 | summary: "Record an on-site metric entry (for attendees entering venue/room)", |
346 | | - security: [["Bearer" => []]], |
347 | | - tags: ["summit-metrics"], |
| 353 | + security: [["summit_metrics_oauth2" => [SummitScopes::WriteMetrics]]], |
| 354 | + tags: ["Summit Metrics"], |
| 355 | + x: [ |
| 356 | + "authz_groups" => [IGroup::SummitAccessControl] |
| 357 | + ], |
348 | 358 | parameters: [ |
349 | 359 | new OA\Parameter( |
350 | 360 | name: "id", |
@@ -406,9 +416,13 @@ public function onSiteEnter($summit_id) |
406 | 416 |
|
407 | 417 | #[OA\Get( |
408 | 418 | path: "/api/v1/summits/{id}/metrics/onsite/enter", |
| 419 | + operationId: 'checkOnSiteEnter', |
409 | 420 | summary: "Check if on-site entry is allowed for an attendee (validation only, does not record entry)", |
410 | | - security: [["Bearer" => []]], |
411 | | - tags: ["summit-metrics"], |
| 421 | + security: [["summit_metrics_oauth2" => [SummitScopes::ReadAllSummitData, SummitScopes::ReadSummitData, SummitScopes::ReadMetrics]]], |
| 422 | + tags: ["Summit Metrics"], |
| 423 | + x: [ |
| 424 | + "authz_groups" => [IGroup::SummitAccessControl] |
| 425 | + ], |
412 | 426 | parameters: [ |
413 | 427 | new OA\Parameter( |
414 | 428 | name: "id", |
@@ -481,9 +495,13 @@ public function checkOnSiteEnter($summit_id) |
481 | 495 |
|
482 | 496 | #[OA\Post( |
483 | 497 | path: "/api/v1/summits/{id}/metrics/onsite/leave", |
| 498 | + operationId: 'onSiteLeave', |
484 | 499 | summary: "Record an on-site metric exit (for attendees leaving venue/room)", |
485 | | - security: [["Bearer" => []]], |
486 | | - tags: ["summit-metrics"], |
| 500 | + security: [["summit_metrics_oauth2" => [SummitScopes::WriteMetrics]]], |
| 501 | + tags: ["Summit Metrics"], |
| 502 | + x: [ |
| 503 | + "authz_groups" => [IGroup::SummitAccessControl] |
| 504 | + ], |
487 | 505 | parameters: [ |
488 | 506 | new OA\Parameter( |
489 | 507 | name: "id", |
|
0 commit comments