X-Git-Url: http://git.pjr.cc/?p=CBFWR.git;a=blobdiff_plain;f=libcbfwr%2Fweb.php;fp=libcbfwr%2Fweb.php;h=8e4967cdcea57ec062370699f7ba4562555fc557;hp=0000000000000000000000000000000000000000;hb=9d42ecae8d0c5139e119af983a5fe65f4b0fe149;hpb=90e37664d8296ebb5f3aae443b44b09f95826e90
diff --git a/libcbfwr/web.php b/libcbfwr/web.php
new file mode 100644
index 0000000..8e4967c
--- /dev/null
+++ b/libcbfwr/web.php
@@ -0,0 +1,295 @@
+
+
Menu
+Home
+ $val) {
+ $link = $val["link"];
+ $name = $val["name"];
+ echo "$name ";
+ }
+
+ echo "
";
+}
+
+// just a short one to call the long one
+function gcam($m, $s)
+{
+ global $glconfig;
+ CBFWAddMessage($m, $s);
+}
+
+function CBFWAddMessage($messagelev, $message)
+{
+
+}
+
+function CBFWMessageBuilder()
+{
+
+}
+
+function CBFWpageBuilder($bodyClass, $bodyFunction, $bodycontent=null, $title="CBFW")
+{
+ global $WEB_ROOT_FS, $BASE_URL;
+
+ // TODO: load css
+ // header
+ echo "$title ";
+
+ // load css
+ if(file_exists("$WEB_ROOT_FS/css")) {
+ $dh = opendir("$WEB_ROOT_FS/css");
+ if($dh) {
+ while(($file = readdir($dh))!==false) {
+ $mt = preg_match("/.*.css$/", $file);
+ if($mt > 0) {
+ error_log("loading css $file");
+ echo " ";
+ //echo "required $basedir/$file\n";
+ }
+ }
+ }
+ }
+
+ // load js
+ if(file_exists("$WEB_ROOT_FS/js")) {
+ $dh = opendir("$WEB_ROOT_FS/js");
+ if($dh) {
+ while(($file = readdir($dh))!==false) {
+ $mt = preg_match("/.*.js$/", $file);
+ if($mt > 0) {
+ error_log("loading js $file");
+ echo "";
+ //echo "required $basedir/$file\n";
+ }
+ }
+ }
+ }
+
+
+ // start body
+ echo "";
+
+ // page top
+ echo "CBFW ";
+ echo "";
+ CBFWMessageBuilder();
+ echo " ";
+
+ // menu, then body
+ echo "";
+ CBFWMenuBuilder();
+ echo " ";
+ // body
+ $url = "/";
+ if(isset($_REQUEST["q"])) {
+ $url = $_REQUEST["q"];
+ }
+
+ if($bodyClass != null) {
+ $bodyClass->$bodyFunction($url);
+ } else if( $bodyFunction != null) {
+ $bodyFunction($url);
+ } else echo $bodycontent;
+ echo "
";
+
+
+ // close the big wrap-around table
+ echo "
";
+
+ // footer
+ echo "Copyright 2011, PJR ";
+
+}
+
+function cbfw_getLastSeen($ip, $data)
+{
+ $last = "never";
+
+ if(!$data) return $last;
+
+
+
+ foreach($data as $key=>$val) {
+ $last = $val["name"];
+ error_log("got $last for $ip");
+ }
+
+ if($last == "never") return $last;
+
+ $last = cbfw_tdiffToAgo(time()-$last);
+
+ error_log("last for $ip set to $last");
+
+ return $last;
+
+}
+
+function cbfw_tdiffToAgo($time_in_sec)
+{
+ $tdiff = $time_in_sec;
+ $tdiff_min = (int)($tdiff/60);
+ $tdiff_hour = (int)($tdiff/3600);
+ $tdiff_days = (int)($tdiff/86400);
+
+ if($tdiff < 60) $last = "Less then a minute";
+ if($tdiff >= 60 && $tdiff < 7200) $last = "$tdiff_min minutes ago";
+ if($tdiff >= 7200 && $tdiff < 86400) $last = "$tdiff_hour hours ago";
+ if($tdiff >= 86400) $last = "$tdiff_days days ago";
+
+ return $last;
+}
+
+function cbfw_isRemoteDir($url)
+{
+ file_get_contents($url);
+ //error_log("did file_get_contents on $url");
+ foreach($http_response_header as $key => $val) {
+ //error_log("got header of $key for $val");
+ if(preg_match("/.*Location:.*/", $val)) {
+ //error_log("in details apt got location as $val from $url");
+ $realloc = preg_replace("/.*: /", "", $val);
+ $urlwithslash = $url."/";
+ //echo " in comp with $urlwithslash $realloc ";
+ if(strcasecmp($realloc,$urlwithslash)==0) {
+ //error_log("I believe $realloc is a directory redir for $url");
+ return true;
+ } else {
+ //error_log("I dont believe $realloc is a directory redir for $url");
+ }
+ }
+ }
+ return false;
+}
+
+function cbfw_fileExists($url)
+{
+ $fp = fopen($url, "r");
+ //error_og("did file_get_contents on $url");
+ $retval = false;
+ foreach($http_response_header as $key => $val) {
+ //error_log("got header of $key for $val");
+ if(preg_match("/.*HTTP\/.*200.*/", $val)) {
+ //echo "is true\n";
+
+ $retval = true;
+ }
+ }
+ fclose($fp);
+ return $retval;
+}
+
+function cbfw_startInstaller()
+{
+ global $WEB_ROOT_FS, $BASE_URL;
+
+ $uid = posix_geteuid();
+ $gid = posix_getegid();
+ $uid_a = posix_getpwuid($uid);
+ $uid = $uid_a["name"];
+
+ $gid_a = posix_getgrgid($gid);
+ $gid = $gid_a["name"];
+ error_log("user id is $uid, group id is $gid");
+
+ if(isset($_REQUEST["installdir"])) {
+ $c = new CBFWConfig();
+ touch($_REQUEST["installdir"]."/webconfig");
+ $c->loadConfig($_REQUEST["installdir"]."/webconfig");
+ header("Location: index.php");
+ return;
+ }
+
+ $underroot = realpath($WEB_ROOT_FS."/../");
+
+?>
+
+Welcome to CBFW
+Welcome to CBFW, I cant find my configuration file so im assuming you installing me for the first time
+If this is not correct then we have a big problem that needs to be solved, i hope you have a backup of the old
+config, cause that will make life easier.
+However, if this is the first time you have run this app, then all is good with the world. All I need right
+now is a place where i can store my config. I search the following directories for the location of my
+configuration (webconfig)
+ /var/run/glcas/
+ /var/lib/glcas/
+ /var/glcas/
+
+
+As root, you must now create one of these directories and change the ownership of the directory to the web owner.
+(chown : the_path_you_choose).
+
+Now, tell me where you want me to create the webconfig file:
+
+
+
+
\ No newline at end of file