コード例 #1
0
ファイル: sitemapforum.php プロジェクト: ASDAFF/open_bx
 protected static function checkParams($arMessage = array(), &$arTopic, &$arForum)
 {
     if (\Freetrix\Main\Loader::includeModule('forum')) {
         $arTopic = !empty($arTopic) ? $arTopic : \CForumTopic::GetByID($arMessage["TOPIC_ID"]);
         if (empty($arTopic)) {
             return false;
         }
         $arSitemaps = SitemapForumTable::getSitemapsByEntityId($arTopic["FORUM_ID"]);
         if (!empty($arSitemaps) && ($arForum = \CForumNew::GetByIDEx($arTopic["FORUM_ID"])) && $arForum) {
             $arForum["PATH2FORUM_MESSAGE"] = \CForumNew::GetSites($arTopic["FORUM_ID"]);
             $date = MakeTimeStamp($arTopic['LAST_POST_DATE']);
             $result = array();
             foreach ($arSitemaps as $arSitemap) {
                 $path = $arForum["PATH2FORUM_MESSAGE"][$arSitemap["SITE_ID"]];
                 if (!empty($path)) {
                     $arSitemap["fileName"] = str_replace("#FORUM_ID#", $arForum["ID"], $arSitemap['SITEMAP_FILE_FORUM']);
                     $arSitemap["url"] = \CForumNew::PreparePath2Message($path, array("FORUM_ID" => $arForum["ID"], "TOPIC_ID" => $arTopic["ID"], "TITLE_SEO" => $arTopic["TITLE_SEO"], "MESSAGE_ID" => "s", "SOCNET_GROUP_ID" => $arTopic["SOCNET_GROUP_ID"], "OWNER_ID" => $arTopic["OWNER_ID"], "PARAM1" => $arTopic["PARAM1"], "PARAM2" => $arTopic["PARAM2"]));
                     $arSitemap["date"] = $date;
                     $result[] = $arSitemap;
                 }
             }
             return empty($result) ? false : $result;
         }
     }
     return false;
 }
コード例 #2
0
ファイル: component.php プロジェクト: akniyev/arteva.ru
		)
	);
	if ($db_res && $res = $db_res->GetNext())
	{
		$arIblock = $res;
	}
	if ($arParams["CACHE_TIME"] > 0)
	{
		$cache->StartDataCache();
		CForumCacheManager::SetTag($cache_path_main, "forum_".$arParams["FORUM_ID"]);
		$cache->EndDataCache(array("arIblock" => $arIblock));
	}
}
$arResult["ELEMENT"] = $arIblock;
// FORUM
$arResult["FORUM"] = CForumNew::GetByIDEx($arParams["FORUM_ID"], SITE_ID);
// USER PERMISSION
$arResult["USER"] = array(
	"ID" => $USER->GetID(),
	"GROUPS" => $USER->GetUserGroupArray(),
	"PERMISSION" => ForumCurrUserPermissions($arParams["FORUM_ID"]),
	"SHOWED_NAME" => $GLOBALS["FORUM_STATUS_NAME"]["guest"],
	"SUBSCRIBE" => array(),
	"FORUM_SUBSCRIBE" => "N",
	"TOPIC_SUBSCRIBE" => "N");
/********************************************************************
				/Main Params
 ********************************************************************/

if (empty($arResult["FORUM"])):
	ShowError(str_replace("#FORUM_ID#", $arParams["FORUM_ID"], GetMessage("F_ERR_FID_IS_NOT_EXIST")));
コード例 #3
0
ファイル: baseobject.php プロジェクト: rasuldev/torino
 protected function setForum($id)
 {
     if (!$this->checkForumId($id)) {
         throw new ArgumentTypeException(Loc::getMessage("FORUM_CM_FORUM_IS_WRONG"), self::ERROR_PARAMS_FORUM_ID);
     }
     $this->forum = \CForumNew::GetByIDEx($id, SITE_ID);
     if (!$this->forum) {
         throw new ArgumentException(Loc::getMessage("FORUM_CM_FORUM_IS_LOST"), self::ERROR_PARAMS_FORUM_ID);
     }
     return $this;
 }
コード例 #4
0
 if (count($FilterMess) > 0) {
     $dbMessage = CForumMessage::GetList(array("FORUM_ID" => "ASC", "TOPIC_ID" => "ASC"), array("AUTHOR_ID" => $UID, "PERMISSION" => $FilterMess));
     $dbMessage->NavStart($PAGE_ELEMENTS, false);
     if ($dbMessage) {
         $arMessage = array();
         $arTopic = array();
         $arForum = array();
         // User right`s
         $arUserGroup = CUser::GetUserGroup($UID);
         if (!in_array(2, $arUserGroup)) {
             $arUserGroup[] = 2;
         }
         while ($arMessage = $dbMessage->Fetch()) {
             if ($arForum["ID"] != $arMessage["FORUM_ID"]) {
                 // »нформаци¤ о форуме 1 запрос
                 $arForum = CForumNew::GetByIDEx($arMessage["FORUM_ID"]);
                 $arForum["NUM_POSTS_ALL"] = $arForum_posts[$arForum["ID"]];
                 $arAllow = array("HTML" => $arForum["ALLOW_HTML"], "ANCHOR" => $arForum["ALLOW_ANCHOR"], "BIU" => $arForum["ALLOW_BIU"], "IMG" => $arForum["ALLOW_IMG"], "LIST" => $arForum["ALLOW_LIST"], "QUOTE" => $arForum["ALLOW_QUOTE"], "CODE" => $arForum["ALLOW_CODE"], "FONT" => $arForum["ALLOW_FONT"], "SMILES" => $arForum["ALLOW_SMILES"], "UPLOAD" => $arForum["ALLOW_UPLOAD"], "NL2BR" => $arForum["ALLOW_NL2BR"]);
                 // «вание пользовател¤ из списка на форуме 1 запрос
                 $UserPerm = CForumNew::GetUserPermission($arForum["ID"], $arUserGroup);
                 if (array_key_exists($UserPerm, $ForumsPerms)) {
                     $UserPermStr = $ForumsPerms[$UserPerm];
                 } elseif (COption::GetOptionString("forum", "SHOW_VOTES", "Y") == "Y") {
                     $arUserRank = CForumUser::GetUserRank($UID, LANGUAGE_ID);
                     $UserPermStr = $arUserRank["NAME"];
                 }
                 $UserPermStr = strlen(trim($UserPermStr)) > 0 ? $UserPermStr : $ForumsPerms["user"];
                 //
                 $main[$arForum["ID"]] = $arForum;
                 $main[$arForum["ID"]]["ALLOW"] = $arAllow;
                 $main[$arForum["ID"]]["USER_PERM"] = $UserPerm;
コード例 #5
0
     }
 }
 if (count($arTopic) <= 0) {
     LocalRedirect("list.php?FID=" . $FID);
     die;
 }
 define("FORUM_MODULE_PAGE", "MOVE");
 if (ForumCurrUserPermissions($FID) < "Q") {
     $APPLICATION->AuthForm(GetMessage("FM_NO_FPERMS"));
 }
 if ($_SERVER["REQUEST_METHOD"] == "POST" && $_POST["action"] == "move" && check_bitrix_sessid()) {
     if (IntVal($newFID) <= 0) {
         $strErrorMessage .= GetMessage("FM_EMPTY_DEST_FORUM") . ". \n";
     }
     if (strlen($strErrorMessage) <= 0) {
         $NewForum = CForumNew::GetByIDEx($newFID);
         if (ForumCurrUserPermissions($newFID) < "Q" && $NewForum["ALLOW_MOVE_TOPIC"] != "Y") {
             $strErrorMessage .= GetMessage("FM_NO_DEST_FPERMS") . ". \n";
         }
     }
     if (strlen($strErrorMessage) <= 0) {
         foreach ($arTopic as $Topic) {
             $res = CForumTopic::MoveTopic2Forum($Topic["ID"], $newFID);
             if (!$res) {
                 $strErrorMessage .= GetMessage("FM_ERR_MOVE_TOPIC") . ". \n";
             }
             //			elseif ($MakeNew)
             //			{
             //				foreach ($res as $MID)
             //				{
             //					CForumMessage::SendMailMessage($MID, array(), false, "NEW_FORUM_MESSAGE");