'."\n";
$output.= '
'."\n";
$output.= '
';
$output.= '
';
$output.= '
'."\n";
$output.= '
'."\n";
//Champ spécial suivant source
$encours = '';
if(isset($_REQUEST['encours'])){
$encours = $_REQUEST['encours'];
}
if ($source=='score'){
$output.= '
'."\n";
$output.= ''."\n";
} else {
$texte = 'Mettre sous surveillance ';
if( !empty($source) ) {
$texte.= $assocSourceTxt[$source];
}
$output.= '
';
$output.= lienSousSurveillance($texte,
'Ajouter la surveillance', $source, $siret);
$output.= '
'."\n";
}
return $output;
}
/**
* Gère la détection des droits et des préférences pour l'affichage
* de la surveillance.
* @param string $page
* La page ou l'on affiche le formulaire, détermine le type
* de surveillance.
* @param string $siret
* L'établissement à surveiller.
* @return void
*/
function getSurveillance($source, $siret){
$assocSourceDroit = assocSourceDroit();
$return = '';
$notEmail = array('testreunica', 'reunicacsf');
if (!empty($source) &&
array_key_exists($source, $assocSourceDroit) &&
hasPerm($assocSourceDroit[$source]) ){
$listSurv = inSurveillance($source, $siret);
if (hasPref('voirsurv') && $listSurv!==FALSE){
$return = dInfoSurveillance($listSurv, $source, $siret);
}else{
$return = formSurveillance($source, $siret, $notEmail);
}
}else{
$listSurv = inSurveillance('', $siret);
if (hasPref('voirsurv') && $listSurv!==FALSE){
$return = dInfoSurveillance($listSurv, '', $siret);
} else {
$return = formSurveillance('', $siret, $notEmail);
}
}
return $return;
}
/**
* Renvoie le code HTML pour le lien de surveillance
* @param string $texte
* @param string $titre
* @param string $source
* @param string $siret
*/
function lienSousSurveillance($texte, $titre, $source, $siret){
$output = '
'. $texte . '';
return $output;
}
/**
* Affiche les informations de surveillance
* @param array | boolean $listSurv
* @param string $source
* @param string $siret
*/
function dInfoSurveillance($listSurv, $source, $siret){
$output = '';
if (is_array($listSurv) && count($listSurv)>0){
$output.= '
L\'entité est ' .
lienSousSurveillance('sous surveillance',
'Ajouter la surveillance', $source, $siret);
$sourceTxt = assocSourceTxt();
$cSource = 0;
foreach ($listSurv as $source => $info){
$cSource++;
$ref = $info['ref'];
$output.= '
'.$sourceTxt[$source].'';
if ($cSource
getSurveillances($siret,$source);
$survSource = $result['results']['reponses'];
if (count($survSource)>0 ){
$find = FALSE;
if(strlen($siret)>9) $siret = substr($siret, 0, 9);
if (!empty($source)){
foreach($survSource as $item){
if ($item['siren'] == $siret &&
$item['source'] == $source)
{
$find[$item['source']] = array(
'email' => $item['email'],
'ref' => $item['ref'],
'dateAjout' => $item['dateAjout'],
'dateDerEnvoi' => $item['dateDerEnvoi'],
);
break;
}
}
} else {
$find = array();
FB::log($survSource, 'SURV');
foreach($survSource as $item){
if ($item['siren'] == $siret){
$find[$item['source']] = array(
'email' => $item['email'],
'ref' => $item['ref'],
'dateAjout' => $item['dateAjout'],
'dateDerEnvoi' => $item['dateDerEnvoi'],
);
}
}
}
return $find;
}else{ return false; }
}catch(SoapFault $fault){
return false;
}
}
/**
* Envoi la surveillance au webservice
*
* @param array $tabForm
* Le type de surveillance.
* @return mixed
* Retourne la réponse du webservice ou false
*/
function setSurveillance($tabForm)
{
global $client;
$siret = $tabForm['siret'];
$email = $tabForm['email'];
$ref = $tabForm['ref'];
$source = $tabForm['source'];
isset($tabForm['encours']) && !empty($tabForm['encours']) ?
$encours = $tabForm['encours'] : $encours = 0;
//Vérification de l'encours (chiffres)
if (!preg_match('/([0-9]+)/', $encours)){
return 'Encours incorrect';
exit;
}
//Mise en surveillance pour une liste de sources
if ( is_array($source) ){
foreach ( $source as $s ){
try {
$result = $client->setSurveillance($siret, $email, $ref, $s,
false, $encours);
$result = '';
}catch(SoapFault $fault){
$result = false;
}
}
//Mise en surveillance pour une source
} else {
try{
$result = $client->setSurveillance($siret, $email, $ref, $source,
false, $encours);
$result = '';
}catch (SoapFault $fault){
$result = false;
}
}
return $result;
}
/**
* Supprime la surveillance
* @param string $siret
* L'établissement surveillé.
* @param $email
* L'email enregistré pour la surveillance
* @param $ref
* La référence ajouté pour cette surveillance
* @param $source
* La source pour cette surveillance
* @return mixed
* Retourne la réponse du webservice ou false
*/
function deleteSurveillance($siret, $email, $ref, $source){
global $client;
try{
$result = $client->setSurveillance($siret, $email, $ref, $source, TRUE);
return TRUE;
}catch(SoapFault $fault){
return FALSE;
}
}
?>