@Nonnull private RenderMode getRenderModeForWorkaroundSniffingPolicyBasedOnUserBrowser(@Nonnull final HttpServletRequest request) { if (BrowserUtils.isIe456Or7(request.getHeader(BrowserUtils.USER_AGENT_HEADER))) { return RenderMode.suppress(RenderMode.F_MACROS_ERR_MSG | RenderMode.F_EMBEDDED_OBJECTS); } return RenderMode.suppress(RenderMode.F_MACROS_ERR_MSG); }
@Nonnull private RenderMode suppressParagraphsIfNeeded(@Nullable final IssueRenderContext context, @Nonnull final RenderMode renderMode) { if (context != null && context.getParam(IssueRenderContext.INLINE_PARAM) == Boolean.TRUE) { return renderMode.and(RenderMode.suppress(RenderMode.F_PARAGRAPHS)); } return renderMode; }
@Nonnull private RenderMode getRenderModeBasedOnMimeSniffingPolicy() { String mimeSniffingPolicy = applicationProperties.getDefaultBackedString(APKeys.JIRA_OPTION_IE_MIME_SNIFFING); if (mimeSniffingPolicy.equalsIgnoreCase(APKeys.MIME_SNIFFING_OWNED)) { return RenderMode.suppress(RenderMode.F_MACROS_ERR_MSG); } else if (mimeSniffingPolicy.equalsIgnoreCase(APKeys.MIME_SNIFFING_PARANOID)) { return RenderMode.suppress(RenderMode.F_MACROS_ERR_MSG | RenderMode.F_IMAGES | RenderMode.F_EMBEDDED_OBJECTS); } else if (mimeSniffingPolicy.equalsIgnoreCase(APKeys.MIME_SNIFFING_WORKAROUND)) { HttpServletRequest request = getCurrentRequest(); if (request != null) { return getRenderModeForWorkaroundSniffingPolicyBasedOnUserBrowser(request); } return RenderMode.suppress(RenderMode.F_MACROS_ERR_MSG | RenderMode.F_EMBEDDED_OBJECTS); } return RenderMode.ALL; }