<%@ include file="../imports.jsp"%> <%@ page import="java.util.Iterator" %> <%@ page import="java.util.Collection" %> <%@ page import="java.util.Map" %> <%@ page import="org.openxava.util.Maps" %> <%@ page import="org.openxava.util.Is" %> <%@ page import="org.openxava.util.XavaPreferences" %> <%@ page import="org.openxava.view.View" %> <%@ page import="org.openxava.model.meta.MetaProperty" %> <%@ page import="org.openxava.model.meta.MetaReference" %> <%@ page import="org.openxava.web.WebEditors" %> <%@ page import="org.openxava.controller.meta.MetaController"%> <% String collectionName = request.getParameter("collectionName"); String viewObject = request.getParameter("viewObject"); String listEditor = request.getParameter("listEditor"); View view = (View) context.get(request, viewObject); View collectionView = view.getSubview(collectionName); if (!Is.emptyString(listEditor)) { collectionView.setDefaultListActionsForCollectionsIncluded(false); collectionView.setDefaultRowActionsForCollectionsIncluded(false); } View subview = view.getSubview(collectionName); MetaReference ref = view.getMetaModel().getMetaCollection(collectionName).getMetaReference(); String viewName = viewObject + "_" + collectionName; String propertyPrefixAccumulated = request.getParameter("propertyPrefix"); String idCollection = org.openxava.web.Collections.id(request, collectionName); boolean collectionEditable = subview.isCollectionEditable(); boolean collectionMembersEditables = subview.isCollectionMembersEditables(); boolean hasListActions = subview.hasListActions(); String lineAction = ""; if (collectionEditable || collectionMembersEditables) { lineAction = subview.getEditCollectionElementAction(); } else { lineAction = subview.getViewCollectionElementAction(); } String propertyPrefix = propertyPrefixAccumulated == null?collectionName + ".":propertyPrefixAccumulated + collectionName + "."; %> > <% if (XavaPreferences.getInstance().isDetailOnBottomInCollections()) { %> <% } // of: if (XavaPreferences... %> <% // New if (view.displayDetailInCollection(collectionName)) { context.put(request, viewName, collectionView); %> > <% } else { %> <% String argv = "collectionName=" + collectionName; Iterator it = subview.getMetaPropertiesList().iterator(); String app = request.getParameter("application"); String module = request.getParameter("module"); while (it.hasNext()) { MetaProperty p = (MetaProperty) it.next(); String propertyKey= propertyPrefix + p.getName(); String valueKey = propertyKey + ".value"; request.setAttribute(propertyKey, p); request.setAttribute(valueKey, subview.getValue(p.getName())); String script = ""; if (it.hasNext()) { if (subview.throwsPropertyChanged(p)) { script = "onchange='openxava.throwPropertyChanged(\"" + app + "\", \"" + module + "\", \"" + propertyKey + "\")'"; } } else { script = "onblur='openxava.executeAction(\"" + app + "\", \"" + module + "\", \"\", false, \"" + subview.getSaveCollectionElementAction() + "\", \"" + argv + "\")'"; } Object value = request.getAttribute(propertyKey + ".value"); if (WebEditors.mustToFormat(p, view.getViewName())) { String fvalue = WebEditors.format(request, p, value, errors, view.getViewName()); request.setAttribute(propertyKey + ".fvalue", fvalue); } %> <% } } %> <% if (!XavaPreferences.getInstance().isDetailOnBottomInCollections()) { %> <% } // of: if (!XavaPreferences... %>
<% try { %> <% if (!Is.emptyString(listEditor)) { %> <% } else if (collectionView.isCollectionFromModel()) { %> <%@include file="../collectionFromModel.jsp" %> <% } else { %> <%@include file="../collectionList.jsp" %> <% } %> <% } catch (Exception ex) { %>
<%=ex.getLocalizedMessage()%> <% } %>
> <% if (collectionEditable) { %> <% if (subview.isRepresentsEntityReference()) { %> <% } %> <% } %> <% Iterator itListActions = subview.getActionsNamesList().iterator(); while (itListActions.hasNext()) { %> <% } // while list actions Collection listSubcontrollers = subview.getSubcontrollersNamesList(); for(String listSubcontroller : listSubcontrollers){ %> <% } %>
<% try { %> <% if (!Is.emptyString(listEditor)) { %> <% } else if (collectionView.isCollectionFromModel()) { %> <%@include file="../collectionFromModel.jsp" %> <% } else { %> <%@include file="../collectionList.jsp" %> <% } %> <% } catch (Exception ex) { %>
<%=ex.getLocalizedMessage()%> <% } %>