Compare commits

..

No commits in common. "8d70ca871b48117e49afeb942366fe53667e936d" and "9b42f328ae89bbed24f05658e97da8b433477cf1" have entirely different histories.

19 changed files with 2948 additions and 2726 deletions

View File

@ -1,3 +0,0 @@
## v1.5.0 - 2024-02-08
### Release
* Update dependencies. Chill-bundles upgraded from 2.16.0 to 2.16.1

View File

@ -1,5 +0,0 @@
## v1.6.0 - 2024-02-12
### Release
* Update dependencies. Chill-bundles upgraded from 2.16.1 to 2.16.1
### Fixed
* Overwriting of bundles translations removed

View File

@ -1,5 +0,0 @@
## v1.7.0 - 2024-02-13
### Release
* Update dependencies. Chill-bundles upgraded from 2.16.1 to 2.16.1
### Fixed
* Upgrade vue to fix multiselect

View File

@ -11,8 +11,5 @@ MAILER_URL=smtp://smtp:1025
PGADMIN_DEFAULT_EMAIL=admin@chill.social PGADMIN_DEFAULT_EMAIL=admin@chill.social
PGADMIN_DEFAULT_PASSWORD=password PGADMIN_DEFAULT_PASSWORD=password
VAR_DUMPER_SERVER=dumper:9912
## Phpstorm IDE project path ## Phpstorm IDE project path
PROJECT_DIR= PROJECT_DIR=

View File

@ -6,22 +6,6 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
and is generated by [Changie](https://github.com/miniscruff/changie). and is generated by [Changie](https://github.com/miniscruff/changie).
## v1.7.0 - 2024-02-13
### Release
* Update dependencies. Chill-bundles upgraded from 2.16.1 to 2.16.1
### Fixed
* Upgrade vue to fix multiselect
## v1.6.0 - 2024-02-12
### Release
* Update dependencies. Chill-bundles upgraded from 2.16.1 to 2.16.1
### Fixed
* Overwriting of bundles translations removed
## v1.5.0 - 2024-02-08
### Release
* Update dependencies. Chill-bundles upgraded from 2.16.0 to 2.16.1
## v1.4.4 - 2024-02-08 ## v1.4.4 - 2024-02-08
### Fixed ### Fixed
* fix incorrect upgrade * fix incorrect upgrade

View File

@ -2,7 +2,7 @@ THIS_FILE := $(lastword $(MAKEFILE_LIST))
PWD:=$(shell echo ${PWD}) PWD:=$(shell echo ${PWD})
UID:=$(shell id -u) UID:=$(shell id -u)
GID:=$(shell id -g) GID:=$(shell id -g)
DOCKERNODE_CMD=docker run --rm --user ${UID}:${GID} -v ${PWD}:/app --workdir /app -e YARN_CACHE_FOLDER=/app/.yarncache node:20 DOCKERNODE_CMD=docker run --rm --user ${UID}:${GID} -v ${PWD}:/app --workdir /app -e YARN_CACHE_FOLDER=/app/.yarncache node:16
DOCKER_COMPOSE_PHP_EXEC_CMD=docker-compose run --rm --user $(UID):$(GID) -e CLEAR_CACHE=false -e COMPOSER_HOME=/var/www/app/.composer --entrypoint /usr/bin/env php DOCKER_COMPOSE_PHP_EXEC_CMD=docker-compose run --rm --user $(UID):$(GID) -e CLEAR_CACHE=false -e COMPOSER_HOME=/var/www/app/.composer --entrypoint /usr/bin/env php
DOCKER_PHP_EXEC_CMD_BASE=docker run --rm --user $(UID):$(GID) -v ${PWD}:/var/www/app -e CLEAR_CACHE=false -e COMPOSER_HOME=/var/www/app/.composer --entrypoint /usr/bin/env $(PHP_BASE_IMAGE_TAG) DOCKER_PHP_EXEC_CMD_BASE=docker run --rm --user $(UID):$(GID) -v ${PWD}:/var/www/app -e CLEAR_CACHE=false -e COMPOSER_HOME=/var/www/app/.composer --entrypoint /usr/bin/env $(PHP_BASE_IMAGE_TAG)
PHP_BASE_IMAGE=php:8.2-fpm-alpine PHP_BASE_IMAGE=php:8.2-fpm-alpine

View File

@ -15,14 +15,14 @@
}, },
"require": { "require": {
"ext-redis": "*", "ext-redis": "*",
"chill-project/chill-bundles": "dev-upgrade-sf5@dev", "chill-project/chill-bundles": "^2.16",
"symfony/flex": "^1.9", "symfony/flex": "^1.9",
"nelmio/alice": "^3.8", "nelmio/alice": "^3.8",
"phpoffice/phpword": "^0.18.2", "phpoffice/phpword": "^0.18.2",
"phpstan/phpstan": "^1.0", "phpstan/phpstan": "^1.0",
"spomky-labs/base64url": "^2.0", "spomky-labs/base64url": "^2.0",
"twig/string-extra": "^3.3", "twig/string-extra": "^3.3",
"symfony/runtime": "^5.4" "symfony/runtime": "5.4.*"
}, },
"require-dev": { "require-dev": {
"fakerphp/faker": "^1.13", "fakerphp/faker": "^1.13",

2848
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -36,4 +36,5 @@ return [
KnpU\OAuth2ClientBundle\KnpUOAuth2ClientBundle::class => ['all' => true], KnpU\OAuth2ClientBundle\KnpUOAuth2ClientBundle::class => ['all' => true],
Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle::class => ['all' => true], Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle::class => ['all' => true],
Chill\EventBundle\ChillEventBundle::class => ['all' => true], Chill\EventBundle\ChillEventBundle::class => ['all' => true],
ChampsLibres\AsyncUploaderBundle\ChampsLibresAsyncUploaderBundle::class => ['all' => true],
]; ];

View File

@ -12,8 +12,7 @@ doctrine:
geometry: string geometry: string
# IMPORTANT: You MUST configure your server version, # IMPORTANT: You MUST configure your server version,
# either here or in the DATABASE_URL env var (see .env file) # either here or in the DATABASE_URL env var (see .env file)
#server_version: '16' #server_version: '15'
use_savepoints: true
orm: orm:
auto_generate_proxy_classes: true auto_generate_proxy_classes: true
naming_strategy: doctrine.orm.naming_strategy.default naming_strategy: doctrine.orm.naming_strategy.default

View File

@ -60,4 +60,3 @@ when@test:
# type: stream # type: stream
# channels: [deprecation] # channels: [deprecation]
# path: php://stderr # path: php://stderr
# formatter: monolog.formatter.json

View File

@ -1,6 +1,7 @@
framework: framework:
default_locale: '%env(resolve:LOCALE)%' default_locale: '%env(resolve:LOCALE)%'
translator: translator:
default_path: '%kernel.project_dir%/translations' default_path: '%kernel.project_dir%/translations'
fallbacks: [ '%env(resolve:LOCALE)%' ] fallbacks: [ '%env(resolve:LOCALE)%' ]
providers:

View File

@ -22,14 +22,6 @@ services:
- DATABASE_URL=postgresql://postgres:postgres@db:5432/postgres?serverVersion=14&charset=utf8 - DATABASE_URL=postgresql://postgres:postgres@db:5432/postgres?serverVersion=14&charset=utf8
links: links:
- smtp - smtp
- dumper
dumper:
image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:latest
entrypoint: ["/usr/bin/env"]
command: ["bin/var-dump-server", "--host", "0.0.0.0:9912"]
volumes:
- .:/var/www/app
nginx: nginx:
volumes: volumes:

View File

@ -2,6 +2,9 @@
"brick/math": { "brick/math": {
"version": "0.9.3" "version": "0.9.3"
}, },
"champs-libres/async-uploader-bundle": {
"version": "dev-sf4"
},
"champs-libres/wopi-bundle": { "champs-libres/wopi-bundle": {
"version": "dev-master" "version": "dev-master"
}, },
@ -45,12 +48,12 @@
"version": "v0.5.3" "version": "v0.5.3"
}, },
"doctrine/doctrine-bundle": { "doctrine/doctrine-bundle": {
"version": "2.11", "version": "2.10",
"recipe": { "recipe": {
"repo": "github.com/symfony/recipes", "repo": "github.com/symfony/recipes",
"branch": "main", "branch": "main",
"version": "2.4", "version": "2.4",
"ref": "cc62b7e9470998c640ee99d284a013a676f1fc5e" "ref": "013b823e7fee65890b23e40f31e6667a1ac519ac"
}, },
"files": [ "files": [
"config/packages/doctrine.yaml", "config/packages/doctrine.yaml",
@ -569,7 +572,7 @@
"repo": "github.com/symfony/recipes", "repo": "github.com/symfony/recipes",
"branch": "main", "branch": "main",
"version": "4.3", "version": "4.3",
"ref": "df66ee1f226c46f01e85c29c2f7acce0596ba35a" "ref": "2bf89438209656b85b9a49238c4467bff1b1f939"
}, },
"files": [ "files": [
"config/packages/mailer.yaml" "config/packages/mailer.yaml"
@ -603,12 +606,12 @@
"version": "v5.1.3" "version": "v5.1.3"
}, },
"symfony/monolog-bundle": { "symfony/monolog-bundle": {
"version": "3.10", "version": "3.8",
"recipe": { "recipe": {
"repo": "github.com/symfony/recipes", "repo": "github.com/symfony/recipes",
"branch": "main", "branch": "main",
"version": "3.7", "version": "3.7",
"ref": "aff23899c4440dd995907613c1dd709b6f59503f" "ref": "213676c4ec929f046dfde5ea8e97625b81bc0578"
}, },
"files": [ "files": [
"config/packages/monolog.yaml" "config/packages/monolog.yaml"
@ -623,7 +626,7 @@
"repo": "github.com/symfony/recipes", "repo": "github.com/symfony/recipes",
"branch": "main", "branch": "main",
"version": "5.3", "version": "5.3",
"ref": "07ce01a897311647520b43d4ddddad9537b99ba6" "ref": "221b9cc0a623f567e83ccd61a8ac82a9a91e2b5b"
}, },
"files": [ "files": [
".env.test", ".env.test",
@ -726,7 +729,7 @@
"repo": "github.com/symfony/recipes", "repo": "github.com/symfony/recipes",
"branch": "main", "branch": "main",
"version": "5.3", "version": "5.3",
"ref": "e28e27f53663cc34f0be2837aba18e3a1bef8e7b" "ref": "da64f5a2b6d96f5dc24914517c0350a5f91dee43"
}, },
"files": [ "files": [
"config/packages/translation.yaml", "config/packages/translation.yaml",

View File

@ -4,7 +4,9 @@ use Symfony\Component\Dotenv\Dotenv;
require dirname(__DIR__).'/vendor/autoload.php'; require dirname(__DIR__).'/vendor/autoload.php';
if (method_exists(Dotenv::class, 'bootEnv')) { if (file_exists(dirname(__DIR__).'/config/bootstrap.php')) {
require dirname(__DIR__).'/config/bootstrap.php';
} elseif (method_exists(Dotenv::class, 'bootEnv')) {
(new Dotenv())->bootEnv(dirname(__DIR__).'/.env'); (new Dotenv())->bootEnv(dirname(__DIR__).'/.env');
} }

View File

View File

@ -0,0 +1,205 @@
# activity
Show the activity: Voir l'échange
Edit the activity: Modifier l'échange
Activity: Échange
Add a new activity: Ajouter un nouvel échange
Activity list: Liste des échanges
Update activity: Modifier l'échange
Activity data: Données de l'échange
Activity location: Localisation de l'échange
Activity creation: Nouvel échange
Save activity: Sauver l'échange
'%user% has done an %activity_type%': '%user% a effectué un échange de type "%activity_type%"'
'Success : activity created!': L'échange a été créé.
'The form is not valid. The activity has not been created !': Le formulaire est invalide. L'échange n'a pas été créé.
'Success : activity updated!': L'échange a été mis à jour.
'The form is not valid. The activity has not been updated !': Le formulaire est invalide. L'échange n'a pas été mis à jour.
Activity configuration: Configuration des échanges
Activity configuration menu: Configuration des échanges
Activity Types: Types d'échange
Activity Reasons: Sujets d'un échange
Activity Reasons Category: Catégories de sujet d'échanges
Activity Types Categories: Catégories des types d'échange
Activity Presences: Présences aux échanges
Travel time: Durée du trajet (aller/retour)
Sent received: Entrant / sortant
Sent: Sortant
Received: Entrant
activity:
comment: Compte-rendu
See activity in accompanying course context: Voir l'échange dans le contexte du parcours d'accompagnement
ActivityPresence list: Liste des Présences aux échanges
Create a new activity presence: Créer une nouvelle "Présence aux échanges"
# crud activity
crud:
save: Enregistrer
activity_type:
title_new: Nouveau type d'échange
title_edit: Edition d'un type d'échange
activity_type_category:
title_new: Nouvelle catégorie de type d'échange
title_edit: Edition d'une catégorie de type d'échange
activity_presence:
title_new: Nouvelle Présence aux échanges
title_edit: Edition d'une Présence aux échanges
vendee_security_profile:
index:
title: Profils de droits
add_new: Créer
title_new: Nouveau profil
title_edit: Modifier profil
# activity reason admin
ActivityReason list: Liste des sujets
Create a new activity reason: Créer un nouveau sujet
ActivityReason creation: Nouveau sujet
ActivityReason edit: Modification d'un sujet
ActivityReason: Sujet d'échange
#activity reason category admin
ActivityReasonCategory list: Catégories de sujets
Create a new activity category reason: Créer une nouvelle catégorie
ActivityReasonCategory creation: Nouvelle catégorie de sujet
ActivityReasonCategory edit: Modification d'une catégorie de sujet
ActivityReasonCategory: Catégorie de sujet d'échange
ActivityReasonCategory is active and will be proposed: La catégorie est active et sera proposée
ActivityReasonCategory is inactive and won't be proposed: La catégorie est inactive et ne sera pas proposée
# activity type type admin
ActivityType list: Types d'échanges
Create a new activity type: Créer un nouveau type d'échange
# activity type category admin
ActivityTypeCategory list: Liste des catégories des types d'échange
Create a new activity type category: Créer une nouvelle catégorie de type d'échange
# activity delete
Remove activity: Supprimer un échange
Are you sure you want to remove the activity about "%name%" ?: Êtes-vous sûr de vouloir supprimer un échange qui concerne "%name%" ?
The activity has been successfully removed.: L'échange a été supprimé.
Sum activity duration: Total de la durée des échanges
'Filtered by activity type: only %list%': "Filtré par type d'activity: seulement %list%"
Filtered by date activity: Filtrer par date d'échange
"Filtered by date of activity: only between %date_from% and %date_to%": "Filtré par date de l'échange: uniquement entre %date_from% et %date_to%"
This date should be after the date given in "Implied in an activity after this date" field: Cette date devrait être postérieure à la date donnée dans le champ "échanges après cette date"
Filtered by person having an activity in a period: Uniquement les personnes ayant eu un échange dans la période donnée
Implied in an activity after this date: Impliqué dans un échange après cette date
Implied in an activity before this date: Impliqué dans un échange avant cette date
Filtered by person having an activity between %date_from% and %date_to% with reasons %reasons_name%: Filtré par personnes associées à un échange entre %date_from% et %date_to% avec les sujets %reasons_name%
Activity reasons for those activities: Sujets de ces échanges
Filter by activity type: Filtrer par type d'échange
Activity type: Type d'échange
Activity user: Utilisateur lié à l'activity
Aggregate by activity user: Aggréger par utilisateur lié à l'échange
Aggregate by activity type: Aggréger par type d'échange
Aggregate by activity reason: Aggréger par sujet de l'échange
There isn't any activities.: Aucun échange enregistré.
Last activities: Les derniers échanges
Activities: Échanges
# person
Person: Usager
'Add a person': 'Ajout d''un usager'
'Person details': 'Généralités'
Back to the person details: Retour aux détails de l'usager
Show person: Voir la fiche de l'usager
Any person selected: Aucun usager sélectionné
Male: Masculin
Man: Masculin
man: Masculin
Female: Féminin
woman: Féminin
Woman: Féminin
both: Neutre, non binaire
Both: Neutre, non binaire
Neuter: Neutre, non binaire
neuter: Neutre, non binaire
'Add the person': "Créer l'usager"
'Add the person and create an accompanying period': "Créer lusager ET créer un parcours daccompagnement"
'Add the person and create an household': "Créer l'usager ET créer un ménage"
'Add an accompanying period in the past': Ajouter un parcours d'accompagnement dans le passé
Begin a new accompanying period: Commencer un nouveau parcours d'accompagnement
Create an accompanying period: Créer un parcours d'accompagnement
'A period has been created.': Une parcours d'accompagnement a été créé.
'Error! Period not created!': Le parcours d'accompagnement n'a pas été créé.
Update accompanying period: Mettre à jour un parcours d'accompagnement
'An accompanying period has been updated.': Un parcours d'accompagnement a été mis à jour
'Error when updating the period': Erreur pendant la mise à jour du parcours d'accompagnement.
'An accompanying period has been closed.': Un parcours d'accompagnement a été fermé.
'Error! Period not closed!': "Erreur: le parcours d'accompagnement n'a pas été fermé."
'An accompanying period has been opened.': Un parcours d'accompagnement a été ouvert.
'Period not opened': "Le parcours d'accompagnement n'a pas été ouvert"
An accompanying period starts: Un parcours d'accompagnement est ouvert
Any accompanying periods are open: Aucun parcours d'accompagnement ouvert
An accompanying period is open: Un parcours d'accompagnement est ouvert
Accompanying period list: Parcours d'accompagnement
Accompanying period list for person: Parcours d'accompagnement de l'usager
Period number %number%: 'Parcours n° %number%'
Are you sure you want to re-open this period ?: Êtes-vous sûr de vouloir ré-ouvrir ce parcours d'accompagnement ?
'The period has been re-opened': Le parcours d'accompagnement a été ré-ouvert.
See accompanying period: Voir le parcours
See accompanying periods: Voir tous les parcours d'accompagnement
Edit accompanying period: Modifier le parcours
Close accompanying period: Clôre le parcours
Re-open accompanying period: Ré-ouvrir le parcours
Closing the accompanying period: Fermeture du parcours d'accompagnement
Opening the accompanying period: Ouverture d'un parcours d'accompagnement
"Filter by accompanying period: active period": "Filtrer par parcours d'accompagnement: en file active"
Some peoples does not belong to any household currently. Add them to an household soon: Certains usagers n'appartiennent à aucun ménage actuellement. Renseignez leur appartenance à un ménage dès que possible.
This course is located at a temporarily address. You should locate this course to an user: Le parcours est localisé à une adresse temporaire. Il devrait être localisé auprès d'un usager concerné.
Having an accompanying period opened after this date: Ayant un parcours d'accompagnement ouvert après cette date
Having an accompanying period ending before this date, or still opened at this date: Ayant un parcours d'accompagnement fermé après cette date, ou toujours ouvert à cette date
"Filtered by accompanying period: persons having an accompanying period opened after the %date_from% and closed before the %date_to% (or still opened at the %date_to%)": "Filtré par parcours d'accompagnement: personnes ayant un parcours d'accompagnement ouvert après le %date_from%, et cloturé le %date_to% (ou toujours ouvert le %date_to%)"
"Filter by accompanying period: starting between two dates": "Filtrer par parcours d'accompagnement: début de la période entre deux dates"
"Having an accompanying period opened before this date": "Ayant un parcours d'accompagnement ouvert avant cette date"
"Filtered by accompanying period: persons having an accompanying period opened between the %date_from% and %date_to%": "Filtrer par parcours d'accompagnement: ayant une période ouverte entre le %date_from% et le %date_to%"
"Filter by accompanying period: closed between two dates": "Filtrer par parcours d'accompagnement: période fermée entre deux dates"
Having an accompanying period closed after this date: Ayant un parcours d'accompagnement fermé après cette date
"Having an accompanying period closed before this date": "Ayant un parcours d'accompagnement fermé avant cette date"
"Filtered by accompanying period: persons having an accompanying period closed between the %date_from% and %date_to%": "Filtrer par parcours d'accompagnement: ayant une période fermée entre le %date_from% et le %date_to%"
Accompanying user: Référent
No accompanying user: Aucun référent
Participants: Usagers concernés
person_admin:
closing motive explanation: >
Les motifs de clotûre donnent des indications sur la fermeture d'un parcours d'accompagnement.
Delete accompanying period: Supprimer le parcours
Are you sure you want to remove the accompanying period "%id%" ?: Êtes-vous sûr de vouloir supprimer le parcours %id% ?
The accompanying course has been successfully removed.: Le parcours a été supprimé.
Unknown: Non renseigné
Center: Territoire
Centers: Territoires
'Marital status': 'État matrimonial'
Comment on the marital status: Remarques sur l'état matrimonial
Date of last marital status change: État matrimonial depuis le
# thirdparty
List of third parties: Liste des tiers professionnels
The party is visible in those centers: Le tiers est visible dans ces territoires
# household
household:
Household history for person: Historique des ménages de l'usager
# thirdparty
chill_3party:
key_label:
caisse_secu: Caisse primaire d'assurance maladie (CPAM)
doctor: Médecin
# error page
Send by email: Envoyer par email
Don't panick though, we'll fix it as soon as possible. To help us out, please send us the information below. : Pas de panique, nous allons la corriger au plus vite. Pour faciliter la résolution, communiquez les informations ci-dessous.
Oops, we came across an error!: Oops, nous avons rencontré une erreur!
Date and time of error: Date et heure de l'erreur
Error message: Contenu de l'erreur
Copy: Copier
Copied: Copié
You are getting a notification for a period which does not exists any more: Cette notification ne correspond pas à un parcours d'accompagnement valide
You are getting a notification for a period you are not allowed to see: La notification fait référence à un parcours d'accompagnement auquel vous n'avez pas accès.
This is the minimal period details: Parcours d'accompagnement n°
You get notified of an activity which does not exists any more: Cette notification ne correspond pas à un échange valide.
you are not allowed to see it details: La notification fait référence à un échange auquel vous n'avez pas accès.
This is the minimal activity data: Échange n°

View File

@ -0,0 +1,20 @@
# Activity validators
For this type of activity, you must add at least one person: Pour ce type d'échange, vous devez ajouter au moins un usager
For this type of activity, you must add at least one user: Pour ce type d'échange, vous devez ajouter au moins un TMS
For this type of activity, you must add at least one third party: Pour ce type d'échange, vous devez ajouter au moins un tiers
For this type of activity, the user is required: Pour ce type d'échange, l'utilisateur est requis
For this type of activity, the date is required: Pour ce type d'échange, la date est requise
For this type of activity, the location is required: Pour ce type d'échange, la localisation est requise
For this type of activity, user is required: Pour ce type d'échange, l'utilisateur est requis
For this type of activity, date is required: Pour ce type d'échange, la date est requise
For this type of activity, location is required: Pour ce type d'échange, la localisation est requise
For this type of activity, attendee is required: Pour ce type d'échange, le champ "Présence de la personne" est requis
For this type of activity, duration time is required: Pour ce type d'échange, la durée est requise
For this type of activity, travel time is required: Pour ce type d'échange, la durée du trajet est requise
For this type of activity, reasons is required: Pour ce type d'échange, le champ "sujet" est requis
For this type of activity, comment is required: Pour ce type d'échange, un commentaire est requis
For this type of activity, sent/received is required: Pour ce type d'échange, le champ Entrant/Sortant est requis
For this type of activity, document is required: Pour ce type d'échange, un document est requis
For this type of activity, emergency is required: Pour ce type d'échange, le champ "Urgent" est requis
For this type of activity, accompanying period is required: Pour ce type d'échange, le parcours d'accompagnement est requis
This social issue cannot be deleted because it is associated with an activity or an action: La problématique sociale ne peut pas être supprimée car elle est associée à un échange ou une action

2524
yarn.lock

File diff suppressed because it is too large Load Diff