Download the PHP package swisnl/laravel-lti-provider without Composer
On this page you can find all versions of the php package swisnl/laravel-lti-provider. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download swisnl/laravel-lti-provider
More information about swisnl/laravel-lti-provider
Files in swisnl/laravel-lti-provider
Package laravel-lti-provider
Short Description Laravel lti provider
License MIT
Homepage https://github.com/swisnl/laravel-lti-provider
Informations about the package laravel-lti-provider
Laravel LTI Provider
This packages provides a bridge between the Celtic LTI Package and Laravel models, by implementing a DataConnector for the Celtic LTI Package.
Install
Via Composer
Then run command to copy the required files (including the migrations) into your project.
If you have Laravel package auto discovery disabled, add the service provider to your config/app.php
file:
Finally run the migrations.
Cron jobs
The package comes with a command to clean up expired LTI nonces. To run this command, add the following to your
app/Console/Kernel.php
file:
Usage
Define a model that you use as an LTI environment. This model should implement the
Swis\Laravel\Lti\Contracts\LtiEnvironment
. The packages scopes all other models to the current LTI environment.
Using this this environment, you can create a new ModelDataConnector
instance. This instance can be used like the
DataConnector
from the Celtic LTI Package.
Customization
This package allows overriding most of the models. We use this to override some models to use UUIDs instead of numeric
ids, and to add some extra functionality (examples of this extra functionality: adding logging to UserResult
; and
using the same Client
model for both LTI and Laravel Passport).
To override a model (except the client), create a new class that extends the original model and register the new model
in the config/lti-provider.php
file. For example, to override the UserResult
model, create a new class that extends
the Swis\Laravel\Lti\Models\UserResult
class and change the following to your config/lti-provider.php
file:
Clients are a bit different, because you don't need to extend from an existing class. To override the client, create a
new class that implements the Swis\Laravel\Lti\Contracts\Client
interface and register the new model in the
config/lti-provider.php
file.
For inspiration on how to implement your own client, take a look at the Swis\Laravel\Lti\Models\SimpleClient
class
(a very basic implementation) or the \Workbench\App\OverrideModels\Client
class (this is a more complex example used
in the tests to check if it is possible to override the default implementation and if the package can handle clients
with UUIDs instead of numeric ids).
Change log
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CODE_OF_CONDUCT for details.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Credits
- Thomas Wijnands
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
This package is Treeware. If you use it in production, then we ask that you buy the world a tree to thank us for our work. By contributing to the Treeware forest you’ll be creating employment for local families and restoring wildlife habitats.
SWIS :heart: Open Source
SWIS is a web agency from Leiden, the Netherlands. We love working with open source software.
All versions of laravel-lti-provider with dependencies
laravel/framework Version ^10.0|^11.0
spatie/laravel-package-tools Version ^1.15
celtic/lti Version ^5.0