extranet/includes/surveillance/surveillance_tri.php

161 lines
4.9 KiB
PHP
Raw Normal View History

2009-05-25 13:19:02 +00:00
<?php
/**
2009-05-25 15:25:44 +00:00
* Retourne le tableau pour l'affichage par d<EFBFBD>faut.
2009-05-25 13:19:02 +00:00
*
* @param string $tab
2009-05-25 15:25:44 +00:00
* Le tableau <EFBFBD> structurer.
2009-05-25 13:19:02 +00:00
* @return array
2009-05-25 15:25:44 +00:00
* Retourne le tableau structur<EFBFBD>
2009-05-25 13:19:02 +00:00
*/
2009-06-12 15:54:43 +00:00
function defaultTriTab($tab){
2009-05-25 13:19:02 +00:00
$tabIndex = array();
$i=0;
$listTrier = array();
foreach($tab as $item){
if(!array_key_exists($item['siren'], $tabIndex)){
//Tableau d'index
$tabIndex[$item['siren']] = $i;
//Cr<43>ation du tableau trier
$listTrier[$i]['siren'] = $item['siren'];
$listTrier[$i]['nic'] = $item['nic'];
$listTrier[$i]['rs'] = $item['rs'];
$listTrier[$i]['cp'] = $item['cp'];
2009-05-25 15:25:44 +00:00
$listTrier[$i]['ville'] = $item['ville'];
$listTrier[$i]['sources'][$item['source']][0] = array(
'email' => $item['email'],
'ref' => $item['ref'],
'dateAjout' => $item['dateAjout'],
'dateDerEnvoi' => $item['dateDerEnvoi'],
2009-05-25 13:19:02 +00:00
);
}else{
2009-05-25 15:25:44 +00:00
$key = $tabIndex[$item['siren']];
$nbSource = count($listTrier[$key]['sources'][$item['source']]);
2009-05-25 13:19:02 +00:00
$source = array(
'email'=>$item['email'],
'ref'=>$item['ref'],
'dateAjout'=>$item['dateAjout'],
'dateDerEnvoi'=> $item['dateDerEnvoi'],
);
2009-05-25 15:25:44 +00:00
$listTrier[$key]['sources'][$item['source']][$nbSource] = $source;
2009-05-25 13:19:02 +00:00
}
2009-05-25 15:25:44 +00:00
$i++;
2009-05-25 13:19:02 +00:00
}
return $listTrier;
}
2009-05-25 15:25:44 +00:00
/**
* Tri la liste des entit<EFBFBD>s surveill<EFBFBD>es suivant le siren.
*
* @param string $tab
* Le tableau a trier.
* @param string $sort
* D<EFBFBD>fini l'ordre de tri (asc ou desc)
* @return array
* Retourne le tableau trier
*/
function defaultTriSiren($tab, $sort = 'asc'){
//Tier listsurveillance par Siren
foreach ($tab as $key => $row) { $siren[$key] = $row['siren']; }
array_multisort($siren, SORT_ASC, $tab);
2009-06-12 15:54:43 +00:00
$listTrier = defaultTriTab($tab);
2009-05-25 15:25:44 +00:00
return $listTrier;
}
2009-05-25 13:19:02 +00:00
/**
* Tri la liste des entit<EFBFBD>s surveill<EFBFBD>es suivant la raison sociale.
*
* @param string $tab
* Le tableau a trier.
* @param string $sort
* D<EFBFBD>fini l'ordre de tri (asc ou desc)
* @return array
* Retourne le tableau trier
*/
function defaultTriRs($tab, $sort = 'asc'){
//Tier listsurveillance par Siren
foreach ($tab as $key => $row) { $rs[$key] = $row['rs']; }
array_multisort($rs, SORT_ASC, $tab);
2009-06-12 15:54:43 +00:00
$listTrier = defaultTriTab($tab);
2009-05-25 13:19:02 +00:00
return $listTrier;
}
2009-05-25 15:25:44 +00:00
/**
* Retourne le tableau pour l'affichage par source.
*
* @param string $tab
* Le tableau <EFBFBD> structurer.
* @return array
* Retourne le tableau structur<EFBFBD>
*/
function sourceTriTab($tab){
return $tab;
}
2009-05-25 13:19:02 +00:00
/**
* Tri la liste des entit<EFBFBD>s surveill<EFBFBD>es suivant le siren.
*
* @param string $tab
* Le tableau a trier.
* @param string $sort
* D<EFBFBD>fini l'ordre de tri (asc ou desc)
* @return array
* Retourne le tableau trier
*/
function sourceTriSiren($tab, $sort = 'asc'){
2009-05-25 15:25:44 +00:00
foreach ($tab as $key => $row) { $siren[$key] = $row['siren']; }
array_multisort($siren, SORT_ASC, $tab);
return $tab;
2009-05-25 13:19:02 +00:00
}
/**
* Tri la liste des entit<EFBFBD>s surveill<EFBFBD>es suivant la raison sociale.
*
* @param string $tab
* Le tableau a trier.
* @param string $sort
* D<EFBFBD>fini l'ordre de tri (asc ou desc)
* @return array
* Retourne le tableau trier
*/
function sourceTriRs($tab, $sort = 'asc'){
2009-05-25 15:25:44 +00:00
foreach ($tab as $key => $row) { $rs[$key] = $row['rs']; }
array_multisort($rs, SORT_ASC, $tab);
return $tab;
2009-05-25 13:19:02 +00:00
}
function sourceTriDateajout($tab, $sort = 'asc'){
2009-05-25 15:25:44 +00:00
$listTrier = $tab;
foreach($listTrier as $item){
2009-05-25 13:19:02 +00:00
$dateAjoutTS = mktime(0, 0, 0, substr($item['dateAjout'],5,2), substr($item['dateAjout'],8,2), substr($item['dateAjout'],0,4));
$dateDerEnvoiTS = mktime(intval(substr($item['dateDerEnvoi'],11,2)), intval(substr($item['dateDerEnvoi'],14,2)), intval(substr($item['dateDerEnvoi'],17,2)), intval(substr($item['dateDerEnvoi'],5,2)), intval(substr($item['dateDerEnvoi'],8,2)), intval(substr($item['dateDerEnvoi'],0,4)));
2009-05-25 15:25:44 +00:00
$item['dateAjoutTS'] = $dateAjoutTS;
$item['dateDerEnvoiTS'] = $dateDerEnvoiTS;
2009-05-25 13:19:02 +00:00
}
//Tri du tableau suivant la date d'ajout
foreach ($listTrier as $key => $row) { $dateAjout[$key] = $row['dateAjoutTS']; }
array_multisort($dateAjout, SORT_ASC, $listTrier);
return $listTrier;
}
function sourceTriDatederenvoi($tab, $sort = 'asc'){
2009-05-25 15:25:44 +00:00
$listTrier = $tab;
foreach($listTrier as $item){
2009-05-25 13:19:02 +00:00
$dateAjoutTS = mktime(0, 0, 0, substr($item['dateAjout'],5,2), substr($item['dateAjout'],8,2), substr($item['dateAjout'],0,4));
$dateDerEnvoiTS = mktime(intval(substr($item['dateDerEnvoi'],11,2)), intval(substr($item['dateDerEnvoi'],14,2)), intval(substr($item['dateDerEnvoi'],17,2)), intval(substr($item['dateDerEnvoi'],5,2)), intval(substr($item['dateDerEnvoi'],8,2)), intval(substr($item['dateDerEnvoi'],0,4)));
2009-05-25 15:25:44 +00:00
$item['dateAjoutTS'] = $dateAjoutTS;
$item['dateDerEnvoiTS'] = $dateDerEnvoiTS;
2009-05-25 13:19:02 +00:00
}
2009-05-25 15:25:44 +00:00
//Tri du tableau suivant la date de dernier envoi
2009-05-25 13:19:02 +00:00
foreach ($listTrier as $key => $row) { $dateDerEnvoi[$key] = $row['dateDerEnvoiTS']; }
array_multisort($dateDerEnvoi, SORT_ASC, $listTrier);
return $listTrier;
}
function sourceTriReference($tab, $sort = 'asc'){
foreach ($tab as $key => $row) { $ref[$key] = $row['ref']; }
array_multisort($ref, SORT_ASC, $tab);
2009-05-25 15:25:44 +00:00
return $tab;
2009-05-25 13:19:02 +00:00
}
?>