if (is_set($_REQUEST, "result")) { switch (strToLower($_REQUEST["result"])) { case "message_add": case "mid_add": case "reply": $arNote[] = array("id" => "message_add", "text" => GetMessage("F_MESS_SUCCESS_ADD")); break; } unset($_GET["result"]); DeleteParam(array("result")); } $arAllow = forumTextParser::GetFeatures($arResult["FORUM"]); /******************************************************************** /Default params # 2 ********************************************************************/ ForumSetLastVisit($arParams["FID"], $arParams["TID"]); ForumSetReadTopic($arParams["FID"], $arParams["TID"]); /******************************************************************** Action ********************************************************************/ $dir = dirname(__FILE__); include str_replace(array("\\", "//"), "/", $dir . "/") . "action.php"; /******************************************************************** /Action ********************************************************************/ if (!empty($arError)) { $e = new CAdminException($arError); $arResult["ERROR_MESSAGE"] = $e->GetString(); } if (!empty($arNote)) { if (isset($arNote['title'])) {
$_REQUEST["FILES"] = is_array($_REQUEST["FILES"]) ? $_REQUEST["FILES"] : array(); $_REQUEST["FILES_TO_UPLOAD"] = is_array($_REQUEST["FILES_TO_UPLOAD"]) ? $_REQUEST["FILES_TO_UPLOAD"] : array(); CPageOption::SetOptionString("main", "nav_page_in_session", "N"); $arResult["MESSAGES"] = array(); $arResult["MESSAGE_VIEW"] = array(); $arResult["MESSAGE"] = array(); $arResult["FILES"] = array(); /******************************************************************** /Default values ********************************************************************/ /******************************************************************** Actions ********************************************************************/ ForumSetLastVisit($arParams["FORUM_ID"], $arResult["FORUM_TOPIC_ID"]); $arError = array(); $arNote = array(); include(str_replace(array("\\", "//"), "/", dirname(__FILE__)."/action.php")); foreach ($arError as $res): $arResult["ERROR_MESSAGE"] .= (empty($res["title"]) ? $res["code"] : $res["title"]); $arResult["~ERROR_MESSAGE"][] = array("id" => $res["code"], "text" => $res["title"]); endforeach; foreach ($arNote as $res): $arResult["OK_MESSAGE"] .= (empty($res["text"]) ? $res["id"] : $res["text"]); $arResult["~OK_MESSAGE"][] = $res; endforeach; if (!!$strOKMessage) { $arResult["OK_MESSAGE"] .= $strOKMessage; $arResult["~OK_MESSAGE"][] = array("id" => "good", "text" => $strOKMessage); }
<?php IncludeTemplateLangFile(__FILE__); if (CModule::IncludeModule("forum")) { //******************************************************* ForumSetLastVisit(); define("FORUM_MODULE_PAGE", "SEARCH"); $APPLICATION->SetTitle("Поиск по форуму"); $APPLICATION->SetTemplateCSS("forum/forum_tmpl_2/forum.css"); $APPLICATION->IncludeFile("forum/forum_tmpl_2/menu.php"); if (CModule::IncludeModule("search")) { $q = Trim($_REQUEST["q"]); ?> <form action="search.php"> <table width="100%" border="0" cellspacing="1" cellpadding="0" class="forumborder"><tr><td> <table width="100%" border="0" cellspacing="1" cellpadding="1"> <tr><td colspan="2" align="center" class="forumhead"><font class="forumheadtext"><b>Поиск</b></font></td></tr> <tr> <td class="forumbody" align="right"><font class="forumheadtext">Ключевые слова:</font></td> <td class="forumbody"><font class="forumbodytext"> <input type="text" name="q" value="<?php echo htmlspecialchars($q); ?> " size="40"> </font></td> </tr> <tr> <td class="forumbody" align="right"><font class="forumheadtext">Искать в форуме:</font></td> <td class="forumbody"><font class="forumbodytext"> <select name="FORUM_ID"> <option value="0">Все форумы</option>
$arResult['MID'] = $MID; } else { $pageNo = $_GET["PAGEN_" . $pager_number]; if (isset($arResult['RESULT']) && intval($arResult['RESULT']) > 0) { $pageNo = $arResult['RESULT']; } } if ($pageNo > 200) { $pageNo = 0; } } $ar_cache_id = array($arParams["FORUM_ID"], $arParams["ENTITY_XML_ID"], $arResult["FORUM_TOPIC_ID"], $arResult["USER"]["RIGHTS"], $arResult["USER"]["PERMISSION"], $arResult["PANELS"], $arParams['SHOW_RATING'], $arParams["MESSAGES_PER_PAGE"], $arParams["DATE_TIME_FORMAT"], $arParams["PREORDER"], $pageNo); $cache_id = "forum_comment_" . serialize($ar_cache_id); ob_start(); if ($arResult['DO_NOT_CACHE'] || $this->StartResultCache($arParams["CACHE_TIME"], $cache_id)) { ForumSetLastVisit($arParams["FORUM_ID"], $arResult["FORUM_TOPIC_ID"], array("nameTemplate" => $arParams["NAME_TEMPLATE"])); if ($arResult["FORUM_TOPIC_ID"] > 0) { $arMessages = array(); if (empty($arMessages)) { $arOrder = array("ID" => $arParams["PREORDER"] === "N" ? "DESC" : "ASC"); $arFields = array("bDescPageNumbering" => false, "nPageSize" => $arParams["MESSAGES_PER_PAGE"], "bShowAll" => $bShowAll); if (!empty($arParams["NAME_TEMPLATE"])) { $arFields["sNameTemplate"] = $arParams["NAME_TEMPLATE"]; } if (intVal($MID) > 0 && $pageNo > 0) { $arFields["iNumPage"] = intVal($pageNo); } $arFilter = array("FORUM_ID" => $arParams["FORUM_ID"], "TOPIC_ID" => $arResult["FORUM_TOPIC_ID"], "!PARAM1" => $arParams['ENTITY_TYPE']); if ($arResult["USER"]["RIGHTS"]["MODERATE"] != "Y") { $arFilter["APPROVED_AND_MINE"] = $GLOBALS["USER"]->GetId(); }
<?php //***************************************************************************************************************** // —писок форумов. ѕублична¤ часть. //***************************************************************************************************************** if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) { die; } IncludeTemplateLangFile(__FILE__); if (CModule::IncludeModule("forum")) { //******************************************************* if ($_SERVER["REQUEST_METHOD"] == "GET" && $_GET["ACTION"] == "SET_BE_READ") { ForumSetAllMessagesRead(false); } ForumSetLastVisit(0); /* ?><pre><?print_r($_SESSION["FORUM"])?></pre><?*/ /* ?><pre><?=date("Y-m-d H:i:s", $_SESSION["FORUM"]["LAST_VISIT_FORUM_0"]);?></pre><?*/ define("FORUM_MODULE_PAGE", "INDEX"); $arFilter = array(); if (!$USER->IsAdmin()) { $arFilter = array("LID" => LANG, "PERMS" => array($USER->GetGroups(), 'A'), "ACTIVE" => "Y"); } $db_Forum = CForumNew::GetListEx(array("FORUM_GROUP_SORT" => "ASC", "FORUM_GROUP_ID" => "ASC", "SORT" => "ASC", "NAME" => "ASC"), $arFilter); $db_Forum->NavStart($GLOBALS["FORUMS_PER_PAGE"]); $GlobPerm = false; ob_start(); ?> <p><font class="forumbodytext"><?php echo $db_Forum->NavPrint(GetMessage("FI_FORUM")); ?> </font></p>
if ($arParams["USE_NAME_TEMPLATE"] == "Y") { $arParams["NAME_TEMPLATE"] = str_replace( array("#NOBR#", "#/NOBR#"), "", !empty($arParams["NAME_TEMPLATE"]) ? $arParams["NAME_TEMPLATE"] : CSite::GetNameFormat()); } else { $arParams["NAME_TEMPLATE"] = false; } $arParams["SHOW_ADD_MENU"] = ($arParams["TMPLT_SHOW_BOTTOM"] == "SET_BE_READ" ? "N" : "Y"); if (!$GLOBALS["USER"]->IsAuthorized() && COption::GetOptionString("forum", "USE_COOKIE", "N") == "N") { $arParams["SHOW_ADD_MENU"] = "N"; $arParams["TMPLT_SHOW_BOTTOM"] = ""; } $arParams["VOTE_CHANNEL_ID"] = intVal($arParams["VOTE_CHANNEL_ID"]); $arParams["SHOW_VOTE"] = ($arParams["SHOW_VOTE"] == "Y" && $arParams["VOTE_CHANNEL_ID"] > 0 && IsModuleInstalled("vote") ? "Y" : "N"); if ($arParams["SHOW_VOTE"] == "Y"): $arParams["VOTE_GROUP_ID"] = (!is_array($arParams["VOTE_GROUP_ID"]) || empty($arParams["VOTE_GROUP_ID"]) ? array() : $arParams["VOTE_GROUP_ID"]); $arParams["VOTE_TEMPLATE"] = (strlen(trim($arParams["VOTE_TEMPLATE"])) > 0 ? trim($arParams["VOTE_TEMPLATE"]) : "light"); endif; $arParams["RATING_ID"] = $arParams["RATING_ID"]; // activation rating CRatingsComponentsMain::GetShowRating($arParams); if ($arVariables["PAGE_NAME"] !== "rss" && CModule::IncludeModule("forum")) ForumSetLastVisit((strpos($arVariables["PAGE_NAME"], "pm_") !== 0 ? $arResult["FID"] : 0), $arResult["TID"]); $this->IncludeComponentTemplate($arVariables["PAGE_NAME"]); ?>
$APPLICATION->AuthForm(GetMessage("FR_FPERMS")); } //*************************!Subscribe****************************************************************************** if ($_REQUEST["TOPIC_SUBSCRIBE"] == "Y" || $_REQUEST["FORUM_SUBSCRIBE"] == "Y") { if ($_REQUEST["TOPIC_SUBSCRIBE"] == "Y") { ForumSubscribeNewMessagesEx($FID, $TID, "N", $strErrorMessage, $strOKMessage); } if ($_REQUEST["FORUM_SUBSCRIBE"] == "Y") { ForumSubscribeNewMessagesEx($FID, 0, "N", $strErrorMessage, $strOKMessage); } } //*************************!Subscribe****************************************************************************** if (!CForumTopic::CanUserViewTopic($TID, $USER->GetUserGroupArray())) { LocalRedirect("list.php?FID=" . $FID . "&TID=Y"); } ForumSetLastVisit($FID, $TID); ForumSetReadTopic($FID, $TID); //*************************!Action********************************************************************************* if ($_POST["MESSAGE_MODE"] != "VIEW" && (strLen(trim($_REQUEST["ACTION"])) > 0 || $_REQUEST["VOTE4USER"] == "Y" || $_POST["MESSAGE_TYPE"] == "REPLY") && check_bitrix_sessid()) { if ($_SERVER["REQUEST_METHOD"] == "POST" && $_POST["MESSAGE_TYPE"] == "REPLY" && check_bitrix_sessid()) { $arFieldsG = array("POST_MESSAGE" => $_POST["POST_MESSAGE"], "AUTHOR_NAME" => trim($_POST["AUTHOR_NAME"]), "AUTHOR_EMAIL" => $_POST["AUTHOR_EMAIL"], "USE_SMILES" => $_POST["USE_SMILES"], "ATTACH_IMG" => $_FILES["ATTACH_IMG"]); $MID = ForumAddMessage("REPLY", $FID, $TID, 0, $arFieldsG, $strErrorMessage, $strOKMessage, false, $_POST["captcha_word"], 0, $_POST["captcha_code"]); $MID = IntVal($MID); if ($MID <= 0) { $bVarsFromForm = true; } else { LocalRedirect($APPLICATION->GetCurPage() . "?FID=" . $FID . "&TID=" . $TID . "&MID=" . $MID . "#message" . $MID); } } elseif ($_SERVER["REQUEST_METHOD"] == "GET" && ($_GET["ACTION"] == "FORUM_SUBSCRIBE" || $_GET["ACTION"] == "TOPIC_SUBSCRIBE" || $_GET["ACTION"] == "FORUM_SUBSCRIBE_TOPICS") && check_bitrix_sessid()) { if (ForumSubscribeNewMessagesEx($FID, $_GET["ACTION"] == "FORUM_SUBSCRIBE" ? 0 : $TID, $_GET["ACTION"] == "FORUM_SUBSCRIBE_TOPICS" ? "Y" : "N", $strErrorMessage, $strOKMessage)) { LocalRedirect("subscr_list.php?FID=" . $FID . "&TID=" . $TID);
$_REQUEST["FILES_TO_UPLOAD"] = isset($_REQUEST["FILES_TO_UPLOAD"]) && is_array($_REQUEST["FILES_TO_UPLOAD"]) ? $_REQUEST["FILES_TO_UPLOAD"] : array(); CPageOption::SetOptionString("main", "nav_page_in_session", "N"); /* * ****************************************************************** / Default values * ****************************************************************** */ if (empty($arResult["FORUM"])) { ShowError(str_replace("#FORUM_ID#", $arParams["FORUM_ID"], GetMessage("F_ERR_FID_IS_NOT_EXIST"))); return false; } elseif (empty($arResult["TASK"])) { ShowError(str_replace("#TASK_ID#", $arParams["TASK_ID"], GetMessage("F_ERR_TID_IS_NOT_EXIST"))); return false; } /* * ****************************************************************** Actions * ****************************************************************** */ ForumSetLastVisit($arParams["FORUM_ID"], 0); if (isset($_POST["REVIEW_TEXT"]) || isset($_POST['remove_comment']) && $_POST['remove_comment'] === 'Y') { $path = str_replace(array("\\", "//"), "/", dirname(__FILE__) . "/action.php"); include $path; $strErrorMessage = ""; foreach ($arError as $res) { $strErrorMessage .= empty($res["title"]) ? $res["code"] : $res["title"]; } $arResult["ERROR_MESSAGE"] = $strErrorMessage; $arResult["OK_MESSAGE"] .= $strOKMessage; } /* * ****************************************************************** / Actions * ****************************************************************** */ /* * ****************************************************************** Input params II