changed how configs work
[CBFWR.git] / libcbfwr / web.php
index 6bfcad6..87e7bf4 100644 (file)
@@ -26,10 +26,15 @@ class CBFWWeb {
                $bodycontent = null;
                
                $conf = new Config();
-               $conf->loadConfig();
+               $comms = new Comms(); 
+               $conf->loadConfig($comms->getConfig(0));
                $rconfig = $conf->getConfig();
                
                if($rconfig["status"] != "conf") {
+                       if($rconfig["status"] == "nodir") {
+                               cbfw_startnodir();
+                               return 0;
+                       }
                        cbfw_startinstaller();
                        return 0;
                }
@@ -41,12 +46,13 @@ class CBFWWeb {
                        // ok, now we try and find the basics
                        $url_s = explode("/", $url);
                        
+                       $bodyFunction = null;
                        switch($url_s[0]) {
                                case "zones":
-                                       $bodyFunction = "CBFWZonesPage";
+                                       CBFWZonesPage($url_s);
                                        break;
                                case "interfaces":
-                                       $bodyFunction = "CBFWInterfacesPage";
+                                       CBFWInterfacesPage($url_s);
                                        break;
                                case "objects":
                                        $bodyFunction = "CBFWObjectsPage";
@@ -63,7 +69,7 @@ class CBFWWeb {
                } else {
                        $bodyFunction = "CBFBuildHomePage";
                }
-               CBFWpageBuilder(null, $bodyFunction);
+               if($bodyFunction != null) CBFWpageBuilder(null, $bodyFunction);
        }       
 }
 
@@ -123,7 +129,7 @@ function CBFWMessageBuilder()
 
 }
 
-function CBFWpageBuilder($bodyClass, $bodyFunction, $bodycontent=null, $title="CBFW")
+function CBFWpageBuilder($bodyClass, $bodyFunction, $bodycontent=null, $title="CBFW", $bodyfunctiondata=null)
 {
        global $WEB_ROOT_FS, $BASE_URL;
        
@@ -182,9 +188,9 @@ function CBFWpageBuilder($bodyClass, $bodyFunction, $bodycontent=null, $title="C
        }
        
        if($bodyClass != null) {
-               $bodyClass->$bodyFunction($url);
+               $bodyClass->$bodyFunction($bodyfunctiondata);
        } else if( $bodyFunction != null) {
-               $bodyFunction($url);
+               $bodyFunction($bodyfunctiondata);
        } else echo $bodycontent;
        echo "</td></tr></table>";
        
@@ -291,5 +297,15 @@ Now, tell me where you want me to create the webconfig file:<br>
 <?php 
 }
 
+function cbfw_startnodir()
+{
+?>
+<html>
+<h1>Cant Run</h1>
+There is no config and no directory where i can store one. Login to the server and either create /var/run/cbfwr or <?php echo $LIB_ROOT_FS?>/var
+</html>
+<?php
+}
+
 
 ?>
\ No newline at end of file