dbp/relay-base-course-connector-campusonline-bundle
最新稳定版本:v0.1.26
Composer 安装命令:
composer require dbp/relay-base-course-connector-campusonline-bundle
包简介
README 文档
README
Base Symfony bundle for CampusOnline Course integration for the DBP Relay API Server
Integration into the Relay API Server
- Add the bundle package as a dependency:
composer require dbp/relay-base-course-connector-campusonline-bundle
- Add the bundle to your
config/bundles.php:
... Dbp\Relay\BasePersonBundle\DbpRelayBaseCourseBundle::class => ['all' => true], Dbp\Relay\BasePersonBundle\DbpRelayBaseCourseConnectorCampusonlineBundle::class => ['all' => true], ...
- Run
composer installto clear caches
Configuration
The bundle has some configuration values that you can specify in your app, either by hard-coding it, or by referencing an environment variable.
For this create config/packages/dbp_relay_base_course_connector_ldap.yaml in the app with the following
content:
dbp_relay_base_course_connector_campusonline: campus_online: api_token: '%env(CAMPUS_ONLINE_API_TOKEN)%' api_url: '%env(CAMPUS_ONLINE_API_URL)%' org_root_id: '%env(ORGANIZATION_ROOT_ID)%'
For more info on bundle configuration see https://symfony.com/doc/current/bundles/configuration.html
Events
CoursePostEvent
This event allows you to add additional attributes ("local data") to the \Dbp\Relay\BaseCourseBundle\Entity\Course base-entity that you want to be included in responses to Course entity requests.
Event subscribers receive a \Dbp\Relay\RelayBaseCourseConnectorCampusonlineBundle\Event\CourseProviderPostEvent instance containing the Course base-entity and the course data provided by Campusonline.
For example, create an event subscriber src/EventSubscriber/CourseEventSubscriber.php:
<?php namespace App\EventSubscriber; use Dbp\Relay\BaseCourseConnectorCampusonlineBundle\Event\CoursePostEvent; use Symfony\Component\EventDispatcher\EventSubscriberInterface; class CourseEventSubscriber implements EventSubscriberInterface { public static function getSubscribedEvents(): array { return [ CoursePostEvent::NAME => 'onPost', ]; } public function onPost(CoursePostEvent $event) { $course = $event->getCourse(); $courseData = $event->getCourseData(); $course->trySetLocalDataValue('code', $courseData->getCode()); } }
And add it to your src/Resources/config/services.yaml:
App\EventSubscriber\CourseEventSubscriber: autowire: true autoconfigure: true
统计信息
- 总下载量: 11.36k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: AGPL-3.0-or-later
- 更新时间: 2023-03-01