Compare commits
22 Commits
9b42f328ae
...
upgrade-sf
Author | SHA1 | Date | |
---|---|---|---|
bf29c7756f
|
|||
002fd7b632
|
|||
8d70ca871b
|
|||
ca84e9416d
|
|||
e03b0f71bf
|
|||
e287a832d2
|
|||
1b5b62ba49
|
|||
eb3c561f85
|
|||
008291bddb
|
|||
c466dc297c
|
|||
2c6fb97f31 | |||
|
c58443dd72 | ||
b6c17f62d0 | |||
7712d146c7 | |||
8a83372e2f | |||
883725af10 | |||
|
7faee98294 | ||
96e0c4c97e | |||
921726ec75 | |||
61a77cc1de | |||
|
0c65d3d681 | ||
9c125c6af6 |
3
.changes/v1.5.0.md
Normal file
3
.changes/v1.5.0.md
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
## v1.5.0 - 2024-02-08
|
||||||
|
### Release
|
||||||
|
* Update dependencies. Chill-bundles upgraded from 2.16.0 to 2.16.1
|
5
.changes/v1.6.0.md
Normal file
5
.changes/v1.6.0.md
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
## 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
|
5
.changes/v1.7.0.md
Normal file
5
.changes/v1.7.0.md
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
## 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
|
3
.env.dev
3
.env.dev
@@ -11,5 +11,8 @@ 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=
|
||||||
|
16
CHANGELOG.md
16
CHANGELOG.md
@@ -6,6 +6,22 @@ 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
|
||||||
|
2
Makefile
2
Makefile
@@ -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:16
|
DOCKERNODE_CMD=docker run --rm --user ${UID}:${GID} -v ${PWD}:/app --workdir /app -e YARN_CACHE_FOLDER=/app/.yarncache node:20
|
||||||
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
|
||||||
|
@@ -15,14 +15,14 @@
|
|||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"ext-redis": "*",
|
"ext-redis": "*",
|
||||||
"chill-project/chill-bundles": "^2.16",
|
"chill-project/chill-bundles": "dev-upgrade-sf5@dev",
|
||||||
"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
2848
composer.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -36,5 +36,4 @@ 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],
|
|
||||||
];
|
];
|
||||||
|
14
config/packages/cache_chill.yaml
Normal file
14
config/packages/cache_chill.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
framework:
|
||||||
|
cache:
|
||||||
|
default_redis_provider: '%env(resolve:REDIS_URL)%'
|
||||||
|
pools:
|
||||||
|
cache.user_data:
|
||||||
|
adapter: cache.adapter.redis
|
||||||
|
public: true
|
||||||
|
default_lifetime: 300 # 5 minutes
|
||||||
|
|
||||||
|
# will be used in chill_main.tag_aware_cache service
|
||||||
|
cache.tags:
|
||||||
|
adapter: cache.adapter.redis
|
||||||
|
public: false
|
||||||
|
default_lifetime: 300
|
@@ -27,6 +27,12 @@ chill_main:
|
|||||||
y: '%env(float:ADD_ADDRESS_MAP_CENTER_Y)%'
|
y: '%env(float:ADD_ADDRESS_MAP_CENTER_Y)%'
|
||||||
z: '%env(float:ADD_ADDRESS_MAP_CENTER_Z)%'
|
z: '%env(float:ADD_ADDRESS_MAP_CENTER_Z)%'
|
||||||
|
|
||||||
|
when@test:
|
||||||
|
chill_main:
|
||||||
|
available_languages:
|
||||||
|
- 'fr'
|
||||||
|
- 'en'
|
||||||
|
|
||||||
chill_custom_fields:
|
chill_custom_fields:
|
||||||
show_empty_values_in_views: false
|
show_empty_values_in_views: false
|
||||||
|
|
||||||
|
@@ -1,88 +0,0 @@
|
|||||||
chill_main:
|
|
||||||
cruds:
|
|
||||||
-
|
|
||||||
class: 'App\Entity\VendeePerson'
|
|
||||||
controller: 'App\Controller\VendeePersonController'
|
|
||||||
name: vendeeperson
|
|
||||||
base_path: /vendee/vendeeperson
|
|
||||||
actions:
|
|
||||||
infosociopro_edit:
|
|
||||||
controller_action: 'infosocioproEdit'
|
|
||||||
path: '/{id}/infosociopro/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
infosociopro_view:
|
|
||||||
controller_action: 'infosocioproView'
|
|
||||||
path: '/{id}/infosociopro/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
entourage_edit:
|
|
||||||
controller_action: 'entourageEdit'
|
|
||||||
path: '/{id}/entourage/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
entourage_view:
|
|
||||||
controller_action: 'entourageView'
|
|
||||||
path: '/{id}/entourage/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
infomedicale_edit:
|
|
||||||
controller_action: 'infomedicaleEdit'
|
|
||||||
path: '/{id}/infomedicale/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
infomedicale_view:
|
|
||||||
controller_action: 'infomedicaleView'
|
|
||||||
path: '/{id}/infomedicale/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
infologement_edit:
|
|
||||||
controller_action: 'infologementEdit'
|
|
||||||
path: '/{id}/infologement/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
infologement_view:
|
|
||||||
controller_action: 'infologementView'
|
|
||||||
path: '/{id}/infologement/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
-
|
|
||||||
class: 'App\Entity\VendeePersonMineur'
|
|
||||||
controller: 'App\Controller\VendeePersonMineurController'
|
|
||||||
name: vendeepersonmineur
|
|
||||||
base_path: /vendee/vendeepersonmineur
|
|
||||||
actions:
|
|
||||||
infofamille_edit:
|
|
||||||
controller_action: 'infofamilleEdit'
|
|
||||||
path: '/{id}/infofamille/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
infofamille_view:
|
|
||||||
controller_action: 'infofamilleView'
|
|
||||||
path: '/{id}/infofamille/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
scolarite_edit:
|
|
||||||
controller_action: 'scolariteEdit'
|
|
||||||
path: '/{id}/scolarite/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
scolarite_view:
|
|
||||||
controller_action: 'scolariteView'
|
|
||||||
path: '/{id}/scolarite/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
infomedicale_edit:
|
|
||||||
controller_action: 'infomedicaleEdit'
|
|
||||||
path: '/{id}/infomedicale/edit'
|
|
||||||
role: CHILL_PERSON_EDIT
|
|
||||||
infomedicale_view:
|
|
||||||
controller_action: 'infomedicaleView'
|
|
||||||
path: '/{id}/infomedicale/view'
|
|
||||||
role: CHILL_PERSON_VIEW
|
|
||||||
-
|
|
||||||
class: 'App\Entity\Security\Profile'
|
|
||||||
name: vendee_security_profile
|
|
||||||
base_path: '/admin/vendee/security/profile'
|
|
||||||
base_role: ROLE_ADMIN
|
|
||||||
form_class: 'App\Form\Security\ProfileType'
|
|
||||||
controller: 'App\Controller\SecurityProfileController'
|
|
||||||
actions:
|
|
||||||
index:
|
|
||||||
template: '/Security/Profile/index.html.twig'
|
|
||||||
role: ROLE_ADMIN
|
|
||||||
new:
|
|
||||||
role: ROLE_ADMIN
|
|
||||||
template: '/Security/Profile/new.html.twig'
|
|
||||||
edit:
|
|
||||||
role: ROLE_ADMIN
|
|
||||||
template: '/Security/Profile/edit.html.twig'
|
|
||||||
|
|
@@ -1,3 +0,0 @@
|
|||||||
twig:
|
|
||||||
globals:
|
|
||||||
responsive_debug: false
|
|
@@ -12,7 +12,8 @@ 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: '15'
|
#server_version: '16'
|
||||||
|
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
|
||||||
|
@@ -2,25 +2,9 @@ doctrine_migrations:
|
|||||||
migrations_paths:
|
migrations_paths:
|
||||||
# migrations for custom modules
|
# migrations for custom modules
|
||||||
'Application\Migrations': '%kernel.project_dir%/migrations'
|
'Application\Migrations': '%kernel.project_dir%/migrations'
|
||||||
# migrations for default chill modules
|
|
||||||
'Chill\Migrations\Main': '@ChillMainBundle/migrations'
|
|
||||||
'Chill\Migrations\Activity': '@ChillActivityBundle/migrations'
|
|
||||||
'Chill\Migrations\DocStore': '@ChillDocStoreBundle/migrations'
|
|
||||||
'Chill\Migrations\CustomFields': '@ChillCustomFieldsBundle/migrations'
|
|
||||||
'Chill\Migrations\Event': '@ChillEventBundle/migrations'
|
|
||||||
'Chill\Migrations\Person': '@ChillPersonBundle/migrations'
|
|
||||||
'Chill\Migrations\Task': '@ChillTaskBundle/migrations'
|
|
||||||
'Chill\Migrations\ThirdParty': '@ChillThirdPartyBundle/migrations'
|
|
||||||
'Chill\Migrations\DocGenerator': '@ChillDocGeneratorBundle/migrations'
|
|
||||||
'Chill\Migrations\AsideActivity': '@ChillAsideActivityBundle/migrations'
|
|
||||||
'Chill\Migrations\Calendar': '@ChillCalendarBundle/migrations'
|
|
||||||
'Chill\Migrations\Budget': '@ChillBudgetBundle/migrations'
|
|
||||||
all_or_nothing:
|
all_or_nothing:
|
||||||
true
|
true
|
||||||
|
|
||||||
services:
|
|
||||||
'Doctrine\Migrations\Version\Comparator': 'Chill\MainBundle\Doctrine\Migrations\VersionComparator'
|
|
||||||
|
|
||||||
storage:
|
storage:
|
||||||
table_storage:
|
table_storage:
|
||||||
table_name: 'migration_versions'
|
table_name: 'migration_versions'
|
||||||
|
20
config/packages/doctrine_migrations_chill.yaml
Normal file
20
config/packages/doctrine_migrations_chill.yaml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
doctrine_migrations:
|
||||||
|
migrations_paths:
|
||||||
|
# migrations for default chill modules
|
||||||
|
'Chill\Migrations\Main': '@ChillMainBundle/migrations'
|
||||||
|
'Chill\Migrations\Activity': '@ChillActivityBundle/migrations'
|
||||||
|
'Chill\Migrations\DocStore': '@ChillDocStoreBundle/migrations'
|
||||||
|
'Chill\Migrations\CustomFields': '@ChillCustomFieldsBundle/migrations'
|
||||||
|
'Chill\Migrations\Event': '@ChillEventBundle/migrations'
|
||||||
|
'Chill\Migrations\Person': '@ChillPersonBundle/migrations'
|
||||||
|
'Chill\Migrations\Task': '@ChillTaskBundle/migrations'
|
||||||
|
'Chill\Migrations\ThirdParty': '@ChillThirdPartyBundle/migrations'
|
||||||
|
'Chill\Migrations\DocGenerator': '@ChillDocGeneratorBundle/migrations'
|
||||||
|
'Chill\Migrations\AsideActivity': '@ChillAsideActivityBundle/migrations'
|
||||||
|
'Chill\Migrations\Calendar': '@ChillCalendarBundle/migrations'
|
||||||
|
'Chill\Migrations\Budget': '@ChillBudgetBundle/migrations'
|
||||||
|
all_or_nothing:
|
||||||
|
true
|
||||||
|
|
||||||
|
services:
|
||||||
|
'Doctrine\Migrations\Version\Comparator': 'Chill\MainBundle\Doctrine\Migrations\VersionComparator'
|
@@ -7,8 +7,6 @@ framework:
|
|||||||
verify_peer: false
|
verify_peer: false
|
||||||
verify_host: false
|
verify_host: false
|
||||||
|
|
||||||
# DIRTY FIX un bug dans symfony4 empêche de récupérer un tableau de variables depuis .env
|
|
||||||
# cfr. https://github.com/symfony/symfony/issues/28599
|
|
||||||
trusted_hosts:
|
trusted_hosts:
|
||||||
- '^(localhost|127.0.0.1|web)$'
|
- '^(localhost|127.0.0.1|web)$'
|
||||||
- '%env(resolve:TRUSTED_HOSTS)%'
|
- '%env(resolve:TRUSTED_HOSTS)%'
|
||||||
@@ -31,10 +29,6 @@ framework:
|
|||||||
|
|
||||||
#error_controller: App\Controller\ErrorController::show
|
#error_controller: App\Controller\ErrorController::show
|
||||||
|
|
||||||
## sf4 check: ou à déplacer dans un chill.yaml
|
|
||||||
assets:
|
|
||||||
json_manifest_path: '%kernel.project_dir%/public/build/manifest.json'
|
|
||||||
|
|
||||||
when@test:
|
when@test:
|
||||||
framework:
|
framework:
|
||||||
test: true
|
test: true
|
||||||
|
3
config/packages/framework_chill.yaml
Normal file
3
config/packages/framework_chill.yaml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
framework:
|
||||||
|
assets:
|
||||||
|
json_manifest_path: '%kernel.project_dir%/public/build/manifest.json'
|
4
config/packages/mailer_chill.yaml
Normal file
4
config/packages/mailer_chill.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
framework:
|
||||||
|
mailer:
|
||||||
|
envelope:
|
||||||
|
sender: '%env(NOTIFICATION_FROM_EMAIL)%'
|
@@ -17,11 +17,3 @@ framework:
|
|||||||
routing:
|
routing:
|
||||||
# Route your messages to the transports
|
# Route your messages to the transports
|
||||||
# 'App\Message\YourMessage': async
|
# 'App\Message\YourMessage': async
|
||||||
'Chill\CalendarBundle\Messenger\Message\CalendarRangeMessage': async
|
|
||||||
'Chill\CalendarBundle\Messenger\Message\CalendarRangeRemovedMessage': async
|
|
||||||
'Chill\CalendarBundle\Messenger\Message\CalendarRemovedMessage': async
|
|
||||||
'Chill\CalendarBundle\Messenger\Message\CalendarMessage': async
|
|
||||||
'Chill\CalendarBundle\Messenger\Message\InviteUpdateMessage': async
|
|
||||||
'Chill\CalendarBundle\Messenger\Message\MSGraphChangeNotificationMessage': async
|
|
||||||
'Chill\MainBundle\Service\ShortMessage\ShortMessage': async
|
|
||||||
'Chill\DocGeneratorBundle\Service\Messenger\RequestGenerationMessage': priority
|
|
||||||
|
13
config/packages/messenger_chill.yaml
Normal file
13
config/packages/messenger_chill.yaml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
framework:
|
||||||
|
messenger:
|
||||||
|
routing:
|
||||||
|
# Route your messages to the transports
|
||||||
|
# 'App\Message\YourMessage': async
|
||||||
|
'Chill\CalendarBundle\Messenger\Message\CalendarRangeMessage': async
|
||||||
|
'Chill\CalendarBundle\Messenger\Message\CalendarRangeRemovedMessage': async
|
||||||
|
'Chill\CalendarBundle\Messenger\Message\CalendarRemovedMessage': async
|
||||||
|
'Chill\CalendarBundle\Messenger\Message\CalendarMessage': async
|
||||||
|
'Chill\CalendarBundle\Messenger\Message\InviteUpdateMessage': async
|
||||||
|
'Chill\CalendarBundle\Messenger\Message\MSGraphChangeNotificationMessage': async
|
||||||
|
'Chill\MainBundle\Service\ShortMessage\ShortMessage': async
|
||||||
|
'Chill\DocGeneratorBundle\Service\Messenger\RequestGenerationMessage': priority
|
@@ -60,3 +60,4 @@ when@test:
|
|||||||
# type: stream
|
# type: stream
|
||||||
# channels: [deprecation]
|
# channels: [deprecation]
|
||||||
# path: php://stderr
|
# path: php://stderr
|
||||||
|
# formatter: monolog.formatter.json
|
||||||
|
@@ -1,9 +1,4 @@
|
|||||||
security:
|
security:
|
||||||
|
|
||||||
access_decision_manager:
|
|
||||||
strategy: unanimous
|
|
||||||
allow_if_all_abstain: false
|
|
||||||
|
|
||||||
enable_authenticator_manager: true
|
enable_authenticator_manager: true
|
||||||
# https://symfony.com/doc/current/security.html#registering-the-user-hashing-passwords
|
# https://symfony.com/doc/current/security.html#registering-the-user-hashing-passwords
|
||||||
password_hashers:
|
password_hashers:
|
||||||
@@ -12,66 +7,24 @@ security:
|
|||||||
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'
|
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'
|
||||||
# https://symfony.com/doc/current/security.html#loading-the-user-the-user-provider
|
# https://symfony.com/doc/current/security.html#loading-the-user-the-user-provider
|
||||||
providers:
|
providers:
|
||||||
chain_provider:
|
# providers added by chill-bundles recipes
|
||||||
chain :
|
# those providers are required to make chill working
|
||||||
providers: [in_memory, users]
|
chill_chain_provider:
|
||||||
in_memory:
|
chain:
|
||||||
|
providers: [chill_in_memory, chill_users]
|
||||||
|
chill_in_memory:
|
||||||
memory:
|
memory:
|
||||||
users:
|
users:
|
||||||
admin: { password: '%env(resolve:ADMIN_PASSWORD)%', roles: ['ROLE_ADMIN', 'ROLE_ALLOWED_TO_SWITCH', 'ROLE_USER'] }
|
admin: { password: '%env(resolve:ADMIN_PASSWORD)%', roles: ['ROLE_ADMIN', 'ROLE_ALLOWED_TO_SWITCH', 'ROLE_USER'] }
|
||||||
users:
|
chill_users:
|
||||||
id: chill.main.user_provider
|
id: chill.main.user_provider
|
||||||
encoders:
|
# end of providers added by chill-bundles recipes
|
||||||
Chill\MainBundle\Entity\User: auto
|
# all other providers might be removed, unless you have specific needs
|
||||||
Symfony\Component\Security\Core\User\User: plaintext
|
# TODO AFTER CHILL-BUNDLES RECIPES INSTALL: remove the user providers which are not used
|
||||||
firewalls:
|
|
||||||
dev:
|
|
||||||
pattern: ^/(_(profiler|wdt)|css|images|js)/
|
|
||||||
security: false
|
|
||||||
wopi:
|
|
||||||
pattern: ^/wopi
|
|
||||||
provider: chain_provider
|
|
||||||
stateless: true
|
|
||||||
guard:
|
|
||||||
authenticators:
|
|
||||||
- lexik_jwt_authentication.jwt_token_authenticator
|
|
||||||
main:
|
|
||||||
# remove during upgrade from symfony 4 to symfony 5 TODO check this
|
|
||||||
#anonymous: ~
|
|
||||||
provider: chain_provider
|
|
||||||
form_login:
|
|
||||||
csrf_parameter: _csrf_token
|
|
||||||
csrf_token_id: authenticate
|
|
||||||
#csrf_provider: security.csrf.token_manager
|
|
||||||
# remove during upgrade from symfony 4 to symfony 5 TODO check this
|
|
||||||
# logout_on_user_change: true
|
|
||||||
logout:
|
|
||||||
path: /logout
|
|
||||||
|
|
||||||
# uncomment to enable impersonate mode in Chill
|
|
||||||
# https://symfony.com/doc/current/security/impersonating_user.html
|
|
||||||
switch_user: true
|
|
||||||
|
|
||||||
# activate different ways to authenticate
|
|
||||||
# https://symfony.com/doc/current/security.html#firewalls-authentication
|
|
||||||
|
|
||||||
# Easy way to control access for large sections of your site
|
# Easy way to control access for large sections of your site
|
||||||
# Note: Only the *first* access control that matches will be used
|
# Note: Only the *first* access control that matches will be used
|
||||||
access_control:
|
|
||||||
- { path: ^/saml/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
|
||||||
- { path: ^/saml/metadata, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
|
||||||
- { path: ^/(login|logout), roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
|
||||||
- { path: ^/public, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
|
||||||
- { path: ^/wopi, roles: IS_AUTHENTICATED_FULLY }
|
|
||||||
# access for homepage, the homepage redirect admin to admin section
|
|
||||||
- { path: ^/$, roles: [ IS_AUTHENTICATED_REMEMBERED ] }
|
|
||||||
- { path: ^/homepage$, roles: [ IS_AUTHENTICATED_REMEMBERED ] }
|
|
||||||
# idem
|
|
||||||
- { path: ^/([a-z]+/)?homepage, roles: [ IS_AUTHENTICATED_REMEMBERED ] }
|
|
||||||
# admin section, only for admin
|
|
||||||
- { path: ^/([a-z]+/)?admin, roles: ROLE_ADMIN }
|
|
||||||
# other pages, only for regular user (no admin)
|
|
||||||
- { path: ^/, roles: ROLE_USER }
|
|
||||||
|
|
||||||
when@test:
|
when@test:
|
||||||
security:
|
security:
|
||||||
|
50
config/packages/security_chill.yaml
Normal file
50
config/packages/security_chill.yaml
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
security:
|
||||||
|
access_decision_manager:
|
||||||
|
strategy: unanimous
|
||||||
|
allow_if_all_abstain: false
|
||||||
|
firewalls:
|
||||||
|
dev:
|
||||||
|
pattern: ^/(_(profiler|wdt)|css|images|js)/
|
||||||
|
security: false
|
||||||
|
wopi:
|
||||||
|
pattern: ^/wopi
|
||||||
|
provider: chill_chain_provider
|
||||||
|
stateless: true
|
||||||
|
guard:
|
||||||
|
authenticators:
|
||||||
|
- lexik_jwt_authentication.jwt_token_authenticator
|
||||||
|
chill_main:
|
||||||
|
# remove during upgrade from symfony 4 to symfony 5 TODO check this
|
||||||
|
#anonymous: ~
|
||||||
|
provider: chill_chain_provider
|
||||||
|
form_login:
|
||||||
|
csrf_parameter: _csrf_token
|
||||||
|
csrf_token_id: authenticate
|
||||||
|
#csrf_provider: security.csrf.token_manager
|
||||||
|
# remove during upgrade from symfony 4 to symfony 5 TODO check this
|
||||||
|
# logout_on_user_change: true
|
||||||
|
logout:
|
||||||
|
path: /logout
|
||||||
|
|
||||||
|
# uncomment to enable impersonate mode in Chill
|
||||||
|
# https://symfony.com/doc/current/security/impersonating_user.html
|
||||||
|
switch_user: true
|
||||||
|
|
||||||
|
# activate different ways to authenticate
|
||||||
|
# https://symfony.com/doc/current/security.html#firewalls-authentication
|
||||||
|
|
||||||
|
# Easy way to control access for large sections of your site
|
||||||
|
# Note: Only the *first* access control that matches will be used
|
||||||
|
access_control:
|
||||||
|
- { path: ^/(login|logout), roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
|
- { path: ^/public, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
|
- { path: ^/wopi, roles: IS_AUTHENTICATED_FULLY }
|
||||||
|
# access for homepage, the homepage redirect admin to admin section
|
||||||
|
- { path: ^/$, roles: [ IS_AUTHENTICATED_REMEMBERED ] }
|
||||||
|
- { path: ^/homepage$, roles: [ IS_AUTHENTICATED_REMEMBERED ] }
|
||||||
|
# idem
|
||||||
|
- { path: ^/([a-z]+/)?homepage, roles: [ IS_AUTHENTICATED_REMEMBERED ] }
|
||||||
|
# admin section, only for admin
|
||||||
|
- { path: ^/([a-z]+/)?admin, roles: ROLE_ADMIN }
|
||||||
|
# other pages, only for regular user (no admin)
|
||||||
|
- { path: ^/, roles: ROLE_USER }
|
0
config/packages/test/.gitkeep
Normal file
0
config/packages/test/.gitkeep
Normal file
@@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
chill_main:
|
|
||||||
available_languages:
|
|
||||||
- 'fr'
|
|
||||||
- 'en'
|
|
@@ -1,8 +1,5 @@
|
|||||||
---
|
---
|
||||||
# config/packages/test/security.yaml
|
# config/packages/test/security.yaml
|
||||||
security:
|
security:
|
||||||
firewalls:
|
|
||||||
default:
|
|
||||||
http_basic: ~
|
|
||||||
role_hierarchy:
|
role_hierarchy:
|
||||||
CHILL_MASTER_ROLE: [CHILL_INHERITED_ROLE_1]
|
CHILL_MASTER_ROLE: [CHILL_INHERITED_ROLE_1]
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
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:
|
||||||
|
@@ -1,18 +1,5 @@
|
|||||||
twig:
|
twig:
|
||||||
default_path: '%kernel.project_dir%/templates'
|
default_path: '%kernel.project_dir%/templates'
|
||||||
|
|
||||||
## In Symfony 5, bootstrap_5 theme is supported. But not yet in sf4 !!
|
|
||||||
# see sf5 https://symfony.com/doc/current/form/form_themes.html
|
|
||||||
# see sf4 https://symfony.com/doc/4.4/form/form_themes.html
|
|
||||||
#
|
|
||||||
# While waiting for the upgrade, we get the form theme file
|
|
||||||
# (https://github.com/symfony/symfony/tree/5.4/src/Symfony/Bridge/Twig/Resources/views/Form),
|
|
||||||
# put it in ChillMainBundle/Resources/views/Form/bootstrap5/
|
|
||||||
# and adapt it lightly.
|
|
||||||
#
|
|
||||||
form_themes: ['@ChillMain/Form/bootstrap5/bootstrap_5_horizontal_layout.html.twig']
|
|
||||||
#form_themes: ['bootstrap_5_horizontal_layout.html.twig']
|
|
||||||
|
|
||||||
when@test:
|
when@test:
|
||||||
twig:
|
twig:
|
||||||
strict_variables: true
|
strict_variables: true
|
||||||
|
16
config/packages/twig_chill.yaml
Normal file
16
config/packages/twig_chill.yaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
twig:
|
||||||
|
## In Symfony 5, bootstrap_5 theme is supported. But not yet in sf4 !!
|
||||||
|
# see sf5 https://symfony.com/doc/current/form/form_themes.html
|
||||||
|
# see sf4 https://symfony.com/doc/4.4/form/form_themes.html
|
||||||
|
#
|
||||||
|
# While waiting for the upgrade, we get the form theme file
|
||||||
|
# (https://github.com/symfony/symfony/tree/5.4/src/Symfony/Bridge/Twig/Resources/views/Form),
|
||||||
|
# put it in ChillMainBundle/Resources/views/Form/bootstrap5/
|
||||||
|
# and adapt it lightly.
|
||||||
|
#
|
||||||
|
form_themes: ['@ChillMain/Form/bootstrap5/bootstrap_5_horizontal_layout.html.twig']
|
||||||
|
|
||||||
|
when@dev:
|
||||||
|
twig:
|
||||||
|
globals:
|
||||||
|
responsive_debug: false
|
@@ -11,6 +11,9 @@ framework:
|
|||||||
fr: 'Suivi'
|
fr: 'Suivi'
|
||||||
support_strategy: Chill\MainBundle\Workflow\RelatedEntityWorkflowSupportsStrategy
|
support_strategy: Chill\MainBundle\Workflow\RelatedEntityWorkflowSupportsStrategy
|
||||||
initial_marking: 'initial'
|
initial_marking: 'initial'
|
||||||
|
marking_store:
|
||||||
|
property: step
|
||||||
|
type: method
|
||||||
places:
|
places:
|
||||||
initial:
|
initial:
|
||||||
metadata:
|
metadata:
|
@@ -22,6 +22,14 @@ 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:
|
||||||
@@ -97,5 +105,5 @@ services:
|
|||||||
# volumes:
|
# volumes:
|
||||||
# - "./docker/pgadmin4/servers.json:/pgadmin4/servers.json:ro"
|
# - "./docker/pgadmin4/servers.json:/pgadmin4/servers.json:ro"
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
@@ -41,6 +41,7 @@ if [ "${APP_ENV}" = "prod" ]; then
|
|||||||
php /var/www/app/bin/console doctrine:migrations:status
|
php /var/www/app/bin/console doctrine:migrations:status
|
||||||
php /var/www/app/bin/console doctrine:migrations:migrate -n
|
php /var/www/app/bin/console doctrine:migrations:migrate -n
|
||||||
php /var/www/app/bin/console messenger:setup-transports
|
php /var/www/app/bin/console messenger:setup-transports
|
||||||
|
php /var/www/app/bin/console chill:db:sync-views
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
17
symfony.lock
17
symfony.lock
@@ -2,9 +2,6 @@
|
|||||||
"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"
|
||||||
},
|
},
|
||||||
@@ -48,12 +45,12 @@
|
|||||||
"version": "v0.5.3"
|
"version": "v0.5.3"
|
||||||
},
|
},
|
||||||
"doctrine/doctrine-bundle": {
|
"doctrine/doctrine-bundle": {
|
||||||
"version": "2.10",
|
"version": "2.11",
|
||||||
"recipe": {
|
"recipe": {
|
||||||
"repo": "github.com/symfony/recipes",
|
"repo": "github.com/symfony/recipes",
|
||||||
"branch": "main",
|
"branch": "main",
|
||||||
"version": "2.4",
|
"version": "2.4",
|
||||||
"ref": "013b823e7fee65890b23e40f31e6667a1ac519ac"
|
"ref": "cc62b7e9470998c640ee99d284a013a676f1fc5e"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"config/packages/doctrine.yaml",
|
"config/packages/doctrine.yaml",
|
||||||
@@ -572,7 +569,7 @@
|
|||||||
"repo": "github.com/symfony/recipes",
|
"repo": "github.com/symfony/recipes",
|
||||||
"branch": "main",
|
"branch": "main",
|
||||||
"version": "4.3",
|
"version": "4.3",
|
||||||
"ref": "2bf89438209656b85b9a49238c4467bff1b1f939"
|
"ref": "df66ee1f226c46f01e85c29c2f7acce0596ba35a"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"config/packages/mailer.yaml"
|
"config/packages/mailer.yaml"
|
||||||
@@ -606,12 +603,12 @@
|
|||||||
"version": "v5.1.3"
|
"version": "v5.1.3"
|
||||||
},
|
},
|
||||||
"symfony/monolog-bundle": {
|
"symfony/monolog-bundle": {
|
||||||
"version": "3.8",
|
"version": "3.10",
|
||||||
"recipe": {
|
"recipe": {
|
||||||
"repo": "github.com/symfony/recipes",
|
"repo": "github.com/symfony/recipes",
|
||||||
"branch": "main",
|
"branch": "main",
|
||||||
"version": "3.7",
|
"version": "3.7",
|
||||||
"ref": "213676c4ec929f046dfde5ea8e97625b81bc0578"
|
"ref": "aff23899c4440dd995907613c1dd709b6f59503f"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"config/packages/monolog.yaml"
|
"config/packages/monolog.yaml"
|
||||||
@@ -626,7 +623,7 @@
|
|||||||
"repo": "github.com/symfony/recipes",
|
"repo": "github.com/symfony/recipes",
|
||||||
"branch": "main",
|
"branch": "main",
|
||||||
"version": "5.3",
|
"version": "5.3",
|
||||||
"ref": "221b9cc0a623f567e83ccd61a8ac82a9a91e2b5b"
|
"ref": "07ce01a897311647520b43d4ddddad9537b99ba6"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
".env.test",
|
".env.test",
|
||||||
@@ -729,7 +726,7 @@
|
|||||||
"repo": "github.com/symfony/recipes",
|
"repo": "github.com/symfony/recipes",
|
||||||
"branch": "main",
|
"branch": "main",
|
||||||
"version": "5.3",
|
"version": "5.3",
|
||||||
"ref": "da64f5a2b6d96f5dc24914517c0350a5f91dee43"
|
"ref": "e28e27f53663cc34f0be2837aba18e3a1bef8e7b"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"config/packages/translation.yaml",
|
"config/packages/translation.yaml",
|
||||||
|
@@ -4,9 +4,7 @@ use Symfony\Component\Dotenv\Dotenv;
|
|||||||
|
|
||||||
require dirname(__DIR__).'/vendor/autoload.php';
|
require dirname(__DIR__).'/vendor/autoload.php';
|
||||||
|
|
||||||
if (file_exists(dirname(__DIR__).'/config/bootstrap.php')) {
|
if (method_exists(Dotenv::class, 'bootEnv')) {
|
||||||
require dirname(__DIR__).'/config/bootstrap.php';
|
|
||||||
} elseif (method_exists(Dotenv::class, 'bootEnv')) {
|
|
||||||
(new Dotenv())->bootEnv(dirname(__DIR__).'/.env');
|
(new Dotenv())->bootEnv(dirname(__DIR__).'/.env');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
0
translations/.gitkeep
Normal file
0
translations/.gitkeep
Normal file
@@ -1,205 +0,0 @@
|
|||||||
# 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 l’usager ET créer un parcours d’accompagnement"
|
|
||||||
'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°
|
|
@@ -1,20 +0,0 @@
|
|||||||
# 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
|
|
Reference in New Issue
Block a user