%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/components/bitrix/forum.topic.read/templates/.default/ |
Current File : /home/bitrix/www/bitrix/components/bitrix/forum.topic.read/templates/.default/template.php |
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?><? /** * @global CMain $APPLICATION * @global CUser $USER * @param array $arParams * @param array $arResult * @param string $componentName * @param CBitrixComponent $this */ /*************** Default data **************************************/ $arParams["iIndex"] = $iIndex = rand(); $message = ($_SERVER['REQUEST_METHOD'] == "POST" ? $_POST["message_id"] : $_GET["message_id"]); $message = (is_array($message) ? $message : array($message)); $arUserSettings = array("first_post" => "show"); if ($arParams["SHOW_FIRST_POST"] == "Y" && $GLOBALS["USER"]->IsAuthorized()) { require_once($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/classes/".strToLower($GLOBALS["DB"]->type)."/favorites.php"); $arUserSettings = CUserOptions::GetOption("forum", "default_template", ""); $arUserSettings = (CheckSerializedData($arUserSettings) ? @unserialize($arUserSettings) : array()); $arUserSettings["first_post"] = ($arUserSettings["first_post"] == "hide" ? "hide" : "show"); } $bShowedHeader = false; $arAuthorId = array(); $arPostId = array(); $arTopicId = array(); $arRatingResult = array(); $arRatingVote = array(); if ($arParams["SHOW_RATING"] == 'Y') { $tmp = (!empty($arResult["MESSAGE_FIRST"]) ? (array($arResult["MESSAGE_FIRST"]["ID"] => $arResult["MESSAGE_FIRST"]) + $arResult["MESSAGE_LIST"]) : $arResult["MESSAGE_LIST"]); foreach ($tmp as $res) { $arAuthorId[] = $res['AUTHOR_ID']; if ($res['NEW_TOPIC'] == "Y") $arTopicId[] = $res['TOPIC_ID']; else $arPostId[] = $res['ID']; } if (!empty($arAuthorId)) { foreach($arParams["RATING_ID"] as $key => $ratingId) { $arParams["RATING_ID"][$key] = intval($ratingId); $arRatingResult[$arParams["RATING_ID"][$key]] = CRatings::GetRatingResult($arParams["RATING_ID"][$key], array_unique($arAuthorId)); } } if (!empty($arPostId)) $arRatingVote['FORUM_POST'] = CRatings::GetRatingVoteResult('FORUM_POST', $arPostId); if (!empty($arTopicId)) $arRatingVote['FORUM_TOPIC'] = CRatings::GetRatingVoteResult('FORUM_TOPIC', $arTopicId); } /*************** Default data **************************************/ if (!empty($arResult["ERROR_MESSAGE"])): ?> <div class="forum-note-box forum-note-error"> <div class="forum-note-box-text"><?=ShowError($arResult["ERROR_MESSAGE"], "forum-note-error");?></div> </div> <? endif; if (!empty($arResult["OK_MESSAGE"])): ?> <div class="forum-note-box forum-note-success"> <div class="forum-note-box-text"><?=ShowNote($arResult["OK_MESSAGE"], "forum-note-success")?></div> </div> <? endif; if ($arParams["SHOW_FIRST_POST"] == "Y" && $arResult["NAV_RESULT"] && $arResult["NAV_RESULT"]->NavPageNomer > 1 && !($arParams['AJAX_POST'] == 'Y' && $arParams['ACTION'] == 'REPLY')) { $bShowedHeader = true; ?> <div class="forum-header-box"> <div class="forum-header-options"> <? if ($GLOBALS["USER"]->IsAuthorized()) { ?><span class="forum-option-additional"><a href="#postform" onclick="ShowFirstPost(this); return false;"><?=( $arUserSettings["first_post"] == "show" ? GetMessage("F_COLLAPSE") : GetMessage("F_SHOW"))?></a></span><? } if ($arParams["SHOW_RSS"] == "Y") { ?> <span class="forum-option-feed"> <noindex><a rel="nofollow" href="<?=$arResult["URL"]["RSS_DEFAULT"]?>" onclick="window.location='<?=CUtil::JSEscape($arResult["URL"]["~RSS"]);?>'; return false;">RSS</a></noindex> </span><? } if ($USER->IsAuthorized()) { if (empty($arResult["USER"]["SUBSCRIBE"])) { ?> <span class="forum-option-subscribe forum-option-do-subscribe"> <noindex><a rel="nofollow" title="<?=GetMessage("F_SUBSCRIBE_TITLE")?>" href="<? ?><?=$APPLICATION->GetCurPageParam("TOPIC_SUBSCRIBE=Y&".bitrix_sessid_get(), array("FORUM_SUBSCRIBE", "FORUM_SUBSCRIBE_TOPIC", "sessid"))?><? ?>"><?=GetMessage("F_SUBSCRIBE")?></a></noindex></span><? } else { ?> <span class="forum-option-subscribe forum-option-do-unsubscribe"><noindex><a rel="nofollow" title="<?=GetMessage("F_UNSUBSCRIBE_TITLE")?>" href="<? ?><?=$APPLICATION->GetCurPageParam("TOPIC_UNSUBSCRIBE=Y&".bitrix_sessid_get(), array("FORUM_UNSUBSCRIBE", "FORUM_UNSUBSCRIBE_TOPIC", "sessid"))?><? ?>"><?=GetMessage("F_UNSUBSCRIBE")?></a></noindex></span><? } }?> </div> <div class="forum-header-title"><span><? if ($arResult["TOPIC"]["STATE"] != "Y"): ?><span class="forum-header-title-closed">[ <span><?=GetMessage("F_CLOSED")?></span> ]</span> <? endif; ?><?=trim($arResult["TOPIC"]["TITLE"])?><? if (strlen($arResult["TOPIC"]["DESCRIPTION"])>0): ?>, <?=trim($arResult["TOPIC"]["DESCRIPTION"])?><? endif; ?></span></div> </div><? ?><div class="forum-block-container forum-first-post"><? ?><div class="forum-block-outer" style="display:<?=($arUserSettings["first_post"] == "show" ? "block" : "none")?>"> <div class="forum-block-inner"> <? $res = $arResult["MESSAGE_FIRST"]; if ($arParams["SHOW_VOTE"] == "Y" && $res["PARAM1"] == "VT" && intVal($res["PARAM2"]) > 0 && IsModuleInstalled("vote")) { ?> <div class="forum-info-box forum-post-vote"> <div class="forum-info-box-inner"> <span style='position:absolute;'><a style="display:none;" id="message<?=$res["ID"]?>"> </a></span><? /* IE9 */ ?> <a name="message<?=$res["ID"]?>"></a> <?$GLOBALS["APPLICATION"]->IncludeComponent("bitrix:voting.current", $arParams["VOTE_TEMPLATE"], array( "VOTE_ID" => $res["PARAM2"], "VOTE_CHANNEL_ID" => $arParams["VOTE_CHANNEL_ID"], "VOTE_RESULT_TEMPLATE" => $arResult["~CURRENT_PAGE"], "CACHE_TIME" => $arParams["CACHE_TIME"], "NEED_SORT" => "N", "SHOW_RESULTS" => "Y"), null, array("HIDE_ICONS" => "Y"));?> </div> </div> <? } ?><?$GLOBALS["APPLICATION"]->IncludeComponent( "bitrix:forum.message.template", "", Array( "MESSAGE" => $res + array( "CHECKED" => (in_array($res["ID"], $message) ? "Y" : "N"), "SHOW_CONTROL" => "N"), "ATTACH_MODE" => $arParams["ATTACH_MODE"], "ATTACH_SIZE" => $arParams["ATTACH_SIZE"], "COUNT" => 0, "NUMBER" => $iCount, "SEO_USER" => $arParams["SEO_USER"], "SHOW_RATING" => $arParams["SHOW_RATING"], "RATING_ID" => $arParams["RATING_ID"], "RATING_TYPE" => $arParams["RATING_TYPE"], "arRatingVote" => $arRatingVote, "arRatingResult" => $arRatingResult, "arResult" => $arResult, "arParams" => $arParams ), (($this && $this->__component && $this->__component->__parent) ? $this->__component->__parent : null), array("HIDE_ICONS" => "Y") );?> </div> </div> </div> <? } if ($arResult["NAV_RESULT"] && $arResult["NAV_RESULT"]->NavPageCount > 0): ?> <div class="forum-navigation-box forum-navigation-top"> <div class="forum-page-navigation"> <?=$arResult["NAV_STRING"]?> </div> <? if ($arResult["USER"]["RIGHTS"]["ADD_MESSAGE"] == "Y"): ?> <div class="forum-new-post"> <a href="#postform" onclick="return fReplyForm();"><span><?=GetMessage("F_REPLY")?></span></a> </div> <? endif; ?> <div class="forum-clear-float"></div> </div> <? endif; ?> <div class="forum-header-box"> <? if (!$bShowedHeader) { ?> <div class="forum-header-options"> <? if ($arParams["SHOW_RSS"] == "Y") { ?><span class="forum-option-feed"><? ?><noindex><a rel="nofollow" href="<?=$arResult["URL"]["RSS_DEFAULT"]?>" onclick="window.location='<?=CUtil::JSEscape($arResult["URL"]["~RSS"])?>'; return false;">RSS</a></noindex><? ?></span><? } if ($USER->IsAuthorized()) { if ($arParams["SHOW_RSS"] == "Y"): ?> <? endif; if (empty($arResult["USER"]["SUBSCRIBE"])) { ?><span class="forum-option-subscribe forum-option-do-subscribe"><noindex><a rel="nofollow" title="<?=GetMessage("F_SUBSCRIBE_TITLE")?>" href="<? ?><?=$APPLICATION->GetCurPageParam("TOPIC_SUBSCRIBE=Y&".bitrix_sessid_get(), array("FORUM_SUBSCRIBE", "FORUM_SUBSCRIBE_TOPIC", "sessid"))?><? ?>"><?=GetMessage("F_SUBSCRIBE")?></a></noindex></span><? } else { ?><span class="forum-option-subscribe forum-option-do-unsubscribe"><noindex><a rel="nofollow" title="<?=GetMessage("F_UNSUBSCRIBE_TITLE")?>" href="<? ?><?=$APPLICATION->GetCurPageParam("TOPIC_UNSUBSCRIBE=Y&".bitrix_sessid_get(), array("FORUM_UNSUBSCRIBE", "FORUM_UNSUBSCRIBE_TOPIC", "sessid"))?><? ?>"><?=GetMessage("F_UNSUBSCRIBE")?></a></noindex></span><? } }?> </div> <div class="forum-header-title"><span> <? if ($arResult["TOPIC"]["STATE"] != "Y") { ?><span class="forum-header-title-closed">[ <span><?=GetMessage("F_CLOSED")?></span> ]</span> <? } ?><?=trim($arResult["TOPIC"]["TITLE"])?><? if (strlen($arResult["TOPIC"]["DESCRIPTION"])>0): ?>, <?=trim($arResult["TOPIC"]["DESCRIPTION"])?><? endif; ?> </span></div> <? } else { ?> <div class="forum-header-title"><span><?=GetMessage("F_POSTS")?></span></div> <? } ?> </div> <div class="forum-block-container"> <div class="forum-block-outer"> <!--FORUM_INNER--><div class="forum-block-inner"> <? if (!empty($arResult["MESSAGE_LIST"])) { $iCount = 0; foreach ($arResult["MESSAGE_LIST"] as $res) { $iCount++; if ($arParams["SHOW_VOTE"] == "Y" && $res["PARAM1"] == "VT" && intVal($res["PARAM2"]) > 0 && IsModuleInstalled("vote")) { ?> <div class="forum-info-box forum-post-vote"> <div class="forum-info-box-inner"> <span style='position:absolute;'><a style="display:none;" id="message<?=$res["ID"]?>"> </a></span><? /* IE9 */ ?> <a name="message<?=$res["ID"]?>"></a> <?$GLOBALS["APPLICATION"]->IncludeComponent("bitrix:voting.current", $arParams["VOTE_TEMPLATE"], array( "VOTE_ID" => $res["PARAM2"], "VOTE_CHANNEL_ID" => $arParams["VOTE_CHANNEL_ID"], "VOTE_RESULT_TEMPLATE" => $arResult["~CURRENT_PAGE"], "CACHE_TIME" => $arParams["CACHE_TIME"], "NEED_SORT" => "N", "SHOW_RESULTS" => "Y"), null, array("HIDE_ICONS" => "Y"));?> </div> </div> <?} if ($arResult["USER"]["RIGHTS"]["MODERATE"] == "Y" && $iCount <= 1) : ?> <form class="forum-form" action="<?=POST_FORM_ACTION_URI?>" method="POST" onsubmit="return Validate(this)" <? ?>name="MESSAGES_<?=$arParams["iIndex"]?>" id="MESSAGES_<?=$arParams["iIndex"]?>"> <? endif; ?><?$GLOBALS["APPLICATION"]->IncludeComponent( "bitrix:forum.message.template", "", Array( "MESSAGE" => $res + array("CHECKED" => (in_array($res["ID"], $message) ? "Y" : "N")), "ATTACH_MODE" => $arParams["ATTACH_MODE"], "ATTACH_SIZE" => $arParams["ATTACH_SIZE"], "COUNT" => count($arResult["MESSAGE_LIST"]), "NUMBER" => $iCount, "SEO_USER" => $arParams["SEO_USER"], "SHOW_RATING" => $arParams["SHOW_RATING"], "RATING_ID" => $arParams["RATING_ID"], "RATING_TYPE" => $arParams["RATING_TYPE"], "arRatingVote" => $arRatingVote, "arRatingResult" => $arRatingResult, "arResult" => $arResult, "arParams" => $arParams ), (($this && $this->__component && $this->__component->__parent) ? $this->__component->__parent : null), array("HIDE_ICONS" => "Y") );?><? } ?> <tfoot> <tr> <td colspan="5" class="forum-column-footer"> <div class="forum-footer-inner"><? if ($arResult["USER"]["RIGHTS"]["MODERATE"] == "Y"): ?> <?=bitrix_sessid_post()?> <input type="hidden" name="type" value="messages" /> <input type="hidden" name="PAGE_NAME" value="read" /> <input type="hidden" name="FID" value="<?=$arParams["FID"]?>" /> <input type="hidden" name="TID" value="<?=$arParams["TID"]?>" /> <input type="hidden" name="ACTION" value="" /> <div class="forum-post-moderate"> <span class="forum-footer-option forum-footer-selectall forum-footer-option-first"><? ?><noindex><a rel="nofollow" href="javascript:void(0);" onclick="SelectPosts('<?=$arParams["iIndex"]?>');" name=""><?=GetMessage("F_SELECT_ALL")?></a></noindex></span> </div> <div class="forum-post-moderate"> <select name="ACTION_MESSAGE"> <option value=""><?=GetMessage("F_MANAGE_MESSAGES")?></option> <option value="HIDE"><?=GetMessage("F_HIDE_MESSAGES")?></option> <option value="SHOW"><?=GetMessage("F_SHOW_MESSAGES")?></option> <option value="MOVE"><?=GetMessage("F_MOVE_MESSAGES")?></option> <? if ($arResult["USER"]["RIGHTS"]["EDIT"] == "Y"): ?> <option value="DEL"><?=GetMessage("F_DELETE_MESSAGES")?></option> <? endif; ?> </select> <input onmousedown="this.form.type.value='messages';this.form.ACTION.value=this.form.ACTION_MESSAGE.value;" <? ?>type="submit" value="OK" /> </div> <div class="forum-topic-moderate"> <select name="ACTION_TOPIC"> <option value=""><?=GetMessage("F_MANAGE_TOPIC")?></option> <option value="<?=($arResult["TOPIC"]["APPROVED"] == "Y" ? "HIDE_TOPIC" : "SHOW_TOPIC")?>"><? ?><?=($arResult["TOPIC"]["APPROVED"] == "Y" ? GetMessage("F_HIDE_TOPIC") : GetMessage("F_SHOW_TOPIC"))?></option> <option value="<?=($arResult["TOPIC"]["SORT"] != 150 ? "SET_ORDINARY" : "SET_TOP")?>"><? ?><?=($arResult["TOPIC"]["SORT"] != 150 ? GetMessage("F_UNPINN_TOPIC") : GetMessage("F_PINN_TOPIC"))?></option> <option value="<?=($arResult["TOPIC"]["STATE"] == "Y" ? "STATE_N" : "STATE_Y")?>"><? ?><?=($arResult["TOPIC"]["STATE"] == "Y" ? GetMessage("F_CLOSE_TOPIC") : GetMessage("F_OPEN_TOPIC"))?></option> <option value="MOVE_TOPIC"><?=GetMessage("F_MOVE_TOPIC")?></option> <? if ($arResult["USER"]["RIGHTS"]["EDIT"] == "Y"): ?> <option value="EDIT_TOPIC"><?=GetMessage("F_EDIT_TOPIC")?></option> <option value="DEL_TOPIC"><?=GetMessage("F_DELETE_TOPIC")?></option> <? endif; ?> </select> <input onmousedown="this.form.type.value='topic';this.form.ACTION.value=this.form.ACTION_TOPIC.value;" <? ?>type="submit" value="OK" /> </div> <? else: ?> <? endif; ?></div> </td> </tr> </tfoot> <?$lastMessage = end($arResult['MESSAGE_LIST']);?> </table><!--MSG_END_<?=$lastMessage['ID']?>--> <? } if ($arResult["USER"]["RIGHTS"]["MODERATE"] == "Y"): ?> </form> <? endif; ?> </div><!--FORUM_INNER_END--> </div> </div> <? if ($arResult["NAV_RESULT"] && $arResult["NAV_RESULT"]->NavPageCount > 0): ?> <div class="forum-navigation-box forum-navigation-bottom"> <div class="forum-page-navigation"> <?=$arResult["NAV_STRING"]?> </div> <? if ($arResult["USER"]["RIGHTS"]["ADD_MESSAGE"] == "Y"): ?> <div class="forum-new-post"> <a href="#postform" onclick="return fReplyForm();"><span><?=GetMessage("F_REPLY")?></span></a> </div> <? endif; ?> <div class="forum-clear-float"></div> </div> <? endif; if (!empty($arResult["ERROR_MESSAGE"])): ?> <div class="forum-note-box forum-note-error"> <div class="forum-note-box-text"><?=ShowError($arResult["ERROR_MESSAGE"], "forum-note-error");?></div> </div> <? endif; if (!empty($arResult["OK_MESSAGE"])): ?> <div class="forum-note-box forum-note-success"> <div class="forum-note-box-text"><?=ShowNote($arResult["OK_MESSAGE"], "forum-note-success")?></div> </div> <? endif; // View new posts if ($arResult["VIEW"] == "Y"): ?><?$GLOBALS["APPLICATION"]->IncludeComponent( "bitrix:forum.message.template", ".preview", Array( "MESSAGE" => $arResult["MESSAGE_VIEW"], "ATTACH_MODE" => $arParams["ATTACH_MODE"], "ATTACH_SIZE" => $arParams["ATTACH_SIZE"], "arResult" => $arResult, "arParams" => $arParams ), $component->__parent, array("HIDE_ICONS" => "Y") );?><? endif; ?><script type="text/javascript"> <?if (intVal($arParams["MID"]) > 0):?> location.hash = 'message<?=$arParams["MID"]?>'; <?endif;?> if (typeof oText != "object") var oText = {}; oText['cdt'] = '<?=GetMessageJS("F_DELETE_TOPIC_CONFIRM")?>'; oText['cdm'] = '<?=GetMessageJS("F_DELETE_CONFIRM")?>'; oText['cdms'] = '<?=GetMessageJS("F_DELETE_MESSAGES_CONFIRM")?>'; oText['no_data'] = '<?=GetMessageJS('JS_NO_MESSAGES')?>'; oText['no_action'] = '<?=GetMessageJS('JS_NO_ACTION')?>'; oText['quote_text'] = '<?=GetMessageJS("JQOUTE_AUTHOR_WRITES");?>'; oText['show'] = '<?=GetMessageJS("F_SHOW")?>'; oText['hide'] = '<?=GetMessageJS("F_HIDE")?>'; oText['wait'] = '<?=GetMessageJS("F_WAIT")?>'; BX.message({ topic_read_url : '<?=CUtil::JSUrlEscape($arResult['CURRENT_PAGE']);?>', page_number : '<?=intval($arResult['PAGE_NUMBER']);?>' }); <? if ($GLOBALS["USER"]->IsAuthorized() && $bShowedHeader): ?> function ShowFirstPost(oA) { var div = oA.parentNode.parentNode.parentNode.nextSibling.firstChild; div.style.display = (div.style.display == 'none' ? '' : 'none'); oA.innerHTML = (div.style.display == 'none' ? '<?=GetMessageJS("F_COLLAPSE")?>' : '<?=GetMessageJS("F_SHOW")?>'); BX.ajax.get( '/bitrix/components/bitrix/forum/templates/.default/user_settings.php', {'save': 'first_post', 'value' :(div.style.display == 'none' ? 'hide' : 'show'), 'sessid': '<?=bitrix_sessid()?>'} ); return false; } <? endif; ?> </script>