thienkimlove/laravel-h5p

H5P Plugin for laravel platform

dev-master 2023-04-27 09:04 UTC

This package is auto-updated.

Last update: 2024-11-27 12:57:58 UTC


README

Description

Installation

Require it in the Composer.

composer require inhubdev/laravel-h5p

Publish the Views, Config and so things.

php artisan vendor:publish

Migrate the Database

php artisan migrate

Add to Composer-Classmap:

'classmap': [
    "vendor/h5p/h5p-core/h5p-default-storage.class.php",
    "vendor/h5p/h5p-core/h5p-development.class.php",
    "vendor/h5p/h5p-core/h5p-event-base.class.php",
    "vendor/h5p/h5p-core/h5p-file-storage.interface.php",
    "vendor/h5p/h5p-core/h5p.classes.php",
    "vendor/h5p/h5p-editor/h5peditor-ajax.class.php",
    "vendor/h5p/h5p-editor/h5peditor-ajax.interface.php",
    "vendor/h5p/h5p-editor/h5peditor-file.class.php",
    "vendor/h5p/h5p-editor/h5peditor-storage.interface.php",
    "vendor/h5p/h5p-editor/h5peditor.class.php"
],
'providers' => [
    InHub\LaravelH5p\LaravelH5pServiceProvider::class,
];

For linux

cd public/assets/vendor/h5p
ln -s ../../../../storage/h5p/content
ln -s ../../../../storage/h5p/editor
ln -s ../../../../storage/h5p/libraries

For windows

cd public\assets\vendor\h5p
mklink /d content ..\..\..\..\storage\h5p\content
mklink /d editor ..\..\..\..\storage\h5p\editor
mklink /d libraries ..\..\..\..\storage\h5p\libraries

You probably will need to add it to your app/Http/Middleware/VerifyCsrfToken.php due to H5P ajax requests without Laravel CSRF token:

protected $except = [
    '/ajax/library-upload',
    '/ajax/finish',
    '/ajax/content-user-data',
    '/ajax/library-install',
    '/ajax/files',
];

If your server runs on https, you will need to add it to your app/Providers/AppServiceProvider.php:

use Illuminate\Support\Facades\URL;

public function boot()
{
    /* ... */

    URL::forceScheme('https');
}

Credits

Abdelouahab Djoudi - Package creator.

Anass Boutakaoua - Laravel 7 support and base for this package.