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 68 echo $this->Html->link('Aller au formulaire d\'édition avancée', [
69 69 'action' => 'administrer',
70 70 $materiel->id
71   - ]);
  71 + ]);z
72 72 echo '<br><br>';
73 73 }*/
74 74 ?>
... ... @@ -335,16 +335,17 @@ if ($IS_VALIDATED)
335 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 336 echo $this->Form->checkbox('adminEdit', [
337 337 'label' => 'Editer la partie administrative',
338   - 'onchange' => 'changeAdminEdit();',
  338 + 'onchange' => 'changeAdminEdit();',
339 339 'default' => false
340 340 ]);
  341 +
341 342 echo $this->Form->input('eotp', [
342 343 'label' => 'Centre financier/EOTP',
343 344 'disabled' => true
344 345 ]);
345 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 350 echo $this->Form->input('code_comptable', [
350 351 'label' => 'Code comptable',
... ... @@ -366,12 +367,15 @@ if ($IS_VALIDATED)
366 367 if ($USER_IS_SUPERADMIN) {
367 368  
368 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 375 'label' => 'Editer la partie administrative avancée',
372   - 'onchange' => 'changeAdminPlus();',
  376 + 'onchange' => 'changeAdminEditPlus();',
373 377 'default' => false
374   - ]);
  378 + ]);*/
375 379  
376 380 //if($this->Form->adminEditPlus)
377 381 echo $this->Form->input('nom_createur', [
... ... @@ -379,20 +383,49 @@ if ($IS_VALIDATED)
379 383 'disabled' => true,
380 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 391 echo $this->Form->input('created', [
383 392 'label' => 'Date de création',
384 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 409 echo $this->Form->input('nom_modificateur', [
387 410 'label' => 'Nom du modificateur',
388 411 'default' => $username,
389 412 'disabled' => true
390 413 ]);
  414 + // Même situation que pour la création, mais pour la modification
391 415 echo $this->Form->input('modified', [
392 416 'label' => 'Date de modification',
393 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 466  
434 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 468 <?=$this->Html->script('jquery-1.8.12')?>
436   -<?=$this->Html->script('script')?>
437 469 <?=$this->Html->script('DatepickerConfig')?>
438 470 <?=$this->Html->script('Verifications_dates_materiels.js')?>
  471 +<?=$this->Html->script('script')?>
439 472  
440 473 <script type="text/javascript">
441 474  
... ... @@ -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 611 </script>
  612 +
538 613 <!--
539 614 <script type="text/javascript">
540 615  
... ...