3require_once(
$_SERVER[
"DOCUMENT_ROOT"].
"/bitrix/modules/blog/general/blog_comment.php");
15 if (mb_substr(
$key, 0, 1) ==
"=")
17 $arFields1[mb_substr(
$key, 1)] = $value;
27 foreach(
GetModuleEvents(
"blog",
"OnBeforeCommentAdd",
true) as $arEvent)
33 $arInsert =
$DB->PrepareInsert(
"b_blog_comment",
$arFields);
35 foreach ($arFields1 as
$key => $value)
37 if ($arInsert[0] <>
'')
40 if ($arInsert[1] <>
'')
42 $arInsert[1] .= $value;
46 if ($arInsert[0] <>
'')
49 "INSERT INTO b_blog_comment(".$arInsert[0].
") ".
50 "VALUES(".$arInsert[1].
")";
53 $ID = intval(
$DB->LastID());
62 $arPostFields =
array(
"=NUM_COMMENTS_ALL" =>
"NUM_COMMENTS_ALL + 1");
65 $arPostFields[
"=NUM_COMMENTS"] =
"NUM_COMMENTS + 1";
71 if ($arBlog[
"USE_SOCNET"] ==
"Y")
83 && CModule::IncludeModule(
"search")
89 $arBlog[
"SEARCH_INDEX"] ==
"Y"
102 $arCommentSite =
array(
105 $arComment[
"POST_ID"],
109 $arBlog[
"SOCNET_GROUP_ID"]
115 $arBlog[
"USE_SOCNET"] ==
"Y"
116 && CModule::IncludeModule(
"extranet")
119 $arPostSiteExt = CExtranet::GetSitesByLogDestinations(
$arFields[
"SC_PERM"]);
120 foreach($arPostSiteExt as $lid)
122 if (!array_key_exists($lid, $arCommentSite))
124 $arCommentSite[$lid] = str_replace(
125 array(
"#user_id#",
"#post_id#"),
126 array($arBlog[
"OWNER_ID"], $arComment[
"POST_ID"]),
127 COption::GetOptionString(
"socialnetwork",
"userblogpost_page",
false, $lid)
134 $searchContent .=
"\r\n" .
$USER_FIELD_MANAGER->OnSearchIndex(
"BLOG_COMMENT", $arComment[
"ID"]);
136 $arSearchIndex =
array(
137 "SITE_ID" => $arCommentSite,
138 "LAST_MODIFIED" => $arComment[
"DATE_CREATE"],
139 "PARAM1" =>
"COMMENT",
140 "PARAM2" => $arComment[
"BLOG_ID"].
"|".$arComment[
"POST_ID"],
141 "PERMISSIONS" =>
array(2),
144 "INDEX_TITLE" =>
false,
145 "USER_ID" => (intval($arComment[
"AUTHOR_ID"]) > 0) ? $arComment[
"AUTHOR_ID"] :
false,
146 "ENTITY_TYPE_ID" =>
"BLOG_COMMENT",
147 "ENTITY_ID" => $arComment[
"ID"],
150 if($arBlog[
"USE_SOCNET"] ==
"Y")
156 $arBlog[
"USE_SOCNET"] ==
"Y"
157 || mb_strpos($arBlog[
"URL"],
"idea_") === 0
164 if($arComment[
"TITLE"] ==
'')
188 $arFields1 =
array();
191 if (mb_substr(
$key, 0, 1) ==
"=")
193 $arFields1[mb_substr(
$key, 1)] = $value;
203 foreach(
GetModuleEvents(
"blog",
"OnBeforeCommentUpdate",
true) as $arEvent)
209 $strUpdate =
$DB->PrepareUpdate(
"b_blog_comment",
$arFields);
211 foreach ($arFields1 as
$key => $value)
213 if ($strUpdate <>
'')
215 $strUpdate .=
$key.
"=".$value.
" ";
218 if ($strUpdate <>
'')
230 "UPDATE b_blog_comment SET ".
232 "WHERE ID = ".$ID.
" ";
234 unset(
$GLOBALS[
"BLOG_COMMENT"][
"BLOG_COMMENT_CACHE_".
$ID]);
240 if($arBlog[
"USE_SOCNET"] ==
"Y")
246 if ($bSearchIndex && CModule::IncludeModule(
"search"))
268 elseif(($arComment[
"PATH"] ??
'') <>
'')
270 $arComment[
"PATH"] = str_replace(
"#comment_id#",
$ID, $arComment[
"PATH"]);
271 $arPostSite =
array($arGroup[
"SITE_ID"] => $arComment[
"PATH"]);
278 $arComment[
"POST_ID"],
282 $arBlog[
"SOCNET_GROUP_ID"]
288 $searchContent .=
"\r\n" .
$USER_FIELD_MANAGER->OnSearchIndex(
"BLOG_COMMENT", $arComment[
"ID"]);
290 $arSearchIndex =
array(
291 "SITE_ID" => $arPostSite,
292 "LAST_MODIFIED" => $arComment[
"DATE_CREATE"],
293 "PARAM1" =>
"COMMENT",
294 "PARAM2" => $arComment[
"BLOG_ID"].
"|".$arComment[
"POST_ID"],
295 "PERMISSIONS" =>
array(2),
298 "USER_ID" => (intval($arComment[
"AUTHOR_ID"]) > 0) ? $arComment[
"AUTHOR_ID"] :
false,
299 "ENTITY_TYPE_ID" =>
"BLOG_COMMENT",
300 "ENTITY_ID" => $arComment[
"ID"],
303 if($arBlog[
"USE_SOCNET"] ==
"Y")
309 $arBlog[
"USE_SOCNET"] ==
"Y"
310 || mb_strpos($arBlog[
"URL"],
"idea_") === 0
317 if($arComment[
"TITLE"] ==
'')
334 public static function GetList($arOrder = Array(
"ID" =>
"DESC"),
$arFilter = Array(), $arGroupBy =
false, $arNavStartParams =
false, $arSelectFields =
array())
339 $obUserFieldsSql->
SetEntity(
"BLOG_COMMENT",
"C.ID");
340 $obUserFieldsSql->SetSelect($arSelectFields);
342 $obUserFieldsSql->SetOrder($arOrder);
344 if (
count($arSelectFields) <= 0)
345 $arSelectFields =
array(
"ID",
"BLOG_ID",
"POST_ID",
"PARENT_ID",
"AUTHOR_ID",
"AUTHOR_NAME",
"AUTHOR_EMAIL",
"AUTHOR_IP",
"AUTHOR_IP1",
"TITLE",
"POST_TEXT");
346 if(in_array(
"*", $arSelectFields))
347 $arSelectFields =
array(
"ID",
"BLOG_ID",
"POST_ID",
"PARENT_ID",
"AUTHOR_ID",
"AUTHOR_NAME",
"AUTHOR_EMAIL",
"AUTHOR_IP",
"AUTHOR_IP1",
"TITLE",
"POST_TEXT",
"SHARE_DEST",
"DATE_CREATE",
"USER_LOGIN",
"USER_NAME",
"USER_LAST_NAME",
"USER_SECOND_NAME",
"USER_EMAIL",
"USER",
"BLOG_USER_ALIAS",
"BLOG_USER_AVATAR",
"BLOG_URL",
"BLOG_OWNER_ID",
"BLOG_SOCNET_GROUP_ID",
"BLOG_ACTIVE",
"BLOG_GROUP_ID",
"BLOG_GROUP_SITE_ID",
"BLOG_USE_SOCNET",
"PERMS",
"PUBLISH_STATUS");
348 if((array_key_exists(
"BLOG_GROUP_SITE_ID",
$arFilter) || in_array(
"BLOG_GROUP_SITE_ID", $arSelectFields)) && !in_array(
"BLOG_URL", $arSelectFields))
349 $arSelectFields[] =
"BLOG_URL";
354 "ID" =>
array(
"FIELD" =>
"C.ID",
"TYPE" =>
"int"),
355 "BLOG_ID" =>
array(
"FIELD" =>
"C.BLOG_ID",
"TYPE" =>
"int"),
356 "POST_ID" =>
array(
"FIELD" =>
"C.POST_ID",
"TYPE" =>
"int"),
357 "PARENT_ID" =>
array(
"FIELD" =>
"C.PARENT_ID",
"TYPE" =>
"int"),
358 "AUTHOR_ID" =>
array(
"FIELD" =>
"C.AUTHOR_ID",
"TYPE" =>
"int"),
359 "AUTHOR_NAME" =>
array(
"FIELD" =>
"C.AUTHOR_NAME",
"TYPE" =>
"string"),
360 "AUTHOR_EMAIL" =>
array(
"FIELD" =>
"C.AUTHOR_EMAIL",
"TYPE" =>
"string"),
361 "AUTHOR_IP" =>
array(
"FIELD" =>
"C.AUTHOR_IP",
"TYPE" =>
"string"),
362 "AUTHOR_IP1" =>
array(
"FIELD" =>
"C.AUTHOR_IP1",
"TYPE" =>
"string"),
363 "TITLE" =>
array(
"FIELD" =>
"C.TITLE",
"TYPE" =>
"string"),
364 "POST_TEXT" =>
array(
"FIELD" =>
"C.POST_TEXT",
"TYPE" =>
"string"),
365 "DATE_CREATE" =>
array(
"FIELD" =>
"C.DATE_CREATE",
"TYPE" =>
"datetime"),
366 "DATE_CREATE_TS" =>
array(
"FIELD" =>
"UNIX_TIMESTAMP(C.DATE_CREATE)",
"TYPE" =>
"int"),
367 "PATH" =>
array(
"FIELD" =>
"C.PATH",
"TYPE" =>
"string"),
368 "PUBLISH_STATUS" =>
array(
"FIELD" =>
"C.PUBLISH_STATUS",
"TYPE" =>
"string"),
369 "HAS_PROPS" =>
array(
"FIELD" =>
"C.HAS_PROPS",
"TYPE" =>
"string"),
370 "SHARE_DEST" =>
array(
"FIELD" =>
"C.SHARE_DEST",
"TYPE" =>
"string"),
372 "USER_LOGIN" =>
array(
"FIELD" =>
"U.LOGIN",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_user U ON (C.AUTHOR_ID = U.ID)"),
373 "USER_NAME" =>
array(
"FIELD" =>
"U.NAME",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_user U ON (C.AUTHOR_ID = U.ID)"),
374 "USER_LAST_NAME" =>
array(
"FIELD" =>
"U.LAST_NAME",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_user U ON (C.AUTHOR_ID = U.ID)"),
375 "USER_SECOND_NAME" =>
array(
"FIELD" =>
"U.SECOND_NAME",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_user U ON (C.AUTHOR_ID = U.ID)"),
376 "USER_EMAIL" =>
array(
"FIELD" =>
"U.EMAIL",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_user U ON (C.AUTHOR_ID = U.ID)"),
377 "USER" =>
array(
"FIELD" =>
"U.LOGIN,U.NAME,U.LAST_NAME,U.EMAIL,U.ID",
"WHERE_ONLY" =>
"Y",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_user U ON (C.AUTHOR_ID = U.ID)"),
379 "BLOG_USER_ALIAS" =>
array(
"FIELD" =>
"BU.ALIAS",
"TYPE" =>
"string",
"FROM" =>
"LEFT JOIN b_blog_user BU ON (C.AUTHOR_ID = BU.USER_ID)"),
380 "BLOG_USER_AVATAR" =>
array(
"FIELD" =>
"BU.AVATAR",
"TYPE" =>
"int",
"FROM" =>
"LEFT JOIN b_blog_user BU ON (C.AUTHOR_ID = BU.USER_ID)"),
382 "BLOG_URL" =>
array(
"FIELD" =>
"B.URL",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
383 "BLOG_OWNER_ID" =>
array(
"FIELD" =>
"B.OWNER_ID",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
384 "BLOG_SOCNET_GROUP_ID" =>
array(
"FIELD" =>
"B.SOCNET_GROUP_ID",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
385 "BLOG_ACTIVE" =>
array(
"FIELD" =>
"B.ACTIVE",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
386 "BLOG_GROUP_ID" =>
array(
"FIELD" =>
"B.GROUP_ID",
"TYPE" =>
"int",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
387 "BLOG_USE_SOCNET" =>
array(
"FIELD" =>
"B.USE_SOCNET",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
388 "BLOG_NAME" =>
array(
"FIELD" =>
"B.NAME",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog B ON (C.BLOG_ID = B.ID)"),
390 "BLOG_GROUP_SITE_ID" =>
array(
"FIELD" =>
"BG.SITE_ID",
"TYPE" =>
"string",
"FROM" =>
"
391 INNER JOIN b_blog BGS ON (C.BLOG_ID = BGS.ID)
392 INNER JOIN b_blog_group BG ON (BGS.GROUP_ID = BG.ID)"),
395 "SOCNET_BLOG_READ" =>
array(
"FIELD" =>
"BSR.BLOG_ID",
"TYPE" =>
"int",
"FROM" =>
"INNER JOIN b_blog_socnet BSR ON (C.BLOG_ID = BSR.BLOG_ID)"),
397 "POST_CODE" =>
array(
"FIELD" =>
"BP.CODE",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog_post BP ON (C.POST_ID = BP.ID)"),
398 "POST_TITLE" =>
array(
"FIELD" =>
"BP.TITLE",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog_post BP ON (C.POST_ID = BP.ID)"),
399 "BLOG_POST_PUBLISH_STATUS" =>
array(
"FIELD" =>
"BP.PUBLISH_STATUS",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog_post BP ON (C.POST_ID = BP.ID)"),
400 "BLOG_POST_MICRO" =>
array(
"FIELD" =>
"BP.MICRO",
"TYPE" =>
"string",
"FROM" =>
"INNER JOIN b_blog_post BP ON (C.POST_ID = BP.ID)"),
403 if(isset(
$arFilter[
"GROUP_CHECK_PERMS"]))
405 if(is_array(
$arFilter[
"GROUP_CHECK_PERMS"]))
412 "FIELD" =>
"BUGP".
$val.
".PERMS",
414 "FROM" =>
"LEFT JOIN b_blog_user_group_perms BUGP".$val.
"
415 ON (C.BLOG_ID = BUGP".
$val.
".BLOG_ID
416 AND C.POST_ID = BUGP".
$val.
".POST_ID
417 AND BUGP".
$val.
".USER_GROUP_ID = ".
$val.
"
420 $arSelectFields[] =
"POST_PERM_".$val;
426 if(intval(
$arFilter[
"GROUP_CHECK_PERMS"])>0)
428 $arFields[
"POST_PERM_".$arFilter[
"GROUP_CHECK_PERMS"]] = Array(
429 "FIELD" =>
"BUGP.PERMS",
431 "FROM" =>
"LEFT JOIN b_blog_user_group_perms BUGP
432 ON (C.BLOG_ID = BUGP.BLOG_ID
433 AND C.POST_ID = BUGP.POST_ID
434 AND BUGP.USER_GROUP_ID = ".
$arFilter[
"GROUP_CHECK_PERMS"].
"
437 $arSelectFields[] =
"POST_PERM_".$arFilter[
"GROUP_CHECK_PERMS"];
445 in_array(
"RATING_TOTAL_VOTES", $arSelectFields) ||
446 in_array(
"RATING_TOTAL_POSITIVE_VOTES", $arSelectFields) ||
447 in_array(
"RATING_TOTAL_NEGATIVE_VOTES", $arSelectFields) ||
448 array_key_exists(
"RATING_TOTAL_VALUE", $arOrder) ||
449 array_key_exists(
"RATING_TOTAL_VOTES", $arOrder)
452 $arFields[
"RATING_TOTAL_VALUE"] =
array(
"FIELD" =>
$DB->IsNull(
'RV.TOTAL_VALUE',
'0'),
"TYPE" =>
"double",
"FROM" =>
"LEFT JOIN b_rating_voting RV ON ( RV.ENTITY_TYPE_ID = 'BLOG_COMMENT' AND RV.ENTITY_ID = C.ID )");
453 $arFields[
"RATING_TOTAL_VOTES"] =
array(
"FIELD" =>
$DB->IsNull(
'RV.TOTAL_VOTES',
'0'),
"TYPE" =>
"int",
"FROM" =>
"LEFT JOIN b_rating_voting RV ON ( RV.ENTITY_TYPE_ID = 'BLOG_COMMENT' AND RV.ENTITY_ID = C.ID )");
454 $arFields[
"RATING_TOTAL_POSITIVE_VOTES"] =
array(
"FIELD" =>
$DB->IsNull(
'RV.TOTAL_POSITIVE_VOTES',
'0'),
"TYPE" =>
"int",
"FROM" =>
"LEFT JOIN b_rating_voting RV ON ( RV.ENTITY_TYPE_ID = 'BLOG_COMMENT' AND RV.ENTITY_ID = C.ID )");
455 $arFields[
"RATING_TOTAL_NEGATIVE_VOTES"] =
array(
"FIELD" =>
$DB->IsNull(
'RV.TOTAL_NEGATIVE_VOTES',
'0'),
"TYPE" =>
"int",
"FROM" =>
"LEFT JOIN b_rating_voting RV ON ( RV.ENTITY_TYPE_ID = 'BLOG_COMMENT' AND RV.ENTITY_ID = C.ID )");
458 $strSqlUFFilter =
'';
459 $bNeedDistinct =
false;
460 $blogModulePermissions =
$APPLICATION->GetGroupRight(
"blog");
461 if ($blogModulePermissions <
"W")
465 $strUserGroups =
"0";
466 foreach($arUserGroups as $v)
467 $strUserGroups .=
",".intval($v);
469 $arFields[
"PERMS"] =
array(
"FIELD" =>
"UGP.PERMS",
"TYPE" =>
"char",
"FROM" =>
"INNER JOIN b_blog_user_group_perms UGP ON (C.POST_ID = UGP.POST_ID AND C.BLOG_ID = UGP.BLOG_ID AND UGP.USER_GROUP_ID IN (".$strUserGroups.
") AND UGP.PERMS_TYPE = '".
BLOG_PERMS_COMMENT.
"')");
470 $bNeedDistinct =
true;
478 if(array_key_exists(
"FOR_USER",
$arFilter))
483 " INNER JOIN b_blog_socnet_rights SR ON (C.POST_ID = SR.POST_ID) " .
484 " LEFT JOIN b_user_access UA ON (UA.ACCESS_CODE = SR.ENTITY AND UA.USER_ID = ".intval(
$arFilter[
"FOR_USER"]).
") ";
485 if($arSqls[
"WHERE"] <>
'')
486 $arSqls[
"WHERE"] .=
" AND ";
487 $arSqls[
"WHERE"] .=
" (UA.USER_ID is not NULL OR SR.ENTITY = 'AU') ";
492 " INNER JOIN b_blog_socnet_rights SR ON (C.POST_ID = SR.POST_ID) ".
493 " INNER JOIN b_user_access UA ON (UA.ACCESS_CODE = SR.ENTITY AND UA.USER_ID = 0)";
495 $bNeedDistinct =
true;
499 $arSqls[
"SELECT"] = str_replace(
"%%_DISTINCT_%%",
"DISTINCT", $arSqls[
"SELECT"]);
501 $arSqls[
"SELECT"] = str_replace(
"%%_DISTINCT_%%",
"", $arSqls[
"SELECT"]);
503 $r = $obUserFieldsSql->GetFilter();
505 $strSqlUFFilter =
" (".$r.
") ";
507 if (is_array($arGroupBy) &&
count($arGroupBy)==0)
510 "SELECT ".$arSqls[
"SELECT"].
" ".
511 $obUserFieldsSql->GetSelect().
" ".
512 "FROM b_blog_comment C ".
513 " ".$arSqls[
"FROM"].
" ".
514 $obUserFieldsSql->GetJoin(
"C.ID").
" ";
515 if ($arSqls[
"WHERE"] <>
'')
516 $strSql .=
"WHERE ".$arSqls[
"WHERE"].
" ";
517 if($arSqls[
"WHERE"] <>
'' && $strSqlUFFilter <>
'')
518 $strSql .=
" AND ".$strSqlUFFilter.
" ";
519 elseif($arSqls[
"WHERE"] ==
'' && $strSqlUFFilter <>
'')
520 $strSql .=
" WHERE ".$strSqlUFFilter.
" ";
522 if ($arSqls[
"GROUPBY"] <>
'')
523 $strSql .=
"GROUP BY ".$arSqls[
"GROUPBY"].
" ";
535 "SELECT ".$arSqls[
"SELECT"].
" ".
536 $obUserFieldsSql->GetSelect().
" ".
537 "FROM b_blog_comment C ".
538 " ".$arSqls[
"FROM"].
" ".
539 $obUserFieldsSql->GetJoin(
"C.ID").
" ";
540 if ($arSqls[
"WHERE"] <>
'')
541 $strSql .=
"WHERE ".$arSqls[
"WHERE"].
" ";
542 if($arSqls[
"WHERE"] <>
'' && $strSqlUFFilter <>
'')
543 $strSql .=
" AND ".$strSqlUFFilter.
" ";
544 elseif($arSqls[
"WHERE"] ==
'' && $strSqlUFFilter <>
'')
545 $strSql .=
" WHERE ".$strSqlUFFilter.
" ";
546 if ($arSqls[
"GROUPBY"] <>
'')
547 $strSql .=
"GROUP BY ".$arSqls[
"GROUPBY"].
" ";
548 if ($arSqls[
"ORDERBY"] <>
'')
549 $strSql .=
"ORDER BY ".$arSqls[
"ORDERBY"].
" ";
551 if (is_array($arNavStartParams) && intval($arNavStartParams[
"nTopCount"])<=0)
554 "SELECT COUNT(".($bNeedDistinct?
"DISTINCT ":
"").
"C.ID) as CNT ".
555 $obUserFieldsSql->GetSelect().
" ".
556 "FROM b_blog_comment C ".
557 " ".$arSqls[
"FROM"].
" ".
558 $obUserFieldsSql->GetJoin(
"C.ID").
" ";
559 if ($arSqls[
"WHERE"] <>
'')
560 $strSql_tmp .=
"WHERE ".$arSqls[
"WHERE"].
" ";
561 if($arSqls[
"WHERE"] <>
'' && $strSqlUFFilter <>
'')
562 $strSql_tmp .=
" AND ".$strSqlUFFilter.
" ";
563 elseif($arSqls[
"WHERE"] ==
'' && $strSqlUFFilter <>
'')
564 $strSql_tmp .=
" WHERE ".$strSqlUFFilter.
" ";
565 if ($arSqls[
"GROUPBY"] <>
'')
566 $strSql_tmp .=
"GROUP BY ".$arSqls[
"GROUPBY"].
" ";
572 if ($arSqls[
"GROUPBY"] ==
'')
579 $cnt =
$dbRes->SelectedRowsCount();
586 $dbRes->NavQuery($strSql, $cnt, $arNavStartParams);
590 if (is_array($arNavStartParams) && intval($arNavStartParams[
"nTopCount"]) > 0)
591 $strSql .=
"LIMIT ".intval($arNavStartParams[
"nTopCount"]);
const BLOG_PUBLISH_STATUS_PUBLISH
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
static PrepareSql(&$arFields, $arOrder, &$arFilter, $arGroupBy, $arSelectFields, $obUserFieldsSql=false)
static PreparePath($blogUrl, $postID=0, $siteID=False, $is404=True, $userID=0, $groupID=0)
static GetGroupPerms($ID, $blogID, $postID=0, $permsType=BLOG_PERMS_POST)
static GetUserGroups($ID, $blogID, $joinStatus="", $selectType=BLOG_BY_BLOG_USER_ID, $bUrl=false)
static Index($MODULE_ID, $ITEM_ID, $arFields, $bOverWrite=false, $SEARCH_SESS_ID='')
static Update($ID, $arFields, $bSearchIndex=true)
static fillSearchParamsWithMentionData($arMentionedUserID=array(), &$arSearchIndex=array())
static fillSearchPermsWithSonetGroupData($sonetPerms, $authorId, &$arSearchIndex=array(), $arParams=array())
SetEntity($entity_id, $ID)
static killAllTags($text)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
global $USER_FIELD_MANAGER
$_SERVER["DOCUMENT_ROOT"]
ExecuteModuleEventEx($arEvent, $arParams=[])
GetModuleEvents($MODULE_ID, $MESSAGE_ID, $bReturnArray=false)
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
if(empty($signedUserToken)) $key
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
$GLOBALS['_____370096793']