本文整理汇总了PHP中CSocNetGroup::__ValidateID方法的典型用法代码示例。如果您正苦于以下问题:PHP CSocNetGroup::__ValidateID方法的具体用法?PHP CSocNetGroup::__ValidateID怎么用?PHP CSocNetGroup::__ValidateID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSocNetGroup
的用法示例。
在下文中一共展示了CSocNetGroup::__ValidateID方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: OnUserDelete
public static function OnUserDelete($ID)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$bSuccess = True;
if (!CSocNetGroup::DeleteNoDemand($ID)) {
if ($ex = $GLOBALS["APPLICATION"]->GetException()) {
$err = $ex->GetString();
}
$GLOBALS["APPLICATION"]->ThrowException($err);
$bSuccess = false;
}
if ($bSuccess) {
CSocNetUserRelations::DeleteNoDemand($ID);
CSocNetUserPerms::DeleteNoDemand($ID);
CSocNetUserEvents::DeleteNoDemand($ID);
CSocNetMessages::DeleteNoDemand($ID);
CSocNetUserToGroup::DeleteNoDemand($ID);
CSocNetLogEvents::DeleteNoDemand($ID);
CSocNetLog::DeleteNoDemand($ID);
CSocNetLogComments::DeleteNoDemand($ID);
CSocNetFeatures::DeleteNoDemand($ID);
CSocNetSubscription::DeleteEx($ID);
CUserOptions::DeleteOption("socialnetwork", "~menu_" . SONET_ENTITY_USER . "_" . $ID, false, 0);
}
return $bSuccess;
}
示例2: Set
public static function Set($userID, $code, $value = false)
{
global $DB;
if (!CSocNetGroup::__ValidateID($userID)) {
return false;
}
$userID = IntVal($userID);
$code = trim($code);
if ($userID <= 0 || strlen($code) <= 0) {
return false;
}
$value = $value == "Y" ? "Y" : "N";
$rsSubscription = CSocNetSubscription::GetList(array(), array("USER_ID" => $userID, "CODE" => $code));
if ($arSubscription = $rsSubscription->Fetch()) {
if ($value != "Y") {
CSocNetSubscription::Delete($arSubscription["ID"]);
}
} else {
if ($value == "Y") {
CSocNetSubscription::Add(array("USER_ID" => $userID, "CODE" => $code));
}
}
if (defined("BX_COMP_MANAGED_CACHE")) {
$GLOBALS["CACHE_MANAGER"]->ClearByTag("sonet_subscription_" . $code);
}
return true;
}
示例3: Update
function Update($ID, $arFields)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$arFields1 = array();
foreach ($arFields as $key => $value) {
if (substr($key, 0, 1) == "=") {
$arFields1[substr($key, 1)] = $value;
unset($arFields[$key]);
}
}
if (!CSocNetUserRelations::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$db_events = GetModuleEvents("socialnetwork", "OnBeforeSocNetUserRelationsUpdate");
while ($arEvent = $db_events->Fetch()) {
if (ExecuteModuleEventEx($arEvent, array($ID, $arFields)) === false) {
return false;
}
}
$arUserRelationOld = CSocNetUserRelations::GetByID($ID);
$strUpdate = $DB->PrepareUpdate("b_sonet_user_relations", $arFields);
foreach ($arFields1 as $key => $value) {
if (strlen($strUpdate) > 0) {
$strUpdate .= ", ";
}
$strUpdate .= $key . "=" . $value . " ";
}
if (strlen($strUpdate) > 0) {
$strSql = "UPDATE b_sonet_user_relations SET " . "\t" . $strUpdate . " " . "WHERE ID = " . $ID . " ";
$DB->Query($strSql, False, "File: " . __FILE__ . "<br>Line: " . __LINE__);
$events = GetModuleEvents("socialnetwork", "OnSocNetUserRelationsUpdate");
while ($arEvent = $events->Fetch()) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
if ((!array_key_exists("SEND_MAIL", $arFields) || $arFields["SEND_MAIL"] != "N") && !IsModuleInstalled("im")) {
$mailType = "";
if ($arUserRelationOld["RELATION"] != SONET_RELATIONS_FRIEND && $arFields["RELATION"] == SONET_RELATIONS_FRIEND) {
$mailType = "AGREE_FRIEND";
} elseif ($arUserRelationOld["RELATION"] != SONET_RELATIONS_BAN && $arFields["RELATION"] == SONET_RELATIONS_BAN) {
$mailType = "BAN_FRIEND";
} elseif ($arUserRelationOld["RELATION"] != SONET_RELATIONS_REQUEST && $arFields["RELATION"] == SONET_RELATIONS_REQUEST) {
$mailType = "INVITE_FRIEND";
}
if (StrLen($mailType) > 0) {
CSocNetUserRelations::SendEvent($ID, $mailType);
}
}
CSocNetSearch::OnUserRelationsChange($arUserRelationOld["FIRST_USER_ID"]);
CSocNetSearch::OnUserRelationsChange($arUserRelationOld["SECOND_USER_ID"]);
} else {
$ID = False;
}
return $ID;
}
示例4: Update
function Update($ID, $arFields)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$arFields1 = array();
foreach ($arFields as $key => $value) {
if (substr($key, 0, 1) == "=") {
$arFields1[substr($key, 1)] = $value;
unset($arFields[$key]);
}
}
if (!CSocNetMessages::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$db_events = GetModuleEvents("socialnetwork", "OnBeforeSocNetMessagesUpdate");
while ($arEvent = $db_events->Fetch()) {
if (ExecuteModuleEventEx($arEvent, array($ID, $arFields)) === false) {
return false;
}
}
$strUpdate = $DB->PrepareUpdate("b_sonet_messages", $arFields);
foreach ($arFields1 as $key => $value) {
if (strlen($strUpdate) > 0) {
$strUpdate .= ", ";
}
$strUpdate .= $key . "=" . $value . " ";
}
if (strlen($strUpdate) > 0) {
$strSql = "UPDATE b_sonet_messages SET " . "\t" . $strUpdate . " " . "WHERE ID = " . $ID . " ";
$DB->Query($strSql, False, "File: " . __FILE__ . "<br>Line: " . __LINE__);
$events = GetModuleEvents("socialnetwork", "OnSocNetMessagesUpdate");
while ($arEvent = $events->Fetch()) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
} else {
$ID = False;
}
return $ID;
}
示例5: GetByID
function GetByID($ID)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$dbResult = CSocNetUserToGroup::GetList(array(), array("ID" => $ID), false, false, array("ID", "USER_ID", "GROUP_ID", "GROUP_VISIBLE", "GROUP_NAME", "ROLE", "DATE_CREATE", "DATE_UPDATE", "INITIATED_BY_TYPE", "INITIATED_BY_USER_ID", "MESSAGE"));
if ($arResult = $dbResult->GetNext()) {
return $arResult;
}
return False;
}
示例6: Update
function Update($ID, $arFields)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$arUser2GroupOld = CSocNetUserToGroup::GetByID($ID);
if (!$arUser2GroupOld) {
$GLOBALS["APPLICATION"]->ThrowException(GetMessage("SONET_NO_USER2GROUP"), "ERROR_NO_USER2GROUP");
return false;
}
$arFields1 = array();
foreach ($arFields as $key => $value) {
if (substr($key, 0, 1) == "=") {
$arFields1[substr($key, 1)] = $value;
unset($arFields[$key]);
}
}
if (!CSocNetUserToGroup::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$db_events = GetModuleEvents("socialnetwork", "OnBeforeSocNetUserToGroupUpdate");
while ($arEvent = $db_events->Fetch()) {
if (ExecuteModuleEventEx($arEvent, array($ID, $arFields)) === false) {
return false;
}
}
$strUpdate = $DB->PrepareUpdate("b_sonet_user2group", $arFields);
foreach ($arFields1 as $key => $value) {
if (strlen($strUpdate) > 0) {
$strUpdate .= ", ";
}
$strUpdate .= $key . "=" . $value . " ";
}
if (strlen($strUpdate) > 0) {
$strSql = "UPDATE b_sonet_user2group SET " . "\t" . $strUpdate . " " . "WHERE ID = " . $ID . " ";
$DB->Query($strSql, False, "File: " . __FILE__ . "<br>Line: " . __LINE__);
CSocNetGroup::SetStat($arUser2GroupOld["GROUP_ID"]);
CSocNetSearch::OnUserRelationsChange($arUser2GroupOld["USER_ID"]);
if (array_key_exists("GROUP_ID", $arFields) && $arUser2GroupOld["GROUP_ID"] != $arFields["GROUP_ID"]) {
CSocNetGroup::SetStat($arFields["GROUP_ID"]);
}
$events = GetModuleEvents("socialnetwork", "OnSocNetUserToGroupUpdate");
while ($arEvent = $events->Fetch()) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
global $arSocNetUserInRoleCache;
if (!isset($arSocNetUserInRoleCache) || !is_array($arSocNetUserInRoleCache)) {
$arSocNetUserInRoleCache = array();
}
if (array_key_exists($arUser2GroupOld["USER_ID"] . "_" . $arUser2GroupOld["GROUP_ID"], $arSocNetUserInRoleCache)) {
unset($arSocNetUserInRoleCache[$arUser2GroupOld["USER_ID"] . "_" . $arUser2GroupOld["GROUP_ID"]]);
}
if (defined("BX_COMP_MANAGED_CACHE")) {
$GLOBALS["CACHE_MANAGER"]->ClearByTag("sonet_user2group_G" . $arUser2GroupOld["GROUP_ID"]);
$GLOBALS["CACHE_MANAGER"]->ClearByTag("sonet_user2group_U" . $arUser2GroupOld["USER_ID"]);
$GLOBALS["CACHE_MANAGER"]->ClearByTag("sonet_user2group");
}
} else {
$ID = False;
}
return $ID;
}
示例7: GetByID
/**
* <p>Метод возвращает массив параметров записи.</p>
*
*
* @param int $id Код записи.
*
* @return array <p>Массив с ключами:<br><b>ID</b> - код записи,<br><b>USER_ID</b> - код
* пользователя,<br><b>OPERATION_ID</b> - операция,<br><b>RELATION_TYPE</b> - тип отношений
* между пользователями.</p> <br><br>
*
* @static
* @link http://dev.1c-bitrix.ru/api_help/socialnetwork/classes/csocnetuserperms/getbyid.php
* @author Bitrix
*/
public static function GetByID($ID)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$dbResult = CSocNetUserPerms::GetList(array(), array("ID" => $ID));
if ($arResult = $dbResult->GetNext()) {
return $arResult;
}
return False;
}
示例8: GetByID
function GetByID($ID, $bCheckPermissions = false)
{
global $DB, $USER;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$cacheArrayKey = $bCheckPermissions ? "Y" : "N";
if (is_array($GLOBALS["SONET_GROUP_CACHE"]) && is_array($GLOBALS["SONET_GROUP_CACHE"][$ID]) && is_array($GLOBALS["SONET_GROUP_CACHE"][$cacheArrayKey])) {
return $GLOBALS["SONET_GROUP_CACHE"][$ID][$cacheArrayKey];
} else {
if (!$bCheckPermissions) {
$cache = new CPHPCache();
$cache_time = 31536000;
$cache_id = "group_" . $ID . "_" . LANGUAGE_ID . "_" . CTimeZone::GetOffset();
$cache_path = "/sonet/group/" . $ID . "/";
}
if (is_object($cache) && $cache->InitCache($cache_time, $cache_id, $cache_path)) {
$arCacheVars = $cache->GetVars();
$arResult = $arCacheVars["FIELDS"];
} else {
if (is_object($cache)) {
$cache->StartDataCache($cache_time, $cache_id, $cache_path);
}
$arFilter = array("ID" => $ID);
if ($bCheckPermissions && $USER->GetID() > 0) {
$arFilter["CHECK_PERMISSIONS"] = $USER->GetID();
}
$dbResult = CSocNetGroup::GetList(array(), $arFilter, false, false, array("ID", "SITE_ID", "NAME", "DESCRIPTION", "DATE_CREATE", "DATE_UPDATE", "ACTIVE", "VISIBLE", "OPENED", "CLOSED", "SUBJECT_ID", "OWNER_ID", "KEYWORDS", "IMAGE_ID", "NUMBER_OF_MEMBERS", "NUMBER_OF_MODERATORS", "INITIATE_PERMS", "SPAM_PERMS", "DATE_ACTIVITY", "SUBJECT_NAME", "UF_*"));
if ($arResult = $dbResult->GetNext()) {
if (defined("BX_COMP_MANAGED_CACHE")) {
$GLOBALS["CACHE_MANAGER"]->StartTagCache($cache_path);
$GLOBALS["CACHE_MANAGER"]->RegisterTag("sonet_group_" . $ID);
$GLOBALS["CACHE_MANAGER"]->RegisterTag("sonet_group");
}
$arResult["NAME_FORMATTED"] = $arResult["NAME"];
} else {
$arResult = false;
}
if (is_object($cache)) {
$arCacheData = array("FIELDS" => $arResult);
$cache->EndDataCache($arCacheData);
if (defined("BX_COMP_MANAGED_CACHE")) {
$GLOBALS["CACHE_MANAGER"]->EndTagCache();
}
}
}
if (!array_key_exists("SONET_GROUP_CACHE", $GLOBALS) || !is_array($GLOBALS["SONET_GROUP_CACHE"])) {
$GLOBALS["SONET_GROUP_CACHE"] = array();
}
if (!array_key_exists($ID, $GLOBALS["SONET_GROUP_CACHE"]) || !is_array($GLOBALS["SONET_GROUP_CACHE"][$cacheArrayKey])) {
$GLOBALS["SONET_GROUP_CACHE"][$ID] = array();
}
$GLOBALS["SONET_GROUP_CACHE"][$ID][$cacheArrayKey] = $arResult;
return $arResult;
}
}
示例9: GetByID
function GetByID($ID)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID))
return false;
$ID = IntVal($ID);
$dbResult = CSocNetUserRelations::GetList(Array(), Array("ID" => $ID));
if ($arResult = $dbResult->GetNext())
{
return $arResult;
}
return False;
}
示例10: Update
/**
* <p>Метод изменяет параметры группы с заданным идентификатором.</p> <p><b>Примечание</b>: при работе метода вызываются события <a href="http://dev.1c-bitrix.ru/api_help/socialnetwork/events/OnBeforeSocNetGroupUpdate.php">OnBeforeSocNetGroupUpdate</a> и <a href="http://dev.1c-bitrix.ru/api_help/socialnetwork/events/OnSocNetGroupUpdate.php">OnSocNetGroupUpdate</a>.</p>
*
*
*
*
* @param int $ID Идентификатор группы </htm
*
*
*
* @param array $arFields Массив параметров группы, которые должны быть изменены. Ключами в
* массиве являются названия параметров, а значениями - новые
* значения. Допустимые ключи: <b>SITE_ID</b> - код сайта,<br><b>NAME</b> - название
* группы,<br><b>DESCRIPTION</b> - описание группы,<br><b>VISIBLE</b> - флаг Y/N - видна ли
* группа в списке групп,<br><b>OPENED</b> - флаг Y/N - открыта ли группа для
* свободного вступления,<br><b>SUBJECT_ID</b> - код темы,<br><b>KEYWORDS</b> - ключевые
* слова,<br><b>IMAGE_ID</b> - иконка группы,<br><b>INITIATE_PERMS</b> - кто имеет право на
* приглашение пользователей в группу: SONET_ROLES_OWNER - только владелец
* группы, SONET_ROLES_MODERATOR - владелец группы и модераторы группы,
* SONET_ROLES_USER - все члены группы,<br><b>CLOSED</b> - флаг Y/N - является ли группа
* архивной,<br><b>SPAM_PERMS</b> - кто имеет право на отправку сообщений в
* группу: SONET_ROLES_OWNER - только владелец группы, SONET_ROLES_MODERATOR - владелец
* группы и модераторы группы, SONET_ROLES_USER - все члены группы.
*
*
*
* @param bool $bAutoSubscribe = true Флаг автоподписки на уведомления. Необязательный. По умолчанию
* равен true.
*
*
*
* @param bool $bClearCommonTag = true Необязательный. По умолчанию равен true.
*
*
*
* @return int <p>Метод возвращает код изменяемой группы или false в случае
* ошибки.</p> <a name="examples"></a>
*
*
* <h4>Example</h4>
* <pre>
* <?
* $arFields = array(
* "NAME" => $_POST["GROUP_NAME"],
* "DESCRIPTION" => $_POST["GROUP_DESCRIPTION"],
* );
* if (!CSocNetGroup::Update($ID, $arFields))
* {
* if ($e = $GLOBALS["APPLICATION"]->GetException())
* $errorMessage .= $e->GetString();
* }
* ?>
* </pre>
*
*
* @static
* @link http://dev.1c-bitrix.ru/api_help/socialnetwork/classes/CSocNetGroup/update.php
* @author Bitrix
*/
public static function Update($ID, $arFields, $bAutoSubscribe = true, $bClearCommonTag = true)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID)) {
return false;
}
$ID = IntVal($ID);
$arGroupOld = CSocNetGroup::GetByID($ID);
if (!$arGroupOld) {
$GLOBALS["APPLICATION"]->ThrowException(GetMessage("SONET_NO_GROUP"), "ERROR_NO_GROUP");
return false;
}
$arFields1 = array();
foreach ($arFields as $key => $value) {
if (substr($key, 0, 1) == "=") {
$arFields1[substr($key, 1)] = $value;
unset($arFields[$key]);
}
}
if (!CSocNetGroup::CheckFields("UPDATE", $arFields, $ID)) {
return false;
} else {
$arSiteID = array();
if (is_set($arFields, "SITE_ID")) {
if (is_array($arFields["SITE_ID"])) {
$arSiteID = $arFields["SITE_ID"];
} else {
$arSiteID[] = $arFields["SITE_ID"];
}
$arFields["SITE_ID"] = false;
$str_SiteID = "''";
foreach ($arSiteID as $v) {
$arFields["SITE_ID"] = $v;
$str_SiteID .= ", '" . $DB->ForSql($v) . "'";
}
}
}
$db_events = GetModuleEvents("socialnetwork", "OnBeforeSocNetGroupUpdate");
while ($arEvent = $db_events->Fetch()) {
if (ExecuteModuleEventEx($arEvent, array($ID, &$arFields)) === false) {
return false;
//.........这里部分代码省略.........
示例11: GetByID
/**
* <p>Возвращает параметры темы. Не порождает запросов к базе данных.</p>
*
*
*
*
* @param int $id Код темы.
*
*
*
* @return array <p>Массив параметров темы. Массив имеет ключи:<br> ID - код темы,<br> SITE_ID
* - код сайта,<br> NAME - название. </p>
*
* @static
* @link http://dev.1c-bitrix.ru/api_help/socialnetwork/classes/CSocNetGroupSubject/GetByID.php
* @author Bitrix
*/
public static function GetByID($ID)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID))
return false;
$ID = IntVal($ID);
$dbResult = CSocNetGroupSubject::GetList(Array(), Array("ID" => $ID));
if ($arResult = $dbResult->GetNext())
return $arResult;
return False;
}
示例12: GetByID
/**
* <p>Метод возвращает массив с параметрами сообщения.</p>
*
*
*
*
* @param int $id Код сообщения.
*
*
*
* @return array <p>Возвращается массив с ключами:<br> ID - идентификатор сообщения,<br>
* FROM_USER_ID - код пользователя - отправителя сообщения,<br> TO_USER_ID - код
* пользователя - получателя сообщения,<br> MESSAGE - сообщение,<br> DATE_CREATE -
* дата создания сообщения,<br> DATE_VIEW - дата прочтения,<br> MESSAGE_TYPE - тип
* сообщения: SONET_MESSAGE_SYSTEM - системное, SONET_MESSAGE_PRIVATE -
* пользовательское,<br> FROM_DELETED - флаг (Y/N) удаления сообщения
* отправителем,<br> TO_DELETED - флаг (Y/N) удаления сообщения
* получателем.</p>
*
*
* <h4>See Also</h4>
* <ul> <li><a
* href="http://dev.1c-bitrix.ru/api_help/socialnetwork/classes/CSocNetMessages/GetList.php">CSocNetMessages::GetList</a></li>
* </ul>
*
*
* @static
* @link http://dev.1c-bitrix.ru/api_help/socialnetwork/classes/CSocNetMessages/GetByID.php
* @author Bitrix
*/
public static function GetByID($ID)
{
global $DB;
if (!CSocNetGroup::__ValidateID($ID))
return false;
$ID = IntVal($ID);
$dbResult = CSocNetMessages::GetList(Array(), Array("ID" => $ID, "IS_LOG_ALL" => "Y"));
if ($arResult = $dbResult->GetNext())
{
return $arResult;
}
return False;
}