3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2019 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
14 if (!defined('_ECRIRE_INC_VERSION')) {
18 // http://code.spip.net/@install_etape_ldap2_dist
19 function install_etape_ldap2_dist() {
20 echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"');
22 $adresse_ldap = _request('adresse_ldap');
24 $port_ldap = _request('port_ldap');
26 $tls_ldap = _request('tls_ldap');
28 $protocole_ldap = _request('protocole_ldap');
30 $login_ldap = _request('login_ldap');
32 $pass_ldap = _request('pass_ldap');
34 $port_ldap = intval($port_ldap);
38 if ($tls_ldap == 'oui') {
39 if ($port_ldap == 636) {
40 $adresse_ldap = "ldaps://$adresse_ldap";
45 $ldap_link = ldap_connect($adresse_ldap, $port_ldap);
46 $erreur = "ldap_connect($adresse_ldap, $port_ldap)";
49 if (!ldap_set_option($ldap_link, LDAP_OPT_PROTOCOL_VERSION
, $protocole_ldap)) {
51 ldap_set_option($ldap_link, LDAP_OPT_PROTOCOL_VERSION
, $protocole_ldap);
54 if (!ldap_start_tls($ldap_link)) {
55 $erreur = "ldap_start_tls($ldap_link) $adresse_ldap, $port_ldap";
60 $ldap_link = ldap_bind($ldap_link, $login_ldap, $pass_ldap);
61 $erreur = "ldap_bind('$ldap_link', '$login_ldap', '$pass_ldap'): $adresse_ldap, $port_ldap";
67 _T('titre_connexion_ldap'),
68 info_progression_etape(2, 'etape_ldap', 'install/')
69 ), _T('info_connexion_ldap_ok');
70 echo generer_form_ecrire('install', (
71 "\n<input type='hidden' name='etape' value='ldap3' />"
72 . "\n<input type='hidden' name='adresse_ldap' value=\"$adresse_ldap\" />"
73 . "\n<input type='hidden' name='port_ldap' value=\"$port_ldap\" />"
74 . "\n<input type='hidden' name='login_ldap' value=\"$login_ldap\" />"
75 . "\n<input type='hidden' name='pass_ldap' value=\"$pass_ldap\" />"
76 . "\n<input type='hidden' name='protocole_ldap' value=\"$protocole_ldap\" />"
77 . "\n<input type='hidden' name='tls_ldap' value=\"$tls_ldap\" />"
80 echo info_etape(_T('titre_connexion_ldap')), info_progression_etape(1, 'etape_ldap', 'install/', true),
81 "<div class='error'><p>" . _T('avis_connexion_ldap_echec_1') . '</p>',
82 '<p>' . _T('avis_connexion_ldap_echec_2') .
83 "<br />\n" . _T('avis_connexion_ldap_echec_3') .
84 '<br /><br />' . $erreur . '<b> ?</b></p></div>';
87 echo install_fin_html();