Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <style>
- /* Gestion des éllipses sur les boutons du filtre */
- .pull-left{
- overflow: hidden;
- text-overflow: ellipsis;
- }
- .responsive-reini-filtres {
- font-size: inherit;
- }
- td p{
- overflow: hidden;
- text-overflow: ellipsis;
- }
- </style>
- <?php
- /*
- --------------------------
- Ajouter une colonne :
- --------------------------
- 1-> vue : modifier le contenu du tableau à thead + tobdy (attention les id des th et td doivent être dans l'ordre (th1,th2,th3)
- 2-> vue : JS => modifier le tableau dimCol qui contient les noms des colonnes + leur % d'espacement lors du chargement de la page
- L'ordre des éléments de cet array doit être le même que les colonnes du tableau
- 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
- 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
- 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é.
- 6-> Agentmanager => méthode verifColDels() ajouter de même au tableau target le nom de la colonne de l'array JS dimCol
- 7-> Sur cette vue, changer si besoin la variable colonnesAColorier (dans le JS)
- --------------------------
- Ajouter un filtre :
- --------------------------
- Pour en ajouter, mettre à jour le code HTML
- Mettre à jour les variables nbLists (dans le controller) et optionsList* (dans le code js)
- Mettre à jour la méthode optionsManager dans le code JS
- Mettre à jour les options de la page ajax_post_controller/support_data_submit
- Mettre à jour le recherche du nombre de résultats de la page inquiryManager/nombreTotalInquiry
- Modifier l'objet PHP FiltreAgent
- */
- $filtreEnCours = $filtreDePage->filtreEnCours();
- $arrayFiltreEnCours = (array) $filtreDePage->filtreEnCours();
- $arrayFiltreEnCoursEncode = json_encode($arrayFiltreEnCours);
- $agent=unserialize($this->session->userdata('user'));
- $type='';
- if (isset($TOUS)) $type ='TOUS';
- if (isset($INC)) $type ='INC';
- if (isset($DT)) $type ='DT';
- if (isset($CQ)) $type ='CQ';
- if (isset($DP)) $type ='DP';
- if (isset($PB)) $type ='PB';
- ?>
- <script src="<?php echo js_url('colResizable-1.5.min'); ?>"></script>
- <div id="contenu" class="right-container-flex" >
- <!-------------------->
- <!---- FILTRES ----->
- <!-------------------->
- <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;">
- <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" id="block_filtres" style="margin-bottom: 20px;"> <!-- bloc filtre -->
- <div class="col-lg-10" style="justify-content: left!important;">
- <form name="filtre" class="filtre col-lg-12" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
- <?php $appartenance = $filtreDePage->filtreEnCours()->appartenance();?>
- <div class="col-lg-3">
- <select id="appartenanceID" name="appartenance" class="custom-select" data-style="btn-primary plusPetitBoutons" onchange="filtre.submit()" >
- <option >Toutes appartenances</option>
- <?php if ($agent->id() != 'IU:VISITEUR') : // Le visiteur n'a pas de tickets ?>
- <option>Mes tickets </option>
- <?php endif; ?>
- <?php if ($groupes != null) : ?>
- <optgroup label="Tickets de mes groupes">
- <option>Tous mes groupes</option>
- <?php foreach ($groupes as $groupe) : ?>
- <option><?php echo $groupe->displayName(); ?></option>
- <?php endforeach; ?>
- </optgroup>
- <?php endif; ?>
- </select>
- </div>
- <?php $etat = $filtreDePage->filtreEnCours()->etat(); ?>
- <div class="col-lg-3">
- <select id="etatID" name="etat" class="custom-select" data-style="btn-primary plusPetitBoutons" onchange="filtre.submit()" >
- <option>Tous les états</option>
- <option>Ouverts</option>
- <option value="P">En attente client/éditeur</option>
- <option>Fermés</option>
- </select>
- </div>
- <?php $priorite = $filtreDePage->filtreEnCours()->priorite(); ?>
- <div class="col-lg-3">
- <select id="prioriteID" name="priorite" class="custom-select" onchange="filtre.submit()" >
- <option value ="Toutes les priorités">Toutes les priorités</option>
- <option value="0.Urgente" style="background-color:red">Urgentes(0)</option>
- <option value="1.Haute" style="background-color:orange" >Hautes(1)</option>
- <option value="2.Moyenne" >Moyennes(2)</option>
- <option value="3.Basse">Basses(3)</option>
- </select>
- </div>
- <?php if (!empty($expertises)) : ?>
- <?php $produit = $filtreDePage->filtreEnCours()->produit(); ?>
- <div class="col-lg-3">
- <select id="produitID" name="produit" class="custom-select" data-style="btn-primary plusPetitBoutons" onchange="filtre.submit()" >
- <option>Tous les produits</option>
- <optgroup label="Produit particulier">
- <option>Tous mes produits</option>
- <?php foreach ($expertises as $exp) : ?>
- <option><?php echo $exp->productId(); ?></option>
- <?php endforeach; ?>
- </optgroup>
- </select>
- <?php endif; ?>
- </div>
- </div>
- <div class="col-lg-2">
- <?php $dateCreation = $filtreDePage->filtreEnCours()->dateCreation(); //echo 'option active des dates ' . $optActive;?>
- <div id="date-input" class="input-group">
- <?php if(isset($desk)){ ?>
- <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" >
- <div class="input-group-append bg-primary" style="border-radius: 0 5px 5px 0;">
- <span class="input-group-text bg-primary" style="color:white;border-radius: 0 5px 5px 0;"><i class="fas fa-calendar"></i></span>
- </div>
- <?php } else { ?>
- <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" >
- <div class="input-group-append bg-primary" style="border-radius: 0 5px 5px 0;">
- <span class="input-group-text bg-primary" style="color:white;border-radius: 0 5px 5px 0;"><i class="fas fa-calendar"></i></span>
- </div>
- <?php } ?>
- </div>
- </div>
- </form>
- </div>
- <div class="background-filtres" style="background:#eee;padding: 0;">
- <!-- Icones des filtres -->
- <div class="row">
- <form name="modifier" class="form-inline col-lg-6" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
- <div id="zoneFiltre" style="width:100%;padding-top:10px;padding-right:10%">
- <select id="selectFiltre" class="custom-select" onchange="modifier.submit()">
- <?php if (count((array) $agent->filtres())<=0) : ?>
- <option selected="selected">--Aucun filtre n'est enregistré</option>
- <?php else : ?>
- <!-- FILTRE ACTIF -->
- <!-- si le filtre actuel est enregistré-->
- <?php if ($agent->isFiltreAgent($filtreDePage->filtreEnCours())) { ?>
- <!-- si c'est le filtre actuel-->
- <option><?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?></option>
- <optgroup label="Filtre actif :">
- <option disabled><?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?></option>
- <?php } else {
- echo '<option>-- Choisissez un filtre --</option>';
- } ?>
- <!-- MES COMBINAISONS DE FILTRES-->
- <optgroup label="Mes combinaisons de filtres :">
- <?php foreach ($agent->filtres() as $f) : ?>
- <!-- si ce n'est pas le filtre actuel-->
- <?php if (!$f->memeFiltre($filtreDePage->filtreEnCours())) : ?>
- <!-- si ce n'est pas le filtre préféré-->
- <?php if (!$f->memeFiltre($agent->filtrePrefere())) { ?>
- <option value="<?php echo $f->appartenance() . "--" . $f->etat() . "--" . $f->priorite() . "--" . $f->produit() . "--" . $f->dateCreation(); ?>" ><?php echo $f->libelle(); ?></option>
- <?php } else { ?>
- <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>
- <?php } ?>
- <?php endif; ?>
- <?php endforeach;?>
- </div>
- </select>
- <br /><br />
- <?php endif; ?>
- </form>
- </div> <!-- fin du bloc filtre -->
- <div class="col-lg-3 col-md-4 col-xs-5" style=" z-index: 5; padding-left: 20px; padding-top: 10px;" id="filtres_boutons">
- <?php if (get_class($filtreDePage->filtreEnCours()) == "Filtre") : ?>
- <!-- reinitialiser les filtres-->
- <form name="reinitialiser" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST" style=" float: left;">
- <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>
- <input type="hidden" name="reinitialiser" value="">
- </form>
- <!--rétablir les filtres précédents-->
- <?php if (isset($indic) or isset($modif)) : ?>
- <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>
- <?php endif; ?>
- <?php endif; ?>
- <form name="base" class="form-inline" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
- <!--si filtre n'est pas enregistré-->
- <?php if (!$agent->isFiltreAgent($filtreDePage->filtreEnCours())) : ?>
- <a class="responsive-reini-filtres btn btn-info"
- tabindex="0"
- id="enregistrerFiltre"
- style="width: 37px;height: 37px;margin: 0 5px;"
- data-toggle='popover'
- data-html='true'
- title="Enregistrer le filtre"
- data-content ='Saisissez un libellé associé au filtre que vous voulez enregistrer :
- <div class="form-check">
- <label class="form-check-label"></label>
- <input maxlength="<?php echo Filtre::$tailleMaxLibelle; ?>" type="text" id="libelle" style="width:100%" class="form-control">
- <br />
- <br />
- </div>
- <div class="centre">
- <a class="btn btn-success ladda-button" data-style="expand-left" id="addFiltre"><span class="ladda-label text-white">Ajouter</span></a>
- </div>'>
- <i class="far fa-save"style="font-size:14px"></i>
- </a>
- <?php else : ?>
- <a class="responsive-reini-filtres btn btn-danger"
- tabindex="0"
- id="deleteFiltre"
- data-toggle="popover"
- data-trigger="click"
- data-html="true"
- title="Supprimer le filtre"
- style="width: 37px;height: 37px; background-color: rgb(190,0,0);margin: 0 5px;"
- data-content ="Confirmez-vous la suppression de l'enregistrement pour ces filtres ?
- <br /><br />
- <div class='centre'>
- <a class='btn btn-danger ladda-button' data-style='expand-left' id='delFiltre'><span class='ladda-label text-white'>Supprimer</span></a>
- </div>"
- href="#">
- <i class="fas fa-trash" style="font-size:14px; color:white"></i></a>
- </a>
- <a class="responsive-reini-filtres btn btn-info"
- tabindex="0"
- id="renameFiltre"
- data-toggle="popover"
- data-trigger="click"
- data-html="true"
- title="Renommer le filtre"
- style="width: 37px;height: 37px;margin: 0 5px;"
- data-content ="Saisissez un nouveau libellé associé à ce filtre :
- <br /><br />
- <input maxlength='<?php echo Filtre::$tailleMaxLibelle; ?>' type='text' id='libelleModifier' style='width:100%' class='form-control' value='<?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?>'/>
- <br /><br />
- <div class='centre'>
- <a class='btn btn-success ladda-button' data-style='expand-left' id='renFiltre'><span class='ladda-label text-white'>Modifier</span></a>
- </div>"
- href="#">
- <i class="fas fa-pencil-alt" style="font-size:14pt;"></i></a>
- </a>
- <?php endif; ?>
- <!-- End Icones des filtres -->
- </form>
- <?php if ($agent->estVisiteur() and !$filtre->isFiltreDefaut()) : ?>
- <?php endif; ?>
- <?php //endif; ?>
- </div>
- </div>
- </div >
- <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;" >
- <div class="col-lg-5 col-md-8 col-sm-8 col-xs-8 control-group">
- <form name="rechercher" style="display:flex" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST" style=" ;" >
- <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("\"",""",$rech); ?>">
- <button type="button" style="display:inline; margin-left:5px;" id="valid_recherche" onclick="rechercher.submit()" class="btn btn-secondary">
- <i class="fas fa-search" style="color:white;"></i>
- </button>
- <input type="hidden" value="<?php if(isset($fonction)) echo $fonction; else echo '';?>" name ="fonction">
- <?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()" />'; ?>
- </form>
- </div>
- <div style="display:flex;" class="col-lg-3 col-md-8 col-sm-8 col-xs-8 control-group">
- <!--<label for="recherche">Accès par numéro: </label>-->
- <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("\"",""",$rechNum); ?>">
- <button type="button" style="display:inline-block; margin-left:5px; " id="valid_recherche" onclick="rechercheNumero()" class="btn btn-secondary">
- <i class="fas fa-search" style="color:white;"></i>
- </button>
- <?php if (isset($rechNum)) echo '<input style="display:inline" type="button" class="btn btn-warning" id="remove_recherche" value="x" onclick="resetRechercheNum(); filtre.submit()"/>'; ?>
- </div>
- </div>
- <!-- Onglets incident, tous, demande prestation, demande travaux, conseil question -->
- <div class="col-lg-12" style="margin-top:10px; padding: 0; z-index:1">
- <ul id="onglets" class="nav nav-tabs">
- <li class="nav-item" >
- <a href="<?php echo base_url() . 'support/index/TOUS'; ?>" class="nav-link <?php if (isset($TOUS)) echo 'active'; else echo '' ?>">Tous</a>
- </li>
- <li class="nav-item" >
- <a href="<?php echo base_url() . 'support/index/INC'; ?>" class="nav-link <?php if (isset($INC)) echo 'active'; else echo '' ?>">Incident</a>
- </li>
- <li class="nav-item" >
- <a href="<?php echo base_url() . 'support/index/DT'; ?>" class="nav-link <?php if (isset($DT)) echo 'active'; else echo '' ?>">Demande travaux</a>
- </li>
- <li class="nav-item" >
- <a href="<?php echo base_url() . 'support/index/CQ'; ?>" class="nav-link <?php if (isset($CQ)) echo 'active'; else echo '' ?>">Conseil/question</a>
- </li>
- <li class="nav-item" >
- <a href="<?php echo base_url() . 'support/index/DP'; ?>" class="nav-link <?php if (isset($DP)) echo 'active'; else echo '' ?>">Prestation</a>
- </li>
- <li class="nav-item" >
- <a href="<?php echo base_url() . 'support/index/PB'; ?>" class="nav-link <?php if (isset($PB)) echo 'active'; else echo '' ?>">Problème</a>
- </li>
- <li class="nav-item">
- <div class="dropdown" id="cache1" style="margin-top:5px;">
- <button class="btn btn-success btn-sm dropdown-toggle bouton-ajouter" type="button" data-toggle="dropdown" aria-expanded="false">
- <i class="fas fa-plus"></i> <span class="caret"></span>
- </button>
- <ul class="dropdown-menu dropdown1" role="menu" style="z-index:1" >
- <li role="presentation" class="dropdown-header">Ajouter une colonne</li>
- <li class="divider"></li>
- </ul>
- </div>
- </li>
- </ul>
- </div>
- <!-- Fin onglets incident, tous, demande prestation, demande travaux, conseil question -->
- <!-- Tableau & Pagination & choix nombre résultats-->
- <form name="tri" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
- <input type="hidden" name="triDate" value="<?php echo !$triDate; ?>">
- </form>
- </div> <!-- Div pour la fermeture du background couleurs -->
- <div id="myTabContent" class="tab-content col-md-8 col-lg-12" style="z-index:0; white-space: nowrap">
- <div class="tab-pane in active" id="home">
- <div class="col-sm-12"> <!-- Tableau des tickets -->
- <?php if ($pagination != null): ?>
- <div id="contenuTableau" style="margin-left: -30px; margin-right: -30px;" class="table-resposnsive-lg">
- <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;">
- <thead class="thead-dark AllLinkInWhite" style="position:sticky;top:0;">
- <tr>
- <th id="enModif" width="3px" title="Orienter" ><a class="ellip" href="#" style="display:block;">Orienter</a></th>
- <th id="T2Field1" width="3px" title="Type" ><a class="ellip" href="#" style="display:block;">Type</a></th>
- <th id="QStatus" width="3px" title="Statut 1" ><a class="ellip" href="#" style="display:block;">Statut</a></th>
- <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>
- <th id="TPriorityId" width="3px" title="Priorité" ><a class="ellip" href="#" style="display:block;">Priorité</a></th>
- <th id="QId" width="6px" title="Numéro" ><a class="ellip" href="#" style="display:block;">Numéro</a></th>
- <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>
- <th id="TInChargeDisplayName" width="15px" title="Affecté à " ><a class="ellip" href="#" style="display:block;">Affecté à </a></th>
- <th id="T2Field23" width="2px" title="Niveau d'infogérence" ><a class="ellip" href="#" style="display:block;">Niveau d'infogérence</a></th>
- <th id="QCustomerId" width="15px" title="Etablissement" ><a class="ellip" href="#" style="display:block;">Etablissement</a></th>
- <th id="QcustomerContactId" width="12px" title="Nom usuel" ><a class="ellip" href="#" style="display:block;">Interlocuteur</a></th>
- <th id="TproductDescription" width="8px" title="Produit" ><a class="ellip" href="#" style="display:block;">Produit</a></th>
- <th id="T2Field8" width="15 px" title="Module" ><a class="ellip" href="#" style="display:block;">Module</a></th>
- <th id="T2Field10" width="20px" class="texteLong" title="Libellé court" ><a class="ellip" href="#" style="display:block;">Objet</a></th>
- <th id="Tquestion1" width="20px" class="texteLong" title="Libellé long" ><a class="ellip" href="#" style="display:block;">Description</a></th>
- <th id="isOuvert" width="6px" title="En cours de modification" ><a class="ellip" href="#" style="display:block;">En cours de modification</a></th>
- </tr>
- </thead>
- <tbody>
- <?php
- $icones=unserialize(ICONES_ETAT);
- $t = 0;
- foreach($listeTickets as $ticket):
- $t++;
- $recupT = $t;
- $t= 'cd'.$t.'ab';
- ?>
- <tr <?php if($ticket->isRead()==0) echo 'style="height:5px; overflow: hidden;font-weight:bold;"';?> class="<?php
- if ( $ticket->inChargeDN() == $agent->displayname() ):
- echo 'ticketok';
- endif;
- if ( $ticket->inChargeDN() == $agent->userDepartment() ):
- echo 'ticketok';
- endif;
- ?>" data-content="Content One" id="tr<?php echo $t; ?>">
- <!--<td><div style="display: inline;" id="enModif<?php echo $t; ?>"> </div></td>-->
- <td>
- <div style="display: inline;" id="orienter<?php echo $t; ?>">
- <?php if ($ticket->status()< 5 ): ?>
- <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(); ?>">
- <i class="fa fa-share" <?php if ($ticket->inChargeDN()=='HELPDESK'): ?> style="color:#03baff;" <?php else: ?> style="color:#0071c9;" <?php endif; ?>aria-hidden="true"></i>
- <?php else: ?>
- <i class="fa fa-share" title="Ticket fermé : orientation impossible" style="color:#717171;" aria-hidden="true"></i>
- <?php endif; ?>
- </div></td>
- <td><div style="display: inline" id="T2Field1<?php echo $t; ?>"></div><?php echo $ticket->getIcon();?></td>
- <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>
- <td><div style="display:inline" id="T2Field21<?php echo $t; ?>"></div><?php echo $ticket->delaiPEC();?></td>
- <td><div style="display: inline;" id="TPriorityId<?php echo $t; ?>"></div><?php echo $ticket->prioriteToIcon($ticket->priorite()) ;?></td>
- <td><!-- data-target="#infos" <?php // echo base_url() . 'modification/ticket/M2010-03483'; ?> onclick='pageModifTicket()'-->
- <div style="display:inline" id="QId<?php echo $t; ?>"></div>
- <a href="<?php echo base_url() . 'support/ouvrirTicket/'.$ticket->id(); ?>"
- title="<?php if ($ticket->nbRappel()> 0) echo html_entity_decode('Nombre de rappel(s) : '. $ticket->nbRappel(). ' '. 'Dernier rappel(s) : '. $ticket->dernierRappel() ); else echo $ticket->id(); ?>"
- name ='modifTicket' class="open_modification_page" id="pop-link<?php echo $t; ?>"
- style=" <?php if ($ticket->nbRappel() >= 1) echo 'color: #c94ffd; font-weight:bold'; else echo 'color: #0170c8; font-weight:bold '; ?>"
- href="#" target='_blank'
- onclick="">
- <?php echo str_replace("M20", "", $ticket->id());?>
- </td>
- <td><div style="display:inline" id="QCreatedOn<?php echo $t; ?>"></div><p><?php echo $ticket->createdOn(); ?></td>
- <td><div class="dot-ellipsis" style="display:inline" id="TInChargeDisplayName<?php echo $t; ?>"></div><p><?php echo $ticket->inChargeDN(); ?></p></td>
- <td><div style="display:inline" id="T2Field23<?php echo $t; ?>"></div><p><?php echo $ticket->nInfoGerance(); ?></td>
- <td><div class="dot-ellipsis" style="display:inline" id="QCustomerId<?php echo $t; ?>"></div><p><?php echo $ticket->customerDN(); ?></td>
- <td><div class="dot-ellipsis" style="display:inline" id="QcustomerContactId<?php echo $t; ?>"></div><p><?php echo $ticket->contactDN(); ?></td>
- <td><div style="display:inline" id="TproductDescription<?php echo $t; ?>"></div><p><?php echo $ticket->productD(); ?></td>
- <td><div style="display:inline" id="T2Field8<?php echo $t; ?>"></div><p><?php echo $ticket->module(); ?></td>
- <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>
- <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>
- <td><div style="display:inline" id="isOuvert<?php echo $t; ?>"></div><p><?php echo $ticket->isOuvert(); ?></td>
- </tr>
- <?php
- $t = $recupT; /* Pour pouvoir incrémenter le compteur. Ne peut pas être fait si t vaut "cd18ab" par exemple. */
- endforeach;
- ?>
- </tbody>
- </table>
- <?php else: ?>
- <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>
- <?php endif; ?>
- </div>
- </div> <!-- Fin tableau des tickets -->
- <!-- Légende -->
- <div id="legende" class="legendeDesign rounded border border-success">
- <div class="col-lg-1 intitule_legend" style="padding-top:11px;font-size:0.8em">
- <strong>ETAT</strong> :
- </div>
- <div class="col-lg-11">
- <p><div style="display:inline;font-size:0.8em">
- <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 -
- <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 -
- <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 -
- <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 -
- <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é -
- <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 -
- <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é -
- <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 -
- <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
- <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
- </div></p>
- </div>
- <div class="col-lg-1 intitule_legend" style="padding-top:11px;font-size:0.8em">
- <strong>TYPE</strong> :
- </div>
- <div class="col-lg-11">
- <p><div style="display:inline;font-size:0.8em">
- <span style="color:<?php echo COULEUR_INQUIRIE_INCIDENT; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_INCIDENT; ?>"></span> : Incident -
- <span style="color:<?php echo COULEUR_INQUIRIE_DEM_PREST; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_DEM_PREST; ?>"></span> : Demande prestation -
- <span style="color:<?php echo COULEUR_INQUIRIE_CONS_QUEST; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_CONS_QUEST; ?>"></span> : Conseil question -
- <span style="color:<?php echo COULEUR_INQUIRIE_DEM_TRAV; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_DEM_TRAV; ?>"></span> : Demande travaux -
- <span style="color:<?php echo COULEUR_INQUIRIE_PROBLEME; ?>;font-size:1.2em;" class="<?php echo CLASSE_INQUIRIE_PROBLEME; ?>"></span> : Problème / Erreur connue
- </div></p>
- </div>
- </div>
- <!-- Fin légende -->
- <!-- Pagination & choix nombre résultats -->
- <div class="row" id="pagination" >
- <!-- Pagination -->
- <div class="col-lg-8 centre">
- <nav aria-label="Page navigation" class="justify-content">
- <?php
- $pagination = str_replace('INC', '', $pagination);
- $pagination = str_replace('DT', '', $pagination);
- $pagination = str_replace('TOUS', '', $pagination);
- $pagination = str_replace('DP', '', $pagination);
- $pagination = str_replace('PB', '', $pagination);
- $pagination = str_replace('CQ', '', $pagination);
- echo $pagination; ?>
- </nav>
- </div>
- <!-- Fin pagination -->
- <!-- Nombre résultats -->
- <div class="col-lg-3" style="text-align:center;">
- <div class="centre">
- <span class="label label-info">Nombre de résultats par pages</span><br /><br />
- </div>
- <div class="centre col-lg-8" style="text-align:center;justify-content:center;margin:auto;">
- <div class="form-group">
- <form name="page" action="<?php echo base_url() . 'support/index'.'/'.$type; ?>" method="POST">
- <input id="fonc" type="hidden" value="<?php if(isset($fonction)) echo $fonction; else echo '';?>" name ="fonction">
- <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()">
- <?php
- if($nbResParPage == 100)
- echo ' <option selected="selected">100</option>';
- else
- echo ' <option>100</option>';
- if($nbResParPage == 50)
- echo ' <option selected="selected">50</option>';
- else
- echo ' <option>50</option>';
- for($i = 30; $i >= 5; $i=$i-5):
- if($nbResParPage == $i) echo ' <option selected="selected">'.$i.'</option>';
- else echo ' <option>'.$i.'</option>';
- endfor;
- ?>
- </select>
- </form>
- </div>
- </div>
- </div> <!-- Fin nombre résultats -->
- </div>
- </div>
- </div><!-- Fin mytab content -->
- <!----------------------------->
- <!---- FENETRES MODALES ----->
- <!----------------------------->
- <div id="affichageModal">
- </div>
- <div id="modalEtab" data-backdrop="static" data-keyboard="false" class="modal fade" role="dialog">
- <div class="modal-dialog" style="max-width:80vw;">
- <!-- Modal content-->
- <div class="modal-content">
- <div class="modal-body">
- </div>
- </div>
- </div>
- </div>
- <div id="modalContact" data-backdrop="static" data-keyboard="false" class="modal fade" role="dialog">
- <div class="modal-dialog" style="max-width:80vw;">
- <!-- Modal content-->
- <div class="modal-content">
- <div class="modal-body">
- </div>
- </div>
- </div>
- </div>
- <div class="appendTabloContainer">
- <a class="button-append-tablo nav-link">
- <i class="far fa-arrow-alt-circle-left text-primary" alt="agrandir le tableau"></i>
- </a>
- <a class="button-desappend-tablo nav-link">
- <i class="far fa-arrow-alt-circle-right text-primary" alt="rétrécir le tableau"></i>
- </a>
- </div>
- <script type="text/javascript">
- var base_url = '<?php echo base_url(); ?>';
- var agentId = '<?php echo $agent->id();?>';
- var couleur = '<?php echo $couleur; ?>';
- $(".justify-content").find(".pagination").css({
- 'justify-content': "center"
- });
- $("#pagination").find("li").css("float","left");
- enregistrerCookie();
- $(".ticketok").find("p").css("color", couleur);
- $(".ellip").click(function()
- {
- $("h4").html($(this).data('titre'));
- $("#contenuModal").html($(this).data('contenu'));
- $('#ModalInquiry').modal('show');
- });
- $('[data-toggle="tooltip"]').tooltip();
- $('[data-toggle="popover"]').popover();
- $.ajax({
- url: "<?php echo base_url(); ?>" + "support/afficherModal",
- dataType : 'html',
- success: function(data) {
- $('#affichageModal').append(data);
- }
- });
- $('#affichageModal').css("height", "0px");
- $(".orient").click(function()
- // Fenêtre modal d'orientation - VOIR => http://bootstrap-doc.prauds.fr/index4.php
- {
- // https://openclassrooms.com/forum/sujet/fermeture-popup-modal && https://getbootstrap.com/docs/3.3/javascript/
- $( "#pName" ).val('');
- $( "#noLigne" ).text('');
- $( "#infOrient" ).text('');
- $( "#ridOrient" ).text('');
- $( "#rNomOrient").text('');
- $( "#iidOrient" ).text('');
- $( "#noLigne" ).hide();
- $( "#infOrient" ).hide();
- $( "#ridOrient" ).hide();
- $( "#rNomOrient" ).hide();
- $( "#iidOrient" ).hide();
- var ticket = $(this).data('ticket');
- $("#noLigne").html($(this).data('ligne'));
- $("h4").html($(this).data('titre')+$(this).data('ticket'));
- $("#pdt").html($("#pdt").html()+$(this).data('produit'));
- $("#lCourt").html($("#lCourt").html()+$(this).data('lcourt'));
- $("#lLong").html($("#lLong").html()+$(this).data('llong'));
- $.ajax({
- url: "<?php echo base_url(); ?>" + "support/getInformations",
- type: "post",
- data: {produit: $(this).data('produit'), module: $(this).data('module')},
- dataType : 'html',
- success: function(data) {
- $("#grp").append(data);
- }
- });
- $.ajax({
- url: base_url + "suivi/getInformations",
- type: "post",
- data: {produit: $(this).data('produit'), client: $(this).data('client')},
- dataType : 'html',
- success: function(data) {
- $('#suivi').append(data);
- }
- });
- // $('#orientationModal').data('bs.modal').$backdrop.css('background-color','rgba(0,0,0,.5)');
- $('#orientationModal').modal('show');
- $("#pName").autocomplete({ //https://stackoverflow.com/questions/14493250/ajax-jquery-autocomplete-with-json-data
- source: function (request, response) {
- var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" );
- $.ajax({
- url:base_url + 'support/listeAgents/',
- dataType: 'json',
- success: function (data) {
- response($.map(data, function(v,i){
- var text = v.nom + ' ' +v.SupportGroup;
- var val= v.nom + ' pour ' +v.SupportGroup + v.GP;
- if(v.nom==v.SupportGroup) val=v.nom;
- if ( text && ( !request.term || matcher.test(text) ) ) {
- return {
- value: val,
- rid: v.id,
- mail : v.email,
- department:v.SupportGroup,
- idGroupe : v.SupportGroupId
- }
- }
- }));
- }
- });
- },
- selectFirst: true,
- minLength: 0,
- select: function( event, ui ) {
- affiche( ui.item.value, ui.item.department,ui.item.mail, ui.item.rid,ticket,ui.item.idGroupe);
- }
- }).focus(function () {
- $("#pName").autocomplete("search", $(this).val());
- });
- //function affiche( message,rid,ticket ) {
- function affiche( nom,department, email,rid,ticket,idGroupe) {
- $( "#infOrient" ).hide();
- $( "#ridOrient" ).hide();
- $( "#rNomOrient" ).hide();
- $( "#iidOrient" ).hide();
- $( "#ridOrient" ).text(rid).prependTo( "#ridOrient" );
- $( "#ridGroupeOrient" ).text(idGroupe).prependTo( "#ridGroupeOrient" );
- $( "#rNomOrient" ).text(nom);
- $( "#iidOrient" ).text(ticket);
- $( "#rNomOrient" ).text(nom);
- $( "#infOrient" ).append( 'Ticket orienté à : ');
- $( "#infOrient" ).append( '<br /><br />');
- $( "#infOrient" ).append(nom);
- $( "#infOrient" ).append(' - '+department+'<br />');
- $( "#infOrient" ).append(email);
- }
- });
- //Fermer le popover i on clic en dehors
- $('body').on('click', function (e) {
- if ($(e.target).data('toggle') !== 'popover'
- && $(e.target).parents('[data-toggle="popover"]').length === 0
- && $(e.target).parents('.popover.in').length === 0) {
- $('[data-toggle="popover"]').popover('hide');
- }
- });
- //Appelé lorque lors du click sur la disquette d'enregistrement d'un filtre
- //Récupere le filtre en cours encodé et le libelle du filtre entré
- //Appel une fonction ajax pour traiter l'enregistrement
- $(document).on('click', '#addFiltre', function() {
- var filtreEnCours = '<?php echo $arrayFiltreEnCoursEncode ?>';
- var libelle = document.getElementById('libelle').value;
- enregistrerFiltre(filtreEnCours,libelle);
- });
- //Appelé lorque lors du click sur la croix pour supprimer un filtre
- //Récupere le libelle du filtre en cours
- //Appel une fonction ajax pour traiter la suppression
- $(document).on('click', '#delFiltre', function() {
- var filtreEnCours = '<?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?>';
- supprimerFiltre(filtreEnCours);
- });
- //Appelé lorque lors du click pour modifier le nom d'un filtre
- //Récupere le libelle du filtre en cours et le libelle du filtre entré
- //Appel une fonction ajax pour traiter l'enregistrement
- $(document).on('click', '#renFiltre', function() {
- var filtreEnCours = '<?php echo $agent->isFiltreAgentTrueReturnLibelle($filtreDePage->filtreEnCours()); ?>';
- var libelle = document.getElementById('libelleModifier').value;
- renommerFiltre(filtreEnCours,libelle);
- });
- //Appeler lors de la sélection d'un filtre enregistré
- $('#selectFiltre').change(function() {
- var value = $('#selectFiltre option:selected').attr('value');
- var liste = value.split("--");
- var appartenance=liste[0];
- var etat=liste[1];
- var priorite=liste[2];
- var produit=liste[3];
- var dateCreation=liste[4];
- modifierFiltre(appartenance,etat,priorite,produit,dateCreation)
- });
- //Envoie les caractéristiques du filtre afin de les appliquer au chargement de la page (les POST dans index)
- function modifierFiltre(appartenance,etat,priorite,produit,dateCreation) {
- $.ajax({
- type: 'POST',
- url: base_url + 'support/index',
- dataType: 'buildSearchData',
- data: {appartenance: appartenance, etat:etat ,priorite:priorite , produit:produit ,dateCreation:dateCreation },
- success: function() {},
- error: function(){}
- });
- }
- //A chaque arrivé sur la page, cette méthode est appelée
- //Elle enregistre dans des cookies les caractéristiques du filtre en cours
- function enregistrerCookie() {
- var now = new Date();
- now.setTime(now.getTime() + 1 * 3600 * 1000);
- document.cookie = "appartenance=<?php echo $filtreDePage->filtreEnCours()->appartenance(); ?>; expires=" + now.toUTCString();
- document.cookie = "etat=<?php echo $filtreDePage->filtreEnCours()->etat(); ?>; expires=" + now.toUTCString();
- document.cookie = "priorite=<?php echo $filtreDePage->filtreEnCours()->priorite(); ?>; expires=" + now.toUTCString();
- document.cookie = "produit=<?php echo $filtreDePage->filtreEnCours()->produit(); ?>; expires=" + now.toUTCString();
- document.cookie = "dateCreation=<?php echo $filtreDePage->filtreEnCours()->dateCreation(); ?>; expires=" + now.toUTCString();
- document.cookie = "nbPages=<?php echo $nbResParPage; ?>; expires=" + now.toUTCString();
- document.cookie = "recherche=<?php if(isset($rech)) echo $rech; else echo '';?>; expires=" + now.toUTCString();
- document.cookie = "triDate=<?php if(isset($triDate)) echo $triDate; else echo '';?>; expires=" + now.toUTCString();
- document.cookie = "rechNum=<?php if(isset($rechNum)) echo $rechNum; else echo '';?>; expires=" + now.toUTCString();
- }
- //Envoie au controlleur les information necessaire à l'enregistrement du nouveau filtre
- function enregistrerFiltre(filtreEnCours,libelle) {
- $.ajax({
- type: 'POST',
- url: base_url + 'support/enregistreNouveauFiltre',
- dataType: 'json',
- data: {filtre: filtreEnCours, libelle: libelle},
- success: function() {},
- error: function(xhr, status, error){}
- });
- }
- //Envoie au controlleur les information necessaire à la modification du nom d'un filtre
- function renommerFiltre(filtreEnCours,libelle) {
- $.ajax({
- type: 'POST',
- url: base_url + 'support/renommerFiltre',
- dataType: 'json',
- data: {filtre: filtreEnCours, libelle: libelle},
- success: function() {},
- error: function(xhr, status, error){}
- });
- }
- //Envoie au controlleur les information necessaire à la suppression du filtre
- function supprimerFiltre(filtreEnCours) {
- $.ajax({
- type: 'POST',
- url: base_url + 'support/supprimeFiltreEnregistre',
- dataType: 'json',
- data: {filtre: filtreEnCours},
- success: function() {},
- error: function(){}
- });
- }
- //Rechercher un ticket par numero
- function rechercheNumero(){
- var id = $("#input_numero").val();
- $.ajax({
- type: 'POST',
- dataType:'text',
- url: base_url + 'support/ouvrirTicketNumero/'+id,
- success: function(data) {
- if (data==''){
- alert("Impossible d'ouvrir le ticket");
- return;
- }
- window.open(base_url +data,'_blank');
- },
- error: function(){
- alert("Impossible d'ouvrir le ticket")
- }
- });
- }
- function orienter() {
- var ticketId=$("#iidOrient" ).text();
- var ragentId=$("#ridOrient" ).text();
- var ragentGroupe=$("#ridGroupeOrient" ).text();
- var ragentName=$("#rNomOrient" ).text();
- var inchargeHTMLid='TInChargeDisplayName'+$("#noLigne" ).text();
- var orienterHTMLid='orienter'+$("#noLigne" ).text();
- $.ajax({
- type: 'POST',
- url: base_url + 'support/orienter/',
- data: {iid: ticketId, uid: agentId,rid: ragentId,ridGroupe : ragentGroupe},
- success: function() {
- location.reload();
- },
- error: function(){
- alert("Impossible d'orienter le ticket")
- }
- });
- }
- // Listes déroulantes Filtres
- $('.selectpicker').selectpicker();
- $('.selectpicker').selectpicker('render');
- var appartenance = '<?php echo $appartenance; ?>';
- var etat = '<?php echo $etat; ?>';
- var priorite = '<?php echo $priorite; ?>';
- var produit = '<?php echo $produit; ?>';
- var tab_select = new Array();
- tab_select['appartenanceID'] = appartenance;
- tab_select['etatID'] = etat;
- tab_select['prioriteID'] = priorite;
- tab_select['produitID'] = produit;
- for (var selectId in tab_select)
- {
- var elmt = document.getElementById(selectId);
- for (var i = 0; i < elmt.options.length; i++)
- {
- if(elmt.options[i].value == tab_select[selectId])
- {
- elmt.selectedIndex = i;
- //$(elmt).selectpicker('val', tab_select[selectId]);
- }
- }
- }
- function resetRecherche(){
- document.cookie ='recherche'+ '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
- }
- function resetRechercheNum(){
- document.cookie ='rechNum'+ '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
- }
- </script>
- <script type="text/javascript">
- $(function (){
- $('#date_input').datepicker({
- format: "dd/mm/yyyy",
- language: "fr"
- });
- });
- /*
- * Fleche pour agrandir le tableau
- */
- $(function(){
- $('.button-desappend-tablo').hide();
- // Espace pour mettre le tableau en plein ecran (fonctionne)
- $('.button-append-tablo').on('click', function(){
- // Le bloc de gauche qu'on cache
- $('.left-container-flex').hide();
- // La taille du bloc de droite à 100%
- $('.right-container-flex').css({
- 'flex': '0 0 100%',
- 'margin': '0'
- });
- $('.button-desappend-tablo').show();
- $(this).hide();
- // Position de l'élément en fonction du tableau
- if($('.button-desappend-tablo').is(':visible')){
- $(this).parent('.appendTabloContainer').css({
- 'left' : '-15px'
- });
- }
- });
- // Espace pour remettre à la normale
- $('.button-desappend-tablo').on('click', function(){
- $('.left-container-flex').show();
- $('.right-container-flex').css({
- 'flex': '0 0 72vw',
- 'margin-left': '20px'
- });
- $('.button-append-tablo').show();
- $(this).hide();
- // Position de l'élément en fonction du tableau
- if($('.button-append-tablo').is(':visible')){
- $(this).parent('.appendTabloContainer').css({
- 'left' : '25vw'
- });
- }
- });
- });
- </script>
Add Comment
Please, Sign In to add comment