%@ 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");
}
%>