ngunyimacharia/laravel-openedx

为 Laravel 框架提供的 OpenEdx 集成。

v1.0.6 2019-05-18 08:49 UTC

This package is auto-updated.

Last update: 2024-09-26 08:40:08 UTC


README

Latest Version on Packagist Total Downloads

Laravel 连接 OpenEdx 学习管理系统。

安装

通过 Composer

$ composer require ngunyimacharia/laravel-openedx

配置

  1. 运行 php artisan vendor:publish 以发布包的配置文件。此文件将保存为 openedx.php

  2. 在您的 .env 文件中配置以下所需值

    MICROSITE_BASE=example.com MICROSITE_URL=http(s)://example.com LMS_BASE=https://courses.example.com CMS_BASE=https://studio.courses.example.com LMS_REGISTRATION_URL=https://courses.example.com/user_api/v1/account/registration/ LMS_LOGIN_URL=https://courses.example.com/user_api/v1/account/login_session/ LMS_RESET_PASSWORD_PAGE=https://courses.example.com/user_api/v1/account/password_reset/ LMS_RESET_PASSWORD_API_URL=https://courses.example.com/user_api/v1/account/password_change/ (自定义配置) REGISTER_EMAIL_FIELD=register_email REGISTER_PASSWORD_FIELD=register_password LOGIN_EMAIL_FIELD=login_email LOGIN_PASSWORD_FIELD=login_password EDX_DB_HOST=127.0.0.1 EDX_DB_USERNAME=root EDX_DB_PASSWORD=password EDX_KEY=xxxxxxxxx (用于 API 访问) EDX_SECRET=xxxxxxxxx (用于 API 访问)

用法

将 openedx 门面添加到文件

use ngunyimacharia\openedx\Facades\openedx;

注册用户

Openedx::register([
'first_name'=>$first_name,
'last_name'=>$last_name,
'username'=>$username,
'email'=> $email,
'password'=> $hashed_password
]);

响应:布尔值(如果操作成功)

登录用户

Openedx::login(['username'  => $username', 'password'  => $password']);

响应:Cookies 已保存以确保登录。

登出用户

Openedx::logout()

响应:布尔值(如果操作成功)

注意:建议创建一个 iframe 调用 LMS 登出 URL,而不是使用此方法退出 LMS。

获取所有课程

Openedx::getCourses()

响应:LMS 中当前所有课程的数组

获取课程概述

Openedx::getOverview($courseId)

响应:课程概述

检查注册状态

Openedx::checkEnrollmentStatus($courseId)

响应:当前认证用户对指定课程的注册状态。

注册课程

Openedx::enroll($courseId)

响应:布尔值(根据操作的成功与否)

注册

Openedx::enrollments()

响应:LMS 广泛范围内的所有课程注册的数组。

获取课程进度

Openedx::getCourseProgress($courseId)

响应:当前课程中认证用户的状态字符串。

变更日志

有关最近更改的更多信息,请参阅 changelog

测试(待定)

$ composer test

贡献

有关详细信息和使用 to-do 列表,请参阅 contributing.md

安全

如果您发现任何安全相关的问题,请通过作者电子邮件而不是使用问题跟踪器。

致谢

许可

有关更多信息,请参阅 许可文件