<?php /* ###################################################################### IML DEPLOYMENT webgui - index file - controller like ensure that you activated the rewrite rules RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !^/server-status$ RewriteRule ^(.*)$ index.php [QSA,L] --------------------------------------------------------------------- 2013-11-08 Axel <axel.hahn@iml.unibe.ch> ###################################################################### */ session_start(); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); require_once("./classes/page.class.php"); require_once("../../config/inc_projects_config.php"); require_once("./classes/logger.class.php"); require_once("./classes/user.class.php"); global $oCLog; $oCLog = new logger(); $oCLog->enableDebugByIp($aConfig['showdebug']['ip']); require_once("./inc_functions.php"); require_once("./classes/htmlguielements.class.php"); $oHtml=new htmlguielements(); $sPrj = ""; $sAction = "overview"; // ------ check parameters if (array_key_exists("prj", $aParams)) { $sPrj = $aParams["prj"]; } if (array_key_exists("action", $aParams)) { if (file_exists(__DIR__ . '/pages/act_' . $aParams["action"] . ".php")) { $sAction = $aParams["action"]; } } $oCLog->add("parsing params " . '<pre>GET '.print_r($_GET, true).'</pre>' . '<pre>POST '.print_r($_POST, true).'</pre>' . '<pre>aParams: '.print_r($aParams, true).'</pre>' ); // ------ Ausgabe $sHeader = '<style>'; foreach ($aConfig["phases"] as $sPhase => $aData) { $sHeader.=array_key_exists("bgdark", $aData["css"]) ? 'th.' . $sPhase . '{' . $aData["css"]["bgdark"] . '}' : ''; $sHeader.=array_key_exists("bglight", $aData["css"]) ? 'td.' . $sPhase . ', div.' . $sPhase . '{' . $aData["css"]["bglight"] . '}' : ''; $sHeader.=array_key_exists("bgbutton", $aData["css"]) ? 'a.' . $sPhase . ',a.' . $sPhase . ':hover,button.' . $sPhase . ',button.' . $sPhase . ':hover{' . $aData["css"]["bgbutton"] . '}' : ''; } $sHeader.='</style>'; $sTopArea=getTopArea(); $sTopAction=getAction(); // ------ action $oUser=new user(); if ($oUser->hasPermission('page_'.$sAction)){ $sActionFile = __DIR__ . '/pages/act_' . $sAction . ".php"; $oCLog->add("including $sActionFile"); ob_start(); if (!@include($sActionFile)) { include("./pages/error_404.php"); } $sPhpOut = ob_get_contents(); ob_end_clean(); $oCLog->add("including done $sActionFile"); $oCLog->add("adding actionlog.class"); if ($oUser->getUsername()){ require_once("./classes/actionlog.class.php"); $aFilter=array('limit'=>'0, 10'); if ($sPrj && $sPrj!="all"){ $aFilter['project']=$sPrj; } $oLog=new Actionlog($sPrj); $sPhpOut.='<div class="logs">' . $oLog->renderLogs($aFilter).'</div>'; } $oCLog->add("adding actionlog.class done"); } else { $sPhpOut=$oUser->showDenied(); // return false; } $oCLog->add("Finally: rendering page ..."); $sPhpOut = ' <div id="header" style="display: none;"> IML DEPLOYMENT GUI </div> <br> ' . $sTopArea . ' <div id="content"> ' . $sTopAction . ' ' . $sPhpOut . ' </div> <div id="footer"> IML Deployment © 2015-' . date("Y") . ' <a href="https://gitlab.iml.unibe.ch/admins/imldeployment/tree/master" target="_blank">Institut für medizinische Lehre; Universität Bern</a> </div> '.$oCLog->render(); $oPage = new Page(); $oPage->addResponseHeader("Pragma: no-cache"); $oPage->setOutputtype('html'); $oPage->setHeader($sHeader); $oPage->addJsOnReady(''); $oPage->setContent($sPhpOut); echo $oPage->render();