• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/authproviders.php
  • Класс: CSocNetGroupAuthProvider
  • Вызов: CSocNetGroupAuthProvider::UpdateCodes
public function UpdateCodes($USER_ID)
{
	global $DB;
	$USER_ID = intval($USER_ID);

	$DB->Query("
		INSERT INTO b_user_access (USER_ID, PROVIDER_ID, ACCESS_CODE)
		SELECT ".$USER_ID.", '".$DB->ForSQL($this->id)."', ".$DB->Concat("'SG'", ($DB->type == "MSSQL" ? "CAST(U2G.GROUP_ID as varchar(17))": "U2G.GROUP_ID"), "'_'", "U2G.ROLE")."
		FROM b_sonet_user2group U2G
		WHERE U2G.USER_ID=".$USER_ID." AND U2G.ROLE IN ('A','E','K')
		UNION
		SELECT ".$USER_ID.", '".$DB->ForSQL($this->id)."', ".$DB->Concat("'SG'", ($DB->type == "MSSQL" ? "CAST(U2G.GROUP_ID as varchar(17))": "U2G.GROUP_ID"), "'_K'")."
		FROM b_sonet_user2group U2G
		WHERE U2G.USER_ID=".$USER_ID." AND U2G.ROLE IN ('A','E')
		UNION
		SELECT ".$USER_ID.", '".$DB->ForSQL($this->id)."', ".$DB->Concat("'SG'", ($DB->type == "MSSQL" ? "CAST(U2G.GROUP_ID as varchar(17))": "U2G.GROUP_ID"), "'_E'")."
		FROM b_sonet_user2group U2G
		WHERE U2G.USER_ID=".$USER_ID." AND U2G.ROLE IN ('A')
	");
}