- Модуль: ldap
- Путь к файлу: ~/bitrix/modules/ldap/classes/general/ldap_server.php
- Класс: CLdapServer
- Вызов: CLdapServer::SetGroupMap
static function SetGroupMap($ID, $arFields)
{
global $DB, $APPLICATION;
$ID = intval($ID);
$DB->Query("DELETE FROM b_ldap_group WHERE LDAP_SERVER_ID=".$ID);
foreach($arFields as $arGroup)
{
// check whether entry is valid, and if it is - add it
if(array_key_exists('GROUP_ID',$arGroup) && ($arGroup['GROUP_ID']>0 || $arGroup['GROUP_ID']==-1) && $arGroup['LDAP_GROUP_ID'] <> '')
{
$strSql =
"SELECT 'x' ".
"FROM b_ldap_group ".
"WHERE LDAP_SERVER_ID=".$ID." ".
" AND GROUP_ID = ".intval($arGroup['GROUP_ID'])." ".
" AND LDAP_GROUP_ID = '".$DB->ForSQL($arGroup['LDAP_GROUP_ID'], 255)."' ";
$r = $DB->Query($strSql);
if(!$r->Fetch())
{
$strSql =
"INSERT INTO b_ldap_group(GROUP_ID, LDAP_GROUP_ID, LDAP_SERVER_ID)".
"VALUES(".intval($arGroup['GROUP_ID']).", '".$DB->ForSQL($arGroup['LDAP_GROUP_ID'], 255)."', ".$ID.")";
$DB->Query($strSql);
}
}
}
}