<?
define('HOST_INSEE', 'avis-situation-sirene.insee.fr');
define('SITE_INSEE', 'http://'. HOST_INSEE .'/');
define('HOST_PJ', 'www.pagesjaunes.fr');
define('SITE_PJ', 'http://'. HOST_PJ .'/');
define('SITE_SOCIETE', 'http://www.societe.com/');

require_once 'default/_includes/includes/insee.class.php';
//include('includes/normad.class.php');
require_once 'default/_includes/includes/fonctions.php';

/* v0.1 Extraction d'informations INSEE en ligne de commande.

	Usage: <?=$argv[0]?> <extract type> <fileIn> <fileInFmt> <fileOut> <fileOutFmt>

	Where <extract type> is :
	id    	siren.tm.fr :     Fiche d'identite INSEE (établissement+entreprise)
	lst  	 	siren.tm.fr :     Liste des etablissements du SIREN (+infos entreprise)
	rncs		societe.com :     Informations du RNCS
	pj    	pagesjaunes.fr :  Données des pages jaunes
	coface	cofacerating.fr : Coface

	Where <fileInFmt> is :
	csv              Fichier IN au format CSV (; ou ,)                SIREN;NIC;REF
	plat             Fichier IN au format plat (blancs significatifs) SIREN_____NIC__REF______________

	Where <fileOutFmt> is : csv / todo

	Le fichier en entrée doit être au format <fileInFmt> et contenir le SIREN en première colonne.
*/

$insee=&new Insee();
function getInfosSirene($sirenLu, $nicLu='') {
	$tabRet=array();

	$invalide=false;
	if (valideSiren($sirenLu)==false) {
		$libelleErreur='SIREN invalide';
		$invalide=true;
	}
	if ( $nicLu<>'' && valideSiren($sirenLu, $nicLu)==false) {
		$libelleErreur='SIRET invalide';
		$invalide=true;
	}
	if ($invalide==true)
	{
		$siret=$sirenLu.$nicLu;
		$str=date('d/m/Y à H:i:s') .';'. $libelleErreur .';'. $siret .';;;;;;;;;;;;;;;;;;;;;;;';
		$fp=fopen(realpath(dirname(__FILE__)) . '/../../framework/_includes/includes/partenaires/insee/debug.csv', 'a');
		fwrite($fp, $str."\r\n");
		fclose($fp);
		$num=$key+1;
		flush();
	} else { // La demande est valide on va à l'INSEE
	/** Paramètre de requête "option" à l'insee :
	** 1: Fiche du siège + Données entreprises
	** 2: Tous les établissements de l'entreprise
	** 3: Un établissement particulier
	** 4: Département
	**/
	if ($nicLu<>'')	$option=3;
	else			$option=1;

	$libelleErreur='Erreur SCRIPT Inconnue';
	$tabInfoEtab=array();
	$tabInfoEntrep=array();

	/** Etape de connexion au site de l'INSEE pour simuler correctement un utilisateur WEB
	**/
	$response1=getUrl(SITE_INSEE);
	$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'SIRENET_Script/Accueil/script_page_accueil.asp');

	$response=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
	$response=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');

	$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_haut.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
	$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
	$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_bas.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');

	$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_haut.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
	$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_bas.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '',  SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');

	if ($nicLu=='') //Faire une boucle de recherche de tous les établissement et y inclure le reste du traitement
	{
		// Requête d'interrogation
		$postData=array(
		'siren'=>$sirenLu,
		'option'=>2,
		'nic'=>'',
		'dep'=>'',
		'listeDep'=>'');

		$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false', $response1["header"]["Set-Cookie"], $postData, SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
		$action='nouveau';
		$referer=SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false';
		$nbRepTot=$pageCour=$nbTotPage=$nbRepParPage=$numEtab=0;
		$tabInfoEtab=array();

		while(true)
		{
			$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/question.asp?action='.$action, $response1["header"]["Set-Cookie"], '', $referer);
			if ($responseQ['code']==302)
			{
				//$libelleErreur='Erreur INSEE inconnue 1';

				// Siren Invalide ou autre erreur non répertoriée !
				$header=$responseQ['header'];
				if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur')
				{
					$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
					$responseErreur=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Erreur_principal.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur',true);
					$pos=strpos($responseErreur['body'], '<td valign=top bgcolor="#FFCC33"><font face=Arial size=2><b>');
					if ($pos>0){
						$posFin=strpos($responseErreur['body'], '</b></font></td>', $pos+60);
						$libelleErreur=trim(substr($responseErreur['body'], $pos+60, $posFin-($pos+60)));
					}	else
					$libelleErreur='Erreur INSEE inconnue';
				}

				// On déroule les URLs d'appels liste des établissements
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
				//sleep(1);
				// Frames réponse niveau Etab
				$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
				$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
				$responseListe=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Liste_principal.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste', true);
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Liste_bas.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
				$responseListe=$responseListe['body'];

				$pos=strpos($responseListe, 'Nombre total de réponses&nbsp;:&nbsp;'."\r\n\t\t\t".'<font face="Arial" size="2"><b>');
				if ($pos>0) {
					$posFin=strpos($responseListe, '</b></font>', $pos+73);
					$nbRepTot=trim(substr($responseListe, $pos+73, $posFin-($pos+73)));
				}
				$pos=strpos($responseListe, '&nbsp;-&nbsp;Affichage de la page&nbsp;'."\r\n\t\t\t".'<font face="Arial" size="2"><b>');
				if ($pos>0) {
					$posFin=strpos($responseListe, '&nbsp;-&nbsp;</b></font>', $pos+75);
					$strPages=trim(substr($responseListe, $pos+75, $posFin-($pos+75)));
					$tabPages=explode('&nbsp;/&nbsp;', $strPages);
					$pageCour=$tabPages[0];
					$nbTotPage=$tabPages[1];
				}
				$pos=strpos($responseListe, '&nbsp;-&nbsp;</b></font>'."\r\n\t\t\t".'<font face="Arial" size="2"><b>');
				if ($pos>0) {
					$posFin=strpos($responseListe, '</b></font>', $pos+60);
					$nbRepParPage=trim(substr($responseListe, $pos+60, $posFin-($pos+60)));
				}

				/* TODO = Récupérer les infos étab + entrep pour chaque ligne du tableau !!!*
				*/
				if ($libelleErreur=='Erreur SCRIPT Inconnue')
					$libelleErreur='';
				for ($i=1;$i<11; $i++)
				{
					if ($numEtab==$nbRepTot)
						break;	// Il n'y a pas plus d'établissement à récupérer ! On sort...

					$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/question.asp?action=detail&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Liste_principal.asp');
					if ($responseQ['code']==302)
					{
						// Siren Invalide ou autre erreur non répertoriée !
						$header=$responseQ['header'];
						if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=siege&numtableau='.$i)
						{
							// On déroule les URLs d'appels fiche siège
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
							//sleep(1);
							// Frames réponse niveau Etab
							$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
							$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
							$responseEtab=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=siege&numtableau='.$i, true);
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=siege&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=siege&numtableau='.$i);
							$responseEtab=$responseEtab['body'];

							// Récupération de la fiche entreprise INSEE
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege&numtableau='.$i.'&origine=liste');
							$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
							$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
							$responseEntreprise=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=entreprise&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/Frame_Reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i, true);
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=entreprise&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/Frame_Reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
							$responseEntreprise=$responseEntreprise['body'];
							$tabInfoEntrep=getDataEntreprise($responseEntreprise);
						}
						elseif (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=etablissement&numtableau='.$i)
						{
							// On déroule les URLs d'appels établissement
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
							//sleep(1);
							// Frames réponse niveau Etab
							$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
							$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
							$responseEtab=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=etablissement&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=etablissement&numtableau='.$i, true);
							$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=etablissement&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=etablissement&numtableau='.$i);
							$responseEtab=$responseEtab['body'];
						}

						$tabInfoEtab=getDataEtablissement($responseEtab);
						$tabRet[]=array_merge($tabInfoEtab, $tabInfoEntrep);

						if ($libelleErreur<>'' && $tabInfoEtab['siret']	=='')	$siret=$sirenLu . $nicLu;
						else													$siret=$tabInfoEtab['siret'];

						$str=	date('d/m/Y à H:i:s')			.';'.
						$libelleErreur							.';'.
						// Siège
						$siret									.';'.
						$tabInfoEtab['active']					.';'.
						$tabInfoEtab['dateAbsActivite']			.';'.
						$tabInfoEtab['typeEtablissement']		.';'.
						$tabInfoEtab['dateMAJ']					.';'.
						$tabInfoEtab['dateCreation']			.';'.
						$tabInfoEtab['raisonSociale']			.';'.
						$tabInfoEtab['Enseigne']				.';'.
						$tabInfoEtab['NafCode']					.';'.
						$tabInfoEtab['NafLib']					.';'.
						$tabInfoEtab['AdresseLigne1']			.';'.
						$tabInfoEtab['AdresseLigne2']			.';'.
						$tabInfoEtab['AdresseLigne3']			.';'.
						$tabInfoEtab['etatJuridique']			.';'.
						$tabInfoEtab['dateEtatJuridique']		.';'.
						// Entreprise
						$tabInfoEntrep['dateCreationEntrep']	.';'.
						$tabInfoEntrep['raisonSocialeEntrep']	.';'.
						$tabInfoEntrep['sigle']					.';'.
						$tabInfoEntrep['NafCodeEntrep']			.';'.
						$tabInfoEntrep['NafLibEntrep']			.';'.
						$tabInfoEntrep['FJCodeEntrep']			.';'.
						$tabInfoEntrep['FJLibEntrep']			.';'.
						$tabInfoEntrep['nbEtabActifs']			.';';

						$fp=fopen(realpath(dirname(__FILE__)) . '/../../framework/_includes/includes/partenaires/insee/debug.csv', 'a');
						fwrite($fp, $str."\r\n");
						fclose($fp);

						$numEtab++;
						$num=$key+1;
						$typeEtablissement=$tabInfoEtab['typeEtablissement'];
//						echo "Question $num/$nbLignes : Demande=$sirenLu$nicLu Etablissement $numEtab/$nbRepTot $typeEtablissement=$siret $libelleErreur\r\n";
						flush();
						sleep(1);

					}//end for
				}//end if
				if ($pageCour==$nbTotPage) {
					// On sort de la boucle de passage à la page de liste suivante car il n'y a plus d'autres pages
					break;
				} else {
					$action='listeplus';
					$referer=SITE_INSEE .'REPERTOIRE/Reponse/Liste_principal.asp';
				}
			}
		} //Fin While
//		die('Boucle');
	}	/* Fin de la boucle option 'lst' */ else
	{
	// Requête d'interrogation
	$postData=array('siren'=>$sirenLu,
					'option'=>$option,
					'nic'=>$nicLu,
					'dep'=>'',
					'listeDep'=>'');

		$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false', $response1["header"]["Set-Cookie"], $postData, SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
		$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/question.asp?action=nouveau', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
		if ($responseQ['code']==302)
		{
			//$libelleErreur='Erreur INSEE inconnue 1';

			// Siren Invalide ou autre erreur non répertoriée !
			$header=$responseQ['header'];
			if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur')
			{
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
				$responseErreur=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Erreur_principal.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur',true);
				$pos=strpos($responseErreur['body'], '<td valign=top bgcolor="#FFCC33"><font face=Arial size=2><b>');
				if ($pos>0){
					$posFin=strpos($responseErreur['body'], '</b></font></td>', $pos+60);
					$libelleErreur=trim(substr($responseErreur['body'], $pos+60, $posFin-($pos+60)));
				}	else
				$libelleErreur='Erreur INSEE inconnue';
			}
			else
			{ if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege')
			// L'établissement demandé est un siège !
			$option=1;

			if ($option==3)
			{
				// On déroule les URLs d'appels établissement
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
				//sleep(1);
				// Frames réponse niveau Etab
				$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
				$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
				$responseEtab=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=etablissement', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement', true);
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=etablissement', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
				$responseEtab=$responseEtab['body'];
				// On recherche si on est bien sur un fiche établissement
				$pos=strpos($responseEtab, '<table cols="2" width="100%"><tr><td bgcolor="#FFCC33" align="left"><font face="Arial" size="2"><B>Fiche Etablissement</B>');
				if ($pos<1)
				$libelleErreur='Erreur SCRIPT Fiche Etablissement non trouvée';
				else
				$libelleErreur='';
				$responseSiege=$responseEtab;
			}
			else
			{
				// On déroule les URLs d'appels Sièges
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
				//sleep(1);
				// Frames réponse niveau sièges
				$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
				$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
				$responseSiege=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege', true);
				$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=siege', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
				$responseSiege=$responseSiege['body'];//strip_tags(html_entity_decode(), '<td>');
				// On recherche si on est bien sur un fiche siège
				$pos=strpos($responseSiege, '<table cols="2" width="100%"><tr><td  bgcolor="#FFCC33" align="left"><font face="Arial" size="2"><B>Fiche siège</B>');
				if ($pos<1)
				$libelleErreur='Erreur SCRIPT Fiche Siège non trouvée';
				else
				$libelleErreur='';
			}

			// Niveau entreprise
			$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege');

			$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail');
			$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=entreprise');
			$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail');
			$responseEntreprise=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=entreprise', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail', true);
			$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=entreprise', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail');
			$responseEntreprise=$responseEntreprise['body'];
			$pos=strpos($responseEntreprise, '<table cols="2" width="100%"><tr><td  bgcolor="#FFCC33" align="left"><font face="Arial" size="2"><B>Fiche Entreprise</B>');
			if ($pos<1) {
				$libelleErreur='Erreur SCRIPT Fiche Entreprise non trouvée';
			}

			/** Recherche des données établissement
			**/
			$tabInfoEtab=getDataEtablissement($responseSiege);

			/** Recherche des données entreprise
			**/
			$tabInfoEntrep=getDataEntreprise($responseEntreprise);

		}
	}

	if ($libelleErreur<>'' && $tabInfoEtab['siret']	=='')	$siret=$sirenLu . $nicLu;
	else													$siret=$tabInfoEtab['siret'];

	$str=	date('d/m/Y à H:i:s')				.';'.
	$libelleErreur								.';'.
	// Siège
	$siret										.';'.
	$tabInfoEtab['active']						.';'.
	$tabInfoEtab['dateAbsActivite']				.';'.
	$tabInfoEtab['typeEtablissement']			.';'.
	$tabInfoEtab['dateMAJ']						.';'.
	$tabInfoEtab['dateCreation']				.';'.
	$tabInfoEtab['raisonSociale']				.';'.
	$tabInfoEtab['Enseigne']					.';'.
	$tabInfoEtab['NafCode']						.';'.
	$tabInfoEtab['NafLib']						.';'.
	$tabInfoEtab['AdresseLigne1']				.';'.
	$tabInfoEtab['AdresseLigne2']				.';'.
	$tabInfoEtab['AdresseLigne3']				.';'.
	$tabInfoEtab['etatJuridique']				.';'.
	$tabInfoEtab['dateEtatJuridique']			.';'.
	// Entreprise
	$tabInfoEntrep['dateCreationEntrep']		.';'.
	$tabInfoEntrep['raisonSocialeEntrep']		.';'.
	$tabInfoEntrep['sigle']						.';'.
	$tabInfoEntrep['NafCodeEntrep']				.';'.
	$tabInfoEntrep['NafLibEntrep']				.';'.
	$tabInfoEntrep['FJCodeEntrep']				.';'.
	$tabInfoEntrep['FJLibEntrep']				.';'.
	$tabInfoEntrep['nbEtabActifs']				.';'.
	//echo $str.'<br/>';

	$fp=fopen(realpath(dirname(__FILE__)) . '/../../framework/_includes/includes/partenaires/insee/debug.csv', 'a');
	fwrite($fp, $str."\r\n");
	fclose($fp);

	$num=$key+1;
	$typeEtablissement=$tabInfoEtab['typeEtablissement'];
//	echo "Ligne $num/$nbLignes : Question=$sirenLu$nicLu Retour $typeEtablissement=$siret $libelleErreur (PJ=$nbPJ)\r\n";
	//echo $str."<br/>";

	flush();
	$tabRet=array(0=>array_merge($tabInfoEntrep, $tabInfoEtab));
	}
	}

	return $tabRet;
}
 ?>