160 lines
5.9 KiB
PHP
160 lines
5.9 KiB
PHP
<?php
|
|
// --------------------------------------------------------------------------- //
|
|
// telechargement.php
|
|
// --------------------------------------------------------------------------- //
|
|
$type = $_POST['type' ];
|
|
if ($type == 'moncompte' ||
|
|
$type == 'administration') {
|
|
$type = 'consommation';
|
|
}
|
|
$start = $_POST['start'];
|
|
$return = '';
|
|
|
|
// --------------------------------------------------------------------------- //
|
|
// Parametres supplementaires
|
|
// --------------------------------------------------------------------------- //
|
|
if (isset($_POST['argv']) == true) {
|
|
$firephp->log("argv='$_POST[argv]'");
|
|
}
|
|
$idClient = 0;
|
|
if (empty($_POST['argv']) == false) {
|
|
$argv = explode(',', $_POST['argv']);
|
|
for ($i = 0; $i < count($argv); $i += 2) {
|
|
if (empty($argv[$i]) == false) {
|
|
$$argv[$i] = $argv[$i + 1];
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($start == 1) {
|
|
// --------------------------------------------------------------------------- //
|
|
// Recuperation de l'url du fichier
|
|
// --------------------------------------------------------------------------- //
|
|
$client = new SoapClient(null,
|
|
array('trace' => 1,
|
|
'soap_version' => SOAP_1_1,
|
|
'location' => 'http://78.31.45.206/ws2/',
|
|
'uri' => 'http://78.31.45.206/',
|
|
'login' => $_SESSION['tabInfo']['login'],
|
|
'password' => $_SESSION['tabInfo']['password']));
|
|
try {
|
|
switch ($type) {
|
|
// ------------------------------------------------------------------- //
|
|
// Surveillance
|
|
// ------------------------------------------------------------------- //
|
|
case 'surveillance':
|
|
$res = $client->
|
|
getListeSurveillancesCsv($_POST['menuD'],
|
|
$_SESSION['tabInfo']['login']);
|
|
break;
|
|
// ------------------------------------------------------------------- //
|
|
// Consommation
|
|
// ------------------------------------------------------------------- //
|
|
case 'consommation':
|
|
$date = substr($_POST['menuD'], 3, 4).
|
|
substr($_POST['menuD'], 0, 2);
|
|
$detail = ($_POST['caseC'] == 'true') ? true : false;
|
|
if (isset($_POST['caseC2']) == true) {
|
|
$tous = ($_POST['caseC2'] == 'true') ? true : false;
|
|
} else {
|
|
$tous = false;
|
|
}
|
|
if (!isset($_POST['argv'])) {
|
|
$login = '';
|
|
}
|
|
$firephp->log("date='$date'");
|
|
$firephp->log("detail='$detail'");
|
|
$firephp->log("idClient='$idClient'");
|
|
$firephp->log("login='$login'");
|
|
$firephp->log("tous='$tous'");
|
|
$res = $client->
|
|
getLogsClients($date, $detail, $idClient, $login, $tous);
|
|
break;
|
|
// ------------------------------------------------------------------- //
|
|
// Portefeuille
|
|
// ------------------------------------------------------------------- //
|
|
case 'portefeuille':
|
|
$login = $_SESSION['tabInfo']['login'];
|
|
$idClient = $_SESSION['tabInfo']['idClient'];
|
|
$res = $client->getPortefeuilleCsv($login, $idClient);
|
|
break;
|
|
}
|
|
if (isset($res['result']['Url']) == true) {
|
|
$return = $res['result']['Url'];
|
|
} else {
|
|
$return = 'FALSE';
|
|
}
|
|
} catch (SoapFault $e) {
|
|
require_once 'soaperror.php';
|
|
processSoapFault($client, $e, $_SESSION['tabInfo']);
|
|
exit;
|
|
}
|
|
} else {
|
|
// --------------------------------------------------------------------------- //
|
|
// Recuperation du fichier
|
|
// --------------------------------------------------------------------------- //
|
|
require_once 'common/curl.php';
|
|
|
|
$url = (isset($_POST['url']) == true) ? $_POST['url'] : '';
|
|
$path = PATH_SITE.'/cache/'.$type.'/';
|
|
|
|
// Recuperation du nom du fichier
|
|
$tableau = explode('/', $url);
|
|
$file = $tableau[sizeof($tableau) - 1];
|
|
|
|
// Suppression du fichier si le temps de cache est depasse
|
|
if (file_exists($path.$file)){
|
|
$dateFile = filemtime($path.$file);
|
|
$now = mktime(date('G'), date('i'), date('s'),
|
|
date('m') , date('d'), date('Y'));
|
|
$maxTime = mktime(date('G',$dateFile)+1, date('i',$dateFile),
|
|
date('s',$dateFile), date('m',$dateFile),
|
|
date('d',$dateFile), date('Y',$dateFile));
|
|
if (in_array(ENVIRONNEMENT, array('REC','DEV')) || $maxTime-$now<0) {
|
|
unlink($path.$file);
|
|
}
|
|
}
|
|
|
|
// Recuperation du fichier sur le serveur
|
|
if (!file_exists($path.$file)) {
|
|
// On check si le fichier est present sur l'url
|
|
$url_tab = getUrl($url, '', '', '', false);
|
|
if ($url_tab['code'] == 408 ||
|
|
$url_tab['code'] == 400 ||
|
|
$url_tab['code'] == 404) {
|
|
// Fichier non disponible
|
|
$return = 'FALSE';
|
|
} else {
|
|
// Ecriture du fichier sur le serveur en local
|
|
$body = $url_tab['body'];
|
|
$fp = fopen($path.$file, 'w');
|
|
fwrite($fp, $body);
|
|
fclose($fp);
|
|
$return = 'FALSE';
|
|
}
|
|
}
|
|
|
|
// Le fichier existe sur l'extranet
|
|
if (file_exists($path.$file)) {
|
|
if (filesize($path.$file) > 0) {
|
|
$return = '<u><a title="Télécharger le fichier"'.
|
|
' target="_blank" href="/fichier/'.$type.'/'.$file.
|
|
'">Cliquez-ici pour télécharger'.
|
|
' le fichier.</a></u>';
|
|
} else {
|
|
switch($type){
|
|
case 'surveillance':
|
|
$return = 'Aucune surveillance enregistrée.';
|
|
break;
|
|
case 'consommation':
|
|
$return = 'Aucune consommmation enregistrée.';
|
|
break;
|
|
case 'portefeuille':
|
|
$return = 'Fichier vide.';
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
echo $return;
|