diff options
-rw-r--r-- | source4/scripting/libjs/provision.js | 21 | ||||
-rw-r--r-- | swat/index.esp | 6 |
2 files changed, 27 insertions, 0 deletions
diff --git a/source4/scripting/libjs/provision.js b/source4/scripting/libjs/provision.js index f5aaeafe89..894b42ceb7 100644 --- a/source4/scripting/libjs/provision.js +++ b/source4/scripting/libjs/provision.js @@ -10,6 +10,27 @@ provision_next_usn = 1; sys = sys_init(); /* + return true if the current install seems to be OK +*/ +function install_ok() +{ + var lp = loadparm_init(); + var ldb = ldb_init(); + if (lp.get("realm") == "") { + return false; + } + var ok = ldb.connect(lp.get("sam database")); + if (!ok) { + return false; + } + var res = ldb.search("(name=Administrator)"); + if (res.length != 1) { + return false; + } + return true; +} + +/* find a user or group from a list of possibilities */ function findnss() diff --git a/swat/index.esp b/swat/index.esp index e1ec624308..2e43d3f9cf 100644 --- a/swat/index.esp +++ b/swat/index.esp @@ -1,6 +1,12 @@ <% page_header("columns", "Server Status", ""); libinclude("base.js"); libinclude("management.js"); + libinclude("provision.js"); + + if (install_ok() == false) { + redirect("/install/provision.esp"); + } + %> <h1>Server Status</h1> |