Esup UNIFORM
Pages enfant
  • Organisation générale du package

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Les requêtes de recherche

Ajout d'un critère de recherche

Il est possible d'ajouter des critères de recherche (tel que la composante, thématique du diplôme, ...).

Le principe pour ajouter un critère de recherche consiste en l'adaptation de 4 fichiers XML et XSL :

  • properties/search-engine-config.${cdmfr-release}.xml
  • initdb/uv-${cdmfr-release}/constantes.${cdmfr-release}.xml
  • webpages/stylesheets/${cdmfr-release}/composants/commun.xsl
  • webpages/stylesheets/${cdmfr-release}/composants/rechercheAvancee.cdmfr.xsl

Suivent ensuite les tâches ant à exécuter :

  • ant initdb
  • ant deploy
  • ant import_dir
  • ant indexdb

Par exemple, pour le critère supplémentaire "Thématique de la mention", les ajouts à effectuer sont colorisés en bleu et sont à adapter au profil :

  • search-engine-config.xml :

<?xml version="1.0" encoding="UTF-8"?>
<search-engine>
    <folder identFolder="/CDM/program[1]/@id">
        <communs-indexes>
            <index name="domaine"
               terms="/CDM/program[1]/habilitation/domainName/fixedDomain"
               keyword="true" />
            <index name="diplome"
               terms="/CDM/program[1]/qualification/degree/@degree"
               keyword="true" />
           <index name="intituleSort"
               terms="/CDM/program[1]/programName/text[not(@language)]" />
           <index name="titleSort"
                terms="/CDM/program[1]/programName/text[@language='en-EN']" />
            <!-- Ajout Critère de recherche = Thematique de la mention -->
            <index name="thematiqueMention"
                terms="/CDM/program[1]/habilitation/field/fieldName/free/text/text()"
                keyword="true" />
    
        </communs-indexes>
    <languages defaultLang="fr-FR">
            [...]
                <by index="intituleSort" />
                <by index="thematiqueMention" />
            </sort>
        </language>
        <language name="en-EN">
           [...]
                <by index="titleSort" />
                <by index="thematiqueMention" />
            </sort>
        </language>
    </languages>
</search-engine>

 

  • constantes.xml

<thematiqueMention>
      <data id="SAPAS" import="SAPAS">
          <value lang="fr-FR">ACTIVITÉ PHYSIQUE ADAPTÉE ET SANTÉ</value>
      </data>
      [...]
      <data id="SURAM" import="SURAM">
          <value lang="fr-FR">URBANISME ET AMENAGEMENT</value>
      </data>
      <data id="SMATNANO" import="SMATNANO">
          <value lang="fr-FR">USTH Matériaux et nanotechnologie</value>
      </data>
</thematiqueMention>

 

  • commun.xsl

<!-- recuperation des param pour les valeurs des formulaires -->
  <xsl:param name="domaine" />
  <xsl:param name="diplome" />
  <xsl:param name="ufr" />
  <xsl:param name="title" />
  <xsl:param name="intitule" />
  <xsl:param name="thematiqueMention" />
  <xsl:param name="basket" select="0" />

 

  • rechercheAvancee.cdmfr.xsl

!-- Ajout : Recherche par thematique -->
     <div class="ligne_form">
        <label for="__thematiqueMention">Thématique : </label>
           <select size="1" name="__thematiqueMention">
              <option value=""><xsl:if test="$thematiqueMention=''"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if>Toutes les thématiques</option>
                <xsl:for-each select="/CDM/properties/infoBlock/extension/uniform/constantes/thematiqueMention/data"> 
                    <option value="{./@id}">
                         <xsl:if test="./@id=$thematiqueMention"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if>
                            <xsl:value-of select="./value[@lang=$_lang]"/>
                    </option>
                </xsl:for-each>
           </select>
     </div>

 

Les écrans

Les pages par défaut

...