diff options
author | Derrell Lipman <derrell@samba.org> | 2007-01-03 19:57:40 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:36:06 -0500 |
commit | 2e7c59c24470766e37309c7a8bfa4c7b81c57614 (patch) | |
tree | c44c89911868c52f25ca66bdefa68e13248db8e6 /webapps/install/provision.esp | |
parent | 57f5bf78fa9fc9d190c3cb25251e686a1488f790 (diff) | |
download | samba-2e7c59c24470766e37309c7a8bfa4c7b81c57614.tar.gz samba-2e7c59c24470766e37309c7a8bfa4c7b81c57614.tar.bz2 samba-2e7c59c24470766e37309c7a8bfa4c7b81c57614.zip |
r20515: Continued work on the Web Application Framework. Until we get all of the
functionality of the old scripts incorporated into the new framework, the old
scripts need to still be available. I've reverted to having the old scripts
be the default pages, and added an option to access the preview of the new
SWAT.
(This used to be commit b43620d4b8eff815f4a6dc02522a8dfc9fdcaef4)
Diffstat (limited to 'webapps/install/provision.esp')
-rw-r--r-- | webapps/install/provision.esp | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/webapps/install/provision.esp b/webapps/install/provision.esp new file mode 100644 index 0000000000..ee9673d507 --- /dev/null +++ b/webapps/install/provision.esp @@ -0,0 +1,79 @@ +<% page_header("columns", "Provisioning", "install"); + + include("/scripting/forms.js"); + libinclude("base.js"); + libinclude("provision.js"); +%> + +<h1>Samba4 provisioning</h1> + +<% +var f = FormObj("Provisioning", 0, 2); +var i; +var lp = loadparm_init(); + +if (lp.get("realm") == "") { + lp.set("realm", lp.get("workgroup") + ".example.com"); +} + + +var subobj = provision_guess(); +/* Don't supply default password for web interface */ +subobj.ADMINPASS = ""; + +f.add("REALM", "DNS Domain Name"); +f.add("DOMAIN", "NetBIOS Domain Name"); +f.add("HOSTNAME", "Hostname"); +f.add("ADMINPASS", "Administrator Password", "password"); +f.add("CONFIRM", "Confirm Password", "password"); +f.add("DOMAINSID", "Domain SID"); +f.add("HOSTIP", "Host IP"); +f.add("DEFAULTSITE", "Default Site"); +f.submit[0] = "Provision"; +f.submit[1] = "Cancel"; + +if (form['submit'] == "Cancel") { + redirect("/"); +} + +if (form['submit'] == "Provision") { + for (r in form) { + subobj[r] = form[r]; + } +} + +for (i=0;i<f.element.length;i++) { + f.element[i].value = subobj[f.element[i].name]; +} + +if (form['submit'] == "Provision") { + lp.set("realm", subobj.REALM); + var goodpass = (subobj.CONFIRM == subobj.ADMINPASS); + + if (!goodpass) { + write("<h3>Passwords don't match. Please try again.</h3>"); + f.display(); + } else if (subobj.ADMINPASS == "") { + write("<h3>You must choose an administrator password. Please try again.</h3>"); + f.display(); + } else if (!provision_validate(subobj, writefln)) { + f.display(); + } else { + var paths = provision_default_paths(subobj); + if (!provision(subobj, writefln, false, paths, + session.authinfo.session_info, session.authinfo.credentials)) { + writefln("Provision failed!"); + } else if (!provision_dns(subobj, writefln, paths, + session.authinfo.session_info, session.authinfo.credentials)) { + writefln("DNS Provision failed!"); + } else { + writefln("Provision Complete!"); + } + } +} else { + f.display(); +} +%> + + +<% page_footer(); %> |