NIHVIVO-3428 removed sort fields from object property editing form
This commit is contained in:
parent
45d217e579
commit
654f5b6efb
2 changed files with 232 additions and 230 deletions
|
@ -140,53 +140,15 @@ public class PropertyRetryController extends BaseEditController {
|
|||
log.error("PropertyRetryController could not find the getPropertyByURI method in the PropertyWebappDao");
|
||||
}
|
||||
|
||||
|
||||
FormObject foo = new FormObject();
|
||||
foo.setErrorMap(epo.getErrMsgMap());
|
||||
|
||||
|
||||
HashMap<String, List<Option>> optionMap = new HashMap<String, List<Option>>();
|
||||
try {
|
||||
List<Option> namespaceIdList = FormUtils.makeOptionListFromBeans(ontDao.getAllOntologies(),"URI","Name", ((propertyForEditing.getNamespace()==null) ? "" : propertyForEditing.getNamespace()), null, (propertyForEditing.getNamespace()!=null));
|
||||
namespaceIdList.add(0, new Option(request.getFullWebappDaoFactory().getDefaultNamespace(),"default"));
|
||||
optionMap.put("Namespace", namespaceIdList);
|
||||
List<Option> namespaceIdInverseList = FormUtils.makeOptionListFromBeans(ontDao.getAllOntologies(),"URI","Name", ((propertyForEditing.getNamespaceInverse()==null) ? "" : propertyForEditing.getNamespaceInverse()), null, (propertyForEditing.getNamespaceInverse()!=null));
|
||||
namespaceIdInverseList.add(new Option(request.getFullWebappDaoFactory().getDefaultNamespace(),"default"));
|
||||
optionMap.put("NamespaceInverse", namespaceIdInverseList);
|
||||
List<ObjectProperty> objPropList = propDao.getAllObjectProperties();
|
||||
Collections.sort(objPropList);
|
||||
List<Option> parentIdList = FormUtils.makeOptionListFromBeans(objPropList,"URI","PickListName",propertyForEditing.getParentURI(),null);
|
||||
HashMap<String,Option> hashMap = new HashMap<String,Option>();
|
||||
parentIdList = getSortedList(hashMap,parentIdList);
|
||||
parentIdList.add(0,new Option("-1","none (root property)", false));
|
||||
optionMap.put("ParentURI", parentIdList);
|
||||
List<DataProperty> dpList = dpDao.getAllDataProperties();
|
||||
Collections.sort(dpList);
|
||||
List<Option> objectIndividualSortPropertyList = FormUtils.makeOptionListFromBeans(dpList,"URI","Name",propertyForEditing.getObjectIndividualSortPropertyURI(),null);
|
||||
objectIndividualSortPropertyList.add(0,new Option("","- select data property -"));
|
||||
optionMap.put("ObjectIndividualSortPropertyURI",objectIndividualSortPropertyList);
|
||||
List<Option> domainOptionList = FormUtils.makeVClassOptionList(request.getFullWebappDaoFactory(), propertyForEditing.getDomainVClassURI());
|
||||
if (propertyForEditing.getDomainVClass() != null
|
||||
&& propertyForEditing.getDomainVClass().isAnonymous()) {
|
||||
domainOptionList.add(0, new Option(
|
||||
propertyForEditing.getDomainVClass().getURI(),
|
||||
propertyForEditing.getDomainVClass().getName(),
|
||||
true));
|
||||
}
|
||||
domainOptionList.add(0, new Option("","(none specified)"));
|
||||
optionMap.put("DomainVClassURI", domainOptionList);
|
||||
List<Option> rangeOptionList = FormUtils.makeVClassOptionList(request.getFullWebappDaoFactory(), propertyForEditing.getRangeVClassURI());
|
||||
if (propertyForEditing.getRangeVClass() != null
|
||||
&& propertyForEditing.getRangeVClass().isAnonymous()) {
|
||||
rangeOptionList.add(0, new Option(
|
||||
propertyForEditing.getRangeVClass().getURI(),
|
||||
propertyForEditing.getRangeVClass().getName(),
|
||||
true));
|
||||
}
|
||||
rangeOptionList.add(0, new Option("","(none specified)"));
|
||||
optionMap.put("RangeVClassURI", rangeOptionList);
|
||||
populateOptionMap(optionMap, propertyForEditing, request, ontDao, propDao);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
log.error(e, e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
optionMap.put("HiddenFromDisplayBelowRoleLevelUsingRoleUri",RoleLevelOptionsSetup.getDisplayOptionsList(propertyForEditing));
|
||||
|
@ -227,7 +189,7 @@ public class PropertyRetryController extends BaseEditController {
|
|||
|
||||
RequestDispatcher rd = request.getRequestDispatcher(Controllers.BASIC_JSP);
|
||||
request.setAttribute("bodyJsp","/templates/edit/formBasic.jsp");
|
||||
request.setAttribute("colspan","5");
|
||||
request.setAttribute("colspan","4");
|
||||
request.setAttribute("formJsp","/templates/edit/specific/property_retry.jsp");
|
||||
request.setAttribute("scripts","/templates/edit/formBasic.js");
|
||||
request.setAttribute("title","Property Editing Form");
|
||||
|
@ -248,6 +210,80 @@ public class PropertyRetryController extends BaseEditController {
|
|||
doPost(request, response);
|
||||
}
|
||||
|
||||
private void populateOptionMap(HashMap<String, List<Option>> optionMap,
|
||||
ObjectProperty propertyForEditing,
|
||||
VitroRequest request,
|
||||
OntologyDao ontDao,
|
||||
ObjectPropertyDao propDao) {
|
||||
|
||||
List<Option> namespaceIdList = FormUtils.makeOptionListFromBeans(
|
||||
ontDao.getAllOntologies(), "URI", "Name",
|
||||
((propertyForEditing.getNamespace() == null)
|
||||
? ""
|
||||
: propertyForEditing.getNamespace()),
|
||||
null, (propertyForEditing.getNamespace() != null));
|
||||
namespaceIdList.add(0, new Option(
|
||||
request.getFullWebappDaoFactory().getDefaultNamespace(), "default"));
|
||||
optionMap.put("Namespace", namespaceIdList);
|
||||
|
||||
List<Option> namespaceIdInverseList = FormUtils.makeOptionListFromBeans(
|
||||
ontDao.getAllOntologies(), "URI", "Name",
|
||||
((propertyForEditing.getNamespaceInverse() == null)
|
||||
? ""
|
||||
: propertyForEditing.getNamespaceInverse()),
|
||||
null, (propertyForEditing.getNamespaceInverse() != null));
|
||||
namespaceIdInverseList.add(0, new Option(
|
||||
request.getFullWebappDaoFactory().getDefaultNamespace(),"default"));
|
||||
optionMap.put("NamespaceInverse", namespaceIdInverseList);
|
||||
|
||||
List<ObjectProperty> objPropList = propDao.getAllObjectProperties();
|
||||
Collections.sort(objPropList);
|
||||
List<Option> parentIdList = FormUtils.makeOptionListFromBeans(
|
||||
objPropList,"URI","PickListName",propertyForEditing.getParentURI(),null);
|
||||
HashMap<String,Option> hashMap = new HashMap<String,Option>();
|
||||
parentIdList = getSortedList(hashMap,parentIdList);
|
||||
parentIdList.add(0,new Option("-1","none (root property)", false));
|
||||
optionMap.put("ParentURI", parentIdList);
|
||||
|
||||
// List<DataProperty> dpList = dpDao.getAllDataProperties();
|
||||
// Collections.sort(dpList);
|
||||
// List<Option> objectIndividualSortPropertyList =
|
||||
// FormUtils.makeOptionListFromBeans(
|
||||
// dpList, "URI", "Name",
|
||||
// propertyForEditing.getObjectIndividualSortPropertyURI(),
|
||||
// null);
|
||||
// objectIndividualSortPropertyList.add(0, new Option(
|
||||
// "","- select data property -"));
|
||||
// optionMap.put("ObjectIndividualSortPropertyURI",
|
||||
// objectIndividualSortPropertyList);
|
||||
|
||||
List<Option> domainOptionList = FormUtils.makeVClassOptionList(
|
||||
request.getFullWebappDaoFactory(),
|
||||
propertyForEditing.getDomainVClassURI());
|
||||
if (propertyForEditing.getDomainVClass() != null
|
||||
&& propertyForEditing.getDomainVClass().isAnonymous()) {
|
||||
domainOptionList.add(0, new Option(
|
||||
propertyForEditing.getDomainVClass().getURI(),
|
||||
propertyForEditing.getDomainVClass().getName(),
|
||||
true));
|
||||
}
|
||||
domainOptionList.add(0, new Option("","(none specified)"));
|
||||
optionMap.put("DomainVClassURI", domainOptionList);
|
||||
|
||||
List<Option> rangeOptionList = FormUtils.makeVClassOptionList(
|
||||
request.getFullWebappDaoFactory(),
|
||||
propertyForEditing.getRangeVClassURI());
|
||||
if (propertyForEditing.getRangeVClass() != null
|
||||
&& propertyForEditing.getRangeVClass().isAnonymous()) {
|
||||
rangeOptionList.add(0, new Option(
|
||||
propertyForEditing.getRangeVClass().getURI(),
|
||||
propertyForEditing.getRangeVClass().getName(),
|
||||
true));
|
||||
}
|
||||
rangeOptionList.add(0, new Option("","(none specified)"));
|
||||
optionMap.put("RangeVClassURI", rangeOptionList);
|
||||
}
|
||||
|
||||
private List<VClass> makeVClassListForOptions(String VClassURI, List<VClass> allClassBeanList, VClassDao vclassDao) {
|
||||
List<VClass> currentClassList = new ArrayList<VClass>();
|
||||
VClass currentVClass = vclassDao.getVClassByURI(VClassURI);
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
<%@ taglib prefix="form" uri="http://vitro.mannlib.cornell.edu/edit/tags" %>
|
||||
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
|
||||
|
||||
<%-- colspan set to 5 in PropertyRetryController.java --%>
|
||||
<%-- colspan set to 4 in PropertyRetryController.java --%>
|
||||
<tr class="editformcell">
|
||||
<td valign="top" colspan="2">
|
||||
<td valign="top" colspan="1">
|
||||
<b>Parent property</b><br/><br/>
|
||||
<select name="ParentURI"><form:option name="ParentURI"/></select>
|
||||
</td>
|
||||
|
@ -36,7 +36,7 @@
|
|||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td style="vertical-align:bottom;" valign="bottom" colspan="2">
|
||||
<td style="vertical-align:bottom;" valign="bottom" colspan="1">
|
||||
<b>Local name for property*</b>
|
||||
<c:choose>
|
||||
<c:when test="${_action eq 'update'}">
|
||||
|
@ -75,7 +75,7 @@
|
|||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td style="vertical-align:bottom;" valign="bottom" colspan="2">
|
||||
<td style="vertical-align:bottom;" valign="bottom" colspan="1">
|
||||
<b>Optional: Inverse property local name</b>
|
||||
<c:choose>
|
||||
<c:when test="${_action eq 'update'}">
|
||||
|
@ -106,14 +106,14 @@
|
|||
<b>Domain class</b><br />
|
||||
<select name="DomainVClassURI"><form:option name="DomainVClassURI"/></select>
|
||||
</td>
|
||||
<td valign="top" colspan="3">
|
||||
<td valign="top" colspan="2">
|
||||
<b>Range class</b><br />
|
||||
<select name="RangeVClassURI" ><form:option name="RangeVClassURI"/></select>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="top" colspan="5">
|
||||
<td valign="top" colspan="4">
|
||||
<b>Public Description</b> for front-end users, as it will appear on editing forms<br/>
|
||||
<textarea name="PublicDescription"><form:value name="PublicDescription"/></textarea>
|
||||
<c:set var="PublicDescriptionError"><form:error name="PublicDescription"/></c:set>
|
||||
|
@ -122,64 +122,6 @@
|
|||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="2">
|
||||
<em>Optional: display tier for this property<br />
|
||||
(<strong>lower</strong> numbers display first)</em><br/>
|
||||
<input name="DomainDisplayTier" value="<form:value name="DomainDisplayTier"/>" style="width:15%;" />
|
||||
<c:set var="DomainDisplayTierError"><form:error name="DomainDisplayTier"/></c:set>
|
||||
<c:if test="${!empty DomainDisplayTierError}">
|
||||
<span class="notice"><c:out value="${DomainDisplayTierError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Optional: display tier for this property's inverse<br />
|
||||
(<strong>lower</strong> numbers display first)</em><br/>
|
||||
<input name="RangeDisplayTier" value="<form:value name="RangeDisplayTier"/>" style="width:15%;" />
|
||||
<c:set var="RangeDisplayTierError"><form:error name="RangeDisplayTier"/></c:set>
|
||||
<c:if test="${!empty RangeDisplayTierError}">
|
||||
<span class="notice"><c:out value="${RangeDisplayTierError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="2">
|
||||
<em>Related <strong>object individuals</strong> to display without collapsing<br />
|
||||
(<strong>lower</strong> numbers display first)</em><br/>
|
||||
<input name="DomainDisplayLimit" value="<form:value name="DomainDisplayLimit"/>" style="width:15%;" />
|
||||
<c:set var="DomainDisplayLimitError"><form:error name="DomainDisplayLimit"/></c:set>
|
||||
<c:if test="${!empty DomainDisplayLimitError}">
|
||||
<span class="notice"><c:out value="${DomainDisplayLimitError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="2">
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Optional: <strong>sort direction</strong><br />
|
||||
(blank for ascending, "desc" for descending)</em><br/>
|
||||
<input name="DomainEntitySortDirection" value="<form:value name="DomainEntitySortDirection"/>" />
|
||||
<c:set var="DomainEntitySortDirectionError"><form:error name="DomainEntitySortDirection"/></c:set>
|
||||
<c:if test="${!empty DomainEntitySortDirectionError}">
|
||||
<span class="notice"><c:out value="${DomainEntitySortDirectionError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="2">
|
||||
<em>Optional: <strong>data property</strong> by which to sort related individuals</em><br />
|
||||
<select name="ObjectIndividualSortPropertyURI"><form:option name="ObjectIndividualSortPropertyURI"/></select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="5">
|
||||
<c:choose>
|
||||
<c:when test="${collateBySubclass}">
|
||||
<input name="CollateBySubclass" type="checkbox" value="TRUE" checked="checked"/>collate by subclass
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<input name="CollateBySubclass" type="checkbox" value="TRUE"/>collate by subclass
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="1">
|
||||
<c:choose>
|
||||
|
@ -191,7 +133,7 @@
|
|||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td valign="bottom" colspan="2">
|
||||
<td valign="bottom" colspan="1">
|
||||
<c:choose>
|
||||
<c:when test="${symmetric}">
|
||||
<input name="Symmetric" type="checkbox" value="TRUE" checked="checked"/> symmetric
|
||||
|
@ -222,15 +164,54 @@
|
|||
</c:choose>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="2">
|
||||
<em>custom entry form</em><br />
|
||||
<input name="CustomEntryForm" size="30" value="<form:value name="CustomEntryForm"/>" />
|
||||
<c:set var="CustomEntryFormError"><form:error name="CustomEntryForm"/></c:set>
|
||||
<c:if test="${!empty CustomEntryFormError}">
|
||||
<span class="notice"><c:out value="${CustomEntryFormError}"/></span>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Optional: display tier for this property<br />
|
||||
(<strong>lower</strong> numbers display first)</em><br/>
|
||||
<input name="DomainDisplayTier" value="<form:value name="DomainDisplayTier"/>" style="width:15%;" />
|
||||
<c:set var="DomainDisplayTierError"><form:error name="DomainDisplayTier"/></c:set>
|
||||
<c:if test="${!empty DomainDisplayTierError}">
|
||||
<span class="notice"><c:out value="${DomainDisplayTierError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Optional: display tier for this property's inverse<br />
|
||||
(<strong>lower</strong> numbers display first)</em><br/>
|
||||
<input name="RangeDisplayTier" value="<form:value name="RangeDisplayTier"/>" style="width:15%;" />
|
||||
<c:set var="RangeDisplayTierError"><form:error name="RangeDisplayTier"/></c:set>
|
||||
<c:if test="${!empty RangeDisplayTierError}">
|
||||
<span class="notice"><c:out value="${RangeDisplayTierError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Related <strong>object individuals</strong> to display without collapsing<br />
|
||||
(<strong>lower</strong> numbers display first)</em><br/>
|
||||
<input name="DomainDisplayLimit" value="<form:value name="DomainDisplayLimit"/>" style="width:15%;" />
|
||||
<c:set var="DomainDisplayLimitError"><form:error name="DomainDisplayLimit"/></c:set>
|
||||
<c:if test="${!empty DomainDisplayLimitError}">
|
||||
<span class="notice"><c:out value="${DomainDisplayLimitError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Related <strong>object individuals of inverse property</strong> to display without collapsing</em><br />
|
||||
(<strong>lower</strong> numbers display first)<br/>
|
||||
<input name="RangeDisplayLimit" value="<form:value name="RangeDisplayLimit"/>" style="width:15%;" />
|
||||
<c:set var="RangeDisplayLimitError"><form:error name="RangeDisplayLimit"/></c:set>
|
||||
<c:if test="${!empty RangeDisplayLimitError}">
|
||||
<span class="notice"><c:out value="${RangeDisplayLimitError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="1">
|
||||
<c:choose>
|
||||
<c:when test="${collateBySubclass}">
|
||||
<input name="CollateBySubclass" type="checkbox" value="TRUE" checked="checked"/>collate by subclass
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<input name="CollateBySubclass" type="checkbox" value="TRUE"/>collate by subclass
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em><strong>Caution:</strong>delete object when statement deleted?</em><br />
|
||||
|
@ -265,34 +246,19 @@
|
|||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="2">
|
||||
|
||||
</td>
|
||||
<td valign="bottom" colspan="1">
|
||||
<em>Optional: <strong>inverse sort direction</strong><br />
|
||||
(blank for ascending, "desc" for descending)</em><br/>
|
||||
<input name="RangeEntitySortDirection" value="<form:value name="RangeEntitySortDirection"/>" />
|
||||
<c:set var="RangeEntitySortDirectionError"><form:error name="RangeEntitySortDirection"/></c:set>
|
||||
<c:if test="${!empty RangeEntitySortDirectionError}">
|
||||
<span class="notice"><c:out value="${RangeEntitySortDirectionError}"/></span>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="4">
|
||||
<em>custom entry form</em><br />
|
||||
<input name="CustomEntryForm" size="30" value="<form:value name="CustomEntryForm"/>" />
|
||||
<c:set var="CustomEntryFormError"><form:error name="CustomEntryForm"/></c:set>
|
||||
<c:if test="${!empty CustomEntryFormError}">
|
||||
<span class="notice"><c:out value="${CustomEntryFormError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
<td valign="bottom" colspan="2">
|
||||
<em>Related <strong>object individuals of non-inverse property</strong> to display without collapsing</em><br />
|
||||
(<strong>lower</strong> numbers display first)<br/>
|
||||
<input name="RangeDisplayLimit" value="<form:value name="RangeDisplayLimit"/>" style="width:15%;" />
|
||||
<c:set var="RangeDisplayLimitError"><form:error name="RangeDisplayLimit"/></c:set>
|
||||
<c:if test="${!empty RangeDisplayLimitError}">
|
||||
<span class="notice"><c:out value="${RangeDisplayLimitError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="5">
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="4">
|
||||
<b>Example</b><br />
|
||||
<input name="Example" style="width:90%;" value="<form:value name="Example"/>" />
|
||||
<c:set var="ExampleError"><form:error name="Example"/></c:set>
|
||||
|
@ -300,9 +266,9 @@
|
|||
<span class="notice"><c:out value="${ExampleError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
</tr>
|
||||
<tr class="editformcell">
|
||||
<td valign="bottom" colspan="5">
|
||||
<td valign="bottom" colspan="4">
|
||||
<b>Description</b> for ontology editors<br />
|
||||
<textarea name="Description" style="width:90%;"><form:value name="Description"/></textarea>
|
||||
<c:set var="DescriptionError"><form:error name="Description"/></c:set>
|
||||
|
@ -310,5 +276,5 @@
|
|||
<span class="notice"><c:out value="${DescriptionError}"/></span>
|
||||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
</tr>
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue