# A tester

## Slug

> ok

```
composer require stof/doctrine-extensions-bundle
```

- Ajout dans config/packages/stof_doctrine_extensions.yaml 
```
    orm:
        default:
            sluggable: true
```

- Dans l'entity, ajout d'un champ slug de type string
- ajout de l'annotation 
```php
/**
 * @Gedmo\Slug(fields={"nom"})
 */
// avec use Gedmo\Mapping\Annotation as Gedmo;
```

- lors de l'insertion d'un nouvel élément, le slug est créé à la volée.


> * [ ] voir les autres possibilités de https://symfony.com/doc/master/bundles/StofDoctrineExtensionsBundle/index.html

## Upload d'images classique

> ok

- https://symfony.com/doc/current/controller/upload_file.html

## Upload d'images via bundle

> ok

- https://github.com/dustin10/VichUploaderBundle/blob/master/Resources/doc/index.md
- Entité avec version alternative plus simple
- configuration de config/packages/vich_uploader.yaml
- création du formulaire
- ajout de la propriété upload dans le formulaire

## Liip image bundle pour gérer les miniatures

> ok  mais il faut modifier le Dockerfile de php-fpm sur docker-hub

```
RUN apt-get update && apt-get upgrade -y && apt-get install -y zlib1g-dev libpng-dev libjpeg-dev libfreetype6-dev
RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/
&& docker-php-ext-install gd
```

- https://github.com/liip/LiipImagineBundle

## Easyadmin avec fichier

> ok en spécifiant les champs un à un pour chaque entité
> maintenant avec la gestion des permissions

## SonataAdmin

> plus compliqué qu'easyadmin...
- vraiment personnalisable mais il faut définir tous les éléments à la main dans une classe associée à chaque entité

## API jointure repository

- Trouver le cas d'utilisation

## Integration vuejs webencore

- création d'un front-end basé sur l'API