Package: consultation-access
Generated from api/packages/consultation-access
Source: api/packages/consultation-access · imported version 0.1.3. The sections after the README are extracted from the code on every docs build.
README
Section titled “README”What does it do
Section titled “What does it do”This package is used to create enquiries for free consultation access.
Users with appropriate permissions can accept the enquiry and send a meeting link or reject the enquiry by sending a response message.
Consultation management is in our other package which is here.
Installing
Section titled “Installing”composer require ulams/consultation-accessphp artisan migratephp artisan db:seed --class="Ulams\ConsultationAccess\Database\Seeders\ConsultationAccessPermissionSeeder"
Endpoints
Section titled “Endpoints”Run ./vendor/bin/phpunit to run tests. Test details
Events
Section titled “Events”ConsultationAccessEnquiryAdminCreatedEvent- This event is dispatched when a user submits an enquiry for consultation. It includes the enquiry itself and the user who has authorization to approve it.ConsultationAccessEnquiryAdminUpdatedEvent- This event is dispatched when an enquiry is updated. It includes the author of the enquiry and the enquiry itself. Includes reason for refusalConsultationAccessEnquiryApprovedEvent- This event is dispatched when an enquiry is approved.ConsultationAccessEnquiryDisapprovedEvent- This event is dispatched when an enquiry is disapproved (includes reason for refusal).
Flow diagram
Section titled “Flow diagram”See the diagram below
sequenceDiagram
participant Student
participant LMS
participant Admin
Student->>LMS: Request consultation access
LMS->>Admin: Notify
Admin->>Admin: Review enquiry
alt Enquiry approved
Admin->>LMS: Approve request
LMS -->> Student: Send notification of approval
else Enquiry rejected
Admin->>LMS: Reject enquiry
LMS -->> Student: Send rejection notification
end
If you don’t send the meeting_url during the approval, an automatic space will be created in Pencil Spaces, and that link will be saved. You can find more information here.
Listeners
Section titled “Listeners”This package does not listen for any events.
Permissions
Section titled “Permissions”Permissions are defined in seeder.
More documentation in the package
Section titled “More documentation in the package”API endpoints
Section titled “API endpoints”| Method | Path | Auth | Action |
|---|---|---|---|
GET |
/api/admin/consultation-access-enquiries |
yes | ConsultationAccessEnquiryAdminApiController@index |
POST |
/api/admin/consultation-access-enquiries/approve/{proposedTermId} |
yes | ConsultationAccessEnquiryAdminApiController@approve |
POST |
/api/admin/consultation-access-enquiries/disapprove/{id} |
yes | ConsultationAccessEnquiryAdminApiController@disapprove |
GET |
/api/consultation-access-enquiries |
yes | ConsultationAccessEnquiryApiController@index |
POST |
/api/consultation-access-enquiries |
yes | ConsultationAccessEnquiryApiController@create |
GET |
/api/consultation-access-enquiries/{id} |
yes | ConsultationAccessEnquiryApiController@read |
GET |
/api/consultation-access-enquiries/{id}/join |
yes | ConsultationAccessEnquiryApiController@join |
PATCH |
/api/consultation-access-enquiries/{id} |
yes | ConsultationAccessEnquiryApiController@update |
DELETE |
/api/consultation-access-enquiries/{id} |
yes | ConsultationAccessEnquiryApiController@delete |
Permissions
Section titled “Permissions”| Permission | Seeded for roles | Constant |
|---|---|---|
consultation-access_create-own |
admin, student | ConsultationAccessPermissionEnum::CREATE_OWN_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_list-own |
admin, student | ConsultationAccessPermissionEnum::LIST_OWN_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_read-own |
admin, student | ConsultationAccessPermissionEnum::READ_OWN_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_delete-own |
admin, student | ConsultationAccessPermissionEnum::DELETE_OWN_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_update-own |
admin, student | ConsultationAccessPermissionEnum::UPDATE_OWN_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_list |
admin | ConsultationAccessPermissionEnum::LIST_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_approve |
admin | ConsultationAccessPermissionEnum::APPROVE_CONSULTATION_ACCESS_ENQUIRY |
consultation-access_disapprove |
admin | ConsultationAccessPermissionEnum::DISAPPROVE_CONSULTATION_ACCESS_ENQUIRY |
Settings
Section titled “Settings”Registered with AdministrableConfig::registerConfig (editable in the admin panel under Configuration → Settings).
None.
Events
Section titled “Events”| Event | Description | Notification templates |
|---|---|---|
ConsultationAccessEnquiryAdminCreatedEvent |
||
ConsultationAccessEnquiryAdminUpdatedEvent |
||
ConsultationAccessEnquiryApprovedEvent |
||
ConsultationAccessEnquiryDisapprovedEvent |
||
ConsultationAccessEnquiryEvent |
Notification templates registered here
Section titled “Notification templates registered here”None.
Artisan commands
Section titled “Artisan commands”None.
Scheduled jobs
Section titled “Scheduled jobs”None.
Environment variables read
Section titled “Environment variables read”None.