abenmada / sylius-media-plugin
The Media plugin provides a library to manage your media
Installs: 6
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 2
Forks: 0
Open Issues: 0
Type:sylius-plugin
Requires
- php: ^8.0
- sylius/sylius: ^1.12
Requires (Dev)
- behat/behat: ^3.6.1
- behat/mink-selenium2-driver: ^1.4
- dmore/behat-chrome-extension: ^1.3
- dmore/chrome-mink-driver: ^2.7
- friends-of-behat/mink: ^1.8
- friends-of-behat/mink-browserkit-driver: ^1.4
- friends-of-behat/mink-debug-extension: ^2.0.0
- friends-of-behat/mink-extension: ^2.4
- friends-of-behat/page-object-extension: ^0.3
- friends-of-behat/suite-settings-extension: ^1.0
- friends-of-behat/symfony-extension: ^2.1
- friends-of-behat/variadic-extension: ^1.3
- friendsofphp/php-cs-fixer: ^3.9
- phpspec/phpspec: ^7.2
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ^1.8.1
- phpstan/phpstan-doctrine: 1.3.40
- phpstan/phpstan-strict-rules: ^1.3.0
- phpstan/phpstan-webmozart-assert: ^1.2.0
- phpunit/phpunit: ^9.5
- polishsymfonycommunity/symfony-mocker-container: ^1.0
- sylius-labs/coding-standard: ^4.2
- symfony/browser-kit: ^5.4 || ^6.0
- symfony/debug-bundle: ^5.4 || ^6.0
- symfony/dotenv: ^5.4 || ^6.0
- symfony/flex: ^2.2.2
- symfony/intl: ^5.4 || ^6.0
- symfony/web-profiler-bundle: ^5.4 || ^6.0
- vimeo/psalm: 4.30.0
README
The Media plugin provides a library to manage your media
Example
Here you will find example that allow you to add media to any form.
Installation
Require plugin with composer :
composer require abenmada/sylius-media-plugin
Change your config/bundles.php
file to add the line for the plugin :
<?php return [ //.. Abenmada\MediaPlugin\MediaPlugin::class => ['all' => true], ]
Then create the config file in config/packages/abenmada_media_plugin.yaml
:
imports: - { resource: "@MediaPlugin/Resources/config/services.yaml" }
Then import the routes in config/routes/abenmada_media_plugin.yaml
:
abenmada_media_plugin_routing: resource: "@MediaPlugin/Resources/config/routes.yaml" prefix: /%sylius_admin.path_name%
Update the entity src/Entity/Channel/Channel.php
:
<?php declare(strict_types=1); namespace App\Entity\Channel; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\ORM\Mapping as ORM; use Abenmada\MediaPlugin\Model\Channel\ChannelTrait as AbenmadaMediaChannelTrait; use Sylius\Component\Core\Model\Channel as BaseChannel; /** * @ORM\Entity * @ORM\Table(name="sylius_channel") */ class Channel extends BaseChannel { use AbenmadaMediaChannelTrait; public function __construct() { $this->medias = new ArrayCollection(); parent::__construct(); } }
Run the migration :
bin/console doctrine:migration:migrate