Your IP : 216.73.216.170


Current Path : /home/bitrix/ext_www/mr.demo.yacl.site/
Upload File :
Current File : /home/bitrix/ext_www/mr.demo.yacl.site/adtest.php

<?
define("NOT_CHECK_PERMISSIONS", true);

if (!$_SERVER["DOCUMENT_ROOT"]) {
    $_SERVER["DOCUMENT_ROOT"] = realpath(__DIR__ . '/');
} else {
    die ('Script for console only');
}

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");



//If (!$USER->IsAdmin())
//	die ('Admin page only!');

Bitrix\Main\Loader::includeModule('ldap');

// oklog('test');

// $ldapUsers = \Bitrix\Main\UserTable::getList([
//	 'filter' => ['ACTIVE' => 'Y', 'EXTERNAL_AUTH_ID' => 'LDAP#1'],
//	 'select' => ['ID', 'EMAIL'],
// ])->fetchAll();
//
//
//// okp($ldapUsers);
// foreach ($ldapUsers as $userok) {
////	 okp($userok['ID']);
////	 okp($userok['EMAIL']);
//	 $USER->Update($userok['ID'], ['EMAIL' =>  'test___' . $userok['EMAIL']]);
// }
//
//// $USER->Update(1352, ['EMAIL' => 'test___ean@vebeng.ru']);
//
// die();
//// okp($ldapUsers);

//$server = CLdapServer::GetList([],[])->Fetch();

// okp($server);


 echo CLdapServer::Sync(1);
die();
 $server = CLdapServer::GetList([],[])->Fetch();

// p($server);

// используется ldap-привязка
$ldaprdn  = $server['ADMIN_LOGIN'];     // ldap rdn или dn
$ldappass = $server['ADMIN_PASSWORD'];  // ассоциированный пароль
$url = $server['SERVER'];

// соединение с сервером
$ldapconn = ldap_connect($url) or die("Не могу соединиться с сервером LDAP.");


if ($ldapconn) {

	@ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
	@ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
	@ldap_set_option($ldapconn, LDAP_OPT_SIZELIMIT, COption::GetOptionInt("ldap", "group_limit", 0));
	@ldap_set_option($ldapconn, LDAP_OPT_TIMELIMIT, 100);
	@ldap_set_option($ldapconn, LDAP_OPT_TIMEOUT, 5);
	@ldap_set_option($ldapconn, LDAP_OPT_NETWORK_TIMEOUT, 5);
    // привязка к ldap-серверу
    $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);

	$dn = $server["BASE_DN"];
//	 $filter = '(&(objectClass=user)(objectCategory=PERSON))';
	$filter = '(&(mail=NazarpvIA@rusgeology.ru))';
	$justthese = array("*", 'room', "samaccountname", "сn", "company", "department", 'DisplayName', 'givenname', 'mail', 'mobile', 'name', 'sn', 'tephoneNumber', 'title', 'physicalDeliveryOfficeName');

	// okp($ldapconn);
	// okp($dn);
	// okp($filter);
	$sr = ldap_search($ldapconn, $dn, $filter, $justthese);
	// okp($sr);
	// okp(ldap_error($ldapconn));

	$info = ldap_get_entries($ldapconn, $sr);

	// foreach ($info as $key => $item) {
	// 	if ($key == 'count')
	// 		continue;
	// 	if (true or strpos($item['givenname'][0], ' ') === false || in_array($item['samaccountname'][0], ['ean', 'chva'])) {
	// 		echo $item['samaccountname'][0] . ": [sn]=" . $item['sn'][0] . ', [givenname]=' . $item['givenname'][0] . '<br>'; 
	// 	}
		
	// }
	 okp($info['count']);
	 okp($info[0]);
	// okp($info[1]);
	// okp($info[2]);
//	okp($info);
}
//
//require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>