Nachtrag fehlender Dateien.
git-svn-id: https://svn.libreccm.org/ccm/trunk@2120 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
547f1ae848
commit
f956dbaa1b
|
|
@ -0,0 +1,93 @@
|
|||
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2">
|
||||
|
||||
<jsp:directive.page import="java.net.URLEncoder"/>
|
||||
<jsp:directive.page import="java.util.Enumeration"/>
|
||||
<jsp:directive.page import="com.arsdigita.persistence.OID"/>
|
||||
<jsp:directive.page import="com.arsdigita.cms.contenttypes.DecisionTree"/>
|
||||
<jsp:directive.page import="com.arsdigita.cms.contenttypes.DecisionTreeSection"/>
|
||||
<jsp:directive.page import="com.arsdigita.cms.contenttypes.DecisionTreeOptionTarget"/>
|
||||
<jsp:directive.page import="com.arsdigita.cms.contenttypes.DecisionTreeOptionTargetCollection"/>
|
||||
<jsp:directive.page import="com.arsdigita.cms.contenttypes.DecisionTreeSection"/>
|
||||
<jsp:directive.page import="com.arsdigita.web.BaseApplicationServlet"/>
|
||||
<jsp:directive.page import="com.arsdigita.web.RedirectSignal"/>
|
||||
|
||||
<jsp:directive.page extends="com.arsdigita.web.BaseJSP"/>
|
||||
|
||||
<jsp:directive.page contentType="text/html"/>
|
||||
|
||||
<jsp:scriptlet>
|
||||
String sectionOID = request.getParameter(DecisionTree.PARAM_SECTION_OID);
|
||||
DecisionTreeSection section = new DecisionTreeSection(OID.valueOf(sectionOID));
|
||||
DecisionTree tree = section.getTree();
|
||||
|
||||
String parameterName = section.getParameterName();
|
||||
String selectedOption = request.getParameter(parameterName);
|
||||
String returnURL = request.getParameter("return_url");
|
||||
|
||||
Enumeration parameterNames = request.getParameterNames();
|
||||
String parameters = "";
|
||||
while (parameterNames.hasMoreElements()) {
|
||||
String name = (String) parameterNames.nextElement();
|
||||
|
||||
if (DecisionTree.preserveParameter(name)) {
|
||||
if (!"".equals(parameters))
|
||||
parameters += "&";
|
||||
parameters += URLEncoder.encode(name) + "=" + URLEncoder.encode(request.getParameter(name));
|
||||
}
|
||||
}
|
||||
|
||||
if (request.getParameter("cancel") != null) {
|
||||
String cancelURL = tree.getCancelURL();
|
||||
if (cancelURL == null || "".equals(cancelURL)) {
|
||||
</jsp:scriptlet>
|
||||
|
||||
<html>
|
||||
<body>
|
||||
<p>Error: No cancel URL has been defined for the decision tree.</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<jsp:scriptlet>
|
||||
} else {
|
||||
throw new RedirectSignal(cancelURL, false);
|
||||
}
|
||||
} else {
|
||||
// Find out which option has been selected.
|
||||
DecisionTreeOptionTargetCollection targets = tree.getTargets();
|
||||
targets.addEqualsFilter("matchOption.treeSection.id", section.getID());
|
||||
targets.addEqualsFilter("matchOption.value", selectedOption);
|
||||
|
||||
if (targets.next()) { //XXX this is false
|
||||
DecisionTreeOptionTarget target = targets.getTarget();
|
||||
String targetURL = target.getTargetURL();
|
||||
if (targetURL == null || "".equals(targetURL)) {
|
||||
targetURL = returnURL + "?" +
|
||||
DecisionTree.PARAM_SECTION_ID + "=" + target.getTargetSection().getID();
|
||||
}
|
||||
|
||||
if (!"".equals(parameters)) {
|
||||
if (targetURL.contains("?"))
|
||||
targetURL += "&";
|
||||
else
|
||||
targetURL += "?";
|
||||
targetURL += parameters;
|
||||
}
|
||||
|
||||
targets.close();
|
||||
throw new RedirectSignal(targetURL, false);
|
||||
} else {
|
||||
</jsp:scriptlet>
|
||||
|
||||
<html>
|
||||
<body>
|
||||
<p>Error: No target has been defined for the selected option.</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<jsp:scriptlet>
|
||||
}
|
||||
|
||||
targets.close();
|
||||
}
|
||||
</jsp:scriptlet>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
function validate(form) {
|
||||
valid = false;
|
||||
hasOptions = false;
|
||||
for (i = 0; i < form.elements.length; i++) {
|
||||
if (form.elements[i].type == "radio") {
|
||||
hasOptions = true;
|
||||
if (form.elements[i].checked) {
|
||||
valid = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (hasOptions && !valid) {
|
||||
alert("Please select an option.");
|
||||
return false;
|
||||
} else
|
||||
return true;
|
||||
}
|
||||
Loading…
Reference in New Issue