All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.message_boards.view_message_content.jsp Maven / Gradle / Ivy

There is a newer version: 5.0.118
Show newest version
<%--
/**
 * SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
 * SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
 */
--%>

<%@ include file="/message_boards/init.jsp" %>

<%
MBMessageDisplay messageDisplay = (MBMessageDisplay)request.getAttribute(WebKeys.MESSAGE_BOARDS_MESSAGE_DISPLAY);

MBTreeWalker mbTreeWalker = messageDisplay.getTreeWalker();

MBMessage rootMessage = mbTreeWalker.getRoot();

MBMessage message = messageDisplay.getMessage();

MBCategory category = messageDisplay.getCategory();

MBThread thread = messageDisplay.getThread();

boolean portletTitleBasedNavigation = GetterUtil.getBoolean(portletConfig.getInitParameter("portlet-title-based-navigation"));

if (portletTitleBasedNavigation) {
	String redirect = ParamUtil.getString(request, "redirect");

	String backURL = redirect;

	if (Validator.isNull(redirect)) {
		PortletURL backPortletURL = renderResponse.createRenderURL();

		if ((category == null) || (category.getCategoryId() == MBCategoryConstants.DEFAULT_PARENT_CATEGORY_ID)) {
			backPortletURL.setParameter("mvcRenderCommandName", "/message_boards/view");
		}
		else {
			backPortletURL.setParameter("mvcRenderCommandName", "/message_boards/view_category");
			backPortletURL.setParameter("mbCategoryId", String.valueOf(category.getCategoryId()));
		}

		backURL = backPortletURL.toString();
	}

	portletDisplay.setShowBackIcon(true);
	portletDisplay.setURLBack(backURL);

	renderResponse.setTitle(message.getSubject());
}
%>


	
		
			

<%= HtmlUtil.escape(message.getSubject()) %>

<% assetHelper.addLayoutTags(request, AssetTagLocalServiceUtil.getTags(MBMessage.class.getName(), thread.getRootMessageId())); %>
<% request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER, mbTreeWalker); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CATEGORY, category); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CUR_MESSAGE, rootMessage); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_DEPTH, Integer.valueOf(0)); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_LAST_NODE, Boolean.valueOf(false)); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_SEL_MESSAGE, message); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_THREAD, thread); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_VIEWABLE_THREAD, Boolean.FALSE.toString()); %> <% int index = 0; int rootIndexPage = 0; boolean moreMessagesPagination = false; List messages = mbTreeWalker.getMessages(); int[] range = mbTreeWalker.getChildrenRange(rootMessage); MBMessageIterator mbMessageIterator = new MBMessageIterator(messages, range[0], range[1]); while (mbMessageIterator.hasNext()) { boolean messageFound = GetterUtil.getBoolean(request.getAttribute("view_thread_tree.jsp-messageFound")); index = GetterUtil.getInteger(request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_INDEX), 1); rootIndexPage = mbMessageIterator.getIndexPage(); if (messageFound && ((index + 1) > PropsValues.DISCUSSION_COMMENTS_DELTA_VALUE)) { moreMessagesPagination = true; break; } request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER, mbTreeWalker); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CATEGORY, category); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CUR_MESSAGE, mbMessageIterator.next()); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_DEPTH, Integer.valueOf(0)); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_LAST_NODE, Boolean.valueOf(false)); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_SEL_MESSAGE, message); request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_THREAD, thread); %>
<% } %> <% long replyToMessageId = message.getRootMessageId(); %> <%@ include file="/message_boards/edit_message_quick.jspf" %>
<% String taglibReplyToMessageURL = "javascript:" + liferayPortletResponse.getNamespace() + "addReplyToMessage('" + rootMessage.getMessageId() + "', '');"; %>
var moreMessagesButton = document.getElementById( 'moreMessages' ); if (moreMessagesButton) { moreMessagesButton.addEventListener('click', (event) => { var form = document.fm; var index = Liferay.Util.getFormElement(form, 'index'); var rootIndexPage = Liferay.Util.getFormElement(form, 'rootIndexPage'); var formData = new FormData(); if (index && rootIndexPage) { formData.append('index', index.value); formData.append( 'rootIndexPage', rootIndexPage.value ); } Liferay.Util.fetch('<%= getMessagesURL.toString() %>', { body: formData, method: 'POST', }) .then((response) => { return response.text(); }) .then((response) => { var messageContainer = document.getElementById( 'messageContainer' ); if (messageContainer) { messageContainer.appendChild( document .createRange() .createContextualFragment(response) ); var replyContainer = document.querySelector( '#messageContainer > .reply-container' ); if (replyContainer) { messageContainer.append(replyContainer); } } }); }); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy