} if ($_POST["ENTITY_TYPE"] != SONET_SUBSCRIBE_ENTITY_PROVIDER) { if ($_POST["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_GROUP) { $arFields["ENTITY_ID"] = $_POST["ENTITY_ID_GROUP_" . $_POST["LID"]]; } elseif ($_POST["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_USER) { $arFields["ENTITY_ID"] = $_POST["ENTITY_ID_USER"]; } elseif ($_POST["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_NEWS && in_array(SONET_SUBSCRIBE_ENTITY_NEWS, $arSocNetAllowedSubscribeEntityTypes)) { $arFields["ENTITY_ID"] = $_POST["ENTITY_ID_NEWS_" . $_POST["LID"]]; } else { $arFields["ENTITY_ID"] = $_POST["ENTITY_ID"]; } } if ($ID > 0) { $res = $ob->Update($ID, $arFields); } else { $res = $ob->Add($arFields); } if ($res > 0 && $_POST["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_PROVIDER) { $ob->Update($res, array("ENTITY_ID" => $res)); } } else { $e = new CAdminException($arError); $GLOBALS["APPLICATION"]->ThrowException($e); } if ($res > 0) { if ($_POST["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_PROVIDER && $arUserRights) { $obSchemeRights = new CXDILFSchemeRights(); $obSchemeRights->Set($res, $arUserRights, array("ENTITY_TYPE" => SONET_SUBSCRIBE_ENTITY_PROVIDER, "ENTITY_ID" => $res, "EVENT_ID" => $arFields["EVENT_ID"])); } elseif (in_array($_POST["ENTITY_TYPE"], array(SONET_SUBSCRIBE_ENTITY_GROUP, SONET_SUBSCRIBE_ENTITY_USER))) { CXDILFSchemeRights::DeleteBySchemeID($res); }