Commit e9fe2d19070aefc736cd66fcf2b06deb110501ca

Authored by Malik Imelhaine
1 parent 16713edd

Partie III - Harmoniser Edit et Administrer

La vue est prête et fonctionne, sauf le champ
date de création qui à un probème pour s'enregistrer dans la bdd, je regarde ça tout de suite
Showing 1 changed file with 86 additions and 11 deletions   Show diff stats
src/Template/Materiels/edit.ctp
@@ -68,7 +68,7 @@ if ($IS_VALIDATED) @@ -68,7 +68,7 @@ if ($IS_VALIDATED)
68 echo $this->Html->link('Aller au formulaire d\'édition avancée', [ 68 echo $this->Html->link('Aller au formulaire d\'édition avancée', [
69 'action' => 'administrer', 69 'action' => 'administrer',
70 $materiel->id 70 $materiel->id
71 - ]); 71 + ]);z
72 echo '<br><br>'; 72 echo '<br><br>';
73 }*/ 73 }*/
74 ?> 74 ?>
@@ -335,16 +335,17 @@ if ($IS_VALIDATED) @@ -335,16 +335,17 @@ if ($IS_VALIDATED)
335 echo '<div style="border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin-bottom: 0; background: #EEE;"><span style="font-size: 9px; color: red;">Partie administrative</span>'; 335 echo '<div style="border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin-bottom: 0; background: #EEE;"><span style="font-size: 9px; color: red;">Partie administrative</span>';
336 echo $this->Form->checkbox('adminEdit', [ 336 echo $this->Form->checkbox('adminEdit', [
337 'label' => 'Editer la partie administrative', 337 'label' => 'Editer la partie administrative',
338 - 'onchange' => 'changeAdminEdit();', 338 + 'onchange' => 'changeAdminEdit();',
339 'default' => false 339 'default' => false
340 ]); 340 ]);
  341 +
341 echo $this->Form->input('eotp', [ 342 echo $this->Form->input('eotp', [
342 'label' => 'Centre financier/EOTP', 343 'label' => 'Centre financier/EOTP',
343 'disabled' => true 344 'disabled' => true
344 ]); 345 ]);
345 echo $this->Form->input('numero_commande', [ 346 echo $this->Form->input('numero_commande', [
346 - 'label' => 'Numéro de commande',  
347 - 'disabled' => true 347 + 'label' => 'Numéro de commande',
  348 + 'disabled' => true
348 ]); 349 ]);
349 echo $this->Form->input('code_comptable', [ 350 echo $this->Form->input('code_comptable', [
350 'label' => 'Code comptable', 351 'label' => 'Code comptable',
@@ -366,12 +367,15 @@ if ($IS_VALIDATED) @@ -366,12 +367,15 @@ if ($IS_VALIDATED)
366 if ($USER_IS_SUPERADMIN) { 367 if ($USER_IS_SUPERADMIN) {
367 368
368 echo '<div style="border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin-bottom: 0; background: #EEE;"><span style="font-size: 9px; color: red;">Partie administrative avancée</span>'; 369 echo '<div style="border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin-bottom: 0; background: #EEE;"><span style="font-size: 9px; color: red;">Partie administrative avancée</span>';
369 -  
370 - echo $this->Form->checkbox('adminEditPlus', [ 370 + /* Checkbox à remettre si on veut pouvoir modifier les champs suivants si elle est cochée
  371 + * il faut aussi remettre la fonction javascript changeAdminEditPlus() en fin de fichier qui dicte le comportement de ces champs
  372 +
  373 + echo $this->Form->checkbox('adminPlus', [
  374 +
371 'label' => 'Editer la partie administrative avancée', 375 'label' => 'Editer la partie administrative avancée',
372 - 'onchange' => 'changeAdminPlus();', 376 + 'onchange' => 'changeAdminEditPlus();',
373 'default' => false 377 'default' => false
374 - ]); 378 + ]);*/
375 379
376 //if($this->Form->adminEditPlus) 380 //if($this->Form->adminEditPlus)
377 echo $this->Form->input('nom_createur', [ 381 echo $this->Form->input('nom_createur', [
@@ -379,20 +383,49 @@ if ($IS_VALIDATED) @@ -379,20 +383,49 @@ if ($IS_VALIDATED)
379 'disabled' => true, 383 'disabled' => true,
380 'options' => $utilisateurs 384 'options' => $utilisateurs
381 ]); 385 ]);
  386 + //Date de création de la fiche matériel
  387 + //dispo en deux versions,
  388 + //Version de base qui crée un champ pour l'heure, un champ pour le jour, un pour le mois...
  389 + //nous la vérouillons d'office, car aucune utilisateur même le superadmin n'a pas besoin de modifier ce champ
  390 +
382 echo $this->Form->input('created', [ 391 echo $this->Form->input('created', [
383 'label' => 'Date de création', 392 'label' => 'Date de création',
384 'disabled' => true 393 'disabled' => true
385 ]); 394 ]);
  395 +
  396 + /*Version datepicker, possède un id, si la checkbox en début de div est active
  397 + * Ainsi que la fonction changeAdminEditPlus(), ce champ devient disabled en fonction de la checkbox
  398 + * il y a cependant plusieurs problèmes, la date est l'heure sont préremplies dans ce date picker qui ne gère que la date
  399 + * Ainsi à chaque fois l'on veut modifier la fiche on est obligé de remodifier ce champ et enlever l'heure
  400 + * Il faudrait changer plus de choses, mais comme l'on a décidé de laisses ces champs non modifiables j'en suis resté là
  401 + echo $this->Form->input('created', [
  402 + 'type' => 'text',
  403 + 'label' => 'Date de création',
  404 + 'disabled' => true,
  405 + 'class' => 'datepicker'
  406 + ]);*/
  407 +
  408 +
386 echo $this->Form->input('nom_modificateur', [ 409 echo $this->Form->input('nom_modificateur', [
387 'label' => 'Nom du modificateur', 410 'label' => 'Nom du modificateur',
388 'default' => $username, 411 'default' => $username,
389 'disabled' => true 412 'disabled' => true
390 ]); 413 ]);
  414 + // Même situation que pour la création, mais pour la modification
391 echo $this->Form->input('modified', [ 415 echo $this->Form->input('modified', [
392 'label' => 'Date de modification', 416 'label' => 'Date de modification',
393 'disabled' => true 417 'disabled' => true
394 ]); 418 ]);
395 - echo '</div>'; 419 +
  420 + //Version datepicker
  421 + /*echo $this->Form->input('modified', [
  422 + 'type' => 'text',
  423 + 'label' => 'Date de modification',
  424 + 'disabled' => true,
  425 + 'class' => 'datepicker'
  426 + ]);
  427 +
  428 + echo '</div>';*/
396 429
397 } 430 }
398 431
@@ -433,9 +466,9 @@ echo $this-&gt;element(&#39;menu_form&#39;, [ @@ -433,9 +466,9 @@ echo $this-&gt;element(&#39;menu_form&#39;, [
433 466
434 <?php // Alors oui, c'est pas joli, mais CakePHP a eu l'EXCELENTE IDEE de TOUT inclure dans la balise <head> du site ... Et bien entendu c'est pas pris en compte ici .... Halleluja bordel (#JeremyFerrary) ?> 467 <?php // Alors oui, c'est pas joli, mais CakePHP a eu l'EXCELENTE IDEE de TOUT inclure dans la balise <head> du site ... Et bien entendu c'est pas pris en compte ici .... Halleluja bordel (#JeremyFerrary) ?>
435 <?=$this->Html->script('jquery-1.8.12')?> 468 <?=$this->Html->script('jquery-1.8.12')?>
436 -<?=$this->Html->script('script')?>  
437 <?=$this->Html->script('DatepickerConfig')?> 469 <?=$this->Html->script('DatepickerConfig')?>
438 <?=$this->Html->script('Verifications_dates_materiels.js')?> 470 <?=$this->Html->script('Verifications_dates_materiels.js')?>
  471 +<?=$this->Html->script('script')?>
439 472
440 <script type="text/javascript"> 473 <script type="text/javascript">
441 474
@@ -533,8 +566,50 @@ $(document).ready(function () { @@ -533,8 +566,50 @@ $(document).ready(function () {
533 }); 566 });
534 }); 567 });
535 568
536 - 569 +
  570 + //changement d'emplacement de la fonction qui étais dans le fichier ./webroot/js/script.js (si modifiée dans le script, bug de l'application)
  571 + //permet d'afficher les infos administrative
  572 + //après checkbox checked
  573 +function changeAdminEdit() {
  574 + if (document.getElementById('eotp').disabled) {
  575 + document.getElementById('eotp').disabled=false;
  576 + document.getElementById('numero-commande').disabled=false;
  577 + document.getElementById('code-comptable').disabled=false;
  578 + document.getElementById('numero-inventaire-organisme').disabled=false;
  579 + document.getElementById('numero-inventaire-old').disabled=false;
  580 + }
  581 + else {
  582 + document.getElementById('eotp').disabled=true;
  583 + document.getElementById('numero-commande').disabled=true;
  584 + document.getElementById('code-comptable').disabled=true;
  585 + document.getElementById('numero-inventaire-organisme').disabled=true;
  586 + document.getElementById('numero-inventaire-old').disabled=true;
  587 + }
  588 +}
  589 +/* Fonction retirée car ces informations n'ont pas pour but d'être modifiées
  590 + * Nous laissons la fonction disponible si elle redevient un jour nécessaire
  591 + *
  592 +//Permet d'afficher les infos administrative plus après checkbox checked
  593 + function changeAdminEditPlus() {
  594 + if (document.getElementById('nom-createur').disabled) {
  595 + document.getElementById('nom-createur').disabled=false;
  596 + document.getElementById('nom-modificateur').disabled=false;
  597 + document.getElementById('created').disabled=false;
  598 + document.getElementById('modified').disabled=false;
  599 + }
  600 + else {
  601 + document.getElementById('nom-createur').disabled=true;
  602 + document.getElementById('nom-modificateur').disabled=true;
  603 + document.getElementById('created').disabled=true;
  604 + document.getElementById('modified').disabled=true;
  605 + }
  606 + }
  607 +*/
  608 +
  609 +
  610 +
537 </script> 611 </script>
  612 +
538 <!-- 613 <!--
539 <script type="text/javascript"> 614 <script type="text/javascript">
540 615