
META-INF.resources.facets.view.modified.jsp Maven / Gradle / Ivy
<%--
/**
* Copyright (c) 2000-present Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
--%>
<%@ include file="/facets/init.jsp" %>
<%
String fieldParamSelection = ParamUtil.getString(request, facet.getFieldId() + "selection", "0");
int fromDay = ParamUtil.getInteger(request, HtmlUtil.escapeJS(facet.getFieldId()) + "dayFrom");
int fromMonth = ParamUtil.getInteger(request, HtmlUtil.escapeJS(facet.getFieldId()) + "monthFrom");
int fromYear = ParamUtil.getInteger(request, HtmlUtil.escapeJS(facet.getFieldId()) + "yearFrom");
Date fromDate = PortalUtil.getDate(fromMonth, fromDay, fromYear);
int toDay = ParamUtil.getInteger(request, HtmlUtil.escapeJS(facet.getFieldId()) + "dayTo");
int toMonth = ParamUtil.getInteger(request, HtmlUtil.escapeJS(facet.getFieldId()) + "monthTo");
int toYear = ParamUtil.getInteger(request, HtmlUtil.escapeJS(facet.getFieldId()) + "yearTo");
Date toDate = PortalUtil.getDate(toMonth, toDay, toYear);
JSONArray rangesJSONArray = dataJSONObject.getJSONArray("ranges");
String modifiedLabel = StringPool.BLANK;
int index = 0;
if (fieldParamSelection.equals("0")) {
modifiedLabel = LanguageUtil.get(request, HtmlUtil.escape(facetConfiguration.getLabel()));
}
%>
-
<%
String defaultRangeCssClass = "text-default";
if (fieldParamSelection.equals("0")) {
defaultRangeCssClass = "text-primary";
}
String taglibClearFacet = "window['" + renderResponse.getNamespace() + HtmlUtil.escapeJS(facet.getFieldId()) + "clearFacet'](0);";
%>
<%
for (int i = 0; i < rangesJSONArray.length(); i++) {
JSONObject rangesJSONObject = rangesJSONArray.getJSONObject(i);
String label = HtmlUtil.escape(rangesJSONObject.getString("label"));
String range = rangesJSONObject.getString("range");
index = (i + 1);
if (fieldParamSelection.equals(String.valueOf(index))) {
modifiedLabel = LanguageUtil.get(request, label);
}
%>
-
<%
String rangeCssClass = "text-default";
if (fieldParamSelection.equals(String.valueOf(index))) {
rangeCssClass = "text-primary";
}
String taglibSetRange = "window['" + renderResponse.getNamespace() + HtmlUtil.escapeJS(facet.getFieldId()) + "setRange'](" + index + ", '" + HtmlUtil.escapeJS(range) + "');";
%>
<%
TermCollector termCollector = facetCollector.getTermCollector(range);
%>
(<%= termCollector.getFrequency() %>)
<%
}
%>
-
<%
String customRangeCssClass = randomNamespace + "custom-range-toggle";
if (fieldParamSelection.equals(String.valueOf(index + 1))) {
customRangeCssClass += " text-primary";
}
else {
customRangeCssClass += " text-default";
}
TermCollector termCollector = null;
if (fieldParamSelection.equals(String.valueOf(index + 1))) {
modifiedLabel = LanguageUtil.get(request, "custom-range");
termCollector = facetCollector.getTermCollector(fieldParam);
}
%>
…
(<%= termCollector.getFrequency() %>)
<%
Calendar fromCalendar = CalendarFactoryUtil.getCalendar(timeZone, locale);
if (Validator.isNotNull(fromDate)) {
fromCalendar.setTime(fromDate);
}
else {
fromCalendar.add(Calendar.DATE, -1);
}
Calendar toCalendar = CalendarFactoryUtil.getCalendar(timeZone, locale);
if (Validator.isNotNull(toDate)) {
toCalendar.setTime(toDate);
}
%>
modified-custom-range" id="<%= randomNamespace %>customRange">
<%
String taglibSearchCustomRange = "window['" + renderResponse.getNamespace() + HtmlUtil.escapeJS(facet.getFieldId()) + "searchCustomRange'](" + (index + 1) + ");";
%>
function <%= HtmlUtil.escapeJS(facet.getFieldId()) %>clearFacet(selection) {
var form = AUI.$(document. fm);
form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>').val('');
form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>selection').val(selection);
submitForm(form);
}
function <%= HtmlUtil.escapeJS(facet.getFieldId()) %>searchCustomRange(selection) {
var A = AUI();
var Lang = A.Lang;
var LString = Lang.String;
var form = AUI.$(document. fm);
var dayFrom = form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>dayFrom').val();
var monthFrom = Lang.toInt(form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>monthFrom').val()) + 1;
var yearFrom = form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>yearFrom').val();
var dayTo = form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>dayTo').val();
var monthTo = Lang.toInt(form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>monthTo').val()) + 1;
var yearTo = form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>yearTo').val();
var range = '[' + yearFrom + LString.padNumber(monthFrom, 2) + LString.padNumber(dayFrom, 2) + '000000 TO ' + yearTo + LString.padNumber(monthTo, 2) + LString.padNumber(dayTo, 2) + '235959]';
form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>').val(range);
form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>selection').val(selection);
submitForm(form);
}
function <%= HtmlUtil.escapeJS(facet.getFieldId()) %>setRange(selection, range) {
var form = AUI.$(document. fm);
form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>').val(range);
form.fm('<%= HtmlUtil.escapeJS(facet.getFieldId()) %>selection').val(selection);
submitForm(form);
}
var Util = Liferay.Util;
var customRangeFrom = Liferay.component('<%= renderResponse.getNamespace() %>modifiedfromDatePicker');
var customRangeTo = Liferay.component('<%= renderResponse.getNamespace() %>modifiedtoDatePicker');
var searchButton = A.one('# searchCustomRangeButton');
var preventKeyboardDateChange = function(event) {
if (!event.isKey('TAB')) {
event.preventDefault();
}
};
A.one('# <%= HtmlUtil.escapeJS(facet.getFieldId()) %>from').on('keydown', preventKeyboardDateChange);
A.one('# <%= HtmlUtil.escapeJS(facet.getFieldId()) %>to').on('keydown', preventKeyboardDateChange);
var DEFAULTS_FORM_VALIDATOR = A.config.FormValidator;
A.mix(
DEFAULTS_FORM_VALIDATOR.STRINGS,
{
dateRange: '<%= UnicodeLanguageUtil.get(request, "search-custom-range-invalid-date-range") %>'
},
true
);
A.mix(
DEFAULTS_FORM_VALIDATOR.RULES,
{
dateRange: function(val, fieldNode, ruleValue) {
return A.Date.isGreaterOrEqual(customRangeTo.getDate(), customRangeFrom.getDate());
}
},
true
);
var customRangeValidator = new A.FormValidator(
{
boundingBox: document. fm,
fieldContainer: 'div',
on: {
errorField: function(event) {
Util.toggleDisabled(searchButton, true);
},
validField: function(event) {
Util.toggleDisabled(searchButton, false);
}
},
rules: {
' <%= HtmlUtil.escapeJS(facet.getFieldId()) %>from': {
dateRange: true
},
' <%= HtmlUtil.escapeJS(facet.getFieldId()) %>to': {
dateRange: true
}
}
}
);
var onRangeSelectionChange = function(event) {
customRangeValidator.validate();
};
customRangeFrom.on('selectionChange', onRangeSelectionChange);
customRangeTo.on('selectionChange', onRangeSelectionChange);
A.one('.<%= randomNamespace %>custom-range-toggle').on(
'click',
function(event) {
event.halt();
A.one('#<%= randomNamespace + "customRange" %>').toggle();
}
);
© 2015 - 2025 Weber Informatics LLC | Privacy Policy