Guest User

Untitled

a guest
May 23rd, 2019
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 45.49 KB | None | 0 0
  1. <style>
  2.  
  3. /* Gestion des éllipses sur les boutons du filtre */
  4.  
  5. .pull-left{
  6.     overflow: hidden;
  7.     text-overflow: ellipsis;
  8. }
  9.  
  10. .responsive-reini-filtres {
  11.     font-size: inherit;
  12. }
  13.  
  14. td p{
  15.     overflow: hidden;
  16. text-overflow: ellipsis;
  17. }
  18. </style>
  19.  
  20.  
  21. <?php
  22. /*
  23. --------------------------
  24. Ajouter une colonne :
  25. --------------------------
  26.  
  27. 1-> vue : modifier le contenu du tableau à thead + tobdy (attention les id des th et td doivent être dans l'ordre (th1,th2,th3)
  28. 2-> vue : JS => modifier le tableau dimCol qui contient les noms des colonnes + leur % d'espacement lors du chargement de la page
  29.           L'ordre des éléments de cet array doit être le même que les colonnes du tableau
  30.  
  31. 3-> Ajax Post Controller : méthode support_data_submit(), ajouter dans le tableau $data à la fin de la méthode la donnée que l'on souhaite envoyer => elle remplira la colonne en question
  32.  
  33. 4-> vue : JS => méthode recupData() doit afficher les éléments correspondants, ajouter une ligne $("#numDelaCol" + t).html(data[i].donneeRenvoye) avec comme "donneeRenvoye" ce que l'on a mis dans l'ajax post controller
  34. 5-> inquiry_helper => méthode libelleToBD() ajouter un case pour la nouvelle col avec en "case" le nom de la colonne du tableau dimCol de la vue (JS), en return : le nom de la colonne de la db associé.
  35. 6-> Agentmanager => méthode verifColDels() ajouter de même au tableau target le nom de la colonne de l'array JS dimCol
  36. 7-> Sur cette vue, changer si besoin la variable colonnesAColorier (dans le JS)
  37. --------------------------
  38. Ajouter un filtre :
  39. --------------------------
  40.  
  41. Pour en ajouter, mettre à jour le code HTML
  42. Mettre à  jour les variables nbLists (dans le controller) et optionsList* (dans le code js)
  43. Mettre à  jour la méthode optionsManager dans le code JS
  44. Mettre à  jour les options de la page ajax_post_controller/support_data_submit
  45. Mettre à  jour le recherche du nombre de résultats de la page inquiryManager/nombreTotalInquiry
  46. Modifier l'objet PHP FiltreAgent
  47.  
  48. */
  49. $filtreEnCours = $filtreDePage->filtreEnCours();
  50. $arrayFiltreEnCours =  (array) $filtreDePage->filtreEnCours();
  51. $arrayFiltreEnCoursEncode = json_encode($arrayFiltreEnCours);
  52.  
  53. $agent=unserialize($this->session->userdata('user'));    
  54. $type='';
  55. if (isset($TOUS)) $type ='TOUS';
  56. if (isset($INC)) $type ='INC';
  57. if (isset($DT)) $type ='DT';
  58. if (isset($CQ)) $type ='CQ';
  59. if (isset($DP)) $type ='DP';
  60. if (isset($PB)) $type ='PB';
  61. ?>
  62.  
  63. <script src="<?php echo js_url('colResizable-1.5.min'); ?>"></script>
  64. <div id="contenu" class="right-container-flex"  >
  65.  
  66.     <!-------------------->    
  67.     <!----  FILTRES  ----->
  68.     <!-------------------->
  69.     <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 control-group" style="background-color:white;padding-bottom:15px; padding-top: 15px;padding-left:0;padding-right:0;">
  70.                                                                
  71.         <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" id="block_filtres" style="margin-bottom: 20px;"> <!-- bloc filtre -->
  72.             <div class="col-lg-10" style="justify-content: left!important;">
  73.                 <form name="filtre" class="filtre col-lg-12" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">             
  74.                
  75.                 <?php $appartenance = $filtreDePage->filtreEnCours()->appartenance();?>    
  76.                 <div class="col-lg-3">                     
  77.                     <select id="appartenanceID" name="appartenance" class="custom-select"  data-style="btn-primary plusPetitBoutons" onchange="filtre.submit()" >                  
  78.                         <option >Toutes appartenances</option>                                 
  79.                         <?php if ($agent->id() != 'IU:VISITEUR') : // Le visiteur n'a pas de tickets ?>
  80.                         <option>Mes tickets </option>
  81.                         <?php endif; ?>
  82.                         <?php if ($groupes != null) : ?>
  83.                         <optgroup label="Tickets de mes groupes">
  84.                             <option>Tous mes groupes</option>                                  
  85.                             <?php foreach ($groupes as $groupe) : ?>
  86.                             <option><?php echo $groupe->displayName(); ?></option>                       
  87.                             <?php endforeach; ?>                                                                   
  88.                         </optgroup>
  89.                       <?php endif; ?>
  90.                     </select>  
  91.                 </div>
  92.  
  93.                 <?php $etat = $filtreDePage->filtreEnCours()->etat(); ?>
  94.                 <div class="col-lg-3"> 
  95.                     <select id="etatID" name="etat" class="custom-select"  data-style="btn-primary plusPetitBoutons" onchange="filtre.submit()" >
  96.                         <option>Tous les états</option>
  97.                         <option>Ouverts</option>
  98.                         <option value="P">En attente client/éditeur</option>
  99.                         <option>Fermés</option>
  100.                     </select>
  101.                 </div>
  102.        
  103.                 <?php $priorite = $filtreDePage->filtreEnCours()->priorite(); ?>
  104.                 <div class="col-lg-3"> 
  105.                 <select id="prioriteID" name="priorite" class="custom-select" onchange="filtre.submit()" > 
  106.                     <option value ="Toutes les priorités">Toutes les priorités</option>
  107.                     <option value="0.Urgente" style="background-color:red">Urgentes(0)</option>
  108.                     <option value="1.Haute" style="background-color:orange" >Hautes(1)</option>
  109.                     <option value="2.Moyenne" >Moyennes(2)</option>
  110.                     <option value="3.Basse">Basses(3)</option>
  111.                 </select>
  112.                 </div>
  113.  
  114.                 <?php if (!empty($expertises)) :  ?>
  115.                 <?php $produit = $filtreDePage->filtreEnCours()->produit(); ?>
  116.                 <div class="col-lg-3"> 
  117.                 <select id="produitID" name="produit" class="custom-select"  data-style="btn-primary plusPetitBoutons" onchange="filtre.submit()" >
  118.                     <option>Tous les produits</option>
  119.                     <optgroup label="Produit particulier">
  120.                         <option>Tous mes produits</option>
  121.                         <?php foreach ($expertises as $exp) : ?>
  122.                         <option><?php echo $exp->productId(); ?></option>
  123.                         <?php endforeach; ?>
  124.                     </optgroup>
  125.                 </select>
  126.                     <?php endif; ?>
  127.  
  128.             </div>
  129.         </div>
  130.  
  131.         <div class="col-lg-2">
  132.             <?php $dateCreation = $filtreDePage->filtreEnCours()->dateCreation(); //echo 'option active des dates ' . $optActive;?>
  133.  
  134.                     <div id="date-input" class="input-group">
  135.                         <?php if(isset($desk)){ ?>
  136.                             <input disabled name="dateCreation" onChange="$(this).closest('form').submit();" type="text" class="form-control" placeholder="Créé le" value="<?php if (($dateCreation != null) and ($dateCreation !=""))echo $dateCreation ;?>" style="font-size:12px" >
  137.                             <div class="input-group-append bg-primary" style="border-radius: 0 5px 5px 0;">
  138.                                 <span class="input-group-text bg-primary" style="color:white;border-radius: 0 5px 5px 0;"><i class="fas fa-calendar"></i></span>
  139.                             </div>
  140.                         <?php } else { ?>
  141.                             <input name="dateCreation" onChange="$(this).closest('form').submit();" type="text" class="form-control" placeholder="Créé le" value="<?php if (($dateCreation != null) and ($dateCreation !=""))echo $dateCreation ;?>"    style="font-size:12px" >     
  142.                             <div class="input-group-append bg-primary" style="border-radius: 0 5px 5px 0;">
  143.                                 <span class="input-group-text bg-primary" style="color:white;border-radius: 0 5px 5px 0;"><i class="fas fa-calendar"></i></span>
  144.                             </div>
  145.                         <?php } ?>
  146.                     </div>                                                                 
  147.  
  148.             </div>
  149.             </form>
  150.         </div>
  151.  
  152.  
  153.  
  154. <div class="background-filtres" style="background:#eee;padding: 0;">
  155.                 <!-- Icones des filtres -->
  156.     <div class="row">
  157.         <form name="modifier" class="form-inline col-lg-6" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">       
  158.            
  159.             <div id="zoneFiltre" style="width:100%;padding-top:10px;padding-right:10%">
  160.                 <select id="selectFiltre" class="custom-select" onchange="modifier.submit()">
  161.             <?php  if (count((array) $agent->filtres())<=0) :   ?>
  162.                     <option selected="selected">--Aucun filtre n'est enregistré</option>
  163.             <?php else : ?>
  164.                     <!-- FILTRE ACTIF -->
  165.                         <!-- si le filtre actuel est enregistré-->
  166.                         <?php  if ($agent->isFiltreAgent($filtreDePage->filtreEnCours())) { ?>
  167.                             <!-- si c'est le filtre actuel-->
  168.  
  169.                                 <option><?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?></option>
  170.  
  171.                                     <optgroup label="Filtre actif :">
  172.                                         <option disabled><?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?></option>
  173.                         <?php  } else {
  174.                             echo '<option>-- Choisissez un filtre --</option>';
  175.                         } ?>   
  176.                        
  177.                                 <!-- MES COMBINAISONS DE FILTRES-->
  178.                                     <optgroup label="Mes combinaisons de filtres :">
  179.                                         <?php foreach ($agent->filtres() as $f) : ?>   
  180.                                             <!-- si ce n'est pas le filtre actuel-->
  181.                                             <?php if (!$f->memeFiltre($filtreDePage->filtreEnCours())) : ?>
  182.                                                 <!-- si ce n'est pas le filtre préféré-->
  183.                                                 <?php if (!$f->memeFiltre($agent->filtrePrefere())) { ?>
  184.                                                         <option value="<?php echo $f->appartenance() . "--" . $f->etat() . "--" . $f->priorite() . "--" . $f->produit() . "--" . $f->dateCreation(); ?>" ><?php echo $f->libelle(); ?></option>
  185.                                                 <?php } else { ?>
  186.                                                         <option value="<?php  echo $f->appartenance() . "--" . $f->etat() . "--" . $f->priorite() . "--" . $f->produit() . "--" . $f->dateCreation(); ?>"><i class="fas fa-star"></i><?php echo $f->libelle(); ?></option> 
  187.                                                 <?php } ?>
  188.                                                 <?php endif; ?>
  189.                                         <?php endforeach;?>
  190.  
  191.                                 </div>
  192.                 </select>
  193.                 <br /><br />
  194.             <?php  endif; ?>
  195.         </form>
  196.  
  197.     </div> <!-- fin du bloc filtre -->
  198.  
  199.  
  200.     <div class="col-lg-3 col-md-4 col-xs-5" style=" z-index: 5; padding-left: 20px; padding-top: 10px;" id="filtres_boutons">  
  201.            
  202.         <?php if (get_class($filtreDePage->filtreEnCours()) == "Filtre") : ?>
  203.                     <!-- reinitialiser les filtres-->  
  204.                     <form name="reinitialiser" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST" style=" float: left;"> 
  205.                         <a style="width: 37px; height: 37px;"data-placement="top" data-toggle="tooltip" id="resetFiltres" onclick="reinitialiser.submit()" title="Réinitialiser les filtres" class="responsive-reini-filtres btn btn-primary"><i style="color:white" class="fa fa-times"></i></a>
  206.                         <input type="hidden" name="reinitialiser" value="">
  207.                     </form>
  208.                     <!--rétablir les filtres précédents-->
  209.                 <?php if (isset($indic) or isset($modif)) : ?>
  210.                     <a data-placement="top" data-toggle="tooltip" id="filtresPrec" title="Rétablir mes filtres précédents"  href="#" class="disabled responsive-reini-filtres btn  btn-secondary"><i class="fas fa-undo"></i></a>   
  211.                 <?php endif; ?>
  212.         <?php endif; ?>
  213.                 <form name="base" class="form-inline" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
  214.                    
  215.                 <!--si filtre n'est pas enregistré-->
  216.                 <?php if (!$agent->isFiltreAgent($filtreDePage->filtreEnCours())) : ?>
  217.                
  218.                             <a class="responsive-reini-filtres btn btn-info"
  219.                                 tabindex="0"
  220.                                 id="enregistrerFiltre"     
  221.                                 style="width: 37px;height: 37px;margin: 0 5px;"                
  222.                                 data-toggle='popover'    
  223.                                 data-html='true'
  224.                                 title="Enregistrer le filtre"  
  225.                                 data-content ='Saisissez un libellé associé au filtre que vous voulez enregistrer :
  226.                                             <div class="form-check">
  227.                                                 <label class="form-check-label"></label>
  228.                                                 <input maxlength="<?php echo Filtre::$tailleMaxLibelle; ?>" type="text" id="libelle" style="width:100%" class="form-control">
  229.                                                 <br />
  230.                                                 <br />
  231.                                             </div>
  232.                                             <div class="centre">
  233.                                                 <a class="btn btn-success ladda-button" data-style="expand-left" id="addFiltre"><span class="ladda-label text-white">Ajouter</span></a>
  234.                                             </div>'>
  235.                                 <i class="far fa-save"style="font-size:14px"></i>
  236.                             </a>
  237.                
  238.                 <?php else : ?>
  239.                        
  240.                         <a class="responsive-reini-filtres btn btn-danger"
  241.                        
  242.                             tabindex="0"
  243.                             id="deleteFiltre"                
  244.                             data-toggle="popover"
  245.                             data-trigger="click"
  246.                             data-html="true"
  247.                             title="Supprimer le filtre"  
  248.                             style="width: 37px;height: 37px; background-color: rgb(190,0,0);margin: 0 5px;"
  249.                             data-content ="Confirmez-vous la suppression de l'enregistrement pour ces filtres ?
  250.                                             <br /><br />
  251.                                             <div class='centre'>
  252.                                                 <a class='btn btn-danger ladda-button' data-style='expand-left' id='delFiltre'><span class='ladda-label text-white'>Supprimer</span></a>
  253.                                             </div>"
  254.                              href="#">
  255.                             <i class="fas fa-trash" style="font-size:14px; color:white"></i></a>
  256.                         </a>
  257.                         <a class="responsive-reini-filtres btn btn-info"
  258.                        
  259.                             tabindex="0"
  260.                             id="renameFiltre"                
  261.                             data-toggle="popover"
  262.                             data-trigger="click"
  263.                             data-html="true"
  264.                             title="Renommer le filtre"  
  265.                             style="width: 37px;height: 37px;margin: 0 5px;"
  266.                             data-content ="Saisissez un nouveau libellé associé à ce filtre :
  267.                                             <br /><br />
  268.                                             <input maxlength='<?php echo Filtre::$tailleMaxLibelle; ?>' type='text' id='libelleModifier' style='width:100%' class='form-control' value='<?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?>'/>
  269.                                             <br /><br />
  270.                                             <div class='centre'>
  271.                                                 <a class='btn btn-success ladda-button' data-style='expand-left' id='renFiltre'><span class='ladda-label text-white'>Modifier</span></a>
  272.                                             </div>"
  273.                              href="#">
  274.                             <i class="fas fa-pencil-alt" style="font-size:14pt;"></i></a>
  275.                         </a>
  276.                 <?php endif; ?>
  277.             <!-- End Icones des filtres -->
  278.         </form>  
  279.            
  280.             <?php  if ($agent->estVisiteur() and !$filtre->isFiltreDefaut()) : ?>
  281.                        
  282.                 <?php endif; ?>
  283.             <?php //endif; ?>              
  284.            
  285.            
  286.            
  287.            
  288.     </div>
  289. </div>
  290.            
  291.            
  292.             </div >
  293.            
  294.             <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 control-group row" style="; margin-bottom:20px; z-index:2; margin-top:15px;" >
  295.                 <div class="col-lg-5 col-md-8 col-sm-8 col-xs-8 control-group">
  296.                     <form name="rechercher" style="display:flex"  action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST" style=" ;" >
  297.                             <input name="recherche" style=" display:inline-block;font-size: 12pt; " type="text"  id="input_recherche" class="form-control" placeholder="Rechercher" value="<?php if (isset($rech)) echo str_replace("\"","&quot;",$rech); ?>">
  298.                             <button type="button" style="display:inline;  margin-left:5px;" id="valid_recherche" onclick="rechercher.submit()" class="btn btn-secondary">  
  299.                                 <i class="fas fa-search" style="color:white;"></i>
  300.                             </button>
  301.                             <input type="hidden" value="<?php  if(isset($fonction)) echo $fonction; else echo '';?>" name ="fonction">
  302.                             <?php if (isset($rech)) echo '<input style="display:inline;margin:0 5px;" type="button" class="btn btn-warning" id="remove_recherche" value="x" onclick="resetRecherche(); filtre.submit()" />'; ?>    
  303.                     </form>
  304.                 </div>
  305.                 <div style="display:flex;" class="col-lg-3 col-md-8 col-sm-8 col-xs-8 control-group">
  306.                     <!--<label for="recherche">Accès par numéro: </label>-->
  307.                         <input name="rechNum"type="text" style="display:inline-block;" id="input_numero" class="form-control" placeholder="Accès par numéro" value="<?php if (isset($rechNum)) echo str_replace("\"","&quot;",$rechNum); ?>">                        
  308.                         <button type="button" style="display:inline-block; margin-left:5px; " id="valid_recherche" onclick="rechercheNumero()" class="btn btn-secondary">  
  309.                             <i class="fas fa-search" style="color:white;"></i>
  310.                         </button>  
  311.                         <?php if (isset($rechNum)) echo '<input style="display:inline" type="button" class="btn btn-warning" id="remove_recherche" value="x" onclick="resetRechercheNum(); filtre.submit()"/>'; ?>     
  312.                 </div>
  313.             </div>
  314.  
  315.  
  316. <!-- Onglets incident, tous, demande prestation, demande travaux, conseil question -->
  317.  
  318.     <div class="col-lg-12"  style="margin-top:10px; padding: 0; z-index:1">
  319.         <ul id="onglets" class="nav nav-tabs">
  320.            <li class="nav-item" >
  321.                 <a href="<?php echo base_url() . 'support/index/TOUS'; ?>"  class="nav-link <?php if (isset($TOUS)) echo 'active';  else echo '' ?>">Tous</a>
  322.            </li>
  323.            <li class="nav-item" >
  324.                 <a  href="<?php echo base_url() . 'support/index/INC'; ?>" class="nav-link <?php if (isset($INC)) echo 'active';  else echo '' ?>">Incident</a>
  325.            </li>                           
  326.            <li class="nav-item" >
  327.                 <a href="<?php echo base_url() . 'support/index/DT'; ?>"   class="nav-link <?php if (isset($DT)) echo 'active'; else echo '' ?>">Demande travaux</a>
  328.            </li>
  329.            <li class="nav-item" >
  330.                 <a href="<?php echo base_url() . 'support/index/CQ'; ?>"  class="nav-link <?php if (isset($CQ)) echo 'active'; else echo '' ?>">Conseil/question</a>
  331.            </li>
  332.            <li class="nav-item" >
  333.                 <a href="<?php echo base_url() . 'support/index/DP'; ?>"  class="nav-link <?php if (isset($DP)) echo 'active'; else echo '' ?>">Prestation</a>
  334.            </li>
  335.            <li class="nav-item" >
  336.                 <a href="<?php echo base_url() . 'support/index/PB'; ?>"  class="nav-link <?php if (isset($PB)) echo 'active'; else echo '' ?>">Problème</a>
  337.            </li>
  338.  
  339.            <li class="nav-item">
  340.                 <div class="dropdown" id="cache1" style="margin-top:5px;">
  341.                     <button  class="btn btn-success btn-sm dropdown-toggle bouton-ajouter" type="button" data-toggle="dropdown" aria-expanded="false">
  342.                         <i class="fas fa-plus"></i> <span class="caret"></span>
  343.                     </button>
  344.                     <ul class="dropdown-menu dropdown1" role="menu" style="z-index:1" >
  345.                         <li role="presentation" class="dropdown-header">Ajouter une colonne</li>
  346.                         <li class="divider"></li>
  347.                     </ul>
  348.                 </div>
  349.            </li>
  350.  
  351.         </ul>
  352.     </div>
  353.  
  354.  
  355. <!-- Fin onglets incident, tous, demande prestation, demande travaux, conseil question -->
  356. <!-- Tableau & Pagination & choix nombre résultats-->
  357. <form name="tri" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST"> 
  358.     <input type="hidden" name="triDate" value="<?php echo !$triDate; ?>">
  359. </form>
  360. </div> <!-- Div pour la fermeture du background couleurs -->
  361. <div id="myTabContent" class="tab-content col-md-8 col-lg-12" style="z-index:0; white-space: nowrap">
  362.    <div class="tab-pane in active" id="home">  
  363.         <div class="col-sm-12">                     <!-- Tableau des tickets -->           
  364.                                                    
  365.             <?php if ($pagination != null): ?>
  366.            
  367.             <div id="contenuTableau" style="margin-left: -30px; margin-right: -30px;" class="table-resposnsive-lg">
  368.                 <table class="table table-fixed table-lg table-hover table-striped table-bordered table-responsive tableauSupport" id="tableVisu" style="table-layout: fixed;height:100%;overflow-y: auto;">
  369.                     <thead class="thead-dark AllLinkInWhite" style="position:sticky;top:0;">
  370.                         <tr>
  371.                             <th id="enModif" width="3px" title="Orienter" ><a class="ellip" href="#" style="display:block;">Orienter</a></th>
  372.                             <th id="T2Field1" width="3px" title="Type" ><a class="ellip" href="#" style="display:block;">Type</a></th>
  373.                             <th id="QStatus" width="3px" title="Statut 1" ><a class="ellip" href="#" style="display:block;">Statut</a></th>
  374.                             <th id="T2Field21" width="3px" title="Délai PEC (en minutes)" ><a class="ellip" href="#" style="display:block;">Délai PEC (en minutes)</a></th>
  375.                             <th id="TPriorityId" width="3px" title="Priorité" ><a class="ellip" href="#" style="display:block;">Priorité</a></th>
  376.                             <th id="QId" width="6px" title="Numéro" ><a class="ellip" href="#"  style="display:block;">Numéro</a></th>
  377.                             <th id="QCreatedOn" width="7px" title="Créé le" ><a class="ellip" style="display:inline;" href="#" onclick="tri.submit()">Créé le </a><a href="#" onclick="tri.submit()" class="<?php if($triDate) echo 'fa fa-arrow-down'; else echo 'fa fa-arrow-up';?>"></a></th>
  378.                             <th id="TInChargeDisplayName" width="15px" title="Affecté à " ><a class="ellip" href="#" style="display:block;">Affecté à </a></th>
  379.                             <th id="T2Field23" width="2px" title="Niveau d'infogérence" ><a class="ellip" href="#" style="display:block;">Niveau d'infogérence</a></th>
  380.                             <th id="QCustomerId" width="15px" title="Etablissement" ><a class="ellip" href="#" style="display:block;">Etablissement</a></th>
  381.                             <th id="QcustomerContactId" width="12px" title="Nom usuel" ><a class="ellip" href="#" style="display:block;">Interlocuteur</a></th>
  382.                             <th id="TproductDescription" width="8px" title="Produit" ><a class="ellip" href="#" style="display:block;">Produit</a></th>
  383.                             <th id="T2Field8" width="15 px" title="Module" ><a class="ellip" href="#" style="display:block;">Module</a></th>
  384.                             <th id="T2Field10" width="20px" class="texteLong"  title="Libellé court" ><a class="ellip" href="#" style="display:block;">Objet</a></th>
  385.                             <th id="Tquestion1" width="20px" class="texteLong" title="Libellé long" ><a class="ellip" href="#" style="display:block;">Description</a></th>
  386.                             <th id="isOuvert" width="6px" title="En cours de modification" ><a class="ellip" href="#" style="display:block;">En cours de modification</a></th> 
  387.                         </tr>
  388.                     </thead>
  389.                     <tbody>
  390.                    
  391.                     <?php      
  392.  
  393.                         $icones=unserialize(ICONES_ETAT);
  394.                         $t = 0;            
  395.                         foreach($listeTickets as $ticket):
  396.                             $t++;          
  397.                             $recupT = $t;
  398.                             $t= 'cd'.$t.'ab';  
  399.                     ?>                             
  400.                         <tr <?php if($ticket->isRead()==0) echo 'style="height:5px; overflow: hidden;font-weight:bold;"';?> class="<?php
  401.                             if ( $ticket->inChargeDN() == $agent->displayname() ):
  402.                                 echo 'ticketok';
  403.                                
  404.                             endif;
  405.                             if ( $ticket->inChargeDN() == $agent->userDepartment() ):
  406.                                 echo 'ticketok';
  407.                                
  408.                             endif;
  409.                        
  410.                        
  411.                        
  412.                        
  413.                         ?>" data-content="Content One" id="tr<?php echo $t; ?>">
  414.                             <!--<td><div style="display: inline;" id="enModif<?php echo $t; ?>">  </div></td>-->
  415.                            
  416.                             <td>
  417.                                 <div style="display: inline;" id="orienter<?php echo $t; ?>">
  418.                                 <?php if ($ticket->status()< 5 ): ?>
  419.                                 <a class="orient" href="#"  data-target="#orientationModal" title="Orienter" data-toggle="modal" data-ligne=<?php echo $t;?> data-titre ="Orienter " data-ticket="<?php echo $ticket->id();?>" data-produit="<?php echo $ticket->productD(); ?>" data-module="<?php echo $ticket->module(); ?>" data-lcourt="<?php echo $ticket->libCourt(); ?>"data-llong="<?php echo $ticket->libLong(); ?>"data-client="<?php echo $ticket->customerId(); ?>">                      
  420.                                 <i class="fa fa-share"  <?php if ($ticket->inChargeDN()=='HELPDESK'): ?> style="color:#03baff;" <?php else: ?>  style="color:#0071c9;"  <?php endif; ?>aria-hidden="true"></i>
  421.                                 <?php else: ?>
  422.                                 <i class="fa fa-share" title="Ticket fermé : orientation impossible" style="color:#717171;" aria-hidden="true"></i>
  423.                                 <?php endif; ?>
  424.                             </div></td>
  425.                            
  426.                             <td><div style="display: inline" id="T2Field1<?php echo $t; ?>"></div><?php echo $ticket->getIcon();?></td>                            
  427.                             <td><div style="display:inline" id="QStatus<?php echo $t; ?>"></div><?php echo $ticket->statusToIcon(($ticket->status2() === NULL || $ticket->status2() === 0) ? $ticket->status() : $ticket->status2()); //echo $icones[$ticket->status()];?></td>                        
  428.                             <td><div style="display:inline" id="T2Field21<?php echo $t; ?>"></div><?php echo $ticket->delaiPEC();?></td>                           
  429.                             <td><div style="display: inline;" id="TPriorityId<?php echo $t; ?>"></div><?php echo $ticket->prioriteToIcon($ticket->priorite()) ;?></td>                         
  430.                            
  431.                             <td><!-- data-target="#infos" <?php // echo base_url() . 'modification/ticket/M2010-03483'; ?>  onclick='pageModifTicket()'-->
  432.                                 <div style="display:inline" id="QId<?php echo $t; ?>"></div>
  433.                                 <a href="<?php echo base_url() . 'support/ouvrirTicket/'.$ticket->id(); ?>"
  434.                                 title="<?php if ($ticket->nbRappel()> 0)  echo html_entity_decode('Nombre de rappel(s) : '. $ticket->nbRappel(). '&#10;'. 'Dernier rappel(s) : '. $ticket->dernierRappel() ); else  echo $ticket->id(); ?>"
  435.                                 name ='modifTicket' class="open_modification_page" id="pop-link<?php echo $t; ?>"                              
  436.                                 style=" <?php if ($ticket->nbRappel() >= 1) echo 'color: #c94ffd; font-weight:bold'; else echo 'color: #0170c8; font-weight:bold '; ?>"                                      
  437.                                 href="#" target='_blank'
  438.                                 onclick="">
  439.                                 <?php echo str_replace("M20", "", $ticket->id());?>
  440.                             </td>
  441.                                
  442.                             <td><div style="display:inline"  id="QCreatedOn<?php echo $t; ?>"></div><p><?php echo $ticket->createdOn(); ?></td>
  443.                             <td><div class="dot-ellipsis" style="display:inline" id="TInChargeDisplayName<?php echo $t; ?>"></div><p><?php echo $ticket->inChargeDN(); ?></p></td>
  444.                             <td><div style="display:inline" id="T2Field23<?php echo $t; ?>"></div><p><?php echo $ticket->nInfoGerance(); ?></td>
  445.                             <td><div class="dot-ellipsis" style="display:inline" id="QCustomerId<?php echo $t; ?>"></div><p><?php echo $ticket->customerDN(); ?></td>
  446.                             <td><div class="dot-ellipsis" style="display:inline"   id="QcustomerContactId<?php echo $t; ?>"></div><p><?php echo $ticket->contactDN(); ?></td>
  447.                             <td><div style="display:inline" id="TproductDescription<?php echo $t; ?>"></div><p><?php echo $ticket->productD(); ?></td>
  448.                             <td><div style="display:inline" id="T2Field8<?php echo $t; ?>"></div><p><?php echo $ticket->module(); ?></td>
  449.                             <td><div style="display:inline" id="T2Field10<?php echo $t; ?>"></div><a class="ellip" href="#" data-toggle="modal" data-titre="<?php echo $ticket->id();?>" data-contenu="<?php echo $ticket->libCourt(); ?>"><p><?php echo $ticket->libCourt(); ?></td>
  450.                             <td><div style="display:inline" id="Tquestion1<?php echo $t; ?>"></div><a class="ellip"  href="#" data-toggle="modal" data-titre="<?php echo $ticket->id();?>" data-contenu="<?php echo $ticket->libLong(); ?>"><p><?php echo $ticket->libLong(); ?></td>
  451.                             <td><div style="display:inline" id="isOuvert<?php echo $t; ?>"></div><p><?php echo $ticket->isOuvert(); ?></td>
  452.                         </tr>
  453.                     <?php  
  454.                         $t = $recupT; /* Pour pouvoir incrémenter le compteur. Ne peut pas être fait si t vaut "cd18ab" par exemple. */
  455.                         endforeach;
  456.                        
  457.                     ?>
  458.                     </tbody>
  459.                 </table>
  460.                 <?php else: ?>
  461.                 <div  class=" centre bg-danger" style="margin-bottom:50px; width:100%; padding-top:10px; margin-top:50px; background: #f2dede; border: solid;border-width: 1px;border-color: lightgrey; border-radius: 3px;"><h2 style="margin-top:20px;">Aucun résultat...    </h2><br/></div>                                           
  462.                 <?php endif; ?>            
  463.             </div>
  464.         </div>      <!-- Fin tableau des tickets -->       
  465.                                                             <!-- Légende -->
  466.    
  467.         <div id="legende" class="legendeDesign rounded border border-success">
  468.  
  469.                 <div class="col-lg-1 intitule_legend" style="padding-top:11px;font-size:0.8em">
  470.                     <strong>ETAT</strong> :
  471.                 </div>
  472.                 <div class="col-lg-11">
  473.                     <p><div style="display:inline;font-size:0.8em">
  474.                         <span class="border-rounded tab-roz <?php echo $ICONES["Affecté à un groupe"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["Affecté à un groupe"]["couleur"]; ?>"></span> : Affecté à un groupe -
  475.                         <span class="border-rounded tab-roz <?php echo $ICONES["En cours"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["En cours"]["couleur"]; ?>"></span> : En cours -
  476.                         <span class="border-rounded tab-roz <?php echo $ICONES["En Attente Client"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["En Attente Client"]["couleur"]; ?>"></span> : En Attente Client -
  477.                         <span class="border-rounded tab-roz <?php echo $ICONES["En Attente Editeur"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["En Attente Editeur"]["couleur"]; ?>"></span> : En Attente Editeur -
  478.                         <span class="border-rounded tab-roz <?php echo $ICONES["Réactivé"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["Réactivé"]["couleur"]; ?>"></span> : Réactivé -
  479.                         <span class="border-rounded tab-roz <?php echo $ICONES["En cours de diagnostic"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["En cours de diagnostic"]["couleur"]; ?>"></span> : En cours de diagnostic -
  480.                         <br /><br /><span class="border-rounded tab-roz <?php echo $ICONES["Diagnostiqué"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["Diagnostiqué"]["couleur"]; ?>"></span> : Diagnostiqué -
  481.                         <span class="border-rounded tab-roz <?php echo $ICONES["Suspendu"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["Suspendu"]["couleur"]; ?>"></span> : Suspendu -
  482.                         <span class="border-rounded tab-roz <?php echo $ICONES["Soumis à l'éditeur"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["Soumis à l'éditeur"]["couleur"]; ?>"></span> : Soumis à l'éditeur
  483.                         <span class="border-rounded tab-roz <?php echo $ICONES["Clos"]["classe"]; ?>" style="display:inline;font-size:1.2em;background-color:<?php echo $ICONES["Clos"]["couleur"]; ?>"></span> : Clos
  484.                     </div></p>
  485.                 </div>
  486.            
  487.                 <div class="col-lg-1 intitule_legend" style="padding-top:11px;font-size:0.8em">
  488.                     <strong>TYPE</strong> :
  489.                 </div>
  490.                 <div class="col-lg-11">
  491.                     <p><div style="display:inline;font-size:0.8em">
  492.                         <span style="color:<?php echo COULEUR_INQUIRIE_INCIDENT; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_INCIDENT; ?>"></span> : Incident -
  493.                         <span style="color:<?php echo COULEUR_INQUIRIE_DEM_PREST; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_DEM_PREST; ?>"></span> : Demande prestation -
  494.                         <span style="color:<?php echo COULEUR_INQUIRIE_CONS_QUEST; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_CONS_QUEST; ?>"></span> : Conseil question -
  495.                         <span style="color:<?php echo COULEUR_INQUIRIE_DEM_TRAV; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_DEM_TRAV; ?>"></span> : Demande travaux -
  496.                         <span style="color:<?php echo COULEUR_INQUIRIE_PROBLEME; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_PROBLEME; ?>"></span> : Problème / Erreur connue
  497.                     </div></p>
  498.                 </div>
  499.  
  500.         </div>
  501.         <!-- Fin légende -->
  502.         <!-- Pagination & choix nombre résultats -->
  503.        
  504.         <div class="row" id="pagination" >
  505.            
  506.            <!-- Pagination -->
  507.             <div class="col-lg-8 centre">
  508.                 <nav aria-label="Page navigation" class="justify-content">
  509.                     <?php
  510.                         $pagination = str_replace('INC', '', $pagination);
  511.                         $pagination = str_replace('DT', '', $pagination);
  512.                         $pagination = str_replace('TOUS', '', $pagination);
  513.                         $pagination = str_replace('DP', '', $pagination);
  514.                         $pagination = str_replace('PB', '', $pagination);
  515.                         $pagination = str_replace('CQ', '', $pagination);
  516.                         echo $pagination; ?>               
  517.                 </nav>
  518.             </div>
  519.            <!-- Fin pagination -->
  520.            
  521.             <!-- Nombre résultats -->
  522.             <div class="col-lg-3" style="text-align:center;">              
  523.                 <div class="centre">
  524.                     <span class="label label-info">Nombre de résultats par pages</span><br /><br />
  525.                 </div>
  526.                
  527.                 <div class="centre col-lg-8" style="text-align:center;justify-content:center;margin:auto;">
  528.                     <div class="form-group">
  529.                     <form name="page" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
  530.                         <input id="fonc" type="hidden" value="<?php  if(isset($fonction)) echo $fonction; else echo '';?>" name ="fonction">
  531.                         <select name="pages" style="text-align:center;margin-top:-3px;height:36px;padding-bottom:2px;padding-top:5px" id="selectionNbPage" class="form-control" onchange="page.submit()">
  532.                            <?php
  533.                            if($nbResParPage == 100)
  534.                                echo ' <option selected="selected">100</option>';
  535.                             else
  536.                                 echo ' <option>100</option>';
  537.                            
  538.                            if($nbResParPage == 50)
  539.                                echo ' <option selected="selected">50</option>';
  540.                             else
  541.                                 echo ' <option>50</option>';
  542.                            
  543.                             for($i = 30; $i >= 5; $i=$i-5):
  544.                            
  545.                                 if($nbResParPage == $i) echo ' <option selected="selected">'.$i.'</option>';
  546.                                 else echo ' <option>'.$i.'</option>';
  547.                             endfor;
  548.                            
  549.                             ?>
  550.                         </select>
  551.                         </form>
  552.                     </div>
  553.                 </div>                                       
  554.             </div>                      <!-- Fin nombre résultats -->
  555.         </div>
  556.      </div>
  557. </div><!-- Fin mytab content -->
  558.                                                     <!----------------------------->   
  559.                                                     <!----  FENETRES MODALES  ----->
  560.                                                     <!----------------------------->
  561.  
  562.                                                    
  563. <div id="affichageModal">
  564.    
  565. </div>
  566.  
  567. <div id="modalEtab" data-backdrop="static" data-keyboard="false" class="modal fade" role="dialog">
  568.     <div class="modal-dialog" style="max-width:80vw;">
  569.  
  570.         <!-- Modal content-->
  571.         <div class="modal-content">
  572.             <div class="modal-body">
  573.  
  574.             </div>
  575.         </div>
  576.     </div>
  577. </div>
  578. <div id="modalContact" data-backdrop="static" data-keyboard="false" class="modal fade" role="dialog">
  579.     <div class="modal-dialog" style="max-width:80vw;">
  580.  
  581.         <!-- Modal content-->
  582.         <div class="modal-content">
  583.             <div class="modal-body">
  584.  
  585.             </div>
  586.         </div>
  587.     </div>
  588. </div>
  589.  
  590. <div class="appendTabloContainer">
  591.     <a class="button-append-tablo nav-link">
  592.         <i class="far fa-arrow-alt-circle-left text-primary" alt="agrandir le tableau"></i>
  593.     </a>
  594.     <a class="button-desappend-tablo nav-link">
  595.         <i class="far fa-arrow-alt-circle-right text-primary" alt="rétrécir le tableau"></i>
  596.     </a>
  597. </div>
  598.  
  599. <script type="text/javascript">
  600.  
  601.     var base_url = '<?php echo base_url(); ?>';
  602.     var agentId = '<?php echo $agent->id();?>';
  603.     var couleur = '<?php echo $couleur; ?>';
  604.  
  605.     $(".justify-content").find(".pagination").css({
  606.         'justify-content': "center"
  607.     });
  608.     $("#pagination").find("li").css("float","left");
  609.        
  610.         enregistrerCookie();
  611.        
  612.         $(".ticketok").find("p").css("color", couleur);
  613.        
  614.         $(".ellip").click(function()
  615.         {  
  616.             $("h4").html($(this).data('titre'));
  617.             $("#contenuModal").html($(this).data('contenu'));
  618.             $('#ModalInquiry').modal('show');
  619.         });
  620.         $('[data-toggle="tooltip"]').tooltip();  
  621.         $('[data-toggle="popover"]').popover();  
  622.         $.ajax({
  623.                 url: "<?php echo base_url(); ?>" + "support/afficherModal",
  624.                 dataType : 'html',
  625.                 success: function(data) {
  626.                     $('#affichageModal').append(data);
  627.                 }
  628.         });
  629.         $('#affichageModal').css("height", "0px");
  630.        
  631.         $(".orient").click(function()      
  632.             // Fenêtre modal d'orientation  - VOIR => http://bootstrap-doc.prauds.fr/index4.php  
  633.         {
  634.         // https://openclassrooms.com/forum/sujet/fermeture-popup-modal    && https://getbootstrap.com/docs/3.3/javascript/
  635.        
  636.             $( "#pName" ).val('');
  637.             $( "#noLigne" ).text('');
  638.             $( "#infOrient" ).text('');
  639.             $( "#ridOrient" ).text('');
  640.             $( "#rNomOrient").text('');
  641.             $( "#iidOrient" ).text('');
  642.             $( "#noLigne" ).hide();
  643.             $( "#infOrient" ).hide();
  644.             $( "#ridOrient" ).hide();
  645.             $( "#rNomOrient" ).hide();
  646.             $( "#iidOrient" ).hide();
  647.        
  648.             var ticket = $(this).data('ticket');
  649.             $("#noLigne").html($(this).data('ligne'));
  650.             $("h4").html($(this).data('titre')+$(this).data('ticket'));
  651.             $("#pdt").html($("#pdt").html()+$(this).data('produit'));
  652.             $("#lCourt").html($("#lCourt").html()+$(this).data('lcourt'));
  653.             $("#lLong").html($("#lLong").html()+$(this).data('llong'));
  654.            
  655.             $.ajax({
  656.                 url: "<?php echo base_url(); ?>" + "support/getInformations",
  657.                 type: "post",
  658.                 data: {produit: $(this).data('produit'), module: $(this).data('module')},
  659.                 dataType : 'html',
  660.                 success: function(data) {
  661.                     $("#grp").append(data);
  662.                 }
  663.             });
  664.        
  665.             $.ajax({
  666.                 url: base_url + "suivi/getInformations",
  667.                 type: "post",
  668.                 data: {produit: $(this).data('produit'), client: $(this).data('client')},
  669.                 dataType : 'html',
  670.                 success: function(data) {
  671.                     $('#suivi').append(data);
  672.                 }
  673.             });
  674.             // $('#orientationModal').data('bs.modal').$backdrop.css('background-color','rgba(0,0,0,.5)');
  675.             $('#orientationModal').modal('show');
  676.                        
  677.             $("#pName").autocomplete({                  //https://stackoverflow.com/questions/14493250/ajax-jquery-autocomplete-with-json-data
  678.                 source: function (request, response) {
  679.                     var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" );
  680.                     $.ajax({
  681.                         url:base_url + 'support/listeAgents/',
  682.                         dataType: 'json',
  683.                         success: function (data) { 
  684.                             response($.map(data, function(v,i){
  685.                                 var text = v.nom + ' ' +v.SupportGroup;
  686.                                 var val= v.nom + ' pour ' +v.SupportGroup + v.GP;
  687.                                 if(v.nom==v.SupportGroup) val=v.nom;
  688.                                 if ( text && ( !request.term || matcher.test(text) ) ) {                                   
  689.                                     return {
  690.                                        
  691.                                         value: val,                            
  692.                                         rid: v.id,
  693.                                         mail : v.email,
  694.                                         department:v.SupportGroup,
  695.                                         idGroupe : v.SupportGroupId
  696.                                     }
  697.                                 }                              
  698.                             }));
  699.                         }                      
  700.                     });                    
  701.                 },
  702.                 selectFirst: true,
  703.                 minLength: 0,
  704.                 select: function( event, ui ) {                                                    
  705.                     affiche( ui.item.value, ui.item.department,ui.item.mail,  ui.item.rid,ticket,ui.item.idGroupe);
  706.                 }          
  707.             }).focus(function () {
  708.                 $("#pName").autocomplete("search", $(this).val());
  709.             });
  710.  
  711.            
  712.             //function affiche( message,rid,ticket ) {
  713.             function affiche( nom,department, email,rid,ticket,idGroupe) {
  714.                 $( "#infOrient" ).hide();
  715.                 $( "#ridOrient" ).hide();
  716.                 $( "#rNomOrient" ).hide();
  717.                 $( "#iidOrient" ).hide();
  718.                
  719.                 $( "#ridOrient" ).text(rid).prependTo( "#ridOrient" );
  720.                 $( "#ridGroupeOrient" ).text(idGroupe).prependTo( "#ridGroupeOrient" );
  721.                 $( "#rNomOrient" ).text(nom);
  722.                 $( "#iidOrient" ).text(ticket);
  723.                 $( "#rNomOrient" ).text(nom);
  724.                
  725.                 $( "#infOrient" ).append( 'Ticket orienté à : ');
  726.                 $( "#infOrient" ).append( '<br /><br />');
  727.                 $( "#infOrient" ).append(nom);
  728.                 $( "#infOrient" ).append(' - '+department+'<br />');
  729.                 $( "#infOrient" ).append(email);
  730.             }              
  731.         });
  732.  
  733.         //Fermer le popover i on clic en dehors
  734.         $('body').on('click', function (e) {
  735.               if ($(e.target).data('toggle') !== 'popover'
  736.                 && $(e.target).parents('[data-toggle="popover"]').length === 0
  737.                 && $(e.target).parents('.popover.in').length === 0) {
  738.                 $('[data-toggle="popover"]').popover('hide');
  739.             }
  740.         });    
  741.        
  742.         //Appelé lorque lors du click sur la disquette d'enregistrement d'un filtre
  743.         //Récupere le filtre en cours encodé et le libelle du filtre entré
  744.         //Appel une fonction ajax pour traiter l'enregistrement
  745.         $(document).on('click', '#addFiltre', function() {
  746.             var filtreEnCours = '<?php echo $arrayFiltreEnCoursEncode ?>';
  747.             var libelle = document.getElementById('libelle').value;
  748.            
  749.             enregistrerFiltre(filtreEnCours,libelle);
  750.            
  751.         });
  752.        
  753.         //Appelé lorque lors du click sur la croix pour supprimer un filtre
  754.         //Récupere le libelle du filtre en cours
  755.         //Appel une fonction ajax pour traiter la suppression
  756.         $(document).on('click', '#delFiltre', function() {
  757.             var filtreEnCours = '<?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?>';
  758.             supprimerFiltre(filtreEnCours);
  759.            
  760.         });
  761.        
  762.         //Appelé lorque lors du click pour modifier le nom d'un filtre
  763.         //Récupere le libelle du filtre en cours et le libelle du filtre entré
  764.         //Appel une fonction ajax pour traiter l'enregistrement
  765.         $(document).on('click', '#renFiltre', function() {
  766.             var filtreEnCours = '<?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?>';
  767.             var libelle = document.getElementById('libelleModifier').value;
  768.             renommerFiltre(filtreEnCours,libelle);
  769.            
  770.         });
  771.        
  772.        
  773.         //Appeler lors de la sélection d'un filtre enregistré
  774.         $('#selectFiltre').change(function() {
  775.             var value = $('#selectFiltre option:selected').attr('value');
  776.             var liste = value.split("--");
  777.             var appartenance=liste[0];
  778.             var etat=liste[1];
  779.             var priorite=liste[2];
  780.             var produit=liste[3];
  781.             var dateCreation=liste[4];
  782.             modifierFiltre(appartenance,etat,priorite,produit,dateCreation)
  783.         });
  784.    
  785.     //Envoie les caractéristiques du filtre afin de les appliquer au chargement de la page (les POST dans index)
  786.     function modifierFiltre(appartenance,etat,priorite,produit,dateCreation) {
  787.         $.ajax({       
  788.             type: 'POST',
  789.             url: base_url + 'support/index',   
  790.             dataType: 'buildSearchData',
  791.             data: {appartenance: appartenance, etat:etat ,priorite:priorite , produit:produit ,dateCreation:dateCreation },
  792.             success: function() {},
  793.             error: function(){}
  794.         });
  795.     }
  796.    
  797.     //A chaque arrivé sur la page, cette méthode est appelée
  798.     //Elle enregistre dans des cookies les caractéristiques du filtre en cours
  799.     function enregistrerCookie() {
  800.         var now = new Date();
  801.         now.setTime(now.getTime() + 1 * 3600 * 1000);
  802.        
  803.         document.cookie = "appartenance=<?php echo $filtreDePage->filtreEnCours()->appartenance(); ?>; expires=" + now.toUTCString();
  804.         document.cookie = "etat=<?php echo $filtreDePage->filtreEnCours()->etat(); ?>; expires=" + now.toUTCString();
  805.         document.cookie = "priorite=<?php echo $filtreDePage->filtreEnCours()->priorite(); ?>; expires=" + now.toUTCString();
  806.         document.cookie = "produit=<?php echo $filtreDePage->filtreEnCours()->produit(); ?>; expires=" + now.toUTCString();
  807.         document.cookie = "dateCreation=<?php echo $filtreDePage->filtreEnCours()->dateCreation(); ?>; expires=" + now.toUTCString();
  808.         document.cookie = "nbPages=<?php echo $nbResParPage; ?>; expires=" + now.toUTCString();
  809.         document.cookie = "recherche=<?php if(isset($rech)) echo $rech; else echo '';?>; expires=" + now.toUTCString();
  810.         document.cookie = "triDate=<?php if(isset($triDate)) echo $triDate; else echo '';?>; expires=" + now.toUTCString();
  811.         document.cookie = "rechNum=<?php if(isset($rechNum)) echo $rechNum; else echo '';?>; expires=" + now.toUTCString();
  812.     }
  813.    
  814.     //Envoie au controlleur les information necessaire à l'enregistrement du nouveau filtre
  815.     function enregistrerFiltre(filtreEnCours,libelle) {
  816.         $.ajax({       
  817.             type: 'POST',
  818.             url: base_url + 'support/enregistreNouveauFiltre', 
  819.             dataType: 'json',
  820.             data: {filtre: filtreEnCours, libelle: libelle},
  821.             success: function() {},
  822.             error: function(xhr, status, error){}
  823.         });
  824.     }
  825.    
  826.     //Envoie au controlleur les information necessaire à la modification du nom d'un filtre
  827.     function renommerFiltre(filtreEnCours,libelle) {
  828.  
  829.         $.ajax({       
  830.             type: 'POST',
  831.             url: base_url + 'support/renommerFiltre',  
  832.             dataType: 'json',
  833.             data: {filtre: filtreEnCours, libelle: libelle},
  834.             success: function() {},
  835.             error: function(xhr, status, error){}
  836.         });
  837.     }
  838.    
  839.     //Envoie au controlleur les information necessaire à la suppression du filtre
  840.     function supprimerFiltre(filtreEnCours) {
  841.         $.ajax({       
  842.             type: 'POST',
  843.             url: base_url + 'support/supprimeFiltreEnregistre',
  844.             dataType: 'json',
  845.             data: {filtre: filtreEnCours},
  846.             success: function() {},
  847.             error: function(){}
  848.         });
  849.     }
  850.    
  851.     //Rechercher un ticket par numero
  852.     function rechercheNumero(){
  853.         var id = $("#input_numero").val();
  854.         $.ajax({       
  855.             type: 'POST',
  856.             dataType:'text',
  857.             url: base_url + 'support/ouvrirTicketNumero/'+id,      
  858.             success: function(data) {  
  859.                 if (data==''){
  860.                     alert("Impossible d'ouvrir le ticket");
  861.                     return;
  862.                 }
  863.                 window.open(base_url +data,'_blank');
  864.             },
  865.             error: function(){
  866.                 alert("Impossible d'ouvrir le ticket")
  867.             }
  868.         });
  869.     }
  870.    
  871.     function orienter() {
  872.        
  873.         var ticketId=$("#iidOrient" ).text();
  874.         var ragentId=$("#ridOrient" ).text();
  875.         var ragentGroupe=$("#ridGroupeOrient" ).text();
  876.         var ragentName=$("#rNomOrient" ).text();
  877.         var inchargeHTMLid='TInChargeDisplayName'+$("#noLigne" ).text();
  878.         var orienterHTMLid='orienter'+$("#noLigne" ).text();
  879.        
  880.         $.ajax({       
  881.             type: 'POST',
  882.             url: base_url + 'support/orienter/',       
  883.             data: {iid: ticketId, uid: agentId,rid: ragentId,ridGroupe : ragentGroupe},
  884.             success: function() {              
  885.                 location.reload();
  886.             },
  887.             error: function(){
  888.                 alert("Impossible d'orienter le ticket")
  889.             }
  890.         });
  891.     }
  892.  
  893.     // Listes déroulantes Filtres
  894.     $('.selectpicker').selectpicker();
  895.     $('.selectpicker').selectpicker('render');
  896.  
  897.     var appartenance = '<?php echo $appartenance; ?>';
  898.     var etat         = '<?php echo $etat; ?>';
  899.     var priorite     = '<?php echo $priorite; ?>';
  900.     var produit      = '<?php echo $produit; ?>';
  901.  
  902.     var tab_select = new Array();
  903.    
  904.     tab_select['appartenanceID'] = appartenance;
  905.     tab_select['etatID']         = etat;
  906.     tab_select['prioriteID']     = priorite;
  907.     tab_select['produitID']      = produit;
  908.  
  909.     for (var selectId in tab_select)
  910.     {
  911.         var elmt = document.getElementById(selectId);  
  912.         for (var i = 0; i < elmt.options.length; i++)
  913.         {  
  914.             if(elmt.options[i].value == tab_select[selectId])
  915.             {
  916.                 elmt.selectedIndex = i;
  917.                 //$(elmt).selectpicker('val', tab_select[selectId]);
  918.             }
  919.         }  
  920.     }
  921.     function resetRecherche(){
  922.         document.cookie ='recherche'+ '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
  923.     }
  924.     function resetRechercheNum(){
  925.         document.cookie ='rechNum'+ '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
  926.     }
  927.    
  928. </script>
  929.  
  930. <script type="text/javascript">
  931.     $(function (){ 
  932.         $('#date_input').datepicker({
  933.             format: "dd/mm/yyyy",
  934.             language: "fr"
  935.         });
  936.     });
  937.  
  938.     /*
  939.     * Fleche pour agrandir le tableau
  940.     */
  941.     $(function(){
  942.         $('.button-desappend-tablo').hide();
  943.  
  944.         // Espace pour mettre le tableau en plein ecran (fonctionne)
  945.         $('.button-append-tablo').on('click', function(){
  946.             // Le bloc de gauche qu'on cache
  947.             $('.left-container-flex').hide();
  948.             // La taille du bloc de droite à 100%
  949.             $('.right-container-flex').css({
  950.                 'flex': '0 0 100%',
  951.                 'margin': '0'
  952.             });
  953.             $('.button-desappend-tablo').show();
  954.             $(this).hide();
  955.  
  956.             // Position de l'élément en fonction du tableau
  957.             if($('.button-desappend-tablo').is(':visible')){
  958.                 $(this).parent('.appendTabloContainer').css({
  959.                     'left' : '-15px'
  960.                 });
  961.             }
  962.         });
  963.  
  964.         // Espace pour remettre à la normale
  965.         $('.button-desappend-tablo').on('click', function(){
  966.             $('.left-container-flex').show();
  967.             $('.right-container-flex').css({
  968.                 'flex': '0 0 72vw',
  969.                 'margin-left': '20px'
  970.             });
  971.  
  972.             $('.button-append-tablo').show();
  973.             $(this).hide();
  974.  
  975.             // Position de l'élément en fonction du tableau
  976.             if($('.button-append-tablo').is(':visible')){
  977.                 $(this).parent('.appendTabloContainer').css({
  978.                     'left' : '25vw'
  979.                 });
  980.             }
  981.         });
  982.     });
  983.  
  984.  
  985. </script>
Add Comment
Please, Sign In to add comment