META-INF.resources.message_boards.view_thread_shortcut.jsp Maven / Gradle / Ivy
<%--
/**
* 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" %>
<%
MBTreeWalker treeWalker = (MBTreeWalker)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER);
MBMessage selMessage = (MBMessage)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_SEL_MESSAGE);
MBMessage message = (MBMessage)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CUR_MESSAGE);
MBCategory category = (MBCategory)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CATEGORY);
MBThread thread = (MBThread)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_THREAD);
MBThreadFlag threadFlag = (MBThreadFlag)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_THREAD_FLAG);
Boolean lastNodeBoolean = (Boolean)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_LAST_NODE);
boolean lastNode = lastNodeBoolean.booleanValue();
int depth = (Integer)request.getAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_DEPTH);
long threadFlagModifiedTime = 0;
if (threadFlag != null) {
Date threadFlagModifiedDate = threadFlag.getModifiedDate();
threadFlagModifiedTime = threadFlagModifiedDate.getTime();
}
%>
<%
String rowHREF = null;
if (portletName.equals(MBPortletKeys.MESSAGE_BOARDS_ADMIN)) {
rowHREF = MBUtil.getMBMessageURL(selMessage.getMessageId(), renderResponse);
}
else {
rowHREF = MBUtil.getMBMessageURL(selMessage.getMessageId(), PortalUtil.getLayoutFullURL(themeDisplay), renderResponse);
}
boolean readThread = true;
if (themeDisplay.isSignedIn()) {
Date messageModifiedDate = message.getModifiedDate();
if (threadFlagModifiedTime < messageModifiedDate.getTime()) {
readThread = false;
}
}
%>
<%= HtmlUtil.escape(message.getSubject()) %>
<%= HtmlUtil.escape(PortalUtil.getUserName(message)) %>
<%= dateTimeFormat.format(message.getModifiedDate()) %>
<%
List messages = treeWalker.getMessages();
int[] range = treeWalker.getChildrenRange(message);
depth++;
for (int i = range[0]; i < range[1]; i++) {
MBMessage curMessage = messages.get(i);
if (!MBUtil.isViewableMessage(themeDisplay, curMessage, message)) {
continue;
}
boolean lastChildNode = false;
if ((i + 1) == range[1]) {
lastChildNode = true;
}
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER, treeWalker);
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CATEGORY, category);
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_CUR_MESSAGE, curMessage);
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_DEPTH, Integer.valueOf(depth));
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_LAST_NODE, Boolean.valueOf(lastChildNode));
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_SEL_MESSAGE, selMessage);
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_THREAD, thread);
request.setAttribute(WebKeys.MESSAGE_BOARDS_TREE_WALKER_THREAD_FLAG, threadFlag);
%>
<%
}
%>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy