extranet/www/pages/ajax/conso.php

78 lines
2.7 KiB
PHP
Raw Normal View History

<?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<75>ration de l'url pour le t<>l<EFBFBD>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<75>ration du nom du fichier
$tableau = explode('/',$url);
$file = $tableau[sizeof($tableau)-1];
//Suppression du fichier si le temps de cache est d<>pass<73>
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<75>ration du fichier sur le serveur
if ( !file_exists(PATH_DATA.'/conso/'.$file))
{
$firephp->info('D<>marage recup<75>ration du fichier');
//On check si le fichier est pr<70>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<EFBFBD>charger le fichier" target="_blank" href="/datafile.php?q='.$file.'&type=conso">Cliquez-ici pour t<>l<EFBFBD>charger le fichier.</a></u>';
}elseif (file_exists(PATH_DATA.'/conso/'.$file) && filesize(PATH_DATA.'/conso/'.$file)==0){
$return = 'Aucune consommation enregistr<74>.';
}
}
print $return;