78 lines
2.7 KiB
PHP
78 lines
2.7 KiB
PHP
<?php
|
|
require_once 'common/dates.php';
|
|
require_once 'common/curl.php';
|
|
|
|
isset($_REQUEST['start'])? $start=$_REQUEST['start'] : $start=0;
|
|
isset($_REQUEST['login'])? $login=$_REQUEST['login'] : $login='';
|
|
isset($_REQUEST['date'])? $date=substr($_REQUEST['date'],3,4).substr($_REQUEST['date'],0,2) : $date=0;
|
|
isset($_REQUEST['url'])? $url=$_REQUEST['url'] : $url='';
|
|
(isset($_REQUEST['details']) && $_REQUEST['details']=='true')? $details=1 : $details=0;
|
|
isset($_REQUEST['idClient'])? $idClient=$_REQUEST['idClient'] : $idClient=0;
|
|
$firephp->log($details,'details');
|
|
$return = '';
|
|
|
|
//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'],
|
|
));
|
|
|
|
//Récupération de l'url pour le téléchargement du fichier
|
|
$firephp->log($start, 'start');
|
|
if($start==1){
|
|
try {
|
|
$O = $client->getLogsClients($date, $details, $idClient, $login);
|
|
$logs = $O['result'];
|
|
$url = $logs['Url'];
|
|
$return = $url;
|
|
} catch (SoapFault $fault) {
|
|
require_once 'soaperror.php';
|
|
processSoapFault($client,$fault,$_SESSION['tabInfo']);
|
|
exit;
|
|
}
|
|
}else{
|
|
$firephp->log($url, 'url');
|
|
//Récupération du nom du fichier
|
|
$tableau = explode('/',$url);
|
|
$file = $tableau[sizeof($tableau)-1];
|
|
|
|
//Suppression du fichier si le temps de cache est dépassé
|
|
if( file_exists(PATH_DATA.'/conso/'.$file) && filemtime(PATH_DATA.'/conso/'.$file) > mktime(date("H")+4, date("i"), date("s"), date("m"), date("d"), date("Y")) )
|
|
{
|
|
unlink(PATH_DATA.'/conso/'.$file);
|
|
}
|
|
|
|
//Récupération du fichier sur le serveur
|
|
if ( !file_exists(PATH_DATA.'/conso/'.$file))
|
|
{
|
|
$firephp->info('Démarage recupération du fichier');
|
|
//On check si le fichier est présent sur l'url
|
|
(isset($_REQUEST['url']) && url!='')? $url=$_REQUEST['url']: '';
|
|
$page = getUrl($url, '', '', '', false);
|
|
//Fichier non disponible
|
|
if($page['code']==408 || $page['code']==400 || $page['code']==404){
|
|
$return = 'FALSE';
|
|
//Ecriture du fichier sur le serveur en local
|
|
}else{
|
|
$body = $page['body'];
|
|
$fp = fopen(PATH_DATA.'/conso/'.$file, 'w');
|
|
fwrite($fp, $body);
|
|
fclose($fp);
|
|
$return = 'FALSE';
|
|
}
|
|
}
|
|
|
|
//Le fichier existe sur l'extranet, etc....
|
|
if (file_exists(PATH_DATA.'/conso/'.$file) && filesize(PATH_DATA.'/conso/'.$file)>0)
|
|
{
|
|
$firephp->info('Fichier sur le serveur local');
|
|
$return = '<u><a title="Télécharger le fichier" target="_blank" href="/datafile.php?q='.$file.'&type=conso">Cliquez-ici pour télécharger le fichier.</a></u>';
|
|
}elseif (file_exists(PATH_DATA.'/conso/'.$file) && filesize(PATH_DATA.'/conso/'.$file)==0){
|
|
$return = 'Aucune consommation enregistré.';
|
|
}
|
|
}
|
|
print $return;
|