* Videos
** get videos
GET /api/v1/summits/{id}/presentations/{presentation_id}/videos
required scopes
%s/summits/read
%s/summits/read/all
** create video
POST /api/v1/summits/{id}/presentations/{presentation_id}/videos
payload
'you_tube_id' => 'required|alpha_dash',
'name' => 'sometimes|required|text:512',
'description' => 'sometimes|required|text|max:512',
'featured' => 'sometimes|required|boolean',
'display_on_site' => 'sometimes|required|boolean'
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-videos
** update video
PUT /api/v1/summits/{id}/presentations/{presentation_id}/videos/{video_id}
payload
'you_tube_id' => 'required|alpha_dash',
'name' => 'sometimes|required|text:512',
'description' => 'sometimes|required|text|max:512',
'featured' => 'sometimes|required|boolean',
'display_on_site' => 'sometimes|required|boolean'
'order' => 'sometimes|integer|min:1',
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-videos
** delete video
DELETE /api/v1/summits/{id}/presentations/{presentation_id}/videos/{video_id}
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-videos
* Slides
** get slides
GET /api/v1/summits/{id}/presentations/{presentation_id}/slides
required scopes
%s/summits/read
%s/summits/read/all
** create slide
POST '/api/v1/summits/{id}/presentations/{presentation_id}/slides
payload
'file' => 'required_without:link',
'link' => 'required_without:file|text:512',
'name' => 'required|text:512',
'description' => 'sometimes|required|text|max:512',
'display_on_site' => 'sometimes|required|boolean',
'featured' => 'sometimes|required|boolean',
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-slides
** update slide
PUT '/api/v1/summits/{id}/presentations/{presentation_id}/slides/{slide_id}
payload
'file' => 'sometimes|require',
'link' => 'sometimes|required|text:512',
'name' => 'sometimes|required|text:512',
'description' => 'sometimes|required|text|max:512',
'display_on_site' => 'sometimes|required|boolean',
'featured' => 'sometimes|required|boolean',
'order' => 'sometimes|integer|min:1',
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-slides
** delete slide
DELETE '/api/v1/summits/{id}/presentations/{presentation_id}/slides/{slide_id}
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-slides
* Links
** get links
GET /api/v1/summits/{id}/presentations/{presentation_id}/links
required scopes
%s/summits/read
%s/summits/read/all
** create link
POST '/api/v1/summits/{id}/presentations/{presentation_id}/links
payload
'link' => 'required|text:512',
'name' => 'required|text:512',
'description' => 'sometimes|required|text|max:512',
'display_on_site' => 'sometimes|required|boolean',
'featured' => 'sometimes|required|boolean',
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-links
** update link
PUT '/api/v1/summits/{id}/presentations/{presentation_id}/links/{link_id}
payload
'link' => 'sometimes|required|text:512',
'name' => 'sometimes|required|text:512',
'description' => 'sometimes|required|text|max:512',
'display_on_site' => 'sometimes|required|boolean',
'featured' => 'sometimes|required|boolean',
'order' => 'sometimes|integer|min:1',
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-links
** delete links
DELETE '/api/v1/summits/{id}/presentations/{presentation_id}/links/{link_id}
required scopes
%s/summits/write-presentation-materials
%s/summits/write-presentation-links
Change-Id: I56a23f0a04cdc254ecaa370afa197a9eebe76a3c
64 lines
2.5 KiB
PHP
64 lines
2.5 KiB
PHP
<?php namespace App\Security;
|
|
/**
|
|
* Copyright 2017 OpenStack Foundation
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
**/
|
|
|
|
/**
|
|
* Class SummitScopes
|
|
* @package App\Security
|
|
*/
|
|
final class SummitScopes
|
|
{
|
|
const ReadSummitData = '%s/summits/read';
|
|
const ReadAllSummitData = '%s/summits/read/all';
|
|
const ReadNotifications = '%s/summits/read-notifications';
|
|
const WriteNotifications = '%s/summits/write-notifications';
|
|
|
|
const WriteSummitData = '%s/summits/write';
|
|
const WriteSpeakersData = '%s/speakers/write';
|
|
const ReadSpeakersData = '%s/speakers/read';
|
|
const WriteTrackTagGroupsData = '%s/track-tag-groups/write';
|
|
const WriteTrackQuestionTemplateData = '%s/track-question-templates/write';
|
|
const WriteMySpeakersData = '%s/speakers/write/me';
|
|
const ReadMySpeakersData = '%s/speakers/read/me';
|
|
|
|
const PublishEventData = '%s/summits/publish-event';
|
|
const WriteEventData = '%s/summits/write-event';
|
|
const WriteVideoData = '%s/summits/write-videos';
|
|
const WritePresentationVideosData = '%s/summits/write-presentation-videos';
|
|
const WritePresentationLinksData = '%s/summits/write-presentation-links';
|
|
const WritePresentationSlidesData = '%s/summits/write-presentation-slides';
|
|
const WritePresentationMaterialsData = '%s/summits/write-presentation-materials';
|
|
|
|
|
|
const WriteAttendeesData = '%s/attendees/write';
|
|
|
|
const WritePromoCodeData = '%s/promo-codes/write';
|
|
|
|
const WriteEventTypeData = '%s/event-types/write';
|
|
|
|
const WriteTracksData = '%s/tracks/write';
|
|
|
|
const WriteTrackGroupsData = '%s/track-groups/write';
|
|
|
|
const WriteLocationsData = '%s/locations/write';
|
|
|
|
const WriteRSVPTemplateData = '%s/rsvp-templates/write';
|
|
|
|
const WriteLocationBannersData = '%s/locations/banners/write';
|
|
|
|
const WriteSummitSpeakerAssistanceData = '%s/summit-speaker-assistance/write';
|
|
|
|
const WriteTicketTypeData = '%s/ticket-types/write';
|
|
|
|
const WritePresentationData = '%s/summits/write-presentation';
|
|
} |