Commit 4c119e0a authored by Antony Le Courtes's avatar Antony Le Courtes
Browse files

refactoring UX pour permettre à un intervenant de mettre à jour une PJ en...

refactoring UX pour permettre à un intervenant de mettre à jour une PJ en cours de validité dans le contexte de l'année en cours. (Ticket #34104)
parent 652e8c49
Loading
Loading
Loading
Loading
+11 −0
Changes for module/Application/view/application/piece-jointe/index.phtml: 11 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -107,6 +107,17 @@ $menuUrl = $this->url('intervenant/services', ['intervenant' => $intervenant->ge

        });

        $('[id^="update-pj-"]').click(function (e) {
            e.preventDefault();
            var id = $(this).attr('id');
            var splitId = id.split('-');
            var tpjId = splitId[2];
            $('#valide-pj-' + tpjId).remove();
            $('#archive-form-pj-' + tpjId).css('display', 'block');
            return false;
        });


    </script>
<?php

+59 −12
Changes for module/Application/view/application/piece-jointe/partial/piece-jointe.phtml: 59 added lines, 12 removed lines.
Original line number Diff line number Diff line
@@ -47,24 +47,18 @@ $uploader = $this->uploader()->setUrl($this->url('piece-jointe/intervenant/fichi
    <div
            class="tpj <?= $obligatoire ? 'tpj-obligatoire ' : '' ?>tpj-<?= $tpj->getId() ?> panel panel-<?= $pj && $pj->getValidation() ? 'success' : 'default' ?> upload-container"
            data-tpj="<?= $tpj->getId() ?>"
            id="valide-pj-<?= $tpj->getId() ?>"
    >
        <div class="panel-heading panel-heading-h3">
            <h3>
                <?php if ($hasValidation && $canArchiver && $pj && $pj->getIntervenant()->getAnnee()->getId() != $annee->getId()): ?>
                <div class="validation-bar pull-right"
                     data-url="<?= $this->url('piece-jointe/intervenant/archiver', ['pieceJointe' => $pj->getId()], [], true) ?>">
                    <a class="archiver-pj btn btn-success pop-ajax"
                       href="<?= $this->url('piece-jointe/intervenant/archiver', ['pieceJointe' => $pj->getId()], [], true) ?>"
                       data-loading-text="Patientez..."
                    <div class="validation-bar pull-right">
                        <a class="archiver-pj btn btn-success"
                           title="Archiver cette pièce jointe pour en fournir une plus récente ?"
                       data-content="Archiver cette pièce jointe pour en fournir une plus récente ?"
                       data-confirm="true"
                       data-submit-reload="true"
                       data-confirm-button="Oui"
                       data-cancel-button="Non"
                    >
                           id="update-pj-<?= $tpj->getId() ?>">
                            <span class="glyphicon glyphicon-refresh"></span> Modifier (si besoin)
                        </a>

                    </div>
                <?php elseif ((!$hasValidation && $canValider && $pj && $pj->getIntervenant()->getAnnee()->getId() == $annee->getId()) || ($hasValidation && $canDevalider && $pj && $pj->getIntervenant()->getAnnee()->getId() == $annee->getId())): ?>
                    <div class="validation-bar pull-right"
@@ -99,13 +93,66 @@ $uploader = $this->uploader()->setUrl($this->url('piece-jointe/intervenant/fichi
                </div>
                <div class="col-md-6">
                    <!-- formulaire éventuel de dépôt de PJ -->
                <?php if ($canEdit): ?>
                    <?php
                    $uploader->getForm()->setAttribute('style', 'display:' . (($pj && $pj->getValidation()) ? 'none' : 'block'));
                    echo $uploader->renderForm();
                    ?>

                </div>
            </div>
        </div>
    </div>
    <!-- second bloc pour prévoir la possiblité de mettre à jour une PJ encore valide et antérieure à l'année en cours-->
<?php if ($hasValidation && $canArchiver && $pj && $pj->getIntervenant()->getAnnee()->getId() != $annee->getId()): ?>

    <div
            class="tpj <?= $obligatoire ? 'tpj-obligatoire ' : '' ?>tpj-<?= $tpj->getId() ?> panel panel-default upload-container"
            data-tpj="archive-<?= $tpj->getId() ?>"
            style="display:none;"
            id="archive-form-pj-<?= $tpj->getId() ?>"
    >
        <div class="panel-heading panel-heading-h3">
            <h3>
                <?php if ((!$hasValidation && $canValider && $pj && $pj->getIntervenant()->getAnnee()->getId() == $annee->getId()) || ($hasValidation && $canDevalider && $pj && $pj->getIntervenant()->getAnnee()->getId() == $annee->getId())): ?>
                    <div class="validation-bar pull-right"
                         data-url="<?= $this->url('piece-jointe/intervenant/validation', ['typePieceJointe' => $tpj->getId()], [], true) ?>">
                        <?= $this->partial('application/piece-jointe/validation', compact('pj')) ?>
                    </div>
                <?php endif; ?>

                <!--Infos sur document fourni sur une autre année-->
                <?=
                $type;
                ?>
                <!--Info sur document facultatif-->
                <?=
                !$obligatoire ? '<span style="font-size:0.6em;"> (Document facultatif)</span>' : ''
                ?>
                <br/>
            </h3>
        </div>
        <div class="panel-body">
            <div class="row">
                <div class="col-md-6">
                    <!-- Modèle de document éventuel -->
                    <?php if ($linksModelesDocs): ?>
                        <div>
                            <label>Documents à télécharger et à remplir :</label><br/>
                            <?= $this->htmlList((array)$linksModelesDocs, false, false, false) ?>
                        </div>
                    <?php endif ?>
                    <!-- Liste des fichiers déposés -->
                    <?= $uploader->renderUploadedFiles($this->url('piece-jointe/intervenant/fichier/lister', ['typePieceJointe' => $tpj->getId(), 'pieceJointe' => ''], [], true)) ?>
                </div>
                <div class="col-md-6">
                    <!-- formulaire éventuel de dépôt de PJ -->
                    <?php
                    $uploader->getForm()->setAttribute('style', 'display:block');
                    echo $uploader->renderForm();
                    ?>

                </div>
            </div>
        </div>
    </div>
<?php endif; ?>
 No newline at end of file