etudiants:2014:jeremy.habit:docuwiki

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
etudiants:2014:jeremy.habit:docuwiki [2014/12/29 15:29] – [Code] jeremy.habitetudiants:2014:jeremy.habit:docuwiki [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1
Ligne 261: Ligne 261:
 </sxh> </sxh>
  
 +== Vue vRecherche ==
  
-===== Design =====+<sxh php;title:vRecherche.php> 
 +<?php echo $script_foot;?> 
 +<div id="titleRecherche" class="titleRecherche"> 
 + RECHERCHE 
 +</div>
  
-^ Avant^ Aprés^ +<br> 
-|{{:etudiants:2014:julien.couture:gerer1.png?300|}}|{{:etudiants:2014:julien.couture:gerer2.png?300|}}|+<form name="formSearch" id="formSearch"
 +<div class="bloc_search"> 
 +  
 + <img title="lancer la recherche" id="btnSubmit" class="imgSubmit" src="<?php echo ressource_url("search.png");?>"/>  
 + <input title="saisir le mot clef" type="search" name="searchBar" id="searchBar" class="input_search2" /> 
 +  
 + <div id="CheckBoxContent"> 
 + <div>   
 +    <input onclick="checkToutOnly()" type="checkbox" name="Recherche[]" checked="checked" value="tout" id="tout" >   
 +    <label for="tout" title="rechercher tout">Tout</label>   
 + </div> 
 + <div>   
 +    <input onclick="uncheckTout()" type="checkbox" name="Recherche[]" value="groupe" id="groupe">   
 +    <label for="groupe" title="rechercher dans les groupes">Groupe</label>   
 + </div>   
 + <div>   
 +    <input onclick="uncheckTout()" type="checkbox" name="Recherche[]" value="document" id="document">   
 +    <label for="document" title="rechercher dans les documents">Document</label>   
 + </div>   
 + <div>   
 +    <input onclick="uncheckTout()" type="checkbox" name="Recherche[]" value="utilisateur" id="utilisateur">   
 +    <label for="utilisateur" title="rechercher dans les utilisateurs">Utilisateur</label>   
 + </div>   
 + <div>   
 +    <input onclick="uncheckTout()" type="checkbox" name="Recherche[]" value="theme" id="theme">   
 +    <label for="theme" title="rechercher dans les thèmes">Thème</label>   
 + </div> 
 + <div>   
 +    <input onclick="uncheckTout()" type="checkbox" name="Recherche[]" value="domaine" id="domaine">   
 +    <label for="domaine" title="rechercher dans les domaines">Domaine</label>   
 + </div> 
 + <div>   
 +    <input onclick="uncheckTout()" type="checkbox" name="Recherche[]" value="monde" id="monde">   
 +    <label for="monde" title="rechercher dans les mondes">Monde</label>   
 + </div>  
 + </div>  
 +</div> 
 +</form> 
 + 
 + 
 +<div id="SearchResultContainer" class="SearchResultContainer"> 
 + 
 +</div> 
 + 
 +</sxh> 
 + 
 +== Vue vResultatRecherche== 
 + 
 +<sxh php;title:vResultatRecherche.php> 
 +<?php echo $script_foot; 
 +if (empty($tablesNeeded)){ 
 + ?> 
 + <div class="NoResult"> 
 + <img src="<?php echo ressource_url("sad.png");?>"/> 
 + <h1 class="recherche">Oups ! Aucun résultat pour " <?php echo $searched;?> " !</h1> 
 + </div> 
 + <?php 
 +
 +else{ 
 + ?> 
 + <h1 class="recherche">Résultat(s) pour " <?php echo $searched;?> " :</h1> 
 + <div class="accordion"> 
 + <?php 
 + if (in_array("document",$tablesNeeded)){ 
 + ?> 
 + <div class="accordeon_document" title="ouvrir le volet Document"> 
 + <h1 class="accordeon_title">Document</h1> 
 + <span  class="nbResult"><?php echo sizeof($documents)." résultat (s)";?></span> 
 + </div> 
 + <div class="contenu_type"> 
 + <?php 
 + foreach ($documents as $doc){ 
 + echo "<div class='eltRes'><div id='".$doc->getId()."' class='eltRes_text_doc'>".$doc->getTitre()."</div></div>"; 
 +
 + ?> 
 + </div> 
 + <?php 
 + }  
 + if (in_array("groupe",$tablesNeeded)){ 
 + ?> 
 + <div class="accordeon_groupe" title="ouvrir le volet Groupe"> 
 + <h1 class="accordeon_title">Groupe</h1> 
 + <span  class="nbResult"><?php echo sizeof($groupes)." résultat (s)";?></span> 
 + </div> 
 + <div class="contenu_type"> 
 + <?php  
 + foreach ($groupes as $grp){ 
 + echo "<div class='eltRes'><div id='".$grp->getId()."' class='eltRes_text_grp'>".$grp->getLibelle()."</div></div>";  
 +
 + ?> 
 + </div> 
 + <?php 
 + }  
 + if (in_array("domaine",$tablesNeeded)){ 
 + ?> 
 + <div class="accordeon_domaine" title="ouvrir le volet Domaine"> 
 + <h1 class="accordeon_title">Domaine</h1> 
 + <span  class="nbResult"><?php echo sizeof($domaines)." résultat (s)";?></span> 
 + </div> 
 + <div class="contenu_type"> 
 + <?php  
 + foreach ($domaines as $dom){ 
 + echo "<div class='eltRes'><div id='".$dom->getId()."' class='eltRes_text_dom'>".$dom->getLibelle()."</div></div>";  
 +
 + ?> 
 + </div> 
 + <?php 
 + }  
 + if (in_array("utilisateur",$tablesNeeded)){ 
 + ?> 
 + <div class="accordeon_utilisateur" title="ouvrir le volet Utilisateur"> 
 + <h1 class="accordeon_title">Utilisateur</h1> 
 + <span  class="nbResult"> 
 + <?php echo sizeof($utilisateurs)." résultat (s)";?> 
 + </span> 
 + </div> 
 + <div class="contenu_type"> 
 + <?php  
 + foreach ($utilisateurs as $user){ 
 + echo "<div class='eltRes'><div id='".$user->getId()."' id='".$user->getNom()."' class='eltRes_text_user'>".$user->getNom()." ".$user->getPrenom()."</div></div>";  
 +
 + ?> 
 + </div> 
 + <?php 
 +
 + if (in_array("theme",$tablesNeeded)){ 
 + ?> 
 + <div class="accordeon_theme" title="ouvrir le volet Thème"> 
 + <h1 class="accordeon_title">Thème</h1> 
 + <span  class="nbResult"><?php echo sizeof($themes)." résultat (s)";?></span> 
 + </div> 
 + <div class="contenu_type"> 
 + <?php  
 + foreach ($themes as $thm){ 
 + echo "<div class='eltRes'><div id='".$thm->getId()."' class='eltRes_text_thm'>".$thm->getLibelle()."</div></div>";  
 +
 + ?> 
 + </div> 
 + <?php 
 +
 + if (in_array("monde",$tablesNeeded)){ 
 + ?> 
 + <div class="accordeon_monde" title="ouvrir le volet Monde"> 
 + <h1 class="accordeon_title">Monde</h1> 
 + <span  class="nbResult"><?php echo sizeof($mondes)." résultat (s)";?></span> 
 + </div> 
 + <div class="contenu_type"> 
 + <?php  
 + foreach ($mondes as $world){ 
 + echo "<div class='eltRes'><div id='".$world->getId()."' class='eltRes_text_world'>".$world->getLibelle()."</div></div>";  
 +
 + ?> 
 + </div> 
 + <?php 
 + }  
 + ?> 
 + </div> 
 + <?php 
 +
 +?> 
 + 
 +<script> 
 +$(function() { 
 +    $( ".accordion" ).accordion({ 
 +      collapsible: true, 
 +      animate: 500, 
 +      heightStyle: "content", 
 +      active: null 
 +    }); 
 +}); 
 +</script> 
 + 
 +</sxh> 
 + 
 +== Vue vExecSearch== 
 + 
 +<sxh php;title:vExecSearch.php> 
 +<?php echo @$script_foot; 
 +switch ($type){ 
 + case "groupe":?> 
 + <h1 class="recherche"><span class="titleElt"><?php echo $eltInfo[0]->getLibelle();?></span><span class="eltType_grp"> ( <?php echo $type;?> ) </span></h1> 
 + <?php if (empty($lstSubElt)){ 
 + ?> 
 + <div class="NoResult"> 
 + <img src="<?php echo ressource_url("sad.png");?>"/> 
 + <h1 class="recherche">Oups ! Aucun utilisateurs n'est présent dans le groupe " <?php echo $eltInfo[0]->getLibelle();?> " !</h1> 
 + </div> 
 + <?php 
 + }else{  
 + ?> 
 + <div class="accordion"> 
 + <div class="accordeon_utilisateur" title="ouvrir le volet Utilisateur"> 
 + <h1 class="accordeon_title">Utilisateurs du groupe</h1> 
 + <span  class="nbResult"><?php echo sizeof($lstSubElt)." résultat (s)";?></span>  
 + </div> 
 + <div class="contenu_type"> 
 + <?php 
 + foreach($lstSubElt as $user){ 
 + echo "<div class='eltRes'><div id='".$user->getId()."' class='eltRes_text_user'>".$user->getNom()." ".$user->getPrenom()."</div></div>"; 
 + }  
 + ?>  
 + </div> 
 + </div> 
 + <?php 
 +
 + break; 
 + case "document":?> 
 + <h1 class="recherche"><span class="titleElt"><?php echo $eltInfo[0]->getTitre();?></span><span class="eltType_doc"> ( <?php echo $type;?> ) </span></h1> 
 + <?php if(empty($lstPartie)){?>  
 + <div class="NoResult"> 
 + <img src="<?php echo ressource_url("sad.png");?>"/> 
 + <h1 class="recherche">Oups ! Aucune partie n'est présente dans le document " <?php echo $eltInfo[0]->getTitre();?> " !</h1> 
 + </div> 
 + <?php 
 + }else{ 
 + ?> 
 + <div> 
 + <?php 
 + foreach($lstPartie as $partie){ 
 + ?> 
 + <div class="titlePartie"><?php echo $partie->getTitre();?></div> 
 + <div class="contenuPartie"> 
 + <?php echo $partie->getContenu();?> 
 + </div> 
 + <?php 
 +
 + ?> 
 + </div> 
 + <?php  
 +
 + break; 
 + case "domaine":?> 
 + <h1 class="recherche"><span class="titleElt"><?php echo $eltInfo[0]->getLibelle();?></span><span class="eltType_dom"> ( <?php echo $type;?> ) </span></h1> 
 + <?php if (empty($lstSubElt)){ 
 + ?> 
 + <div class="NoResult"> 
 + <img src="<?php echo ressource_url("sad.png");?>"/> 
 + <h1 class="recherche">Oups ! Aucun thème n'est présent dans le domaine " <?php echo $eltInfo[0]->getLibelle();?> " !</h1> 
 + </div> 
 + <?php 
 + }else{  
 + ?> 
 + <div class="accordion"> 
 + <div class="accordeon_theme" title="ouvrir le volet Thème"> 
 + <h1 class="accordeon_title">Thèmes du domaine</h1> 
 + <span  class="nbResult"><?php echo sizeof($lstSubElt)." résultat (s)";?></span>  
 + </div> 
 + <div class="contenu_type"> 
 + <?php 
 + foreach($lstSubElt as $thm){ 
 + echo "<div class='eltRes'><div id='".$thm->getId()."' class='eltRes_text_thm'>".$thm->getLibelle()."</div></div>"; 
 + }  
 + ?>  
 + </div> 
 + </div> 
 + <?php 
 +
 + break; 
 + case "utilisateur":?> 
 + <h1 class="recherche"><span class="titleElt"><?php echo $eltInfo[0]->getNom()." ".$eltInfo[0]->getPrenom();?></span><span class="eltType_user"> ( <?php echo $type;?> ) </span></h1> 
 + <div> 
 + </div> 
 + <?php 
 + break; 
 + case "theme":?> 
 + <h1 class="recherche"><span class="titleElt"><?php echo $eltInfo[0]->getLibelle();?></span><span class="eltType_thm"> ( <?php echo $type;?> ) </span></h1> 
 + <?php if (empty($lstSubElt)){ 
 + ?> 
 + <div class="NoResult"> 
 + <img src="<?php echo ressource_url("sad.png");?>"/> 
 + <h1 class="recherche">Oups ! Aucun document n'est présent dans le thème " <?php echo $eltInfo[0]->getLibelle();?> " !</h1> 
 + </div> 
 + <?php 
 + }else{  
 + ?> 
 + <div class="accordion"> 
 + <div class="accordeon_document" title="ouvrir le volet Document"> 
 + <h1 class="accordeon_title">Documents du thème</h1> 
 + <span  class="nbResult"><?php echo sizeof($lstSubElt)." résultat (s)";?></span>  
 + </div> 
 + <div class="contenu_type"> 
 + <?php 
 + foreach($lstSubElt as $doc){ 
 + echo "<div class='eltRes'><div id='".$doc->getId()."' class='eltRes_text_doc'>".$doc->getTitre()."</div></div>"; 
 + }  
 + ?>  
 + </div> 
 + </div> 
 + <?php 
 +
 + break; 
 + case "monde":?> 
 + <h1 class="recherche"><span class="titleElt"><?php echo $eltInfo[0]->getLibelle();?></span><span class="eltType_world"> ( <?php echo $type;?> ) </span></h1> 
 + <?php if (empty($lstSubElt)){ 
 + ?> 
 + <div class="NoResult"> 
 + <img src="<?php echo ressource_url("sad.png");?>"/> 
 + <h1 class="recherche">Oups ! Aucun domaine n'est présent dans le monde " <?php echo $eltInfo[0]->getLibelle();?> " !</h1> 
 + </div> 
 + <?php 
 + }else{  
 + ?> 
 + <div class="accordion"> 
 + <div class="accordeon_domaine" title="ouvrir le volet Domaine"> 
 + <h1 class="accordeon_title">Domaines du monde</h1> 
 + <span  class="nbResult"><?php echo sizeof($lstSubElt)." résultat (s)";?></span>  
 + </div> 
 + <div class="contenu_type"> 
 + <?php 
 + foreach($lstSubElt as $dom){ 
 + echo "<div class='eltRes'><div id='".$dom->getId()."' class='eltRes_text_dom'>".$dom->getLibelle()."</div></div>"; 
 + }  
 + ?>  
 + </div> 
 + </div> 
 + <?php 
 +
 + break; 
 +
 +?> 
 + 
 +<script> 
 +$(function() { 
 +    $( ".accordion" ).accordion({ 
 +      collapsible: true, 
 +      animate: 500, 
 +      heightStyle: "content", 
 +      active: null 
 +    }); 
 +}); 
 +</script> 
 +</sxh> 
 + 
 +== Jquery  == 
 + 
 +<sxh php;title:recherche.js> 
 +function uncheckTout()  
 +{  
 + idTheme=document.getElementById('theme'); 
 + idGroupe=document.getElementById('groupe'); 
 + idDocument=document.getElementById('document'); 
 + idUtilisateur=document.getElementById('utilisateur'); 
 + idDomaine=document.getElementById('domaine'); 
 + idTout=document.getElementById('tout'); 
 + idMonde=document.getElementById('monde'); 
 +  
 + // si tous les boxes sont cochées, alors on les décoches et on coche "tout" 
 + if(idMonde.checked==true && idTheme.checked==true && idUtilisateur.checked==true && idDocument.checked==true && idGroupe.checked==true && idDomaine.checked==true){ 
 + idTout.checked=true; 
 + idMonde.checked=false; 
 + idTheme.checked=false; 
 + idGroupe.checked=false; 
 + idDocument.checked=false; 
 + idUtilisateur.checked=false; 
 + idDomaine.checked=false; 
 + }else{ // sinon on décoche "tout" 
 + document.getElementById('tout').checked=false; 
 +
 +  
 + if (idMonde.checked==false && idTheme.checked==false && idUtilisateur.checked==false && idDocument.checked==false && idGroupe.checked==false && idDomaine.checked==false && idTout.checked==false){ 
 + idTout.checked=true; 
 +
 +  
 +
 + 
 +function checkToutOnly()  
 +{  
 + idTheme=document.getElementById('theme'); 
 + idGroupe=document.getElementById('groupe'); 
 + idDocument=document.getElementById('document'); 
 + idUtilisateur=document.getElementById('utilisateur'); 
 + idDomaine=document.getElementById('domaine'); 
 + idTout=document.getElementById('tout'); 
 + idMonde=document.getElementById('monde'); 
 +  
 + idGroupe.checked=false; 
 + idDocument.checked=false; 
 + idUtilisateur.checked=false; 
 + idDomaine.checked=false; 
 + idTheme.checked=false; 
 + idMonde.checked=false; 
 +  
 + if (idMonde.checked==false && idTheme.checked==false && idUtilisateur.checked==false && idDocument.checked==false && idGroupe.checked==false && idDomaine.checked==false && idTout.checked==false){ 
 + idTout.checked=true; 
 +
 +  
 +
 + 
 +// permet la simulation du click sur le bouton recherche via la touche Entrée 
 +document.onkeypress = function (e) { 
 + var enterpressed = e? e.which == 13: window.event.keyCode == 13; 
 + if (enterpressed ){ 
 + document.getElementById('btnSubmit').click(); 
 + return false; 
 +
 +
 +</sxh> 
 +===== Design/ Aperçu ===== 
 + 
 +Ci-dessous, on peut voir les différents résultats suite à la recherche "m" en ayant coché "tout". Remarquez qu'il n'y aucun résultat concernant les thèmes et qu'ainsi il n'y a pas de tableau Thèmes avec 0 résultats ce qui aurait été inutile. 
 + 
 +{{:etudiants:2014:jeremy.habit:firstcapture.png|}} 
 + 
 +Et là, ci-dessous, on peut voir les différents résultats suite à la recherche "m" en ayant coché cette fois ci "Groupe", "Document" et "Utilisateur". Ainsi, les résultas concernant les domaines et les mondes ne sont pas affichés contrairement à la première image. 
 + 
 +{{:etudiants:2014:jeremy.habit:secondcapture.png|}} 
 + 
 +Maintenant voici ce qui se passe au click d'un monde : on a cliqué sur le monde Informatique, on affiche les domaines présents dans ce monde soit Analyse et Développement. 
 + 
 +{{:etudiants:2014:jeremy.habit:mondecapture.png|}} 
 + 
 +Et à partir d'ici, si on click sur le domaine Analyse, voici ce qui se passe :  on affiche les thèmes présents dans ce domaine soit seulement Analyse fonctionnelle (et ainsi de suite) 
 + 
 +{{:etudiants:2014:jeremy.habit:domcapture.png|}} 
 + 
 +Exemple pour un document : on clique sur le document Document trivia, on affiche alors les parties des documents dans l'ordre avec leur titre et leur contenu : 
 + 
 +{{:etudiants:2014:jeremy.habit:doccapture.png|}}
  • etudiants/2014/jeremy.habit/docuwiki.1419863376.txt.gz
  • Dernière modification : il y a 6 ans
  • (modification externe)