• Laravel 8

    Cours Laravel 8 – la localisation

    Lorsqu’on crée un site c’est souvent dans une optique multi-langages. On parle alors d’internationalisation (i18n) et de localisation (L10n). L’internationalisation consiste à préparer une application pour la rendre potentiellement adaptée à différents langages.  La localisation consiste quant à elle à ajouter un composant spécifique à une langue. C’est un sujet assez complexe qui ne se limite pas à la traduction des textes mais qui impacte aussi la représentation des dates, la gestion des pluriels, parfois la mise en page… Qu’a à nous proposer Laravel dans ce domaine ? Nous allons le voir dans ce chapitre. Pour les curieux i18n parce qu’il y a 18 lettres entre le « i » et le…

  • Laravel 8

    Cours Laravel 8 – les événements

    Il y a plusieurs façons de programmer. En général la plus simple et lisible consiste à procéder de façon séquentielle : on a une suite d’instructions (modulables par des conditions) qui sont toujours les mêmes. Le flux est facile à suivre. Mais on a aussi l’approche événementielle. On va réagir à des événements susceptibles de se produire. On peut mettre ainsi en place un ensemble constitué par une partie qui détecte des événements et une autre qui les gère. Laravel permet de gérer avec facilité les événements comme on va le voir dans ce chapitre. Le design pattern Observateur Le design pattern Observateur (observer) établit une relation de type 1:n entre…

  • Laravel 8

    Cours Laravel 8 – la sécurité – on se protège

    Lorsqu’on développe une application on prend plein de précautions, par exemple les utilisateurs doivent s’authentifier pour éviter des actions non autorisées. Dans le code on peut vérifier si la personne est authentifiée et quel est son degré d’habilitation. On a vu que Jetstream introduit une gestion complète des équipes avec des rôles et des permissions. En dehors de l’authentification on doit gérer certaines situations comme par exemple savoir si un utilisateur authentifié a le droit de modifier une ressource particulière. Laravel nous offre un système d’autorisations bien pratique. L’authentification Les middlewares On a déjà vu l’authentification en détail dans un précédent chapitre. On peut aussi gérer les utilisateurs authentifiés selon…

  • Laravel 8

    Cours Laravel 8 – la sécurité – se passer de Jetstream

    On a vu dans les précédents articles comment Jetstream peut nous simplifier la vie au niveau de la gestion de l’authentification et aussi tout ce qu’il nous apporte en prime (gestion du profil, des équipes…). Mais évidemment il y a un revers à la médaille. On a pas forcément besoin de tout ce que Jetstream nous propose, mais on a vu qu’il est facile de désactiver des fonctionnalités au niveau de la configuration. Un autre aspect qui peut se révéler assez gênant c’est que Jetstream nous impose des technologies comme Tailwind ou Livewire que l’on n’a pas forcément envie d’utiliser. Dans cet article je vous montre comment utiliser Fortify sans…

  • Laravel 8

    Cours Laravel 8 – la sécurité – les équipes

    Dans cet article on va finir l’exploration des possibilités de Jetstream. On a déjà vu précédemment qu’on dispose avec ce package de tout l’arsenal de l’authentification (connexion, déconnexion, oubli du mot de passe, vérification de l’email, vérification du mot de passe…). On a vu également que l’utilisateur dispose d’une gestion complète de son profil (informations personnelles, changement du mot de passe, authentification à double facteur, purge de session…). On va voir dans cet article que Jetstream offre aussi la possibilité de gérer des équipes (teams) avec des permissions. Installation Pour l’installation on retrouve exactement ce qu’on a vu. En partant d’un Laravel 8 tout neuf on installe Jetstream : composer…

  • Laravel 8

    Cours Laravel 8 – la sécurité – gestion du profil et API

    Lorsqu’on installe Jetstream on n’obtient pas seulement une authentification complète avec enregistrement, connexion et déconnexion, vérification de l’email, oubli du mot de passe, comme on l’a vu dans les deux articles précédents. On obtient beaucoup plus comme on va le voir dans cet article. Déjà une gestion du profil de l’utilisateur qui peut ainsi modifier ses données personnelles, mais également la possibilité de passer par une authentification à deux facteurs qui devient de plus en plus à la mode. l’utilisateur peut en plus supprimer sa session ou carrément son compte. On verra également la possibilité de demander la confirmation du mot de passe pour l’accès à des pages sensibles. Pour…