| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 | 
							- <?php
 
- global $myUser,$myFirm,$conf;
 
- if(!$myUser->can('client','read') && !$myUser->can('client_sheet','read',0,array('contains'=>true))) 
 
-     throw new Exception("Permission non accordée");
 
- require_once(__DIR__.SLASH.'Client.class.php');
 
- $filters = array();
 
- Plugin::callHook('client_filter',array(&$filters));
 
- //Colonnes possibles pour la table
 
- $columns = array();
 
- Plugin::callHook('client_search_view',array(&$columns));
 
- //Filtres && colonne tableau en fonction des champs dynamiques
 
- if($myFirm->has_plugin('fr.core.dynamicform') || ($myFirm->id==-1 && Plugin::is_active('fr.core.dynamicform')) ){
 
-     Plugin::need('dynamicform/DynamicForm');
 
-     $options = array();
 
-     if(!empty($_['firm']) && is_numeric($_['firm'])) $options['firm'] = $_['firm'];
 
-    
 
-     //Récuperation des champs custom
 
-     $fields = Dynamicform::list('client-sheet-custom',$options);
 
-     //Ajout des champs custom en filtres
 
-     $filters = array_merge($filters,Dynamicform::get_filters($fields));
 
-     //Ajout des champs custom en colonnes dynamiques
 
-     $columns = array_merge($columns,Dynamicform::get_dynamic_columns($fields));
 
- }
 
- ?>
 
- <div class="row">
 
-     <div class="col-md-12">
 
-         <div class="d-flex my-2 w-100">
 
-             <h4 class="d-inline-block my-auto mx-0 text-uppercase">Liste des <?php echo $conf->get('client_label_plural'); ?></h4>
 
-             <div class="text-left ml-3 d-inline-block noPrint">
 
-                 <div onclick="window.print();" class="btn btn-info rounded-0 btn-squarred noPrint" title="Imprimer la page"><i class="fas fa-print"></i></div>
 
-                 <div onclick="client_client_search({exportMode:true,keepChecked:true});" id="export-clients-btn" class="btn btn-info rounded-0 btn-squarred ml-1 noPrint btn-export" title="Exporter tous les résultats recherché"><i class="fas fa-file-export"></i></div>
 
-                 <?php Plugin::callHook('client_buttons'); ?>
 
-             </div>
 
-             <div class="my-auto ml-auto mr-0 noPrint">
 
-                 <?php if($myUser->can('client', 'edit')) : ?>
 
-                 <a href="index.php?module=client&page=sheet.client" class="btn btn-success right"><i class="fas fa-plus"></i> Ajouter</a>
 
-                 <?php endif; ?>
 
-             </div>
 
-         </div>
 
-         <div class="clear noPrint"></div>
 
-     </div>
 
-     
 
-     <div class="col-md-8 noPrint search-container">
 
-         <select id="filters" <?php echo $myUser->connected()?'data-slug="client-search"':''; ?> data-global-shortcut="#clients-shortcuts" data-user-shortcut="#clients-shortcuts" data-type="filter" data-label="Recherche" data-autosearch="false" data-function="client_client_search">
 
-             <?php foreach ($filters as $filter): echo $filter; endforeach; ?>
 
-         </select>
 
-         <!-- bouttons de recherche rapide pré-enregistrées -->
 
-         <ul id="clients-shortcuts" class="list-unstyled p-0 m-0 mb-2">
 
-             <li class="hidden d-inline-block">
 
-                 <div class="py-0 btn btn-small btn-link" onclick="$('#filters').data('componentObject').filter_search_execute('{{uid}}');">
 
-                     <i class="fas fa-search"></i> {{label}}
 
-                 </div>
 
-             </li>
 
-         </ul>
 
-     </div>
 
-     <div class="col-md-4">
 
-         
 
-     </div>
 
- </div>
 
- <h5 class="results-count"><span></span> Résultat(s) 
 
-     <!-- selection mutliples lignes par checkbox -->
 
-     <div class="btn-group btn-checkbox-action" data-count="0">
 
-       <button type="button" class="btn btn-small btn-light dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 
-         <span class="count font-weight-bold"></span> Selectionnés
 
-       </button>
 
-       <div class="dropdown-menu">
 
-        
 
-         <?php echo Plugin::callHook('client_list_action',array()); 
 
-        ?>
 
-       </div>
 
-     </div>
 
- </h5>
 
- <div class="row">
 
- 	<!-- search results -->
 
- 	<div class="col-xl-12">
 
-     
 
- 		<table id="clients" 
 
-             data-type="search-table" 
 
-             data-slug="client-search-table"  
 
-             data-entity-search="client_client_search"
 
-             data-checkbox-action=".btn-checkbox-action"
 
-             class="table table-striped table-clients" 
 
-             >
 
-             <thead>
 
-                 <tr>
 
-                     <?php  foreach($columns as $row): echo $row['head']; endforeach; ?>
 
-                     <th></th>
 
-                 </tr>
 
-             </thead>
 
-             <tbody>
 
-                 <tr data-id="{{id}}" class="hidden client-state-{{state}}">
 
-                    
 
-                     <?php foreach($columns as $row): echo $row['body']; endforeach;  ?>
 
- 	                <td class="align-middle text-right">
 
-                         <div class="btn-group btn-group-sm" role="group">
 
-                             <a class="btn text-info noPrint" title="Consulter le client" href="index.php?module=client&page=sheet.client&id={{id}}<?php echo isset($_['embedded'])?'&embedded':'' ?>"><i class="<?php echo $myUser->can('client','edit')?'fas fa-pencil-alt':'fas fa-eye'; ?>"></i></a>
 
-                                
 
-                             {{#deletable}}
 
-                             <div class="btn text-danger noPrint" title="Supprimer le client" onclick="client_client_delete(this);">
 
-                                 <i class="far fa-trash-alt"></i>
 
-                             </div>
 
-                             {{/deletable}} 
 
-                         </div>
 
-                     </td>
 
-                 </tr>
 
-            </tbody>
 
-         </table><br>
 
-          <!-- Pagination (data-range définit le nombre de pages max affichées avant et après la page courante) -->
 
-         <ul class="pagination justify-content-center noPrint"  data-range="5">
 
-             <li class="page-item hidden" data-value="{{value}}" title="Voir la page {{label}}" onclick="$(this).parent().find('li').removeClass('active');$(this).addClass('active');client_client_search({keepChecked:true});">
 
-                 <span class="page-link">{{label}}</span>
 
-             </li>
 
-         </ul>
 
- 	</div>
 
- </div>
 
 
  |