Fix: proxy was not used everywhere, timeout was not set everywhere.

This commit is contained in:
Laurent Destailleur 2013-06-07 20:09:15 +02:00
parent c3f5e0c6ee
commit 9fae9da6a1
4 changed files with 20 additions and 13 deletions

View File

@ -1,7 +1,5 @@
<?php
/* Copyright (C) 2008-2011 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2008-2012 Regis Houssin <regis.houssin@capnetworks.com>
* Copyright (C) 2008 Raphael Bertrand (Resultic) <raphael.bertrand@resultic.fr>
/* Copyright (C) 2008-2013 Laurent Destailleur <eldy@users.sourceforge.net>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -35,9 +33,13 @@ function getURLContent($url,$postorget='GET',$param)
{
//declaring of global variables
global $conf, $langs;
global $USE_PROXY, $PROXY_HOST, $PROXY_PORT, $PROXY_USER, $PROXY_PASS;
$USE_PROXY=empty($conf->global->MAIN_PROXY_USE)?0:$conf->global->MAIN_PROXY_USE;
$PROXY_HOST=empty($conf->global->MAIN_PROXY_HOST)?0:$conf->global->MAIN_PROXY_HOST;
$PROXY_PORT=empty($conf->global->MAIN_PROXY_PORT)?0:$conf->global->MAIN_PROXY_PORT;
$PROXY_USER=empty($conf->global->MAIN_PROXY_USER)?0:$conf->global->MAIN_PROXY_USER;
$PROXY_PASS=empty($conf->global->MAIN_PROXY_PASS)?0:$conf->global->MAIN_PROXY_PASS;
dol_syslog("getURLContent URL=".$url);
dol_syslog("getURLContent postorget=".$postorget." URL=".$url." param=".$param);
//setting the curl parameters.
$ch = curl_init();
@ -54,6 +56,9 @@ function getURLContent($url,$postorget='GET',$param)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, empty($conf->global->MAIN_USE_CONNECT_TIMEOUT)?5:$conf->global->MAIN_USE_CONNECT_TIMEOUT);
curl_setopt($ch, CURLOPT_TIMEOUT, empty($conf->global->MAIN_USE_RESPONSE_TIMEOUT)?30:$conf->global->MAIN_USE_RESPONSE_TIMEOUT);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
if ($postorget == 'POST') curl_setopt($ch, CURLOPT_POST, 1);
else curl_setopt($ch, CURLOPT_POST, 0);
@ -67,8 +72,6 @@ function getURLContent($url,$postorget='GET',$param)
if ($PROXY_USER) curl_setopt($ch, CURLOPT_PROXYUSERPWD, $PROXY_USER. ":" . $PROXY_PASS);
}
dol_syslog("getURLContent param=".$param);
//setting the nvpreq as POST FIELD to curl
curl_setopt($ch, CURLOPT_POSTFIELDS, $param);
@ -88,7 +91,7 @@ function getURLContent($url,$postorget='GET',$param)
$rep['curl_error_no']=curl_errno($ch);
$rep['curl_error_msg']=curl_error($ch);
//Execute the Error handling module to display errors.
dol_syslog("getURLContent curl_error array is ".join(',',$rep));
}
else
{

View File

@ -119,7 +119,7 @@ DaylingSavingTime=Heure d'été
CurrentHour=Heure PHP (serveur)
CompanyTZ=Fuseau horaire société (maison mère)
CompanyHour=Heure société (maison mère)
CurrentSessionTimeOut=Temporisation session actuelle
CurrentSessionTimeOut=Délai expiration session actuelle
OSEnv=Environnement OS
Box=Boîte
Boxes=Boîtes
@ -324,8 +324,8 @@ KeyForWebServicesAccess=Clé pour utiliser les Web Services (paramètre "dolibar
TestSubmitForm=Formulaire de test de saisie
ThisForceAlsoTheme=Utiliser ce gestionnaire de menu force aussi le thème quel que soit le choix de thème de l'utilisateur. De plus, ce gestionnaire de menu, spécialisé pour smartphone, ne fonctionne que sur certains téléphones. Utilisez un autre gestionnaire si vous constatez des problèmes.
ThemeDir=Répertoire des thèmes
ConnectionTimeout=Temporisation de connexion
ResponseTimeout=Temporisation de réponse
ConnectionTimeout=Délai expiration de connexion
ResponseTimeout=Délai expiration de réponse
SmsTestMessage=Message de test de __PHONEFROM__ vers __PHONETO__
ModuleMustBeEnabledFirst=Le module <b>%s</b> doit être activé pour utiliser cette fonction.
SecurityToken=Clé de sécurisation des URLs
@ -895,7 +895,7 @@ CompanyFundationDesc=Éditez sur cette page toutes les informations connues sur
DisplayDesc=Vous pouvez choisir ici tous les paramètres liés à l'apparence de Dolibarr
AvailableModules=Modules disponibles
ToActivateModule=Pour activer des modules, aller dans l'espace Configuration (Accueil->Configuration->Modules).
SessionTimeOut=Temporisation des sessions
SessionTimeOut=Délai expiration des sessions
SessionExplanation=Ce nombre garanti que la session n'expire pas avant ce délai, lorsque le nettoyage des sessions est assurés par le mécanisme de nettoyage interne à PHP (et aucun autre). Le nettoyage interne de sessions PHP ne garantie pas que la session expire juste au moment de ce délai. Elle expirera après ce délai, mais au moment du nettoyage des sessions, qui a lieu toutes les <b>%s/%s</b> accès environ, mais uniquement lors d'accès fait par d'autres sessions.<br>Note : sur certains serveurs munis d'un mécanisme de nettoyage de session externe (cron sous Debian, Ubuntu…), le sessions peuvent être détruites après un délai, défini par la valeur par défaut de <strong>session.gc_maxlifetime</strong>, quelle que soit la valeur saisie ici.
TriggersAvailable=Déclencheurs disponibles
TriggersDesc=Les déclencheurs sont des fichiers qui, une fois déposés dans le répertoire <b>htdocs/core/triggers</b>, modifient le comportement du workflow de Dolibarr. Ils réalisent des actions supplémentaires, déclenchées par les événements Dolibarr (création société, validation facture, clôture contrat…).

View File

@ -142,7 +142,8 @@ class MailmanSpip
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, empty($conf->global->MAIN_USE_CONNECT_TIMEOUT)?5:$conf->global->MAIN_USE_CONNECT_TIMEOUT);
curl_setopt($ch, CURLOPT_TIMEOUT, empty($conf->global->MAIN_USE_RESPONSE_TIMEOUT)?30:$conf->global->MAIN_USE_RESPONSE_TIMEOUT);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);

View File

@ -689,6 +689,9 @@ function hash_call($methodName,$nvpStr)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, empty($conf->global->MAIN_USE_CONNECT_TIMEOUT)?5:$conf->global->MAIN_USE_CONNECT_TIMEOUT);
curl_setopt($ch, CURLOPT_TIMEOUT, empty($conf->global->MAIN_USE_RESPONSE_TIMEOUT)?30:$conf->global->MAIN_USE_RESPONSE_TIMEOUT);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 1);