extranet/includes/infogreffe/infogreffe_sauvcmd.php
2010-07-08 14:07:20 +00:00

147 lines
3.8 KiB
PHP

<?php
isset($_REQUEST['idCommande']) ?
$idCommande = $_REQUEST['idCommande']:
$idCommande = 0;
isset($_REQUEST['type']) ?
$type = $_REQUEST['type']:
$type = 'G';
//Connection au webservice
$client = new SoapClient(null, array(
'trace' => 1,
'soap_version' => SOAP_1_1,
'location' => WEBSERVICE_URL,
'uri' => WEBSERVICE_URI,
'login' => $_SESSION['tabInfo']['login'],
'password' => $_SESSION['tabInfo']['password'],
));
//Connection à la base de données
$con = mysql_pconnect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
if (!($con === false))
{
if (mysql_select_db(MYSQL_DB, $con) === false)
echo ('<!--Could not select database: ' . mysql_error() .'-->');
}
if($idCommande != 0)
{
if( !empty($_REQUEST['emailCommande'])
&& preg_match('#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#',
$_REQUEST['emailCommande'])
)
{
$email = $_REQUEST['emailCommande'];
$login = $_SESSION['tabInfo']['login'];
$ip = $_SESSION['tabInfo']['ip'];
$tabCommande = array( 'emailCommande' => $email );
mysql_update('commandes', $tabCommande, "login='$login' AND siren='$siren'");
$message = '<p>Votre commande à été mise à jour.</p>';
}
}
else
{
//Génération commande
isset($_REQUEST['info']) ?
$info = unserialize(urldecode($_REQUEST['info'])) :
$info = false;
$lib = empty($info['decision']) ? '' : $info['decision'];
$email = $_REQUEST['emailCommande'];
if(!empty($email))
{
$login = $_SESSION['tabInfo']['login'];
$ip = $_SESSION['tabInfo']['ip'];
$fp=fopen(PATH_LOGS.'commande_greffe.csv', 'a');
fwrite($fp,
date('Y/m/d H:i:s').
";$siren;".$email.';'.$login.';'.$email.';'.$ip."\n");
fclose($fp);
$tabCommande = array(
'idUser' => $_SESSION['tabInfo']['id'],
'emailCommande' => $email,
'login' => $login,
'siren' => $siren,
'refDocument' => $ref,
'libDocument' => $lib,
'typeCommande' => $type,
'dateCommande' => date('YmdHis')
);
//Enregistrement dans la bdd des informations de la commande
$idCommande = mysql_insert('commandes', $tabCommande);
FB::log($idCommande, 'idCommande');
if(INFOGREFFE_DEBUG) $idCommande = $idCommande.'_TEST';
if($type=='G')
{
//Commande
switch($vue)
{
case 'actes':
$reponse = getGreffeActes(
$siren,
'C',
$ref,
$idCommande);
break;
case 'bilans':
$reponse = getGreffeBilans(
$siren,
'C',
$ref,
$idCommande);
break;
case 'statuts':
$reponse = getGreffeStatut(
$siren,
'C',
$ref,
$idCommande);
break;
}
}
if( isset($reponse) && !empty($reponse['error']) &&
$reponse['error']['errNum']!=17 ){
if(in_array($erreurStop, $reponse['error']))
{
$message = $reponse['error']['errNum'].' - '.
$reponse['error']['errMsg'];
}else{
$message = 'Une erreur s\'est produite'.
' lors du passage de votre commande.';
}
if(!INFOGREFFE_DEBUG)
$client->setLog('greffe_'.$vue, $siren, 0,
'Erreur '.$reponse['error']['errNum']);
} else {
//Mise à jour de la commande dans la bdd
mysql_update('commandes', array('statutCommande'=>0),
'idCommande = '.$idCommande);
$message =
'Votre commande a été enregistré le '.
date('d').'/'.date('m').'/'.date('Y').
' à '.date('G').' h '.date('i').
' sous la référence '.$type.$idCommande;
//Envoi mail de commande courrier
if($type=='C'){
sendCmdMail(
'[COMMANDE PIECES] - '.'COMMANDE DE '.strtoupper($vue),
'COMMANDE DE '.strtoupper($vue).
' en courrier manuel <br/>'.EOL.
'Ref Scores et Décision : '.$ref.EOL.
'pour login '.$_SESSION['tabInfo']['login'].EOL
);
}
if(!INFOGREFFE_DEBUG)
$client->setLog('greffe_'.$vue, $siren, 0, $ref);
}
}else{
$message =
'Votre commande n\'a pas été prise en compte.'.
'Vous n\'avez pas saisie d\'adresse email';
}
}