gestion des chemins

This commit is contained in:
Michael RICOIS 2011-07-17 13:29:12 +00:00
parent 25d7ff20f5
commit 0de599fd65

View File

@ -1,14 +1,16 @@
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
#!/usr/bin/php
<?php
error_reporting(E_ALL & ~E_NOTICE);
ini_set('memory_limit', '1024M');
/** Durée maximale du script **/
$dureeMaxi=300; // secondes (soit 5 minutes)
/** Interval entre chaque tentative de récupération des Kbis sur le FTP **/
$dureeInterval=5; // secondes
set_time_limit(($dureeMaxi+10));
error_reporting(E_ALL & ~E_NOTICE);
require_once realpath(dirname(__FILE__)).'/../../includes/config.php';
include_once(FWK_PATH.'common/chiffres.php');
include_once(FWK_PATH.'common/dates.php');
include_once(INCLUDE_PATH.'insee/classMInsee.php');
@ -17,6 +19,8 @@ include_once(FWK_PATH.'common/dates.php');
include_once(INCLUDE_PATH.'partenaires/classMBilans.php');
include_once(FWK_PATH.'mail/sendMail.php');
define('PDFTOTEXT', realpath(dirname(__FILE__)).'/../../cgi-bin/pdftotext');
$strInfoScript='Usage : '.basename($argv[0]). " SIREN [PIECE='kbis'] [TYPE=''] [VISU=1] [COURRIER=0] [REF='']
Récupération d'une pièce (kbis par défaut) pour un SIREN.
@ -126,7 +130,8 @@ while (true) {
$erreur=true;
die();
}
shell_exec("/var/www/cgi-bin/pdftotext /tmp/$piece-$siren.pdf /tmp/$piece-$siren.txt");
shell_exec(PDFTOTEXT." /tmp/$piece-$siren.pdf /tmp/$piece-$siren.txt");
$str=file_get_contents("/tmp/$piece-$siren.txt");
//if (preg_match("/((?:[0-9]{9,9})|(?:[0-9]{3,3} [0-9]{3,3} [0-9]{3,3})|(?:[0-9]{3,3}\.[0-9]{3,3}\.[0-9]{3,3})|(?:[0-9]{3,3}-[0-9]{3,3}-[0-9]{3,3}))/", $str, $matches)) {
if (preg_match("/((?:\s[0-9]{9,9})|(?:\s[0-9]{3,3}\s[0-9]{3,3}\s[0-9]{3,3})|(?:\s[0-9]{3,3}\.[0-9]{3,3}\.[0-9]{3,3})|(?:\s[0-9]{3,3}-[0-9]{3,3}-[0-9]{3,3}))/U", $str, $matches)) {
@ -134,7 +139,7 @@ while (true) {
if ($sirenLu==$siren) {
kbisLog($siren, $piece, "OUT : Le nouveau fichier est celui attendu ($sirenLu=$siren)");
copy("/tmp/$piece-$siren.pdf", "/var/www/html/pdf/$piece-$siren.pdf");
copy("/tmp/$piece-$siren.pdf", DOC_WEB_LOCAL."/pdf/$piece-$siren.pdf");
ftp_chdir($conn_id, '/html');
$tabListHtml=ftp_nlist($conn_id, $siren.'*');
foreach ($tabListHtml as $fichierHtml) {
@ -147,95 +152,6 @@ while (true) {
$fp = fopen("/tmp/$piece-commande.log", 'a+');
fwrite($fp, date('Y/m/d H:i:s')." - $siren - Nb fichier HTML : ".count($tabListHtml).print_r($tabListHtml));
fclose($fp);
/*
if (preg_match('/<TD align=left colSpan=2><B>IDENTIFICATION <\/B>(.*)<TD colSpan=2><B>RENSEIGNEMENTS RELATIFS A LA PERSONNE MORALE<\/B>/Uis', $strKbis, $matches))
{
$htmlId=$matches[1];
if (preg_match('/<TD (?:.*) vAlign=top align=left>Dénomination sociale \:<\/TD>(.*)<\/TD><\/TR>/Uis', $htmlId, $matches))
$rs=trim(strip_tags($matches[1]));
if (preg_match('/<TD (?:.*) italic" vAlign=top align=left>Numéro RCS \:<\/TD>(.*)<\/TD><\/TR>/Uis', $htmlId, $matches))
$rcs=trim(strip_tags($matches[1]));
//if (preg_match('/<TD style="FONT-STYLE\: italic" vAlign=top align=left>Date immatriculation \:<\/TD>(.*)<\/TD><\/TR>/Uis', $htmlId, $matches))
// $dateImmat=trim(strip_tags($matches[1]));
}
if (preg_match('/<TD align=left colSpan=2><B>ADMINISTRATION<\/B>(.*)<TD align=left colSpan=2><B>RENSEIGNEMENTS RELATIFS A L\'ACTIVITE COMMERCIALE<\/B>/Uis', $strKbis, $matches))
{
// Les dirigeants provenants de toute autre source sont marqués inactifs
$ret=$iDb->query("UPDATE rncs_dirigeants SET actif=0 WHERE source<>'gre' AND siren=$siren");
$tabDirs=array();
$htmlAd=$matches[1];
$tabTmp=explode('<HR SIZE=1>', $htmlAd);
foreach ($tabTmp as $i=>$htmlDir) {
if ($i==0) continue;
$tabDir=array();
if (preg_match('/<TD (?:.*) vAlign=top>(.*)<\/TD>/Uis', $htmlDir, $matches))
$tabDir['fonction']=trim(strip_tags($matches[1]));
if (preg_match('/<TBODY>(?:.*)<TR>(?:.*)<TD>(.*)<\/TD><\/TR>/Uis', $htmlDir, $matches))
$tabDir['nom']=trim(strip_tags($matches[1]));
if (preg_match('/<TD>\((.*)\)<\/TD><\/TR>/Uis', $htmlDir, $matches))
$tabDir['siren']=trim(strip_tags($matches[1]));
if (preg_match('/<TD>(.*)<\/TD><\/TR>(?:.*)<TR>(?:.*)<TD>représentée par <\/TD><\/TR>(?:.*)<TD>(.*)<\/TD><\/TR>/Uis', $htmlDir, $matches)) {
//$tabDir['rs']=trim(strip_tags($matches[1]));
$tabDir['rep']=trim(strip_tags($matches[2]));
}
if (preg_match('/<TD>né\(e\)(.*)<TR>/Uis', $htmlDir, $matches))
$tabDir['naiss']=trim(strip_tags($matches[1]));
if (preg_match('/<TD>de nationalité (.*)<\/TD><\/TR></Uis', $htmlDir, $matches))
$tabDir['natio']=trim(strip_tags($matches[1]));
if (preg_match('/<TD>demeurant (.*)<\/TD><\/TR></Uis', $htmlDir, $matches))
$tabDir['adresse']=trim(strip_tags($matches[1]));
//$tabDir['html']=$htmlDir;
$tabDirs[]=$tabDir;
$iDb=new WDB();
$nom=$tabDir['nom'];
$rs2=$prenom=$civ='';
if ($tabDir['rep']<>'') {
$nom=$tabDir['rep'];
$rs2=$tabDir['nom'];
}
if (preg_match('/( MONSIEUR&nbsp;| MADAME&nbsp;| MADEMOISELLE&nbsp;)/i', ' '.$nom,$matches2)) {
switch (trim($matches2[1])) {
case 'MONSIEUR&nbsp;': $civ='M'; break;
case 'MADAME&nbsp;': $civ='MME'; break;
case 'MADEMOISELLE&nbsp;': $civ='MLLE'; break;
}
$nom=preg_replace('/( MONSIEUR&nbsp;| MADAME&nbsp;| MADEMOISELLE&nbsp;)/i','',' '.$nom);
}
$tabTmp=explode('&nbsp;', $nom);
$nom=trim(strtr($tabTmp[0],array('&amp;'=>'&')));
$prenom=trim($tabTmp[1]);
if (preg_match('/(\d\d) (janvier|f.vrier|mars|avril|mai|juin|juillet|ao.t|septembre|octobre|novembre|d.cembre) (\d\d\d\d) (.*)/i', $tabDir['naiss'],$matches2))
{
$j=trim($matches2[1]);
$m=trim($matches2[2]);
$a=trim($matches2[3]);
$dateNaiss=Wdate::dateT('dMY', 'Y-m-d', $j.$m.$a);
$lieuNaiss=preg_replace('/^à /','', trim(strtr($matches2[4],array('&nbsp;'=>' ', '&amp;'=>'&'))));
}
$iDb->insert('rncs_dirigeants',
array( 'siren' => $siren,
'raisonSociale' => $rs,
'civilite' => $civ,
'dirSiren' => substr(trim(str_replace(' ','', $tabDir['siren'])),0,9),
'dirRS' => $rs2,
'nom' => $nom,
'prenom' => $prenom,
'naissance_nom' => '',
'naissance_date'=> $dateNaiss,
'naissance_lieu'=> $lieuNaiss,
'fonction_code' => 0000,
'fonction_lib' => $tabDir['fonction'],
'nat' => preg_replace('/^de nationalité /','', trim(strtr($tabDir['natio'],array('&nbsp;'=>' ', '&amp;'=>'&')))),
'adresse' => preg_replace('/^demeurant /','', trim(strtr($tabDir['adresse'],array('&nbsp;'=>' ', '&amp;'=>'&')))),
'actif' => 1,
'dateInsert' => date('YmdHis'),
'source' => 'gre',
), true);
}
}
//debugLog('I',"Liste des dirigeants du kbis :".print_r($tabDirs),__LINE__,__FILE__, __FUNCTION__, __CLASS__);*/
}
}
break;
@ -259,4 +175,4 @@ ftp_close($conn_id);
kbisLog($siren, $piece, "OUT : Fin normale de la récupération du kbis".EOL);
die();
?>
?>