From 34dd68f32de5a747ab4ebec368095ea2ba5b1e58 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 26 Jun 2004 23:00:30 +0000 Subject: [PATCH] Fix: Meilleur gestion du "test de connexion" webcalendar. --- htdocs/admin/webcalendar.php | 176 +++++++++++++++-------------------- 1 file changed, 75 insertions(+), 101 deletions(-) diff --git a/htdocs/admin/webcalendar.php b/htdocs/admin/webcalendar.php index b8c7df14f79..cda2caf89b1 100644 --- a/htdocs/admin/webcalendar.php +++ b/htdocs/admin/webcalendar.php @@ -25,7 +25,7 @@ require("./pre.inc.php"); if (!$user->admin) - accessforbidden(); +accessforbidden(); llxHeader(); @@ -35,70 +35,48 @@ print '
'; $def = array(); -// positionne la variable pour le test d'affichage de l'icone +$phpwebcalendar_url=$_POST["phpwebcalendar_url"]; +$phpwebcalendar_host=$_POST["phpwebcalendar_host"]; +$phpwebcalendar_dbname=$_POST["phpwebcalendar_dbname"]; +$phpwebcalendar_user=$_POST["phpwebcalendar_user"]; +$phpwebcalendar_pass=$_POST["phpwebcalendar_pass"]; +$phpwebcalendar_pass2=$_POST["phpwebcalendar_pass2"]; +$actionsave=$_POST["save"]; +$actiontest=$_POST["test"]; -if ($action == 'save') +// Positionne la variable pour le test d'affichage de l'icone +if ($actionsave) { - if(trim($phpwebcalendar_pass) == trim($phpwebcalendar_pass2)) - { - $conf = new Conf(); - $conf->db->host = $phpwebcalendar_host; - $conf->db->name = $phpwebcalendar_dbname; - $conf->db->user = $phpwebcalendar_user; - $conf->db->pass = $phpwebcalendar_pass; + if (trim($phpwebcalendar_pass) == trim($phpwebcalendar_pass2)) + { + $sql = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_URL',value='".$phpwebcalendar_url."', visible=0"; + $sql1 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_HOST',value='".$phpwebcalendar_host."', visible=0"; + $sql2 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_DBNAME', value='".$phpwebcalendar_dbname."', visible=0"; + $sql3 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_USER', value='".$phpwebcalendar_user."', visible=0"; + $sql4 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_PASS', value='".$phpwebcalendar_pass."', visible=0"; - $webcal = new DoliDb(); - - if ($webcal->connected == 1) - { - $sql = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = - 'PHPWEBCALENDAR_URL',value='".$phpwebcalendar_url."', visible=0"; - - $sql1 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = - 'PHPWEBCALENDAR_HOST',value='".$phpwebcalendar_host."', visible=0"; - - $sql2 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_DBNAME', - value='".$phpwebcalendar_dbname."', visible=0"; - - $sql3 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_USER', - value='".$phpwebcalendar_user."', visible=0"; - - $sql4 = "REPLACE INTO ".MAIN_DB_PREFIX."const SET name = 'PHPWEBCALENDAR_PASS', - value='".$phpwebcalendar_pass."', visible=0"; - - if ($db->query($sql) && $db->query($sql1) && $db->query($sql2) && $db->query($sql3) && - $db->query($sql4)) - { - - // la constante qui a été lue en avant du nouveau set - // on passe donc par une variable pour avoir un affichage cohérent - - define("PHPWEBCALENDAR_URL", $phpwebcalendar_url); - define("PHPWEBCALENDAR_HOST", $phpwebcalendar_host); - define("PHPWEBCALENDAR_DBNAME", $phpwebcalendar_dbname); - define("PHPWEBCALENDAR_USER", $phpwebcalendar_user); - define("PHPWEBCALENDAR_PASS", $phpwebcalendar_pass); - - $ok = 1; - } - else - print "

erreur d'enregistement dans la base de données $db !


"; - } - else - { - $ok = 0; - } - } - else - { - print "

le mot de passe n'est pas identique, veuillez le reintroduire


\n"; - } + if ($db->query($sql) && $db->query($sql1) && $db->query($sql2) && $db->query($sql3) && $db->query($sql4)) + { + // la constante qui a été lue en avant du nouveau set + // on passe donc par une variable pour avoir un affichage cohérent + define("PHPWEBCALENDAR_URL", $phpwebcalendar_url); + define("PHPWEBCALENDAR_HOST", $phpwebcalendar_host); + define("PHPWEBCALENDAR_DBNAME",$phpwebcalendar_dbname); + define("PHPWEBCALENDAR_USER", $phpwebcalendar_user); + define("PHPWEBCALENDAR_PASS", $phpwebcalendar_pass); + $ok = "

Les identifiants webcalendar ont été sauvegardés.

"; + } + } + else + { + $ok="

Le mot de passe n'est pas identique, veuillez le saisir à nouveau


\n"; + } } /** - * Affichage du formulaire de saisie - */ + * Affichage du formulaire de saisie + */ print "\n
@@ -107,73 +85,69 @@ print "\nValeur - - + + - - + + - - + + - - + + - - + + - - + + - +\n"; - clearstatcache(); +clearstatcache(); - print " +print "
Adresse URL d'accès au calendrierAdresse URL d'accès au calendrier
Serveur où la base du calendrier est hébergéeServeur où la base du calendrier est hébergée
Nom de la base de donnéesNom de la base de données
Identifiant d'accès à la baseIdentifiant d'accès à la base
Mot de passe d'accès à la baseMot de passe d'accès à la base
Mot de passe (vérification)Mot de passe (vérification)
+ + +
-
\n"; /** - * test de la connection a la database webcalendar - * - */ +* Test de la connection a la database webcalendar +* +*/ +if ($ok) print "$ok
"; - print '
test de connection à la database
'; +if ($actiontest) +{ + $conf = new Conf(); - if($ok) - print "

la connection à la base de données webcalendar $phpwebcalendar_dbname à réussi


"; + $conf->db->host = $phpwebcalendar_host; + $conf->db->name = $phpwebcalendar_dbname; + $conf->db->user = $phpwebcalendar_user; + $conf->db->pass = $phpwebcalendar_pass; - if ($_GET["action"] == 'test') - { - $conf = new Conf(); - $conf->db->host = $phpwebcalendar_host; - $conf->db->name = $phpwebcalendar_dbname; - $conf->db->user = $phpwebcalendar_user; - $conf->db->pass = $phpwebcalendar_pass; + $webcal = new DoliDb(); - $webcal = new DoliDb(); + if ($webcal->connected == 1) + { + print "

La connection à la base de données '$phpwebcalendar_dbname' à réussi


"; + $webcal->close(); + } + else + print "

La connection à la base de données '$phpwebcalendar_dbname' à échoué.


"; +} - if ($webcal->connected == 1) - { - print "

la connection à la base de données webcalendar $phpwebcalendar_dbname à - réussi


"; - $webcal->close(); - } - else - print "

la connection à la base de données webcalendar $phpwebcalendar_dbname à - échoué


"; - } - $db->close(); - - llxFooter(); +llxFooter(); ?>