function CheckPermissions($FIELD = "sc.ID") { global $USER; $arResult = array(); if($USER->IsAdmin()) { $arResult[] = "1=1"; } else { if($USER->GetID() > 0) { CSearchUser::CheckCurrentUserGroups(); $arResult[] = " EXISTS ( SELECT 1 FROM b_search_content_right scg WHERE ".$FIELD." = scg.SEARCH_CONTENT_ID AND scg.GROUP_CODE IN ( SELECT GROUP_CODE FROM b_search_user_right WHERE USER_ID = ".$USER->GetID()." ) )"; } else { $arResult[] = " EXISTS ( SELECT 1 FROM b_search_content_right scg WHERE ".$FIELD." = scg.SEARCH_CONTENT_ID AND scg.GROUP_CODE = 'G2' )"; } } return "((".implode(") OR (", $arResult)."))"; }
function CheckPermissions() { global $USER; $DB = CDatabase::GetModuleConnection('search'); $arResult = array(); if(!$USER->IsAdmin()) { if($USER->GetID() > 0) { CSearchUser::CheckCurrentUserGroups(); $rs = $DB->Query("SELECT GROUP_CODE FROM b_search_user_right WHERE USER_ID = ".$USER->GetID()); while ($ar = $rs->Fetch()) $arResult[] = $ar["GROUP_CODE"]; } else { $arResult[] = "G2"; } } return $this->rights($arResult); }