Commit d380f706f09b61b3029e06406e0a8c25df03c154
Exists in
master
and in
1 other branch
Merge dev branch into master branch (vv3.7.9.62)
Showing
3 changed files
with
166 additions
and
38 deletions
Show diff stats
CHANGES.txt
1 | 1 | CHANGEMENTS |
2 | 2 | |
3 | + | |
3 | 4 | <i>Liste plus détaillée des évolutions : https://gitlab.irap.omp.eu/epallier/labinvent/commits/master</i> |
4 | 5 | |
5 | 6 | TODO: - Nouvelle page web "Statistiques mensuelles" (/pages/stats) |
6 | 7 | |
7 | 8 | |
8 | ------------------------------------------------------------------------------------------------------------ | |
9 | 9 | |
10 | 10 | |
11 | 11 | |
12 | +======= NEWS ======= | |
13 | + | |
14 | + | |
15 | +------- | |
16 | +16/07/2020 NEWS#2 : | |
17 | + | |
18 | +- Nouvelle page web pour visualiser les changements faits sur le logiciel (cette même page que vous visualisez actuellement) : /pages/changes | |
19 | + | |
20 | +- Améliorations de la page qui liste les matériels (/materiels/index) : | |
21 | + => nouveau filtre "age" : affichage des matériels par tranche d'âge (par défaut "moins de 5 ans", mais aussi 5-10 ans, 10-15 ans...) | |
22 | + => colorisation selon statut du matériel (CREATED => bleu, VALIDATED => vert, TBA => orange, ARCHIVED => rouge) | |
23 | + | |
24 | +- Simplification du type de matériel (administratif, technique) : il n'y a désormais qu'UNE SEULE case à cocher qui s'appelle "matériel technique" | |
25 | + => si cette case n'est pas cochée, le matériel est donc "inventoriable" et le prix doit alors être supérieur à 1000E | |
26 | + | |
27 | +- Mode "nolimit" pour le profil "superadmin" activable depuis la page de configuration (/configurations/view) : permet de donner (temporairement) plus de droits au super administrateur ("Superadmin a tous les droits", depuis menu Tools) | |
28 | + | |
29 | + | |
30 | +------- | |
31 | +06/07/2020 NEWS#1 : | |
32 | + | |
33 | +Depuis mars 2020, le logiciel est devenu "mobile-friendly", il se présente donc correctement aussi bien sur l'écran d'un pc classique que sur une tablette ou un smarphone. | |
34 | + | |
35 | +La version du logiciel (actuellement 3.7.9.54) se calque désormais sur celle du framework sous-jacent utilisé (CakePhp), c'est à dire v3.7.9, en attendant un passage à la version 4 (php7 only), qui pourrait avoir lieu avant la fin de l'année... | |
36 | +Il est toujours compatible avec Php 5.6, mais est prioritairement axé sur Php 7 et tournera bientôt exclusivement avec cette dernière version. | |
37 | + | |
38 | +Outre ces changements, voici d'autres changements importants : | |
39 | + | |
40 | +- Installation guidée via la simple commande "INSTALLATION" | |
41 | + | |
42 | +- Mise à jour de plus en plus simple via la simple commande "UPDATE" (met à jour l'ensemble du logiciel : le code source, la base de données, et les plugins) | |
43 | + | |
44 | +- Affichage de la version de tous les composants utilisés via la simple commande "VERSION" | |
45 | + | |
46 | +- La plupart des paramètres du logiciel sont désormais configurables via une page web | |
47 | + | |
48 | +- Nouveau système de gestion des autorisations par profil : cette gestion est désormais beaucoup plus centralisée et permet aussi à chaque laboratoire d'ajuster les règles selon sa convenance | |
49 | +(NB: cette configuration ne se fait pas encore via une page web (ça viendra), mais directement dans le code source) | |
50 | + | |
51 | +- Nouvelle page web qui affiche toutes les autorisations actuelles (/pages/acls) | |
52 | + | |
53 | +- Nouvelle page web qui affiche les logs applicatifs (/pages/logs) : cela permet notamment de suivre les actions effectuées par les utilisateurs (historique de "qui a fait quoi"), et de voir s'il y a un problème quelconque sur le serveur | |
54 | + | |
55 | +- Renforcement important des tests pour assurer la qualité du logiciel (lancés via la simple commande "TESTS") | |
56 | + | |
57 | +- Amélioration importante de la documentation technique en ligne : https://tinyurl.com/labinvent | |
58 | + | |
59 | +- Une VM linux (Ubuntu) est désormais disponible pour faciliter le déploiement | |
60 | + | |
61 | + | |
62 | + | |
63 | + | |
64 | + | |
65 | +======= CHANGES ======= | |
66 | + | |
12 | 67 | ------- |
13 | -16/07/2020 v3.7.9.61 (EP) | |
68 | +16/07/2020 v3.7.9.61-62 (EP) | |
14 | 69 | - (e) Amélioration importante de la nouvelle page web "Changements" (/pages/changes) |
15 | 70 | - (b) Bugfix "sauf ARCHIVED" dans materiels/index/ (pour profils user et resp) |
16 | 71 | - (b) bugfix tests car maintenant materiels/index/ ne renvoit que les materiels de - 5 ans !! |
17 | 72 | - (i) Grosse amelioration tests liés au numéro inventaire incrémenté de 1 et au nb de matériels trouvés dans vue index (bien + souple qu'avant) |
18 | 73 | - (i) Grosse amelioration tests liés à la recherche de matériels testFind (bien + souple qu'avant) |
74 | + - (b) bugfix accès vue configuration | |
75 | + - (e) Ajout de la section "NEWS" dans la page "Changements" (/pages/changes) | |
19 | 76 | |
20 | 77 | ------- |
21 | 78 | 13/07/2020 v3.7.9.60 (EP) |
... | ... | @@ -46,7 +103,7 @@ TODO: - Nouvelle page web "Statistiques mensuelles" (/pages/stats) |
46 | 103 | |
47 | 104 | ------- |
48 | 105 | 06/07/2020 v3.7.9.54-55 (EP) |
49 | - - Bugfix test SurCategories : marche maintenant sur php5 et php7 | |
106 | + - (b) Bugfix test SurCategories : marche maintenant sur php5 et php7 | |
50 | 107 | - (e) Fichier LICENSE (AGPL) |
51 | 108 | - (e) Conditions d'utilisation à accepter lors de l'installation |
52 | 109 | - (i) script ./INSTALLATION | ... | ... |
README.md
... | ... | @@ -43,7 +43,7 @@ Logiciel testé et validé sur les configurations suivantes : |
43 | 43 | -------------------------------------------------------------------------------------------- |
44 | 44 | |
45 | 45 | Date: 16/07/2020 |
46 | -Version: 3.7.9.61 | |
46 | +Version: 3.7.9.62 | |
47 | 47 | |
48 | 48 | |
49 | 49 | HISTORIQUE DES CHANGEMENTS DE VERSION : voir le fichier CHANGES.txt (ou la page web /pages/changes) | ... | ... |
src/Template/Pages/changes.ctp
1 | 1 | <?php |
2 | -// parameters passed by controller | |
2 | + | |
3 | +// Parameters passed by controller | |
4 | +// ???... | |
5 | + | |
6 | + | |
7 | +// On lit le fichier /WWWROOT/../CHANGES.txt | |
8 | +const EMPTY_LINE = "\n"; // Attention, '\n' ne marche pas... seulement "\n" | |
9 | +const NEW_SECTION = "======= "; | |
10 | +const NEW_BLOCK = "-------\n"; | |
11 | +const SECTION_NEWS = "======= NEWS =======\n"; | |
12 | +const SECTION_CHANGES = "======= CHANGES =======\n"; | |
13 | + | |
14 | +/* | |
15 | + const IMPORTANT1 = '- (e)'; | |
16 | + const IMPORTANT2 = '- (i)'; | |
17 | + const IMPORTANT3 = '- (b)'; | |
18 | + */ | |
19 | +const IMPORTANT = [ | |
20 | + '- (e)' => 'green', | |
21 | + '- (i)' => 'orange', | |
22 | + '- (b)' => 'red' | |
23 | +]; | |
24 | + | |
25 | + | |
26 | +function is_new_section($line) { | |
27 | + return strpos($line, NEW_SECTION) === 0; | |
28 | +} | |
29 | + | |
30 | + | |
31 | + | |
32 | +$wwwroot_dir = new Cake\Filesystem\Folder(WWW_ROOT); | |
33 | +$fname = 'CHANGES.txt'; | |
34 | +$fpath = $wwwroot_dir->pwd() . DS . '..' . DS . $fname; | |
35 | +$nblines_to_read = 5000; | |
36 | + | |
37 | +$f = fopen($fpath, "r") or die("Le fichier /$fname n'existe pas... !"); | |
38 | + | |
39 | + | |
3 | 40 | ?> |
41 | + | |
42 | + | |
43 | + | |
44 | + | |
45 | + | |
46 | + | |
47 | +<!-- | |
48 | +---------------------------------------- | |
49 | +-------------- PAGE WEB HTML ----------- | |
50 | +---------------------------------------- | |
51 | +--> | |
52 | + | |
4 | 53 | <h2> |
5 | 54 | <!-- |
6 | 55 | <i class="icon-print"></i> |
... | ... | @@ -16,49 +65,69 @@ |
16 | 65 | <li>En <b style='color:red'>rouge</b>, les corrections de bug (bugfixes)</li> |
17 | 66 | </ul> |
18 | 67 | </p> |
19 | -<br> | |
20 | -<br> | |
21 | -<br> | |
22 | 68 | |
23 | - | |
24 | - | |
69 | +<hr /> | |
25 | 70 | |
26 | -<?php | |
71 | +<p> | |
72 | +<ul> | |
73 | +<li><a href='#news'>LES GRANDS CHANGEMENTS (NEWS)</a></li> | |
74 | +<li><a href='#changes'>TOUS LES CHANGEMENTS (plus de détail)</a></li> | |
75 | +</ul> | |
76 | +</p> | |
27 | 77 | |
28 | -// On lit le fichier /WWWROOT/../CHANGES.txt | |
29 | -const EMPTY_LINE = "\n"; // Attention, '\n' ne marche pas... seulement "\n" | |
30 | -const NEW_SECTION = "-------\n"; | |
31 | -/* | |
32 | -const IMPORTANT1 = '- (e)'; | |
33 | -const IMPORTANT2 = '- (i)'; | |
34 | -const IMPORTANT3 = '- (b)'; | |
35 | -*/ | |
36 | -const IMPORTANT = [ | |
37 | - '- (e)' => 'green', | |
38 | - '- (i)' => 'orange', | |
39 | - '- (b)' => 'red' | |
40 | -]; | |
78 | +<hr /> | |
41 | 79 | |
42 | -$wwwroot_dir = new Cake\Filesystem\Folder(WWW_ROOT); | |
43 | -$fname = 'CHANGES.txt'; | |
44 | -$fpath = $wwwroot_dir->pwd() . DS . '..' . DS . $fname; | |
45 | -$nblines_to_read = 5000; | |
46 | 80 | |
47 | -$f = fopen($fpath, "r") or die("Le fichier /$fname n'existe pas... !"); | |
81 | +<?php | |
82 | + | |
48 | 83 | |
49 | -// On zappe jqa début d'une première section | |
50 | -$line = ''; | |
51 | -while ($line != NEW_SECTION) $line = fgets($f); | |
84 | +// 1) On zappe jqa début de la première section (NEWS) | |
85 | +$line = ''; while ($line != SECTION_NEWS) $line = fgets($f); | |
52 | 86 | |
87 | +// 2) Lecture et affichage section NEWS (les grandes nouveautés) | |
88 | +echo '<a id="news">'; | |
89 | +echo "<h3>LES GRANDS CHANGEMENTS (NEWS)</h3>"; | |
90 | +echo '</a>'; | |
91 | +// On zappe jqa la première section | |
92 | +$line = ''; while ($line != NEW_BLOCK) $line = fgets($f); | |
53 | 93 | while(!feof($f)) { |
94 | + if (is_new_section($line)) break; | |
54 | 95 | // Traitement d'une section : on lit jqa ligne vide |
55 | - $line = fgets($f); | |
56 | - echo "<b>$line</b><br>"; | |
57 | - //if ($line == NEW_SECTION) echo "OUI"; | |
58 | - //while (!feof($f) && $line!=NEW_SECTION) { | |
96 | + $title = fgets($f); | |
97 | + echo "<b>$title</b><br>"; | |
98 | + //if ($line == NEW_BLOCK) echo "OUI"; | |
99 | + //while (!feof($f) && $line!=NEW_BLOCK) { | |
100 | + // Afficher chaque ligne du bloc | |
59 | 101 | while (true) { |
60 | 102 | $line = fgets($f); |
61 | - if (feof($f) || $line==NEW_SECTION) break; | |
103 | + if ( feof($f) || is_new_section($line) || $line==NEW_BLOCK ) break; | |
104 | + echo $line; | |
105 | + echo "<br>"; | |
106 | + } | |
107 | +} | |
108 | +echo '<hr />'; | |
109 | + | |
110 | +// 3) Lecture et affichage section CHANGES (changements plus détaillés) | |
111 | +echo '<a id="changes">'; | |
112 | +echo "<h3>TOUS LES CHANGEMENTS</h3>"; | |
113 | +echo '</a>'; | |
114 | +echo "<i>Liste encore plus détaillée des évolutions : <a href='https://gitlab.irap.omp.eu/epallier/labinvent/commits/master'>GITLAB</a></i>"; | |
115 | +echo '<br />'; | |
116 | +echo '<br />'; | |
117 | +// On zappe jqa la première section | |
118 | +$line = ''; while ($line != NEW_BLOCK) $line = fgets($f); | |
119 | +while(!feof($f)) { | |
120 | + if (is_new_section($line)) break; | |
121 | + // Traitement d'une section : on lit jqa ligne vide | |
122 | + $title = fgets($f); | |
123 | + echo "<b>$title</b><br>"; | |
124 | + //if ($line == NEW_BLOCK) echo "OUI"; | |
125 | + //while (!feof($f) && $line!=NEW_BLOCK) { | |
126 | + // Afficher chaque ligne du bloc | |
127 | + while (true) { | |
128 | + $line = fgets($f); | |
129 | + if ( feof($f) || is_new_section($line) || $line==NEW_BLOCK ) break; | |
130 | + if (feof($f) || $line==NEW_BLOCK) break; | |
62 | 131 | foreach (array_keys(IMPORTANT) as $code) { |
63 | 132 | $pos = strpos($line, $code); |
64 | 133 | if ($pos) break; |
... | ... | @@ -71,7 +140,9 @@ while(!feof($f)) { |
71 | 140 | echo "<br>"; |
72 | 141 | } |
73 | 142 | } |
74 | - | |
143 | + | |
144 | + | |
145 | +// END | |
75 | 146 | fclose($f); |
76 | 147 | |
77 | 148 | ... | ... |