<%@ include file="../imports.jsp"%> <%@page import="org.openxava.web.Actions"%> <%@page import="org.openxava.web.Ids"%> <%@page import="org.openxava.model.meta.MetaProperty"%> <%@page import="org.openxava.tab.Tab"%> <%@page import="org.openxava.util.Is"%> <% String comparator = request.getParameter("comparator"); String prefix = request.getParameter("prefix"); if (prefix == null) prefix = ""; boolean isString = "true".equals(request.getParameter("isString")); boolean isDate = "true".equals(request.getParameter("isDate")); boolean isEmpty = "true".equals(request.getParameter("isEmpty")); String eq = Tab.EQ_COMPARATOR.equals(comparator)?"selected='selected'":""; String ne = Tab.NE_COMPARATOR.equals(comparator)?"selected='selected'":""; String ge = Tab.GE_COMPARATOR.equals(comparator)?"selected='selected'":""; String le = Tab.LE_COMPARATOR.equals(comparator)?"selected='selected'":""; String gt = Tab.GT_COMPARATOR.equals(comparator)?"selected='selected'":""; String lt = Tab.LT_COMPARATOR.equals(comparator)?"selected='selected'":""; String in = Tab.IN_COMPARATOR.equals(comparator)?"selected='selected'":""; String notIn = Tab.NOT_IN_COMPARATOR.equals(comparator)?"selected='selected'":""; String startsWith = Tab.STARTS_COMPARATOR.equals(comparator)?"selected='selected'":""; String contains = Tab.CONTAINS_COMPARATOR.equals(comparator)?"selected='selected'":""; String endsWith = Tab.ENDS_COMPARATOR.equals(comparator)?"selected='selected'":""; String empty = Tab.EMPTY_COMPARATOR.equals(comparator)?"selected='selected'":""; String notEmpty = Tab.NOT_EMPTY_COMPARATOR.equals(comparator)?"selected='selected'":""; String notContains = Tab.NOT_CONTAINS_COMPARATOR.equals(comparator)?"selected='selected'":""; String year = Tab.YEAR_COMPARATOR.equals(comparator)?"selected='selected'":""; String month = Tab.MONTH_COMPARATOR.equals(comparator)?"selected='selected'":""; String yearMonth = Tab.YEAR_MONTH_COMPARATOR.equals(comparator)?"selected='selected'":""; String range = Tab.RANGE_COMPARATOR.equals(comparator)?"selected='selected'":""; String idConditionValue = request.getParameter("idConditionValue"); String idConditionValueTo = request.getParameter("idConditionValueTo"); String propertyKey = request.getParameter("comparatorPropertyKey"); String name = null; String script = null; if (propertyKey == null) { int index = Integer.parseInt(request.getParameter("index")); name = Ids.decorate(request, prefix + "conditionComparator." + index); script = Actions.getActionOnChangeComparator(name,idConditionValue,idConditionValueTo); if (org.openxava.util.XavaPreferences.getInstance().isFilterOnChange()) { String collection = request.getParameter("collection"); String collectionArgv = Is.emptyString(collection)?"":"collection="+collection; script = new StringBuilder(script.replace(")\"", "); ")) .append("if (this.options[this.selectedIndex].value.indexOf('range') < 0) { ") .append("openxava.executeAction('") .append(request.getParameter("application")) .append("', '") .append(request.getParameter("module")) .append("', '', false, 'List.filter','") .append(collectionArgv).append("'); ") .append("}\"").toString(); } } else { name = propertyKey; script = request.getParameter("script"); } %>