Skip to content

Commit 3a11053

Browse files
committed
refacto: Migration des selecteurs de date & temps par des éléments natifs
1 parent 20809d2 commit 3a11053

17 files changed

+173
-80
lines changed

htdocs/pages/administration/compta_conf_compte.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@
5353
$valeur['nom_compte'],
5454
);
5555
} else {
56-
dump($valeur);
5756
$ok = $compta->modifierConfig(
5857
'compta_compte',
5958
$valeur['id'],

htdocs/pages/administration/compta_devis.php

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -106,12 +106,16 @@ function prepareDefaultsFromComptaFacId(Facture $comptaFact, $id)
106106
$formulaire->addElement('date' , 'date_devis' , 'Date devis', ['language' => 'fr',
107107
'format' => 'd F Y',
108108
'minYear' => date('Y') - 3,
109-
'maxYear' => date('Y')]);
109+
'maxYear' => date('Y'),
110+
'singleInput' => true,
111+
]);
110112
} else {
111113
$formulaire->addElement('date' , 'date_devis' , 'Date devis', ['language' => 'fr',
112114
'format' => 'd F Y',
113115
'minYear' => date('Y'),
114-
'maxYear' => date('Y')]);
116+
'maxYear' => date('Y'),
117+
'singleInput' => true,
118+
]);
115119
}
116120
$formulaire->addElement('header' , '' , 'Facturation');
117121
$formulaire->addElement('static' , 'note' , '' , 'Ces informations concernent la personne ou la société qui sera facturée<br /><br />');
@@ -188,11 +192,9 @@ function prepareDefaultsFromComptaFacId(Facture $comptaFact, $id)
188192
if ($formulaire->validate()) {
189193
$valeur = $formulaire->exportValues();
190194

191-
$date_devis = $valeur['date_devis']['Y'] . "-" . $valeur['date_devis']['F'] . "-" . $valeur['date_devis']['d'] ;
192-
193195
if ($action === 'ajouter') {
194196
$ok = $comptaFact->ajouter(
195-
$date_devis,
197+
$valeur['date_devis'],
196198
$valeur['societe'],
197199
$valeur['service'],
198200
$valeur['adresse'],
@@ -210,7 +212,7 @@ function prepareDefaultsFromComptaFacId(Facture $comptaFact, $id)
210212
$valeur['ref_clt3'],
211213
0,
212214
null,
213-
$valeur['devise_facture'],
215+
$valeur['devise_facture'] ?? 'EUR', // or make form field required
214216
);
215217

216218
for ($i = 1;$i < 6;$i++) {
@@ -225,7 +227,7 @@ function prepareDefaultsFromComptaFacId(Facture $comptaFact, $id)
225227
} else {
226228
$ok = $comptaFact->modifier(
227229
$_GET['id'],
228-
$date_devis,
230+
$valeur['date_devis'],
229231
$valeur['societe'],
230232
$valeur['service'],
231233
$valeur['adresse'],
@@ -272,6 +274,6 @@ function prepareDefaultsFromComptaFacId(Facture $comptaFact, $id)
272274
}
273275

274276

275-
$smarty->assign('devis_id', $_GET['id']);
277+
$smarty->assign('devis_id', $_GET['id'] ?? 0);
276278
$smarty->assign('formulaire', genererFormulaire($formulaire));
277279
}

htdocs/pages/administration/compta_facture.php

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@
6363

6464
if ($action === 'modifier') {
6565
$champsRecup = $comptaFact->obtenir($_GET['id']);
66-
6766
$factureId = $champsRecup['id'];
6867

6968
$champs['date_facture'] = $champsRecup['date_facture'];
@@ -119,12 +118,16 @@
119118
$formulaire->addElement('date' , 'date_facture' , 'Date facture', ['language' => 'fr',
120119
'format' => 'd F Y',
121120
'minYear' => date('Y') - 3,
122-
'maxYear' => date('Y')]);
121+
'maxYear' => date('Y'),
122+
'singleInput' => true,
123+
]);
123124
} else {
124125
$formulaire->addElement('date' , 'date_facture' , 'Date facture', ['language' => 'fr',
125126
'format' => 'd F Y',
126127
'minYear' => date('Y'),
127-
'maxYear' => date('Y')]);
128+
'maxYear' => date('Y'),
129+
'singleInput' => true,
130+
]);
128131
}
129132
$formulaire->addElement('header' , '' , 'Facturation');
130133
$formulaire->addElement('static' , 'note' , '' , 'Ces informations concernent la personne ou la société qui sera facturée<br /><br />');
@@ -172,7 +175,7 @@
172175
$formulaire->addElement('select', 'devise_facture' , 'Monnaie de la facture', ['EUR' => 'Euro',
173176
'DOL' => 'Dollar'], ['size' => 2]);
174177
$formulaire->addElement('select', 'etat_paiement' , 'Etat paiement', ['En attente de paiement', 'Payé', 'Annulé'], ['size' => 3]);
175-
$formulaire->addElement('date' , 'date_paiement' , 'Date paiement', ['language' => 'fr', 'format' => 'd F Y', 'minYear' => date('Y') - 5, 'maxYear' => date('Y')]);
178+
$formulaire->addElement('date' , 'date_paiement' , 'Date paiement', ['language' => 'fr', 'format' => 'd F Y', 'minYear' => date('Y') - 5, 'maxYear' => date('Y'), 'singleInput' => true]);
176179

177180

178181

@@ -214,8 +217,8 @@
214217
if ($formulaire->validate()) {
215218
$valeur = $formulaire->exportValues();
216219

217-
$date_ecriture = $valeur['date_facture']['Y'] . "-" . $valeur['date_facture']['F'] . "-" . $valeur['date_facture']['d'] ;
218-
$date_paiement = $valeur['date_paiement']['Y'] . "-" . $valeur['date_paiement']['F'] . "-" . $valeur['date_paiement']['d'] ;
220+
$date_ecriture = $valeur['date_facture'];
221+
$date_paiement = $valeur['date_paiement'];
219222
if ($action === 'ajouter') {
220223
// il faut passser obligatoirement par un devis
221224
} else {

htdocs/pages/administration/compta_journal.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,8 @@
118118
$formulaire->addElement('date' , 'date_saisie' , 'Date saisie', ['language' => 'fr',
119119
'format' => 'd F Y',
120120
'minYear' => date('Y') - 5,
121-
'maxYear' => date('Y') + 1]);
121+
'maxYear' => date('Y') + 1,
122+
'singleInput' => true]);
122123

123124
$formulaire->addElement('select' , 'idcategorie', 'Type de compte', $compta->obtenirListCategories());
124125
$formulaire->addElement('text', 'nom_frs', 'Nom fournisseurs' , ['size' => 30, 'maxlength' => 40]);
@@ -146,7 +147,9 @@
146147
$formulaire->addElement('date' , 'date_reglement' , 'Date', ['language' => 'fr',
147148
'format' => 'd F Y',
148149
'minYear' => date('Y') - 5,
149-
'maxYear' => date('Y') + 1]);
150+
'maxYear' => date('Y') + 1,
151+
'singleInput' => true,
152+
]);
150153
$formulaire->addElement('text', 'obs_regl', 'Info reglement' , ['size' => 30, 'maxlength' => 40]);
151154

152155

@@ -185,22 +188,19 @@
185188
if ($formulaire->validate()) {
186189
$valeur = $formulaire->exportValues();
187190

188-
$date_ecriture = $valeur['date_saisie']['Y'] . "-" . $valeur['date_saisie']['F'] . "-" . $valeur['date_saisie']['d'] ;
189-
$date_regl = $valeur['date_reglement']['Y'] . "-" . $valeur['date_reglement']['F'] . "-" . $valeur['date_reglement']['d'] ;
190-
191191
if ($action === 'ajouter') {
192192
$ok = $compta->ajouter(
193193
$valeur['idoperation'],
194194
$valeur['idcompte'],
195195
$valeur['idcategorie'],
196-
$date_ecriture,
196+
$valeur['date_saisie'],
197197
$valeur['nom_frs'],
198198
$valeur['tva_intra'],
199199
$valeur['montant'],
200200
$valeur['description'],
201201
$valeur['numero'],
202202
$valeur['idmode_regl'],
203-
$date_regl,
203+
$valeur['date_reglement'],
204204
$valeur['obs_regl'],
205205
$valeur['idevenement'],
206206
$valeur['comment'],
@@ -218,14 +218,14 @@
218218
$valeur['idoperation'],
219219
$valeur['idcompte'],
220220
$valeur['idcategorie'],
221-
$date_ecriture,
221+
$valeur['date_saisie'],
222222
$valeur['nom_frs'],
223223
$valeur['tva_intra'],
224224
$valeur['montant'],
225225
$valeur['description'],
226226
$valeur['numero'],
227227
$valeur['idmode_regl'],
228-
$date_regl,
228+
$valeur['date_reglement'],
229229
$valeur['obs_regl'],
230230
$valeur['idevenement'],
231231
$valeur['comment'],
@@ -248,7 +248,7 @@
248248
if (isset($_POST['soumettrepasser']) && isset($passer)) {
249249
$urlredirect = 'index.php?page=compta_journal&action=modifier&id=' . $passer;
250250
} else {
251-
$urlredirect = 'index.php?page=compta_journal&action=lister#L' . $valeur['id'];
251+
$urlredirect = 'index.php?page=compta_journal&action=lister#L' . ($valeur['id'] ?? '') ;
252252
}
253253
afficherMessage('L\'écriture a été ' . (($action === 'ajouter') ? 'ajoutée' : 'modifiée'), $urlredirect);
254254
} else {

htdocs/pages/administration/cotisations.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,13 @@
8888
$formulaire->addElement('date' , 'date_debut' , 'Date début', ['language' => 'fr',
8989
'format' => 'd F Y',
9090
'minYear' => 2002,
91-
'maxYear' => date('Y') + 5]);
91+
'maxYear' => date('Y') + 5,
92+
'singleInput' => true]);
9293
$formulaire->addElement('date' , 'date_fin' , 'Date fin', ['language' => 'fr',
9394
'format' => 'd F Y',
9495
'minYear' => 2002,
95-
'maxYear' => date('Y') + 5]);
96+
'maxYear' => date('Y') + 5,
97+
'singleInput' => true]);
9698
$formulaire->addElement('textarea', 'commentaires' , 'Commentaires', ['cols' => 42, 'rows' => 5]);
9799

98100
$formulaire->addElement('header', 'boutons' , '');
@@ -104,9 +106,9 @@
104106
if ($formulaire->validate()) {
105107
$nom = ($_GET['type_personne'] == AFUP_PERSONNES_PHYSIQUES) ? $personne['prenom'] . ' ' . $personne['nom'] : $personne['raison_sociale'];
106108
$date_debut = $formulaire->exportValue('date_debut');
107-
$date_debut = mktime(0, 0, 0, (int) $date_debut['F'], (int) $date_debut['d'],(int) $date_debut['Y']);
109+
$date_debut = (new \DateTime($date_debut))->getTimestamp();
108110
$date_fin = $formulaire->exportValue('date_fin');
109-
$date_fin = mktime(0, 0, 0, (int) $date_fin['F'], (int) $date_fin['d'], (int) $date_fin['Y']);
111+
$date_fin = (new \DateTime($date_fin))->getTimestamp();
110112

111113
if ($action == 'ajouter') {
112114
if ($cotisations->ajouter(

htdocs/pages/administration/forum_inscriptions.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ function updateGlobalsForTarif(
249249

250250

251251
$current = $forum->obtenir($_GET['id_forum']);
252-
$formulaire->addElement('date' , 'date_reglement' , 'Date', ['language' => 'fr', 'minYear' => $current['forum_annee'] - 2, 'maxYear' => $current['forum_annee'] + 2]);
252+
$formulaire->addElement('date' , 'date_reglement' , 'Date', ['language' => 'fr', 'minYear' => $current['forum_annee'] - 2, 'maxYear' => $current['forum_annee'] + 2, 'singleInput' => true]);
253253

254254

255255
$formulaire->addElement('header' , '' , 'Facturation');
@@ -307,10 +307,11 @@ function updateGlobalsForTarif(
307307
$valeurs = $formulaire->exportValues();
308308

309309
// Date de réglement au 01/01 => non defini
310-
if ($valeurs['date_reglement']['d'] == 1 && $valeurs['date_reglement']['M'] == 1) {
310+
$dateReglement = new DateTime($valeurs['date_reglement']);
311+
if ($dateReglement->format('j') == 1 && $dateReglement->format('n') == 1) {
311312
$valeurs['date_reglement'] = null;
312313
} else {
313-
$valeurs['date_reglement'] = mktime(0,0,0, (int) $valeurs['date_reglement']['M'], (int) $valeurs['date_reglement']['d'], (int) $valeurs['date_reglement']['Y']);
314+
$valeurs['date_reglement'] = $dateReglement->getTimestamp();
314315
}
315316

316317
if ($action == 'ajouter') {

htdocs/pages/administration/forum_planning.php

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@
7070
$champs['debut'] = $forum_donnees['date_debut'];
7171
$champs['fin'] = $forum_donnees['date_debut'];
7272
}
73-
7473
$formulaire->setDefaults($champs);
7574
$id = $_GET['id'] ?? 0;
7675

@@ -87,8 +86,8 @@
8786
}
8887

8988
$formulaire->addElement('header', null, 'Plannification');
90-
$formulaire->addElement('date' , 'debut' , 'Début', ['language' => 'fr', 'format' => "dMY H:i", 'minYear' => date('Y'), 'maxYear' => date('Y') + 1, 'minHour' => 8, 'maxHour' => 18, 'optionIncrement' => ['i' => 5]]);
91-
$formulaire->addElement('date' , 'fin' , 'Fin' , ['language' => 'fr', 'format' => "dMY H:i", 'minYear' => date('Y'), 'maxYear' => date('Y') + 1, 'optionIncrement' => ['i' => 5], 'minHour' => 8, 'maxHour' => 18]);
89+
$formulaire->addElement('date' , 'debut' , 'Début', ['language' => 'fr', 'format' => "dMY H:i", 'minYear' => date('Y'), 'maxYear' => date('Y') + 1, 'minHour' => 8, 'maxHour' => 18, 'optionIncrement' => ['i' => 5], 'singleInput' => true]);
90+
$formulaire->addElement('date' , 'fin' , 'Fin' , ['language' => 'fr', 'format' => "dMY H:i", 'minYear' => date('Y'), 'maxYear' => date('Y') + 1, 'optionIncrement' => ['i' => 5], 'minHour' => 8, 'maxHour' => 18, 'singleInput' => true]);
9291
$formulaire->addElement('select' , 'id_salle', 'Salle', [null => '' ] + $forum_appel->obtenirListeSalles($champs['id_forum'], true));
9392
$formulaire->addElement('text' , 'joindin' , 'Id de la conférence chez joind.in' , ['size' => 40, 'maxlength' => 10]);
9493

@@ -105,8 +104,8 @@
105104
if ($id == 0) {
106105
$planning_id = $forum_appel->ajouterSessionDansPlanning($valeurs['id_forum'],
107106
$valeurs['id_session'],
108-
mktime((int) $valeurs['debut']['H'], (int) $valeurs['debut']['i'], 0, (int) $valeurs['debut']['M'], (int) $valeurs['debut']['d'], (int) $valeurs['debut']['Y']),
109-
mktime((int) $valeurs['fin']['H'], (int) $valeurs['fin']['i'], 0, (int) $valeurs['fin']['M'], (int) $valeurs['fin']['d'], (int) $valeurs['fin']['Y']),
107+
(new DateTime($valeurs['debut']))->getTimestamp(),
108+
(new DateTime($valeurs['fin']))->getTimestamp(),
110109
$valeurs['id_salle']);
111110

112111
$ok = (bool) $planning_id;
@@ -115,8 +114,8 @@
115114
$ok = $forum_appel->modifierSessionDuPlanning($planning_id,
116115
$valeurs['id_forum'],
117116
$valeurs['id_session'],
118-
mktime((int) $valeurs['debut']['H'], (int) $valeurs['debut']['i'], 0, (int) $valeurs['debut']['M'], (int) $valeurs['debut']['d'], (int) $valeurs['debut']['Y']),
119-
mktime((int) $valeurs['fin']['H'],(int) $valeurs['fin']['i'], 0,(int) $valeurs['fin']['M'],(int) $valeurs['fin']['d'], (int) $valeurs['fin']['Y']),
117+
(new DateTime($valeurs['debut']))->getTimestamp(),
118+
(new DateTime($valeurs['fin']))->getTimestamp(),
120119
$valeurs['id_salle']);
121120
$forum_appel->modifierJoindinSession($valeurs['id_session'], $valeurs['joindin']);
122121
}

htdocs/pages/administration/forum_sessions.php

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
use AppBundle\Controller\LegacyController;
1111
use AppBundle\Event\Model\Talk;
1212
use Assert\Assertion;
13-
use Symfony\Component\PropertyAccess\PropertyAccess;
1413

1514
/** @var LegacyController $this */
1615
if (!defined('PAGE_LOADED_USING_INDEX')) {
@@ -131,7 +130,7 @@
131130

132131
$formulaire->addElement('header', null, 'Présentation');
133132

134-
$formulaire->addElement('date' , 'date_soumission', 'Soumission', ['language' => 'fr', 'minYear' => date('Y') - 5, 'maxYear' => date('Y') + 5]);
133+
$formulaire->addElement('date' , 'date_soumission', 'Soumission', ['language' => 'fr', 'minYear' => date('Y') - 5, 'maxYear' => date('Y') + 5, 'singleInput' => true]);
135134
$formulaire->addElement('text' , 'titre' , 'Titre' , ['size' => 40, 'maxlength' => 150]);
136135

137136
$abstractClass = 'simplemde';
@@ -182,12 +181,9 @@
182181
$formulaire->addElement('checkbox' , 'video_has_fr_subtitles' , "Sous titres FR présents");
183182
$formulaire->addElement('checkbox' , 'video_has_en_subtitles' , "Sous titres EN présents");
184183

185-
$dateElement = $formulaire->addElement('date' , 'date_publication' , 'Date de publication' , ['language' => 'fr', 'format' => "dMYH:i:s", 'minYear' => date('Y') - 5, 'maxYear' => date('Y') + 5]);
186-
187-
/** @var HTML_QuickForm_select $dateElementSelect */
188-
$dateElementSelect = PropertyAccess::createPropertyAccessor()->getValue($dateElement, '_elements[2]');
189-
if (!isset($dateElementSelect->getSelected()[0])) {
190-
$dateElementSelect->setSelected([date('Y')]);
184+
$dateElement = $formulaire->addElement('date' , 'date_publication' , 'Date de publication' , ['language' => 'fr', 'format' => "dMYH:i:s", 'minYear' => date('Y') - 5, 'maxYear' => date('Y') + 5, 'singleInput' => true]);
185+
if (empty($dateElement->getValue())) {
186+
$dateElement->setValue(date('Y') . '-01-01 00:00:00');
191187
}
192188

193189
$formulaire->addElement('textarea' , 'tweets' , "Tweets", ['style' => "width:100%;min-height:100px"]);
@@ -249,7 +245,7 @@
249245
if ($action == 'ajouter') {
250246
$session_id = $forum_appel->ajouterSession(
251247
$valeurs['id_forum'],
252-
$valeurs['date_soumission']['Y'] . '-' . $valeurs['date_soumission']['M'] . '-' . $valeurs['date_soumission']['d'],
248+
$valeurs['date_soumission'],
253249
$valeurs['titre'],
254250
$valeurs['abstract'],
255251
(int) $valeurs['genre'],
@@ -263,7 +259,7 @@
263259
$session_id = (int) $_GET['id'];
264260
$ok = $forum_appel->modifierSession($session_id,
265261
$valeurs['id_forum'],
266-
$valeurs['date_soumission']['Y'] . '-' . $valeurs['date_soumission']['M'] . '-' . $valeurs['date_soumission']['d'],
262+
$valeurs['date_soumission'],
267263
$valeurs['titre'],
268264
$valeurs['abstract'],
269265
(int) $valeurs['genre'],
@@ -280,7 +276,7 @@
280276
$valeurs['use_markdown'],
281277
$valeurs['video_has_fr_subtitles'],
282278
$valeurs['video_has_en_subtitles'],
283-
$valeurs['date_publication']['Y'] . '-' . $valeurs['date_publication']['M'] . '-' . $valeurs['date_publication']['d'] . ' ' . $valeurs['date_publication']['H'] . ':' . $valeurs['date_publication']['i'] . ':' . $valeurs['date_publication']['s'],
279+
$valeurs['date_publication'],
284280
$valeurs['tweets'],
285281
$valeurs['transcript'],
286282
$valeurs['verbatim'],

0 commit comments

Comments
 (0)