Commit abc9cc16e8928d04fe1f5cc5e11f4a2120518fdb
1 parent
a8258ded
Exists in
master
and in
1 other branch
BUGfix (fichier config était constamment écrasé par version par défaut)
Aussi : Ajout plugin guemidiborhane/yaml-config pour gérer les configs yaml (remplace l'obsolète chobo1210/yaml)
Showing
7 changed files
with
119 additions
and
5 deletions
Show diff stats
.gitignore
CHANGELOG
... | ... | @@ -331,7 +331,9 @@ Commencer à implémenter le nouveau workflow v5 : |
331 | 331 | ======= CHANGES ======= |
332 | 332 | |
333 | 333 | ------- |
334 | -02/09/2021 v4.108.23-3.7.9 | |
334 | +02/09/2021 v4.108.24-3.7.9 | |
335 | + - BUGfix (le fichier de config était constamment écrasé par la version par défaut) | |
336 | + - Ajout plugin guemidiborhane/yaml-config pour gérer les configs yaml (remplace l'obsolète chobo1210/yaml) | |
335 | 337 | - Liste des champs obligatoires de l'entité Materiels => gérée via fichier config YAML |
336 | 338 | - (Liste des autorisations AUSSI en cours de migration pour être gérée via fichier config YAML) |
337 | 339 | ... | ... |
README.md
composer.json
... | ... | @@ -10,9 +10,9 @@ |
10 | 10 | "cakephp/cakephp": "3.7.*", |
11 | 11 | "cakephp/migrations": "^2.0.0", |
12 | 12 | "cakephp/plugin-installer": "^1.0", |
13 | - "chobo1210/yaml": "dev-master", | |
14 | 13 | "daoandco/cakephp-dompdf": ">=1.2", |
15 | 14 | "friendsofcake/bootstrap-ui": ">=1.4", |
15 | + "guemidiborhane/yaml-config": "dev-master", | |
16 | 16 | "mobiledetect/mobiledetectlib": "2.*", |
17 | 17 | "setasign/fpdf": "*" |
18 | 18 | }, | ... | ... |
... | ... | @@ -0,0 +1,110 @@ |
1 | +# (EP20210125) : IMPORTANT | |
2 | + | |
3 | +# Ce fichier est la version COMMENTÉE du fichier composer.json (avec des lignes commençant par '#') | |
4 | +# Il n'est pas utilisable à la place de composer.json | |
5 | +# mais sert juste de référence AVEC COMMENTAIRES EXPLICATIFS. | |
6 | +# Normalement, il suffit d'enlever les lignes commençant par '#' pour avoir un fichier json exploitable | |
7 | +# DONC => Mettre a jour ce fichier en meme temps que composer.json (les garder synchronisés) | |
8 | + | |
9 | +# Ce fichier a été généré AUTOMATIQUEMENT par CakePhp lors de la création d'une première application avec : | |
10 | +# php composer.phar create-project --prefer-dist cakephp/app:3.7 labinventnew | |
11 | +# Cette instruction crée un dossier labinventnew qui contient tous les fichiers et dossiers de l'appli, y-compris ce fichier composer.json | |
12 | +# On l'a récupéré tel quel et on lui a ajouté les autres plugins dont on a besoin (phpqrcode, dompdf, boostrap-ui...) | |
13 | + | |
14 | +{ | |
15 | + "name": "cakephp/app", | |
16 | + "description": "CakePHP skeleton app", | |
17 | + "homepage": "https://cakephp.org", | |
18 | + "type": "project", | |
19 | + "license": "MIT", | |
20 | + | |
21 | + "require": { | |
22 | + | |
23 | + "php": ">=5.6", | |
24 | + # Utiliser "^3.7" pour avoir la dernière version 3.x de Cakephp | |
25 | + "cakephp/cakephp": "3.7.*", | |
26 | + "cakephp/migrations": "^2.0.0", | |
27 | + "cakephp/plugin-installer": "^1.0", | |
28 | + "mobiledetect/mobiledetectlib": "2.*", | |
29 | + | |
30 | + # (EP) PLUGINS AJOUTÉS pour LabInvent | |
31 | + # - YAML (since 31/8/21) | |
32 | + # https://awesomelists.net/181-CakePHP/4499-Miscellaneous/21572-guemidiborhane-yaml-config | |
33 | + "chobo1210/Yaml" : "dev-master" | |
34 | + # bootstrap, depuis la stagiaire Jeanne du CRAL pour rendre le site web responsive | |
35 | + "friendsofcake/bootstrap-ui" : ">=1.4", | |
36 | + # - QrCode | |
37 | + "aferrandini/phpqrcode" : "*", | |
38 | + # - Pour pdf : | |
39 | + # -- plus récent | |
40 | + "daoandco/cakephp-dompdf" : ">=1.2", | |
41 | + # -- ancien (fpdf) | |
42 | + "setasign/fpdf" : "*", | |
43 | + }, | |
44 | + | |
45 | + "require-dev": { | |
46 | + "cakephp/bake": "^1.9.0", | |
47 | + "cakephp/cakephp-codesniffer": "^3.0", | |
48 | + "cakephp/debug_kit": "^3.17.0", | |
49 | + "josegonzalez/dotenv": "3.*", | |
50 | + "phpunit/phpunit": "^5|^6", | |
51 | + "psy/psysh": "@stable" | |
52 | + # Avant, on avait aussi cette ligne, toujours utile ??? | |
53 | + #"bamarni/composer-bin-plugin" : ">=1.2" | |
54 | + }, | |
55 | + | |
56 | + "suggest": { | |
57 | + "markstory/asset_compress": "An asset compression plugin which provides file concatenation and a flexible filter system for preprocessing and minification.", | |
58 | + "dereuromark/cakephp-ide-helper": "After baking your code, this keeps your annotations in sync with the code evolving from there on for maximum IDE and PHPStan compatibility.", | |
59 | + # Avant, on avait aussi ça, donc j'ai gardé | |
60 | + "phpunit/phpunit" : "Allows automated tests to be run without system-wide install.", | |
61 | + "cakephp/cakephp-codesniffer" : "Allows to check the code against the coding standards used in CakePHP." | |
62 | + }, | |
63 | + | |
64 | + "autoload": { | |
65 | + "psr-4": { | |
66 | + "App\\": "src/" | |
67 | + }, | |
68 | + # (EP) Ajouté pour plugin fpdf | |
69 | + "files" : [ | |
70 | + "vendor/setasign/fpdf/fpdf.php" | |
71 | + ] | |
72 | + }, | |
73 | + | |
74 | + "autoload-dev": { | |
75 | + "psr-4": { | |
76 | + "App\\Test\\": "tests/", | |
77 | + "Cake\\Test\\": "vendor/cakephp/cakephp/tests/" | |
78 | + # Avant, on avait ./vendor : | |
79 | + #"Cake\\Test\\" : "./vendor/cakephp/cakephp/tests" | |
80 | + } | |
81 | + }, | |
82 | + | |
83 | + "scripts": { | |
84 | + "post-install-cmd": "App\\Console\\Installer::postInstall", | |
85 | + "post-create-project-cmd": "App\\Console\\Installer::postInstall", | |
86 | + # (EP 20210125) Déconseillé par composer avec message d'erreur suivant : | |
87 | + # The CakePHP plugin installer v1.3+ no longer requires the | |
88 | + # "post-autoload-dump" hook. Please update your app's composer.json | |
89 | + # => Donc, on décommente cette ligne : | |
90 | + #"post-autoload-dump": "Cake\\Composer\\Installer\\PluginInstaller::postAutoloadDump", | |
91 | + # (EP) Tout ça est nouveau (since cakephp 3.7 ?) : | |
92 | + "check": [ | |
93 | + "@test", | |
94 | + "@cs-check" | |
95 | + ], | |
96 | + "cs-check": "phpcs --colors -p --standard=vendor/cakephp/cakephp-codesniffer/CakePHP src/ tests/", | |
97 | + "cs-fix": "phpcbf --colors --standard=vendor/cakephp/cakephp-codesniffer/CakePHP src/ tests/", | |
98 | + "test": "phpunit --colors=always" | |
99 | + }, | |
100 | + | |
101 | + "prefer-stable": true, | |
102 | + | |
103 | + # (EP) avant, on avait aussi cette ligne : | |
104 | + "minimum-stability" : "stable", | |
105 | + | |
106 | + # (EP) Ca, c'est nouveau : Ca doit etre cette instruction qui remet les packages automatiquement en ordre alpha | |
107 | + "config": { | |
108 | + "sort-packages": true | |
109 | + } | |
110 | +} | ... | ... |
config/bootstrap.php
... | ... | @@ -108,7 +108,7 @@ try { |
108 | 108 | // (EP 2021 09 Ajout nouveaux fichiers config pour les champs obligatoires (et les autorisations)) |
109 | 109 | $config_mandatory_fields_file_name = 'app_labinvent_mandatory_fields'; |
110 | 110 | // Si le fichier de conf n'existe pas, on le crée en copiant le fichier par défaut |
111 | -if ( !file_exists(CONFIG.DS.$config_mandatory_fields_file_name) ) | |
111 | +if ( !file_exists(CONFIG.DS.$config_mandatory_fields_file_name.'.yml') ) | |
112 | 112 | copy(CONFIG.DS.$config_mandatory_fields_file_name.'.default.yml', CONFIG.DS.$config_mandatory_fields_file_name.'.yml'); |
113 | 113 | try { |
114 | 114 | Configure::config('yaml', new YamlConfig()); | ... | ... |