Commit af6e3a92 authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

Ajout du selecteur de version dans [Fichiers déposés]

parent 9165dc87
Loading
Loading
Loading
Loading
Loading
+8 −8
Changes for module/Application/src/Application/Controller/FichierTheseController.php: 8 added lines, 8 removed lines.
Original line number Diff line number Diff line
@@ -48,14 +48,8 @@ class FichierTheseController extends AbstractController implements
         */
        $needsRedirect = false;
        $queryParams = $this->params()->fromQuery();
//        // filtres
//        $etatThese = $this->params()->fromQuery($name = 'etatThese');
//        if ($etatThese === null) { // null <=> paramètre absent
//            // filtrage par défaut : thèse en préparation
//            $queryParams = array_merge($queryParams, [$name => These::ETAT_EN_COURS]);
//            $needsRedirect = true;
//        }
        // tris

        $version = $this->params()->fromQuery('version');
        $sort = $this->params()->fromQuery('sort');
        if ($sort === null) { // null <=> paramètre absent
            // tri par défaut : datePremiereInscription
@@ -78,6 +72,12 @@ class FichierTheseController extends AbstractController implements
            ->join('t.doctorant', 'd')
            ->leftJoin('f.validites', 'val')
            ->join('f.version', 'ver');
        if (isset($version) && $version !== '')
        {
            $qb->andWhere('ver.code = :version')
                ->setParameter("version" , $version);
        }


        foreach (explode('+', $sort) as $sortProp) {
            if ($sortProp === 't.titre') {
+13 −4
Changes for module/Application/view/application/fichier-these/deposes.phtml: 13 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -15,13 +15,22 @@ use Zend\Paginator\Paginator;

?>

<?php $nombreFichiers = $fichiers->getTotalItemCount(); ?>

<?php $this->headTitle($this->translate("Fichiers déposés")) ?>

<h1 class="page-header"><?php echo $this->translate("Fichiers déposés"); ?> </h1>
<h1 class="page-header">
    <?php echo $this->translate("Fichiers déposés"); ?>
    <span class="badge"><?php echo $nombreFichiers; ?></span>
</h1>


<p>
    <?php echo $fichiers->getTotalItemCount() ." ". $this->translate("fichier(s) trouvé(s)"); ?>.
</p>
<div class="pull-left">
    <?php echo $this->partial('partial/form-filtrage') ?>
</div>
<!--<div class="pull-right">-->
<!--    --><?php //echo $this->partial('partial/form-recherche', ['text' => $text]) ?>
<!--</div>-->

<table class="table table-bordered table-hovered table-condensed">
    <thead>
+49 −0
Changes for module/Application/view/application/fichier-these/partial/form-filtrage.phtml: 49 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?php

use Application\Entity\Db\These;
use Application\View\Renderer\PhpRenderer;

/**
 * @var PhpRenderer $this
 * @var string      $text
 */

/**
 * @param string $paramName
 * @param string $paramValue
 * @param array $queryParams
 * @return string
 */
$urlFiltrer = function ($paramName, $paramValue, $queryParams) {
    $queryParams[$paramName] = $paramValue;
    return $this->url('fichier/deposes', [], ['query' => $queryParams], true);
};

/**
 * Constantes définissant les codes de "version" du fichier.
 *
 * - 'VO' = Version originale
 * - 'VA' = Version d'archivage, destinée à être déposée sur la plateforme STAR
 * - 'VD' = Version de diffusion, expurgée des contenus confidentiels notamment
 * - 'VOC' = Version originale corrigée
 * - 'VAC' = Version d'archivage corrigée, destinée à être déposée sur la plateforme STAR
 * - 'VDC' = Version de diffusion corrigée, expurgée des contenus confidentiels notamment
 */

echo $this->filterPanel([
    $this->translate("Version") => [
        'paramName' => 'version',
        'paramConfig' => [
            ['value' => '',                             'label' => $this->translate(" - ") ],
            ['value' => $v = "VO",                      'label' => $this->translate("VO") ],
            ['value' => $v = "VA",                      'label' => $this->translate("VA") ],
            ['value' => $v = "VD",                      'label' => $this->translate("VD") ],
            ['value' => $v = "VOC",                     'label' => $this->translate("VOC") ],
            ['value' => $v = "VAC",                     'label' => $this->translate("VAC") ],
            ['value' => $v = "VDC",                     'label' => $this->translate("VDC") ],

        ],
        'filterUrl' => $urlFiltrer,
        'titre' => "Version du fichier",
    ],
]);
 No newline at end of file
+60 −0
Changes for module/Application/view/application/fichier-these/partial/form-recherche.phtml: 60 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?php
use Application\View\Renderer\PhpRenderer;

/**
 * @var PhpRenderer $this
 * @var string      $text
 */

$queryParams = $this->queryParams();
$urlRechercher = $this->url('fichier/deposes', [], ['query' => $queryParams], true);
$inputTitle = <<<EOS
<div class="these-search-input-help">
    Recherche possible sur 
    <ul>
        <li>le titre de la thèse</li>
        <li>le nom de l'auteur</li>
        <li>le prénom de l'auteur</li>
        <li>le nom du fichier</li>
    </ul>
</div>
EOS;

?>

<form method="post" action="<?php echo $urlRechercher ?>" class="search-form these form-inline">
    <div class="form-group">
        <label class="sr-only" for="search-input">Recherche d'une thèse (code, titre de la thèse ; code, nom, prénom de l'auteur) :</label>
        <div class="input-group">
            <div class="input-group-addon"><span class="glyphicon glyphicon-search"></span></div>
            <input type="search"
                   value="<?php echo $text; ?>"
                   name="text"
                   class="form-control"
                   id="search-input"
                   placeholder="<?php echo $this->translate("Entrez 2 caractères au moins...");?>"
                   data-content="<?php echo htmlspecialchars(
                           "<div class=\"these-search-input-help\">".
                           $inputTitle .
                           "</div>"
                   );
                   ?>">
        </div>
    </div>
    <button type="button"
            class="btn btn-default"
            onclick="$('form.these input').val('')"
            title="<?php echo $this->translate("Vider");?>" >
        <span class="glyphicon glyphicon-erase"></span>
    </button>
    <button type="submit" class="btn btn-primary">
        <?php echo $this->translate("Rechercher"); ?>
    </button>
<!--    <p class="help-block">Recherche sur le titre, le code national de l'école doctorale, l'unité de recherche de la thèse, le numéro étudiant, le nom, le prénom de l'auteur.</p>-->
</form>

<script>
    $(function() {
        $("#search-input").popover({html: true, trigger: "hover", placement: "bottom"});
    });
</script>
 No newline at end of file