Index: branches/2.2/preferences/changepassword.php
===================================================================
--- branches/2.2/preferences/changepassword.php	(revision 3279)
+++ branches/2.2/preferences/changepassword.php	(revision 3296)
@@ -11,4 +11,67 @@
 	\**************************************************************************/
 
+function grava_senha_criptografada_com_certificado_no_ldap($aux_uid,$aux_senha)
+   {
+	require_once(PHPGW_SERVER_ROOT . '/security/classes/CertificadoB.php');
+
+        if ( (!empty($GLOBALS['phpgw_info']['server']['ldap_master_host'])) &&
+		(!empty($GLOBALS['phpgw_info']['server']['ldap_master_root_dn'])) &&
+		(!empty($GLOBALS['phpgw_info']['server']['ldap_master_root_pw'])) )
+            {
+	        $ldap_context = $GLOBALS['phpgw_info']['server']['ldap_context'];
+                $ldap_servidor = $GLOBALS['phpgw_info']['server']['ldap_master_host'];
+                $ldap_dn = $GLOBALS['phpgw_info']['server']['ldap_master_root_dn'];
+                $ldap_passwd = $GLOBALS['phpgw_info']['server']['ldap_master_root_pw'];
+            }
+        else
+            {
+                $ldap_context = $GLOBALS['phpgw_info']['server']['ldap_context'];
+                $ldap_servidor = $GLOBALS['phpgw_info']['server']['ldap_host'];
+                $ldap_dn = $GLOBALS['phpgw_info']['server']['ldap_root_dn'];
+                $ldap_passwd = $GLOBALS['phpgw_info']['server']['ldap_root_pw'];
+            }
+
+	$cc=ldap_connect($ldap_servidor);
+
+        if($GLOBALS['phpgw_info']['server']['ldap_version3'])
+            {
+		ldap_set_option($cc, LDAP_OPT_PROTOCOL_VERSION, 3);
+            }
+
+	$sr=ldap_bind($cc,$ldap_dn,$ldap_passwd);
+	$filtro = 'uidNumber='.$aux_uid;
+	$sr=ldap_search($cc, $ldap_context,$filtro);
+	$info = ldap_get_entries($cc, $sr);
+
+	if($info["count"]!=1)
+            {
+		ldap_close($cc);
+		return false;
+	    }
+
+	if(!$info[0]["usercertificate"][0])
+	    {
+		ldap_close($cc);
+		return false;
+	    }
+
+	$a = new certificadoB();
+	$R = $a->encriptar_senha($aux_senha,$info[0]["usercertificate"][0]);
+
+	if(!$R)
+	    {
+		return false;
+	    }
+
+	$user_info = array();
+	$aux1 = $info[0]["dn"];
+	$user_info['cryptpassword'] = $R;
+	ldap_modify($cc,$aux1,$user_info);
+
+	ldap_close($cc);
+
+	return true;
+   }
+
 
 	$GLOBALS['phpgw_info']['flags'] = array(
@@ -20,76 +83,4 @@
 	include('../header.inc.php');
 
-/*
-function path_template_include($app,$prefix)
-    {
-        $file_include = PHPGW_SERVER_ROOT . '/' . $app . '/templates/' . $GLOBALS['phpgw_info']['login_template_set'] . '/' . $prefix . '_' . $GLOBALS['phpgw_info']['login_template_set'] . '.php';
-
-        if(!$file_include || !file_exists($file_include))
-            {
-                $file_include = PHPGW_SERVER_ROOT . '/' . $app . '/templates/default/' . $prefix .'_default.php';
-            }
-
-        return $file_include;
-    }
-*/
-
-function grava_senha_criptografada_com_certificado_no_ldap($aux_uid,$aux_senha)
-   {
-	require_once('/var/www/expresso/security/classes/CertificadoB.php');
-	$ldap_context = $GLOBALS['phpgw_info']['server']['ldap_context'];
-	$ldap_servidor = $GLOBALS['phpgw_info']['server']['ldap_host'];
-	$ldap_dn = $GLOBALS['phpgw_info']['server']['ldap_root_dn'];
-	$ldap_passwd = $GLOBALS['phpgw_info']['server']['ldap_root_pw'];
-
-	$cc=ldap_connect($ldap_servidor);
-
-        if($GLOBALS['phpgw_info']['server']['ldap_version3'])
-	{
-		ldap_set_option($cc, LDAP_OPT_PROTOCOL_VERSION, 3);
-	}
-
-	//  bind ..
-	$sr=ldap_bind($cc,$ldap_dn,$ldap_passwd);
-
-	$filtro = 'uidNumber='.$aux_uid;
-
-	// Pesquisa uidNumber no LDAP
-	$sr=ldap_search($cc, $ldap_context,$filtro);
-
-	// Pega resultado ....
-	$info = ldap_get_entries($cc, $sr);
-
-	// Tem de achar sÃ³ uma entrada.....ao menos uma....
-	if($info["count"]!=1)
-	    {        if($GLOBALS['phpgw_info']['server']['ldap_version3'])
-	{
-		ldap_set_option($cc, LDAP_OPT_PROTOCOL_VERSION, 3);
-	}
-		ldap_close($cc);
-		return false;
-	    }
-
-	if(!$info[0]["usercertificate"][0])
-	    {
-		//Usuario sem certificado cadastrado
-		ldap_close($cc);
-		return false;
-	    }
-
-	$a = new certificadoB();
-	$R = $a->encriptar_senha($aux_senha,$info[0]["usercertificate"][0]);
-	if(!$R)
-	    {
-		return false;
-	    }
-	$user_info = array();
-	$aux1 = $info[0]["dn"];
-	$user_info['cryptpassword'] = $R;
-	ldap_modify($cc,$aux1,$user_info);
-
-	ldap_close($cc);
-
-	return true;
-   }
 	$a_passwd   = $_POST['a_passwd'];
 	$n_passwd   = $_POST['n_passwd'];
