api/database/seeders/LegalDocumentSeeder.php

127 lines
7.2 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace Database\Seeders;
use App\Enums\LegalDocumentType;
use App\Models\LegalDocument;
use Illuminate\Database\Seeder;
class LegalDocumentSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
LegalDocument::query()->updateOrCreate(
['slug' => 'privacy-policy', 'version' => 1],
[
'type' => LegalDocumentType::PRIVACY_POLICY,
'title' => [
'fr' => 'Politique de confidentialité',
],
'content' => [
'fr' => [
'intro' => [
'Cette politique explique comment Bowli traite les données utilisées par lapplication mobile Bowli.',
'Elle est destinée aux utilisateurs de lapplication et aux fiches App Store / Google Play.',
],
'sections' => [
[
'title' => 'Données de compte',
'body' => [
'Bowli traite les informations nécessaires à la création et à la sécurisation du compte : adresse email, nom, avatar, mot de passe chiffré, jetons dauthentification, statut de vérification, préférences de profil et réglages.',
],
],
[
'title' => 'Repas, photos et nutrition',
'body' => [
'Les repas, photos, ingrédients, calories, protéines, glucides, lipides, légendes, avis et statuts de visibilité servent à afficher ton journal, tes statistiques, ton profil et les contenus que tu choisis de publier.',
'Si tu utilises lanalyse dimage, la photo du repas peut être transmise à un fournisseur dintelligence artificielle configuré par Bowli afin de produire un brouillon nutritionnel éditable.',
],
],
[
'title' => 'Activités sportives et Strava',
'body' => [
'Si tu connectes Strava, Bowli demande les autorisations nécessaires pour lire ton profil et tes activités sportives, puis importer les séances utiles à ton suivi.',
'Les jetons Strava sont stockés chiffrés côté API. Tu peux révoquer cette connexion depuis lapplication.',
],
],
[
'title' => 'Notifications et appareil',
'body' => [
'Si tu actives les notifications, Bowli enregistre un token Expo Push pour envoyer des notifications liées à ton compte.',
'La caméra et la bibliothèque photo ne sont utilisées que lorsque tu choisis dajouter une image à un repas ou à ton profil.',
],
],
[
'title' => 'Suppression et droits',
'body' => [
'Tu peux supprimer ton compte depuis lapplication ou demander la suppression par email au support. Selon ta localisation, tu peux disposer de droits daccès, de rectification, dopposition, de limitation, deffacement et de portabilité.',
],
],
],
],
],
'is_active' => true,
'published_at' => now(),
],
);
LegalDocument::query()->updateOrCreate(
['slug' => 'terms-of-service', 'version' => 1],
[
'type' => LegalDocumentType::TERMS,
'title' => [
'fr' => "Conditions d'utilisation",
],
'content' => [
'fr' => [
'intro' => [
'Ces conditions encadrent lutilisation de Bowli, une application de suivi alimentaire et sportif.',
'En créant un compte ou en utilisant lapplication, tu acceptes ces conditions dans leur version active.',
],
'sections' => [
[
'title' => 'Compte utilisateur',
'body' => [
'Tu dois fournir des informations exactes lors de linscription, garder ton accès confidentiel et nous prévenir en cas dutilisation non autorisée.',
],
],
[
'title' => 'Usage personnel',
'body' => [
'Bowli est conçu pour un suivi personnel des repas, objectifs et activités sportives. Lapplication ne fournit pas de diagnostic, prescription ou conseil médical.',
'Les calories, macronutriments et estimations automatiques sont indicatifs.',
],
],
[
'title' => 'Contenus publiés',
'body' => [
'Tu conserves tes droits sur les photos, repas, avis et informations que tu ajoutes. Tu accordes à Bowli les droits nécessaires pour héberger, afficher, traiter et partager ces contenus selon tes réglages de visibilité.',
'Tu tengages à ne pas publier de contenu illégal, trompeur, haineux, violent, discriminatoire, attentatoire à la vie privée ou aux droits de tiers.',
],
],
[
'title' => 'Modération et disponibilité',
'body' => [
'Bowli peut masquer, supprimer ou limiter la diffusion de contenus qui enfreignent ces conditions, les règles des stores ou la loi applicable.',
'Le service peut être interrompu pour maintenance, incident, évolution technique ou contrainte externe.',
],
],
[
'title' => 'Suppression du compte',
'body' => [
'Tu peux supprimer ton compte depuis les réglages de lapplication. Une procédure web est aussi disponible pour les utilisateurs qui nont plus accès à lapplication.',
],
],
],
],
],
'is_active' => true,
'published_at' => now(),
],
);
}
}