summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--swat/docs/menu.js29
-rw-r--r--swat/esptest/exception.esp2
-rw-r--r--swat/esptest/formtest.esp2
-rw-r--r--swat/esptest/loadparm.esp2
-rw-r--r--swat/esptest/session.esp2
-rw-r--r--swat/login.esp2
-rw-r--r--swat/scripting/common.js44
7 files changed, 62 insertions, 21 deletions
diff --git a/swat/docs/menu.js b/swat/docs/menu.js
index 4a39497fd9..b57b454a32 100644
--- a/swat/docs/menu.js
+++ b/swat/docs/menu.js
@@ -1,9 +1,22 @@
/* show a menu for the docs directory */
-simple_menu(
- "Samba Information",
- "Samba4 development", "http://devel.samba.org/",
- "Recent Checkins", "http://build.samba.org/?tree=samba4&function=Recent+Checkins",
- "Recent Builds", "http://build.samba.org/?tree=samba4&function=Recent+Builds",
- "EJS Information", "http://www.appwebserver.org/products/ejs/ejs.html",
- "ESP Information", "http://www.appwebserver.org/products/esp/esp.html",
- "HTML 4.01 Spec", "http://www.w3.org/TR/html401/");
+var m = MenuObj("Samba Information", 8);
+
+m.element[0].label = "Samba4 development";
+m.element[0].link = "http://devel.samba.org/";
+m.element[1].label = "Recent Checkins";
+m.element[1].link = "http://build.samba.org/?tree=samba4&function=Recent+Checkins";
+m.element[2].label = "Recent Builds";
+m.element[2].link = "http://build.samba.org/?tree=samba4&function=Recent+Builds";
+m.element[3].label = "EJS Information";
+m.element[3].link = "http://www.appwebserver.org/products/ejs/ejs.html";
+m.element[4].label = "ESP Information";
+m.element[4].link = "http://www.appwebserver.org/products/esp/esp.html";
+m.element[5].label = "HTML 4.01 Spec";
+m.element[5].link = "http://www.w3.org/TR/html401/";
+m.element[6].label = "JavaScript Spec";
+m.element[6].link = "http://www.ecma-international.org/publications/files/ecma-st/ECMA-262.pdf";
+m.element[7].label = "CSS2 Reference";
+m.element[7].link = "http://www.w3schools.com/css/css_reference.asp";
+
+display_menu(m);
+
diff --git a/swat/esptest/exception.esp b/swat/esptest/exception.esp
index 986b616dab..df62e9a326 100644
--- a/swat/esptest/exception.esp
+++ b/swat/esptest/exception.esp
@@ -4,7 +4,7 @@
<%
-var f = Form("ExceptionTest", 0, 2);
+var f = FormObj("ExceptionTest", 0, 2);
f.submit[0] = "Generate Exception";
f.submit[1] = "No Exception";
diff --git a/swat/esptest/formtest.esp b/swat/esptest/formtest.esp
index 9f5626624e..2d7c33e518 100644
--- a/swat/esptest/formtest.esp
+++ b/swat/esptest/formtest.esp
@@ -1,7 +1,7 @@
<% page_header("columns", "ESP Form Test"); %>
<%
-var f = Form("FormTest", 3, 2);
+var f = FormObj("FormTest", 3, 2);
f.element[0].label = "First Name";
f.element[0].name = "firstName";
f.element[0].value = form['firstName'];
diff --git a/swat/esptest/loadparm.esp b/swat/esptest/loadparm.esp
index 5e45e4262c..738208b745 100644
--- a/swat/esptest/loadparm.esp
+++ b/swat/esptest/loadparm.esp
@@ -3,7 +3,7 @@
<h1>Samba4 loadparm test</h1>
<%
-var f = Form("LoadparmTest", 2, 1);
+var f = FormObj("LoadparmTest", 2, 1);
f.element[0].label = "Share";
f.element[1].label = "Parameter";
f.submit[0] = "OK";
diff --git a/swat/esptest/session.esp b/swat/esptest/session.esp
index 6de7edab67..309505bae3 100644
--- a/swat/esptest/session.esp
+++ b/swat/esptest/session.esp
@@ -3,7 +3,7 @@
<h1>Samba4 session test</h1>
<%
-var f = Form("SessionTest", 3, 4);
+var f = FormObj("SessionTest", 3, 4);
f.element[0].label = "Name";
f.element[1].label = "Value";
f.element[2].label = "Timeout";
diff --git a/swat/login.esp b/swat/login.esp
index fba1c544dc..f662492511 100644
--- a/swat/login.esp
+++ b/swat/login.esp
@@ -6,7 +6,7 @@ if (request['SESSION_EXPIRED'] == "True") {
write("<b>Your session has expired - please authenticate again<br>\n");
}
-var f = Form("login", 2, 1);
+var f = FormObj("login", 2, 1);
f.element[0].label = "Username";
f.element[0].value = form['Username'];
f.element[1].label = "Password";
diff --git a/swat/scripting/common.js b/swat/scripting/common.js
index 8df419bc60..d087f0d2a6 100644
--- a/swat/scripting/common.js
+++ b/swat/scripting/common.js
@@ -69,17 +69,45 @@ function always_allowed(uri) {
}
/*
- display a simple menu. First argument is menu title, followed by
- pairs of menu item name and link
+ create a menu object with the defaults filled in, ready for display_menu()
+ */
+function MenuObj(name, num_elements)
+{
+ var o = new Object();
+ o.name = name;
+ o.class = "menu";
+ o.style = "simple";
+ o.orientation = "vertical"
+ o.element = new Array(num_elements);
+ for (i in o.element) {
+ o.element[i] = new Object();
+ }
+ return o;
+}
+
+/*
+ display a menu object. Currently only the "simple", "vertical" menu style
+ is supported
*/
-function simple_menu() {
- write("<i>" + arguments[0] + "</i><br /><ul>\n");
- for (i = 1; i < arguments.length; i = i + 2) {
- write("<li><a href=\"" + arguments[i+1] + "\">" + arguments[i] + "</a></li>\n");
+function display_menu(m) {
+ assert(m.style == "simple" && m.orientation == "vertical");
+ write('<div class="' + m.class + '">\n');
+ write("<i>" + m.name + "</i><br /><ul>\n");
+ for (i = 0; i < m.element.length; i++) {
+ var e = m.element[i];
+ write("<li><a href=\"" + e.link + "\">" + e.label + "</a></li>\n");
}
- write("</ul>\n");
+ write("</ul></div>\n");
}
+function simple_menu() {
+ var m = MenuObj(arguments[0], (arguments.length-1)/2);
+ for (i=0;i<m.element.length;i++) {
+ m.element[i].label = arguments[1+(i*2)];
+ m.element[i].link = arguments[2+(i*2)];
+ }
+ display_menu(m);
+}
/*
display a table element
@@ -133,7 +161,7 @@ function multi_table(array, header) {
/*
create a Form object with the defaults filled in, ready for display_form()
*/
-function Form(name, num_elements, num_submits)
+function FormObj(name, num_elements, num_submits)
{
var f = new Object();
f.name = name;