From 248402c4a1ac5e240daf47c67b6faa356463a38d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 31 Mar 2006 19:20:55 +0000 Subject: [PATCH] =?UTF-8?q?Am=E9lioration=20gestion=20du=20LDAP?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/langs/en_US/admin.lang | 29 +++++--- htdocs/langs/fr_FR/admin.lang | 29 +++++--- htdocs/lib/ldap.lib.php | 129 +++++++++++++++++----------------- 3 files changed, 101 insertions(+), 86 deletions(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 0a047e7f700..52da9e80127 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -25,6 +25,7 @@ OtherOptions=Other options OtherSetup=Other setup Modules=Modules ModulesCommon=Common modules +ModulesInterfaces=Interfaces modules ModulesSpecial=Special modules ParameterInDolibarr=Parameter %s LanguageParameter=Language parameter %s @@ -42,6 +43,7 @@ AutoDetectLang=Autodetect (browser language) Rights=Permissions BoxesDesc=Boxes are screen area that show some informations on some pages. You can choose between showing or not a such box by selecting target page en clicking 'Activate', or by clicking the dustbin to disable it. Only boxes about enabled modules are shown. ModulesDesc=Dolibarr modules define which functionality is enabled in software. Some modules require permissions you must grant to users, after enabling module. +ModulesInterfaceDesc=Interface Dolibarr modules allows you to add features depending on external softwares, systems or services. ModulesSpecialDesc=Special modules are very specific or rarely used modules. BoxesAvailable=Boxes available BoxesActivated=Boxes activated @@ -61,7 +63,7 @@ ModuleFamilyProducts=Products Management ModuleFamilyHr=Human Ressource Management ModuleFamilyProjects=Projects/Collaborative work ModuleFamilyOther=Other -ModuleFamilyTechnic=Technical Modules +ModuleFamilyTechnic=Tools or System Modules ModuleFamilyExperimental=Experimental modules ModuleFamilyFinancial=Financial Modules (Accountancy/Treasury) Module0Name=Users & groups @@ -392,27 +394,32 @@ AddSubscriptionIntoAccount=Add subscriptions into bank or cash account, of bank AdherentMailRequired=EMail required to create a new member ##### LDAP setup #### LDAPSetup=LDAP Setup +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not availbale on your PHP +LDAPTypeExample=OpenLdap, Egroupware or Active Directory LDAPServer=LDAP Server LDAPServerPort=LDAP server port LDAPServerPortExample=Default port : 389 -TestConnectLdap=Test connection #LDAPSuffix=LDAP suffix -DNAdmin=Administrator' DN -LDAPPassword=Password -DNUser=Users' DN -DNGroup=Groups' DN -LDAPServerExample=Server adress -#LDAPSuffixExample=ex: dc=company,dc=com +DNAdmin=Administrator DN +LDAPPassword=administrator password +DNUser=Dolibarr users' DN +DNGroup=Dolibarr groups' DN +LDAPServerExample=Server address (ex: localhost, 127.0.0.1, 192.168.0.2) +#LDAPSuffixExample=Complete DN (ex: dc=company,dc=com) DNAdminExample=Complete DN (ex: cn=adminldap,dc=society,dc=com) LDAPPasswordExample=Admin password DNUserExample=Complete DN (ex: ou=users,dc=society,dc=com) DNGroupExample=Complete DN (ex: ou=groups,dc=society,dc=com) DNContactActive=Contacts' synchronization? DNContactActiveYes=Activated synchronization -DNContactActiveExample=Desactivated synchronization -DNContact=Contacts' DN +DNContactActiveExample=Activated/Unactivated synchronization +DNContact=Dolibarr contacts' DN DNContactExample=Complete DN (ex: ou=contacts,dc=society,dc=com) -TypeExample=OpenLdap, Egroupware or Active Directory +LDAPTestConnect=Test LDAP connection +LDAPTestOK=Connect to LDAP server successful +LDAPTestKO=Connect to LDAP server failed +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 ##### Products ##### ProductSetup=Products module setup NumberOfProductShowInSelect=Max number of products in combos select lists (0=no limit) diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 4d78f4b69d0..da53538ce15 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -25,6 +25,7 @@ OtherOptions=Autres options OtherSetup=Divers Modules=Modules ModulesCommon=Modules standards +ModulesInterfaces=Modules interfaces ModulesSpecial=Modules spéciaux ParameterInDolibarr=Variable %s LanguageParameter=Variable langue %s @@ -42,6 +43,7 @@ AutoDetectLang=D Rights=Permissions BoxesDesc=Les boîtes sont des zones d'information réduites qui s'affichent sur certaines pages. Vous pouvez choisir ou non d'activer une boîte en sélectionnant la page cible et en cliquant sur 'Activer', ou en cliquant sur la poubelle pour la désactiver. Seules les boîtes en rapport avec un module actif sont présentées. ModulesDesc=Les modules Dolibarr définissent les fonctionnalités disponibles dans l'application. Certains modules nécessitent des droits qu'il vous faudra affecter aux utilisateurs pour qu'ils puissent accéder à leurs fonctionnalités. +ModulesInterfaceDesc=Les modules d'interfaces sont des modules qui permettent de lier Dolibarr à des systèmes, applications ou services externes. ModulesSpecialDesc=Les modules spéciaux sont des modules à usage très spécifique ou moins courant que les modules standards. BoxesAvailable=Boîtes disponibles BoxesActivated=Boîtes activées @@ -61,7 +63,7 @@ ModuleFamilyProducts=Gestion produits ModuleFamilyHr=Ressources humaines ModuleFamilyProjects=Projets/Travail collaboratif ModuleFamilyOther=Autre -ModuleFamilyTechnic=Modules techniques, interfaces +ModuleFamilyTechnic=Modules outils ou système ModuleFamilyExperimental=Modules expérimentaux (ne pas utiliser en production) ModuleFamilyFinancial=Modules financiers (Compta/trésorerie) Module0Name=Utilisateurs & groupes @@ -75,7 +77,7 @@ Module10Desc=Gestion simple de la comptabilit Module20Name=Propositions commerciales Module20Desc=Gestion des devis/propositions commerciales Module22Name=Mailings -Module22Desc=Gestion des mailings +Module22Desc=Administration et envoi de mailings Module25Name=Commandes clients Module25Desc=Gestion des commandes clients Module30Name=Factures @@ -129,7 +131,7 @@ Module330Desc=Gestion des marque-pages Module400Name=Projets Module400Desc=Gestion des projets au sein des autres modules Module410Name=Webcalendar -Module410Desc=Interfaçage avec le calendrier Webcalendar +Module410Desc=Interface avec le calendrier Webcalendar Module700Name=Dons Module700Desc=Gestion des dons Module1780Name=Catégories @@ -392,16 +394,17 @@ AddSubscriptionIntoAccount=Enregistrer cotisations dans compte bancaire ou caiss AdherentMailRequired=EMail obligatoire pour créer un nouvel adhérent ##### LDAP setup ##### LDAPSetup=Configuration du module LDAP +LDAPFunctionsNotAvailableOnPHP=Les fonctions LDAP ne sont pas disponibles sur votre PHP +LDAPTypeExample=OpenLdap, Egroupware ou Active Directory LDAPServer=Serveur LDAP LDAPServerPort=Port du serveur LDAP LDAPServerPortExample=Port par défaut : 389 -TestConnectLdap=Tester la connexion #LDAPSuffix=Suffix LDAP DNAdmin=DN de l'administrateur -LDAPPassword=Mot de passe -DNUser=DN des utilisateurs -DNGroup=DN des groupes -LDAPServerExample=Adresse du serveur +LDAPPassword=Mot de passe de l'administrateur +DNUser=DN des utilisateurs Dolibarr +DNGroup=DN des groupes Dolibarr +LDAPServerExample=Adresse du serveur (ex: localhost, 127.0.0.1, 192.168.0.2) #LDAPSuffixExample=DN complet (ex: dc=societe,dc=com) DNAdminExample=DN complet (ex: cn=adminldap,dc=societe,dc=com) LDAPPasswordExample=Mot de passe de l'administrateur @@ -409,10 +412,14 @@ DNUserExample=DN complet (ex: ou=users,dc=societe,dc=com) DNGroupExample=DN complet (ex: ou=groups,dc=societe,dc=com) DNContactActive=Synchronisation des contacts ? DNContactActiveYes=Synchronisation activée -DNContact=DN des contacts -DNContactActiveExample=Synchronisation désactivée +DNContactActiveExample=Synchronisation activée/désactivée +DNContact=DN des contacts Dolibarr DNContactExample=DN complet (ex: ou=contacts,dc=societe,dc=com) -TypeExample=OpenLdap, Egroupware ou Active Directory +LDAPTestConnect=Tester la connexion LDAP +LDAPTestOK=Connexion au serveur LDAP réussie +LDAPTestKO=Connexion au serveur LDAP echouée +LDAPSetupForVersion3=Serveur LDAP configuré en version 3 +LDAPSetupForVersion2=Serveur LDAP configuré en version 2 ##### Products ##### ProductSetup=Configuration du module Produits NumberOfProductShowInSelect=Nombre de produits max dans les listes déroulantes (0=aucune limite) diff --git a/htdocs/lib/ldap.lib.php b/htdocs/lib/ldap.lib.php index a7f0e610904..d6883ac7331 100644 --- a/htdocs/lib/ldap.lib.php +++ b/htdocs/lib/ldap.lib.php @@ -1,7 +1,8 @@ - * Copyright (C) 2004 Benoit Mortier - * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2004 Benoit Mortier + * Copyright (C) 2005 Regis Houssin + * Copyright (C) 2006 Laurent Destailleur * * 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 @@ -20,113 +21,113 @@ * * $Id$ * $Source$ - * */ -/*! \file htdocs/lib/ldap.lib.php - \brief Librairie contenant les fonctions pour accèder au serveur ldap. - \author Rodolphe Quiedeville. - \author Benoit Mortier. - \version $Revision$ +/** + \file htdocs/lib/ldap.lib.php + \brief Librairie contenant les fonctions pour accèder au serveur ldap. + \author Rodolphe Quiedeville. + \author Benoit Mortier. + \version $Revision$ - Ensemble des fonctions permettant d'accèder à un serveur ldap. + Ensemble des fonctions permettant d'accèder à un serveur LDAP. */ -/*! - \brief ouverture d'une connection vers le serveur ldap. - \return resource +/** + \brief Ouverture d'une connection vers le serveur LDAP + \return resource */ - function dolibarr_ldap_connect() { - $ldapconnect = ldap_connect(LDAP_SERVER_HOST,LDAP_SERVER_PORT); - - if ($ldapconnect) - { - ldap_set_option($ldapconnect, LDAP_OPT_PROTOCOL_VERSION, LDAP_SERVER_PROTOCOLVERSION); - } - - return $ldapconnect; + global $conf; + + $ldapconnect = ldap_connect($conf->global->LDAP_SERVER_HOST,$conf->global->LDAP_SERVER_PORT); + + if ($ldapconnect) + { + ldap_set_option($ldapconnect, $conf->global->LDAP_OPT_PROTOCOL_VERSION, $conf->global->LDAP_SERVER_PROTOCOLVERSION); + } + + return $ldapconnect; } -/*! + +/** \brief bind au serveur ldap. \param ds \return bool */ - - function dolibarr_ldap_bind($ds) { - if (defined("LDAP_ADMIN_PASS") && LDAP_ADMIN_DN && LDAP_ADMIN_PASS) + global $conf; + + if (defined("LDAP_ADMIN_PASS") && $conf->global->LDAP_ADMIN_DN && $conf->global->LDAP_ADMIN_PASS) { - $ldapbind = ldap_bind($ds, LDAP_ADMIN_DN, LDAP_ADMIN_PASS); + $ldapbind = ldap_bind($ds, $conf->global->LDAP_ADMIN_DN, $conf->global->LDAP_ADMIN_PASS); } - return $ldapbind; + return $ldapbind; } -/*! +/** \brief unbind du serveur ldap. \param ds \return bool */ - function dolibarr_ldap_unbind($ds) { + $ldapunbind = ldap_unbind($ds); - $ldapunbind = ldap_unbind($ds); - - return $ldapunbind; + return $ldapunbind; } -/*! - \brief verification de la version du serveur ldap. - \param ds - \return version +/** + \brief verification de la version du serveur ldap. + \param ds + \return version */ - function dolibarr_ldap_getversion($ds) { - $version = 0; - - ldap_get_option($ds, LDAP_OPT_PROTOCOL_VERSION, $version); - - return $version; + global $conf; + + $version = 0; + + ldap_get_option($ds, $conf->global->LDAP_OPT_PROTOCOL_VERSION, $version); + + return $version; } -/*! - \brief changement de la version du serveur ldap. - \param ds - \param version - \return version +/** + \brief changement de la version du serveur ldap. + \param ds + \param version + \return version */ - - function dolibarr_ldap_setversion($ds,$version) { - $ldapsetversion = ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, $version); + global $conf; + + $ldapsetversion = ldap_set_option($ds, $conf->global->LDAP_OPT_PROTOCOL_VERSION, $version); - return $ldapsetversion; + return $ldapsetversion; } -/*! - \brief permet d'enlever les accents d'une chaine. - \param str - \return string +/** + \brief permet d'enlever les accents d'une chaine. + \param str + \return string */ - function dolibarr_ldap_unacc($str) { - $stu = ereg_replace("é","e",$str); - $stu = ereg_replace("è","e",$stu); - $stu = ereg_replace("ê","e",$stu); - $stu = ereg_replace("à","a",$stu); - $stu = ereg_replace("ç","c",$stu); - $stu = ereg_replace("ï","i",$stu); - $stu = ereg_replace("ä","a",$stu); - return $stu; + $stu = ereg_replace("é","e",$str); + $stu = ereg_replace("è","e",$stu); + $stu = ereg_replace("ê","e",$stu); + $stu = ereg_replace("à","a",$stu); + $stu = ereg_replace("ç","c",$stu); + $stu = ereg_replace("ï","i",$stu); + $stu = ereg_replace("ä","a",$stu); + return $stu; } ?>