Skip to content

Package: courses-import-export

Generated from api/packages/courses-import-export

Source: api/packages/courses-import-export · imported version 0.1.24. The sections after the README are extracted from the code on every docs build.

This package is responsible for dealing courses in .ulam format

Export do create zip package in ulam format with content.json and all essential assets. Export Resource is used for this.

Importing the courses in ulam format.

  • composer require ulams/course-import-export
  • php artisan db:seed --class="Ulams\CoursesImportExport\Database\Seeders\CoursesExportImportPermissionSeeder"

All the endpoints are defined in swagger

Run ./vendor/bin/phpunit to run tests. See tests folder as it’s quite good staring point as documentation appendix.

Test details

  1. CloneCourseStarted - event dispatched after course cloning is started.
  2. CloneCourseFailed - event dispatched after unsuccessful course cloning.
  3. CloneCourseFinished - event dispatched after successfully course cloning.

Permissions are defined in seeder

Method Path Auth Action
GET /api/admin/courses/{course}/clone yes CourseExportImportAPIController@clone
GET /api/admin/courses/{course}/export yes CourseExportImportAPIController@export
POST /api/admin/courses/zip/import yes CourseExportImportAPIController@import
Permission Seeded for roles Constant
course-import-export_import admin CoursesImportExportPermissionsEnum::COURSES_IMPORT
course-import-export_export admin CoursesImportExportPermissionsEnum::COURSES_EXPORT
course-import-export_export_authored admin CoursesImportExportPermissionsEnum::COURSES_EXPORT_OWNED
course-import-export_clone admin CoursesImportExportPermissionsEnum::COURSES_CLONE

Registered with AdministrableConfig::registerConfig (editable in the admin panel under Configuration → Settings).

None.

Event Description Notification templates
CloneCourseFailedEvent
CloneCourseFinishedEvent
CloneCourseStartedEvent

None.

None.

None.