X-Git-Url: http://git.pjr.cc/?p=gwvp.git;a=blobdiff_plain;f=gwvplib%2Fgwvpweb.php;h=01215abe64be3bc6c8a719dcca67f54e4140f2a7;hp=8148e00848e1bfe43fe3f0966e80e89d847b62c6;hb=047523a5083efd83dcd94b6d2763c9fddb913c90;hpb=34740c9fa804277f1f51c1fb3c0f2c9645f3840f diff --git a/gwvplib/gwvpweb.php b/gwvplib/gwvpweb.php index 8148e00..01215ab 100644 --- a/gwvplib/gwvpweb.php +++ b/gwvplib/gwvpweb.php @@ -1,9 +1,188 @@ $val) { + error_log("checking callmefunction $key as $val"); + $callme = $val(); + if($callme !== false) { + $callme(); + return; + } + } + + // we fell-thru to the main web page builder + gwvp_goMainPage(); +} + +function gwvp_SendMessage($messagetype, $message) +{ + $_SESSION["messagetype"] = $messagetype; + $_SESSION["message"] = $message; +} + +function gwvp_goMainPage($bodyFunction = null) +{ + // the main page will look pretty simple, a title, a menu then a body + global $WEB_ROOT_FS, $BASE_URL; + + // a simple web page layout that loads any css and js files that exist in the css and js directories + echo "GWVP"; + + // 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 ""; + + echo "

Git over Web Via PHP

"; + + + echo ""; + + if(isset($_SESSION["message"])) { + echo ""; + } + + echo ""; + + echo ""; + + echo ""; + + echo "
"; + gwvp_MessageBuilder(); + echo "
"; + gwvp_MenuBuilder(); + echo ""; + gwvp_LoginBuilder(); + echo "
"; + if($bodyFunction == null) { + gwvp_BodyBuilder(); + } else { + if(function_exists($bodyFunction)) { + $bodyFunction(); + } else { + error_log("Got called with non-existant body function"); + gwvp_BodyBuilder(); + } + } + echo "
"; + gwvp_TailBuilder(); + echo "
"; + +} + + +// builds the message builder if its needed +function gwvp_MessageBuilder() +{ + $message = ""; + $messagetype = "info"; + if(isset($_SESSION["message"])) $message = $_SESSION["message"]; + if(isset($_SESSION["messagetype"])) $messagetype = $_SESSION["messagetype"]; + + if($message != "") { + switch($messagetype) { + case "info": + echo "
$message
"; + break; + case "error": + echo "
$message
"; + break; + } + unset($_SESSION["message"]); + if(isset($_SESSION["messagetype"])) unset($_SESSION["messagetype"]); + } +} + +// builds the menu structure +function gwvp_MenuBuilder() { + global $MENU_ITEMS; + + ksort($MENU_ITEMS); + echo ""; + foreach($MENU_ITEMS as $key => $val) { + $link = $val["link"]; + $text = $val["text"]; + echo ""; + } + echo "
Menu$text
"; + +} + +function gwvp_LoginBuilder() +{ + global $WEB_ROOT_FS, $BASE_URL; + + $login = gwvp_IsLoggedIn(); + if($login === false) { + gwvp_SingleLineLoginForm(); + } else { + echo "Hello, ".gwvp_GetFullName($login); + } +} + +// builds the body structure +function gwvp_BodyBuilder() +{ + echo "I AM THE MAIN BODY, FEAR ME!!!!"; +} + +// builds the tail structure +function gwvp_TailBuilder() +{ + echo "Copyright 2011, PJR - licensed under GPL"; } ?> \ No newline at end of file