diff --git a/public_html/deployment/act_accept.php b/public_html/deployment/act_accept.php
index 2778e853380fcb9eede1053a30c110092e3e699c..01f4f0902e1eb214dc1764018758157b17eccaea 100644
--- a/public_html/deployment/act_accept.php
+++ b/public_html/deployment/act_accept.php
@@ -1,4 +1,13 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - accept a phase to rollout it to the next phase
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 require_once("./config/inc_projects_config.php");
 require_once("./classes/project.class.php");
diff --git a/public_html/deployment/act_build.php b/public_html/deployment/act_build.php
index caece7b4b87cb80a5bb4abf885d11239a4283e3e..676dc269e3df90ef003c0604e46bfc1772c5797e 100644
--- a/public_html/deployment/act_build.php
+++ b/public_html/deployment/act_build.php
@@ -1,64 +1,72 @@
 <?php
 
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - build a package
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
+
 require_once("./config/inc_projects_config.php");
 require_once("./classes/project.class.php");
 require_once("./classes/formgen.class.php");
 
 
 // --- Checks
-$oPrj=new project($aParams["prj"]);
-    
-    
-$sOut='';
+$oPrj = new project($aParams["prj"]);
+
+
+$sOut = '';
 
 if (array_key_exists("confirm", $aParams)) {
-        $sOut.=$oPrj->build();
+    $sOut.=$oPrj->build();
 } else {
-        $sNext=$oPrj->getNextPhase();
-        $aPhaseData2=$oPrj->getPhaseInfos($sNext);
-        $sOut.='
+    $sNext = $oPrj->getNextPhase();
+    $aPhaseData2 = $oPrj->getPhaseInfos($sNext);
+    $sOut.='
             <p>
-                 Es wird ein neues Paket erstellt und f&uuml;r die Phase <em class="'.$sNext.'">'.$sNext.'</em> bereitgestellt.<br>
+                 Es wird ein neues Paket erstellt und f&uuml;r die Phase <em class="' . $sNext . '">' . $sNext . '</em> bereitgestellt.<br>
                  
             </p>';
-        $sRevison=$oPrj->getRepoRevision();
-        if (
-                array_key_exists("revision", $aPhaseData2["onhold"])
-                && $aPhaseData2["onhold"]["revision"]==$sRevison
-            ){
-            $sOut.=getBox("warning", "In der Queue von [$sNext] ist die Version bereits $sRevison vorhanden!");
-        }
-        if (
-                array_key_exists("revision", $aPhaseData2["ready4deployment"])
-                && $aPhaseData2["ready4deployment"]["revision"]==$sRevison
-            ){
-            $sOut.=getBox("warning", "Im Repo von [$sNext] ist die Version $sRevison bereits vorhanden!");
-        }
-        $sOut.='
+    $sRevison = $oPrj->getRepoRevision();
+    if (
+            array_key_exists("revision", $aPhaseData2["onhold"]) && $aPhaseData2["onhold"]["revision"] == $sRevison
+    ) {
+        $sOut.=getBox("warning", "In der Queue von [$sNext] ist die Version bereits $sRevison vorhanden!");
+    }
+    if (
+            array_key_exists("revision", $aPhaseData2["ready4deployment"]) && $aPhaseData2["ready4deployment"]["revision"] == $sRevison
+    ) {
+        $sOut.=getBox("warning", "Im Repo von [$sNext] ist die Version $sRevison bereits vorhanden!");
+    }
+    $sOut.='
                    <table>
                     <thead>
                         <tr>
                             <th class="versioncontrol">Versionskontrolle</th>
                             <th> </th>
-                            <th class="'.$sNext.'" colspan="2">'.$sNext.'</th>
+                            <th class="' . $sNext . '" colspan="2">' . $sNext . '</th>
                         </tr>
                     </thead>
                     <tbody>
                         <tr>
                             <td class="">
                                 HEAD ist:<br>
-                                '.$oPrj->renderRepoInfo().'
+                                ' . $oPrj->renderRepoInfo() . '
                             </td>
                             <td style="vertical-align: middle;">
                                 <img src="/deployment/images/nuvola64x64/apps/noatun.png">
                             </td>
-                            <td class="'.$sNext.'">
+                            <td class="' . $sNext . '">
                                 in der Queue:<br>
-                                '.$oPrj->renderPhaseDetail($sNext, "onhold", false).'
+                                ' . $oPrj->renderPhaseDetail($sNext, "onhold", false) . '
                             </td>
-                            <td class="'.$sNext.'">
+                            <td class="' . $sNext . '">
                                 im Repo:<br>
-                                '.$oPrj->renderPhaseDetail($sNext, "ready4deployment", false).'
+                                ' . $oPrj->renderPhaseDetail($sNext, "ready4deployment", false) . '
                             </td>
                         </tr>
                         </tbody>
@@ -66,25 +74,25 @@ if (array_key_exists("confirm", $aParams)) {
                    <br>
             
         ';
-        
-        // Eingabe Kommentare zum Deployment
-        $sOut.='
+
+    // Eingabe Kommentare zum Deployment
+    $sOut.='
              <form action="?" method="post" enctype="multipart/form-data">
                 <input type="hidden" name="confirm" value="1">
                 <!-- ' . enterDeployinfos() . '
                  <hr>
                 -->
                 <fieldset>
-                    <button type="submit" class="btn btn-primary btn-large" >Paket f&uuml;r ['.$sNext.'] erstellen</button>
+                    <button type="submit" class="btn btn-primary btn-large" >Paket f&uuml;r [' . $sNext . '] erstellen</button>
                 </fieldset>
              </form>
              ';
 }
 
-    
-$sOut.='<hr>'.aPrjHome();
+
+$sOut.='<hr>' . aPrjHome();
 
 
 // -- Ausgabe
-$sPhpOut=$sOut;
+$sPhpOut = $sOut;
 ?>
diff --git a/public_html/deployment/act_cleanup.php b/public_html/deployment/act_cleanup.php
index 3e031bbfecb36873f02adaaee6d0b2905f4e6900..77a75781ab292e52347ed0d72080cfdd8ee111f3 100644
--- a/public_html/deployment/act_cleanup.php
+++ b/public_html/deployment/act_cleanup.php
@@ -1,20 +1,31 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - cleanup
+
+  Maybe we can delete file (see inc_functions.php there is the menu).
+  Cleanup will be done in build method.
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 require_once("./config/inc_projects_config.php");
 require_once("./classes/project.class.php");
 
-$oPrj=new project($sPrj);
+$oPrj = new project($sPrj);
 
-$sPhpOut='
+$sPhpOut = '
     
-    <h3>Archive Dir: '.$aConfig['archiveDir'].'</h3>
+    <h3>Archive Dir: ' . $aConfig['archiveDir'] . '</h3>
         deleted:<br>
         <pre>' . print_r($oPrj->cleanupArchive(), true) . '</pre>
         versions left in the archive and which are currently in use:<br>
-        <pre>' . print_r($oPrj->getVersions(), true). '</pre>
+        <pre>' . print_r($oPrj->getVersions(), true) . '</pre>
             
-    <h3>Builds Dir: '.$aConfig['buildDir'].'/[project]/</h3>
-        <pre>' . print_r($oPrj->cleanupBuilds(), true). '</pre>
-     <hr>'.aPrjHome();
-
+    <h3>Builds Dir: ' . $aConfig['buildDir'] . '/[project]/</h3>
+        <pre>' . print_r($oPrj->cleanupBuilds(), true) . '</pre>
+     <hr>' . aPrjHome();
 ?>
diff --git a/public_html/deployment/act_deploy.php b/public_html/deployment/act_deploy.php
index 221c39f65ffae177653443947ddbcb7d7b1e1e77..319238f63c7b4b7e38639e84108372f9814bbaab 100644
--- a/public_html/deployment/act_deploy.php
+++ b/public_html/deployment/act_deploy.php
@@ -1,4 +1,13 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - deploy th package of the queue to repo
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 require_once("./config/inc_projects_config.php");
 require_once("./classes/project.class.php");
diff --git a/public_html/deployment/act_doc.php b/public_html/deployment/act_doc.php
index 08c451d83713bcdd232c52b5919cd12f46396d49..b449e3f42cb1798fa9d12b8b0ef045e62988fbaf 100644
--- a/public_html/deployment/act_doc.php
+++ b/public_html/deployment/act_doc.php
@@ -1,4 +1,13 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - doc ... UNUSED so far
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 require_once("./classes/classinfos.class.php");
 $aClasses=array(
diff --git a/public_html/deployment/act_overview.php b/public_html/deployment/act_overview.php
index 83e7b28355741e834408fc502812ddeb9242f075..daf7d8a2c896ddd1233096d878285adbb20ab44d 100644
--- a/public_html/deployment/act_overview.php
+++ b/public_html/deployment/act_overview.php
@@ -1,4 +1,15 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - overview
+ * for all projects
+ * for a single project
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 require_once("./config/inc_projects_config.php");
 
@@ -6,8 +17,7 @@ if (!array_key_exists("prj", $aParams)) {
 
     // overview over all projects
     require_once("./classes/projectlist.class.php");
-    $oPrjList = new projectlist($aProjects);
-    // $oPrjList->setConfig($aProjects);
+    $oPrjList = new projectlist();
 
     $sPhpOut = $oPrjList->renderOverview();
 } else {
@@ -25,16 +35,16 @@ if (!array_key_exists("prj", $aParams)) {
         <p>
             F&uuml;r das Projekt sind folgende Phasen konfiguriert:
         </p>
-        ' . $oPrj->renderPhaseInfo()  .'<br>
-        ' . $oPrj->renderLink("build").'<br><br>
+        ' . $oPrj->renderPhaseInfo() . '<br>
+        ' . $oPrj->renderLink("build") . '<br><br>
             
         <h3>Build-Versionen</h3>
         ' . $oPrj->renderVersionUsage();
     } else {
-        $sPhpOut.=getBox("info", "Es wurde noch keine URL in keiner der Phasen definiert").
+        $sPhpOut.=getBox("info", "Es wurde noch keine URL in keiner der Phasen definiert") .
                 $oPrj->renderLink("setup");
     }
+    $sPhpOut .= '<div style="clear: both"></div>';
 }
-
 ?>
 
diff --git a/public_html/deployment/act_phase.php b/public_html/deployment/act_phase.php
index a22d7086821818d59962af36d8b8f346e89cefdd..3b45ed8c87f13e5f1d7df4668ea79c3a7c5273d9 100644
--- a/public_html/deployment/act_phase.php
+++ b/public_html/deployment/act_phase.php
@@ -1,52 +1,61 @@
 <?php
 
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - deploy th package of the queue to repo
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
+
 require_once("./config/inc_projects_config.php");
 require_once("./classes/project.class.php");
 require_once("./inc_functions.php");
 
 
 // --- Checks
-$oPrj=new project($aParams["prj"]);
+$oPrj = new project($aParams["prj"]);
 
-    
-$sOut='';
-if (array_key_exists("par3", $aParams)){
-    $sPhase=$aParams["par3"];
+
+$sOut = '';
+if (array_key_exists("par3", $aParams)) {
+    $sPhase = $aParams["par3"];
 }
 
 
-if ($sPhase){
-    $sPhase=$aParams["par3"];
-    $sFirst=$oPrj->getNextPhase();
-    
+if ($sPhase) {
+    $sPhase = $aParams["par3"];
+    $sFirst = $oPrj->getNextPhase();
+
     $sOut.='
     <h3>Versionen</h3>
     <table>
      <thead>
          <tr>
-             <th class="'.$sPhase.'" colspan="3">'.$sPhase.'</th>
+             <th class="' . $sPhase . '" colspan="3">' . $sPhase . '</th>
          </tr>
      </thead>
      <tbody>
-        <tr>'.$oPrj->renderPlacesAsTd($sPhase).'</tr>
+        <tr>' . $oPrj->renderPlacesAsTd($sPhase) . '</tr>
         <tr>
-         '.$oPrj->renderAllPhaseDetails($sPhase, true).'
+         ' . $oPrj->renderAllPhaseDetails($sPhase, true) . '
         </tr>
      </tbody>
     </table>
     ';
-    if ($sFirst==$sPhase){
-        $sOut.='<br><h3>weitere Aktionen</h3>'.$oPrj->renderLink("build");
+    if ($sFirst == $sPhase) {
+        $sOut.='<br><h3>weitere Aktionen</h3>' . $oPrj->renderLink("build");
     }
-    
 } else {
     $sOut.=getBox("error", 'ERROR: missing name of the phase.');
 }
 
-    
-$sOut.='<hr>'.aPrjHome();
+
+$sOut.='<hr>' . aPrjHome();
 
 
 // -- Ausgabe
-$sPhpOut=$sOut;
+$sPhpOut = $sOut;
 ?>
diff --git a/public_html/deployment/act_setup.php b/public_html/deployment/act_setup.php
index 8050b0f955a3af8d22edbb876a6a8d0618f39d4b..072207c4f95c72d2ab65806e1975ed27f319e475 100644
--- a/public_html/deployment/act_setup.php
+++ b/public_html/deployment/act_setup.php
@@ -1,5 +1,17 @@
 <?php
 
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  webgui - setup
+    * for a new project
+    * settings of the current project
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
+
 require_once("./config/inc_projects_config.php");
 require_once("./classes/project.class.php");
 require_once("./inc_functions.php");
diff --git a/public_html/deployment/classes/formgen.class.php b/public_html/deployment/classes/formgen.class.php
index fbc7bce60240503a67e49c8b424fe66641b1277f..bff94d48b9fc6efd3f726caff1da08daa6ec9d0f 100644
--- a/public_html/deployment/classes/formgen.class.php
+++ b/public_html/deployment/classes/formgen.class.php
@@ -1,56 +1,69 @@
 <?php
 
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  class formgen - (copied and improved from simap prototype project)
+  It generates Form elements. This class does what I need it is not
+  feature complete.
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 class formgen {
-    var $aForm=array();
-    var $sRequired=' <span title="Eingabe ist erforderlich"><span style="color:#c00;">*</span></span>';
-    
+
+    var $aForm = array();
+    var $sRequired = ' <span title="Eingabe ist erforderlich"><span style="color:#c00;">*</span></span>';
+
     /**
      * constructor
      * @param array $aNewFormData
      * @return boolean
      */
-    public function __construct($aNewFormData=array()) {
-        if (count($aNewFormData)) return $this->setFormarray($aNewFormData);
+    public function __construct($aNewFormData = array()) {
+        if (count($aNewFormData))
+            return $this->setFormarray($aNewFormData);
         return true;
     }
-    
+
     /**
      * set a new array
      * @param array $aNewFormData
      * @return boolean
      */
-    public function setFormarray($aNewFormData=array()){
-        if (!is_array($aNewFormData) || !count($aNewFormData)){
+    public function setFormarray($aNewFormData = array()) {
+        if (!is_array($aNewFormData) || !count($aNewFormData)) {
             return false;
-        }        
-        return $this->aForm=$aNewFormData;
+        }
+        return $this->aForm = $aNewFormData;
     }
-    
+
     /**
      * render a complete form
      * @param string $sFormId
      * @return string html output
      */
-    public function renderHtml($sFormId){
-        $sReturn=false;
+    public function renderHtml($sFormId) {
+        $sReturn = false;
         if (!array_key_exists($sFormId, $this->aForm)) {
-            die("ERROR: " . __CLASS__ . ":".__FUNCTION__ . " - form id " . $sFormId . " does not exist.");
+            die("ERROR: " . __CLASS__ . ":" . __FUNCTION__ . " - form id " . $sFormId . " does not exist.");
         }
         $sReturn.='<form ';
-        if (array_key_exists("meta", $this->aForm[$sFormId])){
-            foreach (array("method","action","target","accept-charset") as $sAttr){
-                if (array_key_exists($sAttr, $this->aForm[$sFormId]["meta"])){
-                    $sReturn.=$sAttr.'="'.$this->aForm[$sFormId]["meta"][$sAttr].'" ';
+        if (array_key_exists("meta", $this->aForm[$sFormId])) {
+            foreach (array("method", "action", "target", "accept-charset") as $sAttr) {
+                if (array_key_exists($sAttr, $this->aForm[$sFormId]["meta"])) {
+                    $sReturn.=$sAttr . '="' . $this->aForm[$sFormId]["meta"][$sAttr] . '" ';
                 }
             }
         }
         $sReturn.='>';
-        foreach ($this->aForm[$sFormId]["form"] as $elementKey=>$elementData){
+        foreach ($this->aForm[$sFormId]["form"] as $elementKey => $elementData) {
             $sReturn.=$this->renderHtmlElement($elementKey, $elementData);
         }
         $sReturn.='</form>';
-        
+
         return $sReturn;
     }
 
@@ -60,226 +73,225 @@ class formgen {
      * @param array $elementData  array of form element
      * @return string
      */
-    private function _addHtmlAtrributes($aAttributes,$elementData){
-        $sReturn=false;
-        foreach($aAttributes as $sAtrr){
-            if (array_key_exists($sAtrr, $elementData) && $elementData[$sAtrr]){
-                if ($sReturn) $sReturn.=' ';
-                $sReturn.=$sAtrr.'="'.$elementData[$sAtrr].'"';
+    private function _addHtmlAtrributes($aAttributes, $elementData) {
+        $sReturn = false;
+        foreach ($aAttributes as $sAtrr) {
+            if (array_key_exists($sAtrr, $elementData) && $elementData[$sAtrr]) {
+                if ($sReturn)
+                    $sReturn.=' ';
+                $sReturn.=$sAtrr . '="' . $elementData[$sAtrr] . '"';
             }
         }
         return $sReturn;
     }
-    
-    
-    private function _addLabel($sLabel, $sFor, $sClass=false){
-        $sReturn=false;
-        $sReturn='<label for="'.$sFor.'"';
-        if ($sClass)$sReturn.=' class="'.$sClass.'"';
-        $sReturn.='>'.$sLabel.'</label>';
+
+    private function _addLabel($sLabel, $sFor, $sClass = false) {
+        $sReturn = false;
+        $sReturn = '<label for="' . $sFor . '"';
+        if ($sClass)
+            $sReturn.=' class="' . $sClass . '"';
+        $sReturn.='>' . $sLabel . '</label>';
         $sReturn.="\n";
         return $sReturn;
     }
-    
-    private function _checkReqiredKeys($aArray, $aRequiredKeys, $sLabel=false){
-        $bReturn=true;
-        foreach ($aRequiredKeys as $sKey){
-            if (!array_key_exists($sKey, $aArray)){
+
+    private function _checkReqiredKeys($aArray, $aRequiredKeys, $sLabel = false) {
+        $bReturn = true;
+        foreach ($aRequiredKeys as $sKey) {
+            if (!array_key_exists($sKey, $aArray)) {
                 die("ERROR: $sLabel<br>Missing key \"$sKey\" in the array of a form element:<pre>" . print_r($aArray, true) . "</pre>");
-                $bReturn=false;
+                $bReturn = false;
             }
         }
         return $bReturn;
     }
-    
+
     /**
      * render a single form element
      * @param string $sId          id of a form element
      * @param array  $elementData  array of form element
      * @return string html output
      */
-    public function renderHtmlElement($sId, $elementData){
-        $sReturn=false;
-        $aAllowedHtmlAttributes=array();
-        $sDefaultAttributes="class,onclick,onmouseover,onmouseout,title";
-        
+    public function renderHtmlElement($sId, $elementData) {
+        $sReturn = false;
+        $aAllowedHtmlAttributes = array();
+        $sDefaultAttributes = "class,onclick,onmouseover,onmouseout,title";
+
         if (!array_key_exists("type", $elementData)) {
             print_r($elementData);
-            die("ERROR: " . __CLASS__ . ":".__FUNCTION__ . " - key &quot;type&quot; does not exist.");
+            die("ERROR: " . __CLASS__ . ":" . __FUNCTION__ . " - key &quot;type&quot; does not exist.");
         }
-        
-        $sFormElement=false;
-        $sLabelText='';
-        $sLabelElement=false;
-        
-        $sHtmlDefault='';
-        $sHtmlTable='';
-        
-        if (array_key_exists("label", $elementData)){
-            $sLabelText=$elementData["label"];
-            $sLabelText.=(array_key_exists("required", $elementData) && $elementData["required"])?$this->sRequired:'';
+
+        $sFormElement = false;
+        $sLabelText = '';
+        $sLabelElement = false;
+
+        $sHtmlDefault = '';
+        $sHtmlTable = '';
+
+        if (array_key_exists("label", $elementData)) {
+            $sLabelText = $elementData["label"];
+            $sLabelText.=(array_key_exists("required", $elementData) && $elementData["required"]) ? $this->sRequired : '';
         }
-        
+
         switch ($elementData["type"]) {
             case "button":
                 $this->_checkReqiredKeys($elementData, array("value"));
-                $sFormElement.='    <button id="'.$sId.'" ';
+                $sFormElement.='    <button id="' . $sId . '" ';
                 $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes,checked,name"), $elementData);
-                $sFormElement.='>'.$elementData["value"].'</button>';
+                $sFormElement.='>' . $elementData["value"] . '</button>';
                 $sFormElement.="\n";
-                
-		$sHtmlDefault=$sFormElement;
+
+                $sHtmlDefault = $sFormElement;
                 break;
-            
+
             case "checkbox":
                 $this->_checkReqiredKeys($elementData, array("name"));
-                foreach ($elementData["options"] as $idOption=>$aOptionData) {
+                foreach ($elementData["options"] as $idOption => $aOptionData) {
                     $sFormElement.="\n";
-                    $s=preg_replace('/\W/iu', '', $sId.$idOption);
-                    $sOptionId=preg_replace('/[äöüß]/i', '', $s);
-                    $sFormElement.='    <input type="checkbox" id="'.$sOptionId.'" value="'.$idOption.'" ';
+                    $s = preg_replace('/\W/iu', '', $sId . $idOption);
+                    $sOptionId = preg_replace('/[äöüß]/i', '', $s);
+                    $sFormElement.='    <input type="checkbox" id="' . $sOptionId . '" value="' . $idOption . '" ';
                     $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes,checked"), $aOptionData);
-                    $sFormElement.=' name="'.$elementData["name"].'[]"';
-                    $sFormElement.='/><label for="'.$sOptionId.'">' . $aOptionData["label"] . '</label>';
-                    
+                    $sFormElement.=' name="' . $elementData["name"] . '[]"';
+                    $sFormElement.='/><label for="' . $sOptionId . '">' . $aOptionData["label"] . '</label>';
                 }
                 $sFormElement.="\n";
-                $sLabelElement.='<span class="help-block">'.$sLabelText.'</span>';
+                $sLabelElement.='<span class="help-block">' . $sLabelText . '</span>';
                 $sLabelElement.="\n";
-                
-                $sHtmlDefault=$sLabelElement.$sFormElement;
-                $sHtmlTable='<td>'.$sLabelText.'</td><td>'.$sFormElement.'</td>';
+
+                $sHtmlDefault = $sLabelElement . $sFormElement;
+                $sHtmlTable = '<td>' . $sLabelText . '</td><td>' . $sFormElement . '</td>';
                 break;
-                
+
             case "hidden":
                 $this->_checkReqiredKeys($elementData, array("value"));
-                $sFormElement.='    <input type="hidden" id="'.$sId.'" ';
+                $sFormElement.='    <input type="hidden" id="' . $sId . '" ';
                 $sFormElement.=$this->_addHtmlAtrributes(explode(",", "name,value"), $elementData);
                 $sFormElement.=" />";
                 $sFormElement.="\n";
-                
-                $sHtmlDefault=$sFormElement."\n";
+
+                $sHtmlDefault = $sFormElement . "\n";
                 break;
-            
+
             case "markup":
                 if (array_key_exists("value", $elementData))
-                $sHtmlDefault=$elementData["value"]."\n";
+                    $sHtmlDefault = $elementData["value"] . "\n";
                 break;
 
             case "radio":
                 $this->_checkReqiredKeys($elementData, array("name"));
-                foreach ($elementData["options"] as $idOption=>$aOptionData) {
+                foreach ($elementData["options"] as $idOption => $aOptionData) {
                     $sFormElement.="\n";
-                    $s=preg_replace('/\W/iu', '', $sId.$idOption);
-                    $sOptionId=preg_replace('/[äöüß]/i', '', $s);
-                    $sFormElement.='    <input type="radio" id="'.$sOptionId.'" value="'.$idOption.'" ';
+                    $s = preg_replace('/\W/iu', '', $sId . $idOption);
+                    $sOptionId = preg_replace('/[äöüß]/i', '', $s);
+                    $sFormElement.='    <input type="radio" id="' . $sOptionId . '" value="' . $idOption . '" ';
                     $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes,checked"), $aOptionData);
-                    $sFormElement.=" ".$this->_addHtmlAtrributes(explode(",", "name"), $elementData);
-                    $sFormElement.='/><label for="'.$sOptionId.'">' . $aOptionData["label"] . '</label>';
-                    
+                    $sFormElement.=" " . $this->_addHtmlAtrributes(explode(",", "name"), $elementData);
+                    $sFormElement.='/><label for="' . $sOptionId . '">' . $aOptionData["label"] . '</label>';
                 }
                 $sFormElement.="\n";
-                
+
                 if ($sLabelText) {
-                    $sLabelElement.='<span class="help-block">'.$sLabelText.'</span>'."\n";
+                    $sLabelElement.='<span class="help-block">' . $sLabelText . '</span>' . "\n";
                 }
-                
-                $sHtmlTable='<td>'.$sLabelText.'</td><td>'.$sFormElement.'</td>';
-                $sHtmlDefault=$sLabelElement.$sFormElement;
-                
+
+                $sHtmlTable = '<td>' . $sLabelText . '</td><td>' . $sFormElement . '</td>';
+                $sHtmlDefault = $sLabelElement . $sFormElement;
+
                 // $sReturn.=$this->_addLabel($sFormElement,$sId,"checkbox");
                 break;
-                
+
             case "select":
                 // HINWEIS optgroups werden nicht unterstuezt - nur einfache Listen
                 $this->_checkReqiredKeys($elementData, array("name"));
-                $sFormElement.='<select id="'.$sId.'" ';;
+                $sFormElement.='<select id="' . $sId . '" ';
+                ;
                 $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes,name"), $elementData);
                 $sFormElement.=">\n";
-                foreach ($elementData["options"] as $idOption=>$aOptionData) {
-                    $s=preg_replace('/\W/iu', '', $sId.$idOption);
-                    $sOptionId=preg_replace('/[äöüß]/i', '', $s);
-                    $sFormElement.='    <option value="'.$idOption.'" ';
+                foreach ($elementData["options"] as $idOption => $aOptionData) {
+                    $s = preg_replace('/\W/iu', '', $sId . $idOption);
+                    $sOptionId = preg_replace('/[äöüß]/i', '', $s);
+                    $sFormElement.='    <option value="' . $idOption . '" ';
                     $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes"), $aOptionData);
-                    $sFormElement.='>'.$aOptionData["label"].'</option>'."\n";
+                    $sFormElement.='>' . $aOptionData["label"] . '</option>' . "\n";
                 }
                 $sFormElement.="</select>\n";
-                
+
                 if ($sLabelText) {
-                    $sLabelElement.='<span class="help-block">'.$sLabelText.'</span>'."\n";
+                    $sLabelElement.='<span class="help-block">' . $sLabelText . '</span>' . "\n";
                 }
-                
-                $sHtmlTable='<td>'.$sLabelText.'</td><td>'.$sFormElement.'</td>';
-                $sHtmlDefault=$sLabelElement.$sFormElement;
-                
+
+                $sHtmlTable = '<td>' . $sLabelText . '</td><td>' . $sFormElement . '</td>';
+                $sHtmlDefault = $sLabelElement . $sFormElement;
+
                 // $sReturn.=$this->_addLabel($sFormElement,$sId,"checkbox");
                 break;
-                
+
             case "submit":
                 $this->_checkReqiredKeys($elementData, array("value"));
-                $sFormElement.='    <button id="'.$sId.'" class="btn btn-large btn-primary" type="submit" ';
+                $sFormElement.='    <button id="' . $sId . '" class="btn btn-large btn-primary" type="submit" ';
                 $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes"), $elementData);
-                $sFormElement.='>'.$elementData["value"].'</button>';
+                $sFormElement.='>' . $elementData["value"] . '</button>';
                 $sFormElement.="\n";
-                
-		$sHtmlDefault=$sFormElement;
+
+                $sHtmlDefault = $sFormElement;
                 break;
-                
+
             case "text":
                 $this->_checkReqiredKeys($elementData, array("name"));
-                $sFormElement.='    <input type="text" id="'.$sId.'" ';
-				$aAllowedHtmlAttributes["text"]=explode(",", "");
+                $sFormElement.='    <input type="text" id="' . $sId . '" ';
+                $aAllowedHtmlAttributes["text"] = explode(",", "");
                 $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes,name,disabled,onkeyup,onkeydown,onchange,pattern,placeholder,required,size,value"), $elementData);
                 // $sFormElement.=$this->_addHtmlAtrributes(array("name", "value", "size", "placeholder", "required"), $elementData);
-                
                 // IE: Return abfangen lassen
                 $sFormElement.=' onkeypress="return checkKey(event);"';
                 $sFormElement.=' />';
                 $sFormElement.="\n";
 
-                $sLabelElement=$this->_addLabel($sLabelText,$sId, "control-label" );
-                
-                $sHtmlDefault=$sLabelElement.'<div class="controls">'."\n".$sFormElement.'</div>'."\n";
-                $sHtmlTable='<td>'.$sLabelText.'</td><td>'.$sFormElement.'</td>';
-                
+                $sLabelElement = $this->_addLabel($sLabelText, $sId, "control-label");
+
+                $sHtmlDefault = $sLabelElement . '<div class="controls">' . "\n" . $sFormElement . '</div>' . "\n";
+                $sHtmlTable = '<td>' . $sLabelText . '</td><td>' . $sFormElement . '</td>';
+
                 break;
-            
+
             case "textarea":
                 $this->_checkReqiredKeys($elementData, array("name"));
-                $sFormElement.='    <textarea id="'.$sId.'" ';
-		$aAllowedHtmlAttributes["text"]=explode(",", "");
+                $sFormElement.='    <textarea id="' . $sId . '" ';
+                $aAllowedHtmlAttributes["text"] = explode(",", "");
                 $sFormElement.=$this->_addHtmlAtrributes(explode(",", "$sDefaultAttributes,name,onkeyup,onkeydown,onchange,placeholder,required,cols,rows"), $elementData);
                 // $sFormElement.=$this->_addHtmlAtrributes(array("name", "value", "size", "placeholder", "required"), $elementData);
                 $sFormElement.='></textarea>';
                 $sFormElement.="\n";
-                
-                $sLabelElement=$this->_addLabel($sLabelText,$sId, "control-label" );
-                
-                $sHtmlDefault=$sLabelElement.'<div class="controls">'."\n".$sFormElement.'</div>'."\n";
-                $sHtmlTable='<td>'.$sLabelElement.'</td><td>'.$sFormElement.'</td>';
+
+                $sLabelElement = $this->_addLabel($sLabelText, $sId, "control-label");
+
+                $sHtmlDefault = $sLabelElement . '<div class="controls">' . "\n" . $sFormElement . '</div>' . "\n";
+                $sHtmlTable = '<td>' . $sLabelElement . '</td><td>' . $sFormElement . '</td>';
 
                 break;
 
             default:
-                die("ERROR: " . __CLASS__ . ":".__FUNCTION__ . " - formelement type ".$elementData["type"]." ist not supported (yet).");
+                die("ERROR: " . __CLASS__ . ":" . __FUNCTION__ . " - formelement type " . $elementData["type"] . " ist not supported (yet).");
                 break;
         }
-        
+
         // Default or table mode?
-        if (array_key_exists("mode", $elementData) && $elementData["mode"]=='table' && $sHtmlTable) {
-            $sHtmlDefault=$sHtmlTable;
+        if (array_key_exists("mode", $elementData) && $elementData["mode"] == 'table' && $sHtmlTable) {
+            $sHtmlDefault = $sHtmlTable;
         } else {
-            if ($elementData["type"]!="button" && $elementData["type"]!="fieldset" && $elementData["type"]!="markup"){
-                $sHtmlDefault="<fieldset>". $sHtmlDefault."</fieldset>\n";
+            if ($elementData["type"] != "button" && $elementData["type"] != "fieldset" && $elementData["type"] != "markup") {
+                $sHtmlDefault = "<fieldset>" . $sHtmlDefault . "</fieldset>\n";
             }
         }
-        
-        $sReturn.="<!-- " . $elementData["type"] ." -->\n";
-        $sReturn.=$sHtmlDefault."\n";
-        
+
+        $sReturn.="<!-- " . $elementData["type"] . " -->\n";
+        $sReturn.=$sHtmlDefault . "\n";
+
         return $sReturn;
     }
-    
+
 }
 
 ?>
\ No newline at end of file
diff --git a/public_html/deployment/classes/html.tpl.php b/public_html/deployment/classes/html.tpl.php
index fbd09f9bf801b106efe601290e68d6884c511cdc..af3d61f28a83de10794d494e6ba6cf2bd1f4160b 100644
--- a/public_html/deployment/classes/html.tpl.php
+++ b/public_html/deployment/classes/html.tpl.php
@@ -1,216 +1,216 @@
 <!doctype html>
 <html>
-	<head>
-    <meta name="robots" content="noindex,nofollow" />
-    
-    <meta charset="utf-8">
-    <!-- Mobile viewport optimized -->
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
-    <!-- Mobile Internet Explorer allows us to activate ClearType technology for smoothing fonts for easy reading -->
-    <!-- 
-    not html5 valid:
-    <meta http-equiv="cleartype" content="on">
-    -->
-
-    <!-- Le styles -->
-    <link href="/deployment/bootstrap/css/bootstrap.css" rel="stylesheet">
-    <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/themes/black-tie/jquery-ui.css" rel="stylesheet">
-    <link href="/deployment/bootstrap/css/jquery.tocify.css" rel="stylesheet">
-    <link href="/deployment/bootstrap/css/prettify.css" type="text/css" rel="stylesheet" />
-    <link href="/deployment/bootstrap/css/styles.css" type="text/css" rel="stylesheet" />
-
-    <style>
-
-        @media (max-width: 767px) {
-            #toc {
-                position: relative;
-                width: 100%;
-                margin: 0px 0px 20px 0px;
+    <head>
+        <meta name="robots" content="noindex,nofollow" />
+
+        <meta charset="utf-8">
+        <!-- Mobile viewport optimized -->
+        <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
+        <!-- Mobile Internet Explorer allows us to activate ClearType technology for smoothing fonts for easy reading -->
+        <!-- 
+        not html5 valid:
+        <meta http-equiv="cleartype" content="on">
+        -->
+
+        <!-- Le styles -->
+        <link href="/deployment/bootstrap/css/bootstrap.css" rel="stylesheet">
+        <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/themes/black-tie/jquery-ui.css" rel="stylesheet">
+        <link href="/deployment/bootstrap/css/jquery.tocify.css" rel="stylesheet">
+        <link href="/deployment/bootstrap/css/prettify.css" type="text/css" rel="stylesheet" />
+        <link href="/deployment/bootstrap/css/styles.css" type="text/css" rel="stylesheet" />
+
+        <style>
+
+            @media (max-width: 767px) {
+                #toc {
+                    position: relative;
+                    width: 100%;
+                    margin: 0px 0px 20px 0px;
+                }
             }
-        }
-        
-        body{padding-top: 0;}
-        body, label, input, button, select, textarea, p, .btn {
-            font-size: 12px;
-        }
-        
-        #header,#footer{
-            background:#eee; background: linear-gradient(#fff,#eee);
-            padding: 1em; font-size: 300%;
-            color:#a33;
-            text-shadow: 1px 1px 0 #fff, 10px 10px 10px #aaa;
-            border-bottom: 2px solid #ccc;
-        }
-        #footer{
-            background: none;
-            /* background: linear-gradient(#fff,#eee,#fff); */
-            font-size: 100%;
-            color:#a33;
-            text-align: right;
-            text-shadow: 1px 1px 0 #fff, 3px 3px 3px #aaa;
-            border: 0px solid #ccc;
-            border-top: 1px solid #ddd;
-            margin-top: 5em;
-        }
-        #header2{
-            background: none;
-            padding: 0.5em; margin-bottom: 2em;
-        }
-        .description{font-weight:bold; color:#ccc; font-size: 150%; font-style: italic;}
-        .navbar .brand {color:#a33;}
-        #content{
-            margin-top: 2em;
-            border-left: 0px solid #ccc;
-            padding: 1em;
-            box-shadow: 0 0 50px #ddd;
-        }
-        
-        h1{font-size: 250%; margin: 0;}
-        h2{font-size: 16px; margin: 0;}
-        
-        /* actions */
-        h2.action{
-            background: #e8f0f8 url("/deployment/images/nuvola64x64/apps/aktion.png") 10px 10px no-repeat; 
-            background-repeat: no-repeat; 
-            box-shadow: 0 30px 50px #fff inset;
-            padding: 20px 0 0 90px; 
-            height: 70px;
-            margin: 0 0 1em 0;
-            font-size: 250%; color: #abc; text-shadow: -1px -1px 0 #789, 1px 1px 1px #fff;
-            border-bottom: 2px solid;
-        }
-        h2.accept{background-image: url("/deployment/images/nuvola64x64/apps/korganizer.png");}
-        h2.build{background-image: url("/deployment/images/nuvola64x64/apps/kthememgr.png");}
-        h2.cleanup{background-image: url("/deployment/images/nuvola64x64/apps/kasteroids.png");}
-        h2.deploy{background-image: url("/deployment/images/nuvola64x64/apps/iconthemes.png");}
-        h2.prjhome{background-image: url("/deployment/images/nuvola64x64/apps/kdict.png");}
-        h2.phase{background-image: url("/deployment/images/nuvola64x64/apps/kreversi.png");}
-        h2.setup{background-image: url("/deployment/images/nuvola64x64/apps/kcmsystem.png");}
-        
-        
-        h3{font-size: 14px; margin: 0;}
-        #imgtop{float:left; margin: 0 20px 40px 0;}
-        pre{line-height: 1.2em; padding: 5px;}
-        pre.cli{ color:#555;}
-        pre.clistrong{color: #000;}
-        td{vertical-align: top; border-left: 1px solid #fff;}
-        ul {}
-        ul li {
-            margin-bottom: 3px;
-        }
-
-        thead{font-size: 130%;}
-
-        #tbloverview th{}
-        #tbloverview td{}
-        th.prj{background:#f8f8f8;}
-        th.versioncontrol{background: #ccc;}
-        th.preview{background:#358; color:#eee;}
-        th.stage{background:#388; color:#eee;}
-        th.live{background:#3a3; color: #eee; }
-        tr{background: linear-gradient(#fff,#fff,#fff,#fff,#eee);}
-        tr:hover{background:#ddd; background: linear-gradient(#ddd,#eee,#ddd);}
-        
-        td.preview{background:#f4f8ff; color:#333; background: rgba(210,220,255, 0.4);}
-        td.stage{background:#f4ffff; color:#333; background: rgba(180,230,230, 0.4);}
-        td.live{background:#f0fff0; color:#333;  background: rgba(180,255,180, 0.4);}
-        .preview{background:#ccf;}
-        .stage{background:#cff;}
-        .live{background:#cfc;}
-
-        .preview, .stage, .live{
-            padding: 4px;
-        }
-        
-        a.info { border-bottom: 1px dotted; padding-bottom: 2px;}
-        a.info:hover { text-decoration: none; background: #fff;}
-        a.info span{ display: none; position: absolute; margin-top: -1em; background: #fff; padding: 0.5em; box-shadow: 0 0 10px #888;}
-        a.info:hover span{ display: block; text-decoration: none;}
-        a.info span span.title{ background: #888; color:#f8f8f8; padding: 0.5em 0.5em; display: block; box-shadow: 0 0 5px #ccc; border: 2px solid #fff;}
-        
-        .infobox{
-            background:#fea; background: linear-gradient(#fea,#fff8f0,#fea); 
-            padding: 1em; border: 2px solid #fff; box-shadow: 0 0 10px #ccc;
-        }
-        .warning{background: #fe8;}
-        .error{background: #fcc;}
-        .center{text-align: center;}
-        .inactive{color:#999; font-style: italic;}
-        .versioninfo{
-            border: 0px solid #ccc;
-            padding: 0px;
-            border-radius: 0px;
-            margin-bottom: 0px;
-        }
-        
-        ul.nav li.dropdown:hover ul.dropdown-menu{
-            display: block;
-            margin-top:0px
-        }       
-        label.control-label{width: 300px; float: left; text-align: right; padding-right: 2em;}
-        input, textarea {
-            width: 400px;
-            height: none !important;
-            padding: 1px 2px !important;
-        }
-
-    </style>
-    <title>IML Deployment</title>
-    <!--
-		
-		
-		<style type="text/css" title="currentStyle">
-				@import "/shared/js/datatables/media/css/demo_page.css";
-				@import "/shared/js/datatables/media/css/demo_table.css";
-		</style>
-		
-		<script type="text/javascript" src="/shared/js/jquery.js"></script>
-		<script type="text/javascript" src="/shared/js/datatables/media/js/jquery.dataTables.min.js"></script>
-    -->
-		
+
+            body{padding-top: 0;}
+            body, label, input, button, select, textarea, p, .btn {
+                font-size: 12px;
+            }
+
+            #header,#footer{
+                background:#eee; background: linear-gradient(#fff,#eee);
+                padding: 1em; font-size: 300%;
+                color:#a33;
+                text-shadow: 1px 1px 0 #fff, 10px 10px 10px #aaa;
+                border-bottom: 2px solid #ccc;
+            }
+            #footer{
+                background: none;
+                /* background: linear-gradient(#fff,#eee,#fff); */
+                font-size: 100%;
+                color:#a33;
+                text-align: right;
+                text-shadow: 1px 1px 0 #fff, 3px 3px 3px #aaa;
+                border: 0px solid #ccc;
+                border-top: 0px solid #ddd;
+                margin-top: 5em;
+            }
+            #header2{
+                background: none;
+                padding: 0.5em; margin-bottom: 2em;
+            }
+            .description{font-weight:bold; color:#ccc; font-size: 150%; font-style: italic;}
+            .navbar .brand {color:#a33;}
+            #content{
+                margin-top: 2em;
+                border-left: 0px solid #ccc;
+                padding: 1em;
+                box-shadow: 0 0 50px #ddd;
+            }
+
+            h1{font-size: 250%; margin: 0;}
+            h2{font-size: 16px; margin: 0;}
+
+            /* actions */
+            h2.action{
+                background: #e8f0f8 url("/deployment/images/nuvola64x64/apps/aktion.png") 10px 10px no-repeat; 
+                background-repeat: no-repeat; 
+                box-shadow: 0 30px 50px #fff inset;
+                padding: 20px 0 0 90px; 
+                height: 70px;
+                margin: 0 0 1em 0;
+                font-size: 250%; color: #abc; text-shadow: -1px -1px 0 #789, 1px 1px 1px #fff;
+                border-bottom: 2px solid;
+            }
+            h2.accept{background-image: url("/deployment/images/nuvola64x64/apps/korganizer.png");}
+            h2.build{background-image: url("/deployment/images/nuvola64x64/apps/kthememgr.png");}
+            h2.cleanup{background-image: url("/deployment/images/nuvola64x64/apps/kasteroids.png");}
+            h2.deploy{background-image: url("/deployment/images/nuvola64x64/apps/iconthemes.png");}
+            h2.prjhome{background-image: url("/deployment/images/nuvola64x64/apps/kdict.png");}
+            h2.phase{background-image: url("/deployment/images/nuvola64x64/apps/kreversi.png");}
+            h2.setup{background-image: url("/deployment/images/nuvola64x64/apps/kcmsystem.png");}
+
+
+            h3{font-size: 14px; margin: 0;}
+            #imgtop{float:left; margin: 0 20px 40px 0;}
+            pre{line-height: 1.2em; padding: 5px;}
+            pre.cli{ color:#555;}
+            pre.clistrong{color: #000;}
+            td{vertical-align: top; border-left: 1px solid #fff;}
+            ul {}
+            ul li {
+                margin-bottom: 3px;
+            }
+
+            thead{font-size: 130%;}
+
+            #tbloverview th{}
+            #tbloverview td{}
+            th.prj{background:#f8f8f8;}
+            th.versioncontrol{background: #ccc;}
+            th.preview{background:#358; color:#eee;}
+            th.stage{background:#388; color:#eee;}
+            th.live{background:#3a3; color: #eee; }
+            tr{background: linear-gradient(#fff,#fff,#fff,#fff,#eee);}
+            tr:hover{background:#ddd; background: linear-gradient(#ddd,#eee,#ddd);}
+
+            td.preview{background:#f4f8ff; color:#333; background: rgba(210,220,255, 0.4);}
+            td.stage{background:#f4ffff; color:#333; background: rgba(180,230,230, 0.4);}
+            td.live{background:#f0fff0; color:#333;  background: rgba(180,255,180, 0.4);}
+            .preview{background:#ccf;}
+            .stage{background:#cff;}
+            .live{background:#cfc;}
+
+            .preview, .stage, .live{
+                padding: 4px;
+            }
+
+            a.info { border-bottom: 1px dotted; padding-bottom: 2px;}
+            a.info:hover { text-decoration: none; background: #fff;}
+            a.info span{ display: none; position: absolute; margin-top: -1em; background: #fff; padding: 0.5em; box-shadow: 0 0 10px #888;}
+            a.info:hover span{ display: block; text-decoration: none;}
+            a.info span span.title{ background: #888; color:#f8f8f8; padding: 0.5em 0.5em; display: block; box-shadow: 0 0 5px #ccc; border: 2px solid #fff;}
+
+            .infobox{
+                background:#fea; background: linear-gradient(#fea,#fff8f0,#fea); 
+                padding: 1em; border: 2px solid #fff; box-shadow: 0 0 10px #ccc;
+            }
+            .warning{background: #fe8;}
+            .error{background: #fcc;}
+            .center{text-align: center;}
+            .inactive{color:#999; font-style: italic;}
+            .versioninfo{
+                border: 0px solid #ccc;
+                padding: 0px;
+                border-radius: 0px;
+                margin-bottom: 0px;
+            }
+
+            ul.nav li.dropdown:hover ul.dropdown-menu{
+                display: block;
+                margin-top:0px
+            }       
+            label.control-label{width: 300px; float: left; text-align: right; padding-right: 2em;}
+            input, textarea {
+                width: 400px;
+                height: none !important;
+                padding: 1px 2px !important;
+            }
+
+        </style>
+        <title>IML Deployment</title>
+        <!--
+                    
+                    
+                    <style type="text/css" title="currentStyle">
+                                    @import "/shared/js/datatables/media/css/demo_page.css";
+                                    @import "/shared/js/datatables/media/css/demo_table.css";
+                    </style>
+                    
+                    <script type="text/javascript" src="/shared/js/jquery.js"></script>
+                    <script type="text/javascript" src="/shared/js/datatables/media/js/jquery.dataTables.min.js"></script>
+        -->
+
         <link rel="stylesheet" type="text/css" href="main.css" media="screen">
-		<script type="text/javascript" src="main.js"></script>
+        <script type="text/javascript" src="main.js"></script>
         {{HEADER}}
 
 
-		</head>
-		<body>
-		<div id="divcontent">
+    </head>
+    <body>
+        <div id="divcontent">
 
-			{{CONTENT}}
+            {{CONTENT}}
 
-		</div>
+        </div>
         {{FOOTER}}{{JSONREADY}}
-        
-    <!-- Placed at the end of the document so the pages load faster -->
-    <script src="/deployment/bootstrap/js/jquery-1.8.0.min.js"></script>
-    <script src="/deployment/bootstrap/js/jquery-ui-1.8.23.custom.min.js"></script>
-    <script src="/deployment/bootstrap/js/bootstrap.min.js"></script>
-    <script src="/deployment/bootstrap/js/history.js"></script>
-    <script src="/deployment/bootstrap/js/jquery.tocify.min.js"></script>
-    <script src="/deployment/bootstrap/js/prettify.js"></script>
-    <!-- <script src="js/githubrepo.js"></script> -->
-    <script>
-        $(function() {
 
-            $("#toc").tocify({ selectors: "h2, h3, h4", scrollTo: 60, highlightOffset: 60, extendPage: false });
+        <!-- Placed at the end of the document so the pages load faster -->
+        <script src="/deployment/bootstrap/js/jquery-1.8.0.min.js"></script>
+        <script src="/deployment/bootstrap/js/jquery-ui-1.8.23.custom.min.js"></script>
+        <script src="/deployment/bootstrap/js/bootstrap.min.js"></script>
+        <script src="/deployment/bootstrap/js/history.js"></script>
+        <script src="/deployment/bootstrap/js/jquery.tocify.min.js"></script>
+        <script src="/deployment/bootstrap/js/prettify.js"></script>
+        <!-- <script src="js/githubrepo.js"></script> -->
+        <script>
+$(function() {
+
+    $("#toc").tocify({selectors: "h2, h3, h4", scrollTo: 60, highlightOffset: 60, extendPage: false});
+
+    prettyPrint();
+
+    $(".optionName").popover({trigger: "hover"});
+
+    $("a[href='#']").click(function(event) {
+
+        event.preventDefault();
 
-            prettyPrint();
+    });
 
-            $(".optionName").popover({ trigger: "hover" });
+});
 
-            $("a[href='#']").click(function(event) {
- 
-                event.preventDefault();
 
-            });
+        </script>
 
-        });
-	
 
-    </script>
-	
-        
-	</body>
+    </body>
 </html>
 
diff --git a/public_html/deployment/classes/project.class.php b/public_html/deployment/classes/project.class.php
index 7dc799de610572b726788123e430af51ec5ef4b0..882359f0e764707bd0cf76c4c877b3da9f5eddca 100644
--- a/public_html/deployment/classes/project.class.php
+++ b/public_html/deployment/classes/project.class.php
@@ -1,4 +1,15 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  class project for all actions for single project
+    * actions
+    * rendering html
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 /**
  * class for single project
diff --git a/public_html/deployment/classes/projectlist.class.php b/public_html/deployment/classes/projectlist.class.php
index 18237d924d72d01f42a4f516ea9d72f2fcf7ee7b..774d370d5c9278ec8eaa9df1cc9d57d76a069ede 100644
--- a/public_html/deployment/classes/projectlist.class.php
+++ b/public_html/deployment/classes/projectlist.class.php
@@ -1,4 +1,13 @@
 <?php
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  class projectlist to render overview page
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
 
 require_once 'project.class.php';
 
@@ -91,8 +100,7 @@ class projectlist {
             $sRowHead1='';
             $sRowHead2='';
             
-            // $oPrj existiert noch ...
-            foreach (array_keys($oPrj->getPhases()) as $sPhase){
+            foreach (array_keys($oPrj1->getPhases()) as $sPhase){
                 // Anzahl colspan ist hartcodiert :-/
                 $sRowHead1.='<th class="'.$sPhase.' '.$sColClass.'" colspan="3">'.$sPhase.'</th>';
                 $sRowHead2.=$oPrj->renderPlacesAsTd($sPhase);
@@ -105,6 +113,18 @@ class projectlist {
                         $(\'.'.$sTrClass.'\').hide(); $(\'.\' + sPrj).show();
                         $(\'.'.$sColClass.'\').hide(); $(\'.\' + sPhase).show();
                     }
+                    
+                    function filterTable(){
+                        sSearch=$("#efilter").val();
+                        $(".trproject").each(function() {
+                            sVisible="none";
+                            if (this.innerHTML.search(sSearch)>=0){
+                                sVisible="";
+                            }
+                            $(this).css("display", sVisible);
+                        });
+
+                    }
                 </script>
                 Projekt-Filter: 
                 <select id="prjfilter" onchange="filterOverviewTable(); return false;">
@@ -115,6 +135,14 @@ class projectlist {
                 <select id="phasefilter" onchange="filterOverviewTable(); return false;">
                     '.$sPhaseFilter.'
                 </select>
+                
+                &nbsp;&nbsp;&nbsp;
+                Freitext:
+                <input type="text" id="efilter" name="efilter" 
+                    onchange="filterTable();"
+                    onKeypress="filterTable(); "
+                    onKeyup="filterTable(); "
+                    >
          
 		<table class="table" id="tbloverview">
 			<thead>
diff --git a/public_html/deployment/config/inc_projects_config.php b/public_html/deployment/config/inc_projects_config.php
index bf1ff865557bc260cef4b773b9c75485009cca36..488c36ac39900820cd48cc5a82fd1a47d2845129 100644
--- a/public_html/deployment/config/inc_projects_config.php
+++ b/public_html/deployment/config/inc_projects_config.php
@@ -43,121 +43,6 @@ $aConfig=array(
      ),
 );
 
-
-// ----------------------------------------------------------------------
-// Projekte
-// ----------------------------------------------------------------------
-$aProjects=array(
-	"ci"=>array(
-		"label"=>"CI Webgui",
-		"fileprefix"=>"ci-webgui",
-		"description" => 'Webgui zum Deployen von Web-Projekten',
-		"contact" => 'Axel Hahn',
-		"build"=>array(
-			"type"=>"git", // one of git, svn, ...
-			"ssh"=>"git@gitlab.iml.unibe.ch:admins/imldeployment.git",
-                    
-                        // der public Key muss beim Git-Repo hinterlegt sein
-			"keyfile"=>"config/sshkeys/git@gitlab.iml.unibe.ch",
-			"webaccess"=>"http://gitlab.iml.unibe.ch/admins/imldeployment/tree/master",
-                ),
-
-		"phases"=>array(
-                    "preview"=>array(
-                        "url"=>"http://aum-cba02.unibe.ch/",
-                    ),
-                    "stage"=>array(
-                    ),
-                    "live"=>array(
-                    ),
-                ),
-	),
-    	"mmmu-sf2"=>array(
-		"label"=>"Morphomed Maintenance Utility",
-		"fileprefix"=>"mmmu",
-		"description" => 'E-Learning, Morphomed Backend mit Symfony 2',
-		"contact" => 'Rafael Beck',
-		"build"=>array(
-			"type"=>"git", // one of git, svn, ...
-                        // for github:
-                        // generate ssh keypair
-                        // https://help.github.com/articles/generating-ssh-keys
-			"ssh"=>"git@github.com:iml-it/mmmu-sf2.git",
-                        // der public Key muss beim Git-Repo hinterlegt sein
-			"keyfile"=>"config/sshkeys/git@gitlab.iml.unibe.ch",
-                        "webaccess"=>"https://github.com/iml-it/mmmu-sf2",
-                ),
-
-		"phases"=>array(
-                    "preview"=>array(
-                        "url"=>"http://preview.mmmu.iml.unibe.ch/",
-                    ),
-                    "stage"=>array(
-                        "url"=>"http://stage.mmmu.iml.unibe.ch/",
-                    ),
-                    "live"=>array(
-                        // "url"=>"http://www.scrudu.iml.unibe.ch/"
-                    ),
-                ),
-	),
-        /*
-	"scrudu"=>array(
-		"label"=>"Scrudu",
-		"fileprefix"=>"scrudu",
-		"description" => 'Das sagenumwogene Scrudu Dings',
-		"contact" => 'Entwickler, Verantwortliche etc.',
-		"build"=>array(
-			"type"=>"git", // one of git, svn, ...
-                        // for github:
-                        // generate ssh keypair
-                        // https://help.github.com/articles/generating-ssh-keys
-			"ssh"=>"git@github.com:iml-it/scrudu.git",
-                        // der public Key muss beim Git-Repo hinterlegt sein
-			"keyfile"=>"config/sshkeys/git@gitlab.iml.unibe.ch",
-                        "webaccess"=>"https://github.com/iml-it/scrudu",
-                ),
-
-		"phases"=>array(
-                    "preview"=>array(
-                        "url"=>"http://preview.scrudu.iml.unibe.ch/",
-                    ),
-                    "stage"=>array(
-                        "url"=>"http://stage.scrudu.iml.unibe.ch/"
-                    ),
-                    "live"=>array(
-                        // "url"=>"http://www.scrudu.iml.unibe.ch/"
-                    ),
-                ),
-	),
-         * 
-         */
-);
-
-// ----------------------------------------------------------------------
-// Checkout-Informationen fuer versch. Sourcen
-// ----------------------------------------------------------------------
-$aTypeAbstraction=array(
-
-	"git"=>array(
-		"checkout"=>"git pull [url]",
-		"getrevision"=>"",
-		"built"=>"[workdir]/buildpackage.sh",
-		"deleteDirs"=>array(
-			".git",
-			"buildpackage.sh"
-		),
-	),
-	/*
-	"svn"=>array(
-		"checkout"=>"svn co [url]",
-		"getrevision"=>"svn info | grep '^Revision' | cut -f 2 -d ':' ",
-		"built"=>false,
-		"deleteDirs"=>".svn",
-	),
-	*/
-	
-);
-
 // ----------------------------------------------------------------------
 // override for local development
 // ----------------------------------------------------------------------
diff --git a/public_html/deployment/inc_functions.php b/public_html/deployment/inc_functions.php
index ee733d69fdfb6e7a739affe666a69f03ed97bc01..5ebb708c56d15209602ddc71faedf4d6fa9b9f9f 100644
--- a/public_html/deployment/inc_functions.php
+++ b/public_html/deployment/inc_functions.php
@@ -1,64 +1,85 @@
 <?php
 
+/* ######################################################################
+
+  IML DEPLOYMENT
+
+  included functions for the act_*.php files
+
+  ---------------------------------------------------------------------
+  2013-11-08  Axel <axel.hahn@iml.unibe.ch>
+  ###################################################################### */
+
 global $aParams;
-$aParams=array();
+$aParams = array();
 
 
 /*
-print_r($_GET);
-print_r($_POST);
-print_r($aParams);
-print_r($_SERVER);
-echo $_SERVER["REQUEST_URI"];
-*/
+  print_r($_GET);
+  print_r($_POST);
+  print_r($aParams);
+  print_r($_SERVER);
+  echo $_SERVER["REQUEST_URI"];
+ */
 
-$aTmp=preg_split("#/#", $_SERVER["REQUEST_URI"]);
-if (count($aTmp)>1 && $aTmp[1]=="deployment" && $aTmp[2]!="?"){
+$aTmp = preg_split("#/#", $_SERVER["REQUEST_URI"]);
+if (count($aTmp) > 1 && $aTmp[1] == "deployment" && $aTmp[2] != "?") {
     array_shift($aTmp);
     array_shift($aTmp);
-    if ($aTmp[count($aTmp)-1]=="?"){
+    if ($aTmp[count($aTmp) - 1] == "?") {
         array_pop($aTmp);
     }
-    if ($aTmp[0]) $aParams["prj"]=$aTmp[0];
-    if (count($aTmp)>1 && $aTmp[1]) $aParams["action"]=$aTmp[1];
-    if (count($aTmp)>2 && $aTmp[2]) $aParams["par3"]=$aTmp[2];
-    if (count($aTmp)>3 && $aTmp[3]) $aParams["par4"]=$aTmp[3];
+    if ($aTmp[0])
+        $aParams["prj"] = $aTmp[0];
+    if (count($aTmp) > 1 && $aTmp[1])
+        $aParams["action"] = $aTmp[1];
+    if (count($aTmp) > 2 && $aTmp[2])
+        $aParams["par3"] = $aTmp[2];
+    if (count($aTmp) > 3 && $aTmp[3])
+        $aParams["par4"] = $aTmp[3];
 }
-if (count($_GET))  foreach($_GET as $key=>$value)  $aParams[$key]=$value;
-if (count($_POST)) foreach($_POST as $key=>$value) $aParams[$key]=$value;
+if (count($_GET))
+    foreach ($_GET as $key => $value)
+        $aParams[$key] = $value;
+if (count($_POST))
+    foreach ($_POST as $key => $value)
+        $aParams[$key] = $value;
 
 
-$sImageBase="/deployment/images/nuvola64x64/";
-$aImages=array(
-    'overview'=>'apps/fsview.png',
-    'project'=>'filesystems/desktop.png',
-    'action'=>'apps/aktion.png',
-    'build'=>'apps/kthememgr.png',
+$sImageBase = "/deployment/images/nuvola64x64/";
+$aImages = array(
+    'overview' => 'apps/fsview.png',
+    'project' => 'filesystems/desktop.png',
+    'action' => 'apps/aktion.png',
+    'build' => 'apps/kthememgr.png',
 );
 
 /**
  * get home link as button
  * @return string
  */
-function aHome($sClass="btn"){
+function aHome($sClass = "btn") {
     global $aParams;
     // if (!array_key_exists("prj", $aParams)) return false;
-    return '<a href="/deployment/?" class="'.$sClass.'"><i class="icon-home"></i> zur &Uuml;bersicht</a>';
+    return '<a href="/deployment/?" class="' . $sClass . '"><i class="icon-home"></i> zur &Uuml;bersicht</a>';
 }
+
 /**
  * get project Home link as button
  * @return string
  */
-function aPrjHome($sClass="btn"){
+function aPrjHome($sClass = "btn") {
     global $aParams;
-    if (!array_key_exists("prj", $aParams)) return false;
-    if ($aParams["prj"]=="all") return false;
+    if (!array_key_exists("prj", $aParams))
+        return false;
+    if ($aParams["prj"] == "all")
+        return false;
     // if (!array_key_exists("action", $aParams)) return false;
-    
+
     require_once("./config/inc_projects_config.php");
     require_once("./classes/project.class.php");
-    $oPrj=new project($aParams["prj"]);
-    return '<a href="/deployment/'.$aParams["prj"].'/" class="'.$sClass.'"><i class="icon-book"></i> Projekt-Home <strong>'.$oPrj->getLabel().'</strong></a>';
+    $oPrj = new project($aParams["prj"]);
+    return '<a href="/deployment/' . $aParams["prj"] . '/" class="' . $sClass . '"><i class="icon-book"></i> Projekt-Home <strong>' . $oPrj->getLabel() . '</strong></a>';
 }
 
 /**
@@ -66,82 +87,82 @@ function aPrjHome($sClass="btn"){
  * @global type $aParams
  * @return type
  */
-function getTopArea(){
+function getTopArea() {
     global $aParams, $sImageBase, $aImages;
-    $sReturn='';
+    $sReturn = '';
     require_once("./config/inc_projects_config.php");
     require_once("./classes/project.class.php");
     require_once("./classes/projectlist.class.php");
 
-    $oPrjList=new projectlist();
+    $oPrjList = new projectlist();
     /*
-    $sMyPhase="[phase]";
-    $sMyRev="...";
-    $sJsonfile=$_SERVER["DOCUMENT_ROOT"]."ci-webgui.json";
-    if (file_exists($sJsonfile)){
-        $aJson = json_decode(file_get_contents($sJsonfile), true);
-        if (array_key_exists("revision", $aJson)) $sMyRev=$aJson["revision"];
-    }
+      $sMyPhase="[phase]";
+      $sMyRev="...";
+      $sJsonfile=$_SERVER["DOCUMENT_ROOT"]."ci-webgui.json";
+      if (file_exists($sJsonfile)){
+      $aJson = json_decode(file_get_contents($sJsonfile), true);
+      if (array_key_exists("revision", $aJson)) $sMyRev=$aJson["revision"];
+      }
      * 
      */
-    $sBaseUrl='/deployment/';
-    $sWikiBaseUrl='https://secure.iml.unibe.ch/wiki/doku.php';
-    $sReturn='
+    $sBaseUrl = '/deployment/';
+    $sWikiBaseUrl = 'https://secure.iml.unibe.ch/wiki/doku.php';
+    $sReturn = '
         <div class="navbar">
           <div class="navbar-inner">
             <a class="brand" href="#">IML Deployment GUI</a>
             <ul class="nav">
             
-                <li>'.aHome("").'</li>
+                <li>' . aHome("") . '</li>
                     
                 <!-- list of projects -->
                 <li class="dropdown">
                     <a href="#" class="dropdown-toggle" data-toggle="dropdown">Projekte<b class="caret"></b></a>
                     <ul class="dropdown-menu">
                         ';
-                    $oPrj1 = new project();
-                    foreach ($oPrj1->getProjects() as $sPrj){
-                        $oPrj = new project($sPrj);
-                        $sReturn.='<li><a href="'.$sBaseUrl.$sPrj.'/">'.$oPrj->getLabel().'</a></li>';
-                    }
-                    $sReturn.='
+    $oPrj1 = new project();
+    foreach ($oPrj1->getProjects() as $sPrj) {
+        $oPrj = new project($sPrj);
+        $sReturn.='<li><a href="' . $sBaseUrl . $sPrj . '/">' . $oPrj->getLabel() . '</a></li>';
+    }
+    $sReturn.='
                         <li class="divider"></li>
-                        <li><a href="'.$sBaseUrl.'all/setup/">Neues Projekt</a></li>
+                        <li><a href="' . $sBaseUrl . 'all/setup/">Neues Projekt</a></li>
                     </ul>
                 </li>';
-                if (array_key_exists("prj", $aParams) && $aParams["prj"]<>"all"){
-                    $oPrj=new project($aParams["prj"]);
-                    $sReturn.='
-                    <li style="border-left: 1px solid #ccc;">'.aPrjHome(" ").'</li>
+    if (array_key_exists("prj", $aParams) && $aParams["prj"] <> "all") {
+        $oPrj = new project($aParams["prj"]);
+        $sReturn.='
+                    <li style="border-left: 1px solid #ccc;">' . aPrjHome(" ") . '</li>
                     ';
-                    if (array_key_exists("action", $aParams) and FALSE){
-                        $sReturn.='<li><a href="#">Aktion: '.$aParams["action"].'</a></li>';
-                    } else {
-                        $sReturn.='
+        if (array_key_exists("action", $aParams) and FALSE) {
+            $sReturn.='<li><a href="#">Aktion: ' . $aParams["action"] . '</a></li>';
+        } else {
+            $sReturn.='
                         <li class="dropdown">
                         <a href="#" class="dropdown-toggle" data-toggle="dropdown">Aktionen<b class="caret"></b></a>
                         <ul class="dropdown-menu">
-                            <li><a href="'.$sBaseUrl.$aParams["prj"].'/build/">Build</a></li>
-                            <li><a href="'.$sBaseUrl.$aParams["prj"].'/cleanup/">Cleanup</a></li>
-                            <li><a href="'.$sBaseUrl.$aParams["prj"].'/setup/">Projekteinstellungen</a></li>
-                        ';                      
-                        $sReturn.='</ul></li>';
+                            <li><a href="' . $sBaseUrl . $aParams["prj"] . '/build/">Build</a></li>
+                            <li><a href="' . $sBaseUrl . $aParams["prj"] . '/cleanup/">Cleanup</a></li>
+                            <li><a href="' . $sBaseUrl . $aParams["prj"] . '/setup/">Projekteinstellungen</a></li>
+                        ';
+            $sReturn.='</ul></li>';
 
-                        $aPhases=$oPrj->getActivePhases();
-                        if (count($aPhases)) {
-                            $sReturn.='<li class="dropdown">
+            $aPhases = $oPrj->getActivePhases();
+            if (count($aPhases)) {
+                $sReturn.='<li class="dropdown">
                                 <a href="#" class="dropdown-toggle" data-toggle="dropdown">Phasen<b class="caret"></b></a>
                                 <ul class="dropdown-menu">';
-                            foreach ($aPhases as $sPhase){
-                            
-                                $sReturn.='<li><a href="'.$sBaseUrl.$aParams["prj"].'/phase/'.$sPhase.'/">'.$sPhase.'</a></li>';
-                            }
-                            $sReturn.='</ul></li>';
-                        }
-                    }
+                foreach ($aPhases as $sPhase) {
+
+                    $sReturn.='<li><a href="' . $sBaseUrl . $aParams["prj"] . '/phase/' . $sPhase . '/">' . $sPhase . '</a></li>';
                 }
-                    
-                $sReturn.='
+                $sReturn.='</ul></li>';
+            }
+        }
+    }
+
+    $sReturn.='
                 <!--
                 <li>
                     <a href="#" >Irgend...</a>
@@ -152,31 +173,31 @@ function getTopArea(){
                     <li class="dropdown">
                         <a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class=" icon-question-sign"></i> Hilfe<b class="caret"></b></a>
                         <ul class="dropdown-menu">
-                            <li><a href="'.$sWikiBaseUrl.'/it/entwicklung/continuous_deployment">WIKI: Übersicht Continous Deployment</a></li>
-                            <li><a href="'.$sWikiBaseUrl.'/it/entwicklung/continuous_deployment#konventionen">WIKI: Konventionen für Entwickler</a></li>
-                            <li><a href="'.$sWikiBaseUrl.'/it/infrastruktur/dienste/puppet/snippets#iml-deployment">WIKI (Admin): Puppet-Snippets für den Sysadmin</a></li>
-                            <li><a href="'.$sWikiBaseUrl.'/it/infrastruktur/dienste/imldeployment">WIKI (Admin): Verzeichnisse und Dateien</a></li>
+                            <li><a href="' . $sWikiBaseUrl . '/it/entwicklung/continuous_deployment">WIKI: Übersicht Continous Deployment</a></li>
+                            <li><a href="' . $sWikiBaseUrl . '/it/entwicklung/continuous_deployment#konventionen">WIKI: Konventionen für Entwickler</a></li>
+                            <li><a href="' . $sWikiBaseUrl . '/it/infrastruktur/dienste/puppet/snippets#iml-deployment">WIKI (Admin): Puppet-Snippets für den Sysadmin</a></li>
+                            <li><a href="' . $sWikiBaseUrl . '/it/infrastruktur/dienste/imldeployment">WIKI (Admin): Verzeichnisse und Dateien</a></li>
                         </ul>
                     </li>
             </ul>
           </div>
         </div><div id="header2">';
-                
-    if (!array_key_exists("prj", $aParams)){
-        $sReturn.='<img src="'.$sImageBase.$aImages['overview'].'" id="imgtop" alt="">'
+
+    if (!array_key_exists("prj", $aParams)) {
+        $sReturn.='<img src="' . $sImageBase . $aImages['overview'] . '" id="imgtop" alt="">'
                 . '<h1>&Uuml;bersicht</h1><span class="description">Alle Projekte und Versionen in den einzelnen Phasen</span>';
     } else {
-        if ($aParams["prj"]<>"all") {
-            $oPrj=new project($aParams["prj"]);
-            $sReturn.='<img src="'.$sImageBase.$aImages['project'].'" id="imgtop" alt="">
-                <h1>'.$oPrj->getLabel().'</h1><span class="description">'.$oPrj->getDescription().'</span>';
-                if (array_key_exists("action", $aParams)){
-                    // $sReturn.='<h2>Aktion: '.$aParams["action"].'</h2>';
-                }
+        if ($aParams["prj"] <> "all") {
+            $oPrj = new project($aParams["prj"]);
+            $sReturn.='<img src="' . $sImageBase . $aImages['project'] . '" id="imgtop" alt="">
+                <h1>' . $oPrj->getLabel() . '</h1><span class="description">' . $oPrj->getDescription() . '</span>';
+            if (array_key_exists("action", $aParams)) {
+                // $sReturn.='<h2>Aktion: '.$aParams["action"].'</h2>';
+            }
         }
     }
     $sReturn.='</div>';
-        
+
     return $sReturn;
 }
 
@@ -187,79 +208,79 @@ function getTopArea(){
  * @global array $aImages
  * @return string
  */
-function getAction(){
+function getAction() {
     global $aParams, $sImageBase, $aImages;
-    $sReturn='';
-    if (array_key_exists("action", $aParams)){
-        $sLabel=$aParams["action"];
-        if (array_key_exists("par3", $aParams)){
+    $sReturn = '';
+    if (array_key_exists("action", $aParams)) {
+        $sLabel = $aParams["action"];
+        if (array_key_exists("par3", $aParams)) {
             $sLabel.=' :: ' . $aParams["par3"];
         }
-        $sReturn.='<h2 class="action '.$aParams["action"].'">'.$sLabel.'</h2>';
-    } else if (array_key_exists("prj", $aParams)){
-        $sReturn.='<h2 class="action prjhome"> Projekt-Home</h2>';        
+        $sReturn.='<h2 class="action ' . $aParams["action"] . '">' . $sLabel . '</h2>';
+    } else if (array_key_exists("prj", $aParams)) {
+        $sReturn.='<h2 class="action prjhome"> Projekt-Home</h2>';
     }
     return $sReturn;
 }
+
 /**
  * get html code of a div around a message
  * @param string $sWarnlevel one of error|success|info|warning to get a colored box
  * @param string $sMessage   message txt
  * @return string
  */
-function getBox($sWarnlevel, $sMessage){
-    $aCfg=array(
-        "error"=>array("class"=>"alert alert-error", "prefix"=>"ERROR :-("),
-        "success"=>array("class"=>"alert alert-success", "prefix"=>"SUCCESS :-)"),
-        "info"=>array("class"=>"alert alert-info", "prefix"=>"INFO"),
-        "warning"=>array("class"=>"alert alert-block", "prefix"=>"WARNUNG"),
+function getBox($sWarnlevel, $sMessage) {
+    $aCfg = array(
+        "error" => array("class" => "alert alert-error", "prefix" => "ERROR :-("),
+        "success" => array("class" => "alert alert-success", "prefix" => "SUCCESS :-)"),
+        "info" => array("class" => "alert alert-info", "prefix" => "INFO"),
+        "warning" => array("class" => "alert alert-block", "prefix" => "WARNUNG"),
     );
-    $sClass="";
-    $sPrefix="";
-    if (array_key_exists($sWarnlevel, $aCfg)){
-        $sClass=$aCfg[$sWarnlevel]["class"];
-        $sPrefix=$aCfg[$sWarnlevel]["prefix"];
-        $sMessage='<strong>'.$aCfg[$sWarnlevel]["prefix"].'</strong> ' . $sMessage;
+    $sClass = "";
+    $sPrefix = "";
+    if (array_key_exists($sWarnlevel, $aCfg)) {
+        $sClass = $aCfg[$sWarnlevel]["class"];
+        $sPrefix = $aCfg[$sWarnlevel]["prefix"];
+        $sMessage = '<strong>' . $aCfg[$sWarnlevel]["prefix"] . '</strong> ' . $sMessage;
     }
     return '
-        <div class="'.$sClass.'">
-            '.$sMessage.'
+        <div class="' . $sClass . '">
+            ' . $sMessage . '
         </div>';
-    
 }
 
-function enterDeployinfos(){
+function enterDeployinfos() {
     global $aParams;
-    $sIdUser="inputUser";
-    $sIdComment="inputComment";
-    $sUser=(array_key_exists($sIdUser, $aParams))?$aParams[$sIdUser]:"";
-    $sComment=(array_key_exists($sIdComment, $aParams))?$aParams[$sIdComment]:"";
-    
-    $sOut='
+    $sIdUser = "inputUser";
+    $sIdComment = "inputComment";
+    $sUser = (array_key_exists($sIdUser, $aParams)) ? $aParams[$sIdUser] : "";
+    $sComment = (array_key_exists($sIdComment, $aParams)) ? $aParams[$sIdComment] : "";
+
+    $sOut = '
         <div class="control-group">
             <label class="control-label" for="inputUser">Benutzername</label>
             <div class="controls">
-                <input type="text" id="inputUser" name="inputUser" placeholder="Benutzername" value="'.$sUser.'">
+                <input type="text" id="inputUser" name="inputUser" placeholder="Benutzername" value="' . $sUser . '">
             </div>
         </div>
         <div class="control-group">
             <label class="control-label" for="inputComment">Kommentar zum Deployment</label>
             <div class="controls">
-                <textarea id= rows="3" id="inputComment" name="inputComment" placeholder="Kommentar">'.$sComment.'</textarea>
+                <textarea id= rows="3" id="inputComment" name="inputComment" placeholder="Kommentar">' . $sComment . '</textarea>
             </div>
         </div>
         ';
-    
+
     return $sOut;
 }
 
-function getChecksumDiv($sText){
-    return '<div style="background: '.getChecksumColor($sText). '; width: 20px; height: 20px;"> </div>';
+function getChecksumDiv($sText) {
+    return '<div style="background: ' . getChecksumColor($sText) . '; width: 20px; height: 20px;"> </div>';
 }
 
-function getChecksumColor($sText){
-    $sReturn='';
-    $s=md5($sText);
+function getChecksumColor($sText) {
+    $sReturn = '';
+    $s = md5($sText);
     return "#" . substr($s, 0, 2) . substr($s, 2, 2) . substr($s, 4, 2);
 }
 
diff --git a/public_html/deployment/index.php b/public_html/deployment/index.php
index 14cc4d8b3e6c075f45ccc062e1abb54f3751323f..a7e249ad0ce4eb735d23b41005fbd37697c8decf 100644
--- a/public_html/deployment/index.php
+++ b/public_html/deployment/index.php
@@ -1,40 +1,56 @@
 <?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>
+  ###################################################################### */
+
 require_once("./inc_functions.php");
 require_once("./classes/page.class.php");
 
-$sPrj="";
-$sAction="overview";
+$sPrj = "";
+$sAction = "overview";
 
 // ------ check parameters
 
 if (array_key_exists("prj", $aParams)) {
-    $sPrj=$aParams["prj"];
+    $sPrj = $aParams["prj"];
 }
 if (array_key_exists("action", $aParams)) {
-    if (file_exists(__DIR__ . '/act_' . $aParams["action"] . ".php")){
-        $sAction=$aParams["action"];
+    if (file_exists(__DIR__ . '/act_' . $aParams["action"] . ".php")) {
+        $sAction = $aParams["action"];
     }
 }
 
 // ------ action 
 
-$sActionFile=__DIR__ . '/act_' . $sAction . ".php";
+$sActionFile = __DIR__ . '/act_' . $sAction . ".php";
 include($sActionFile);
-        
+
 // ------ Ausgabe
-$sPhpOut='
+$sPhpOut = '
     <div id="header" style="display: none;">
         IML DEPLOYMENT GUI
     </div>
     <br>
-    '. getTopArea() .'
+    ' . getTopArea() . '
     <div id="content">
-        '.getAction().'
-        '.$sPhpOut.'
+        ' . getAction() . '
+        ' . $sPhpOut . '
     </div>
     <div id="footer">
-        IML Deployment &copy; '.date("Y").' <a href="http://www.iml.unibe.ch/">Institut f&uuml;r medizinische Lehre; Universit&auml;t Bern</a>
+        IML Deployment &copy; ' . date("Y") . ' <a href="http://www.iml.unibe.ch/">Institut f&uuml;r medizinische Lehre; Universit&auml;t Bern</a>
     </div>
     ';
 
@@ -50,5 +66,4 @@ $oPage->addJsOnReady('
 
 $oPage->setContent($sPhpOut);
 echo $oPage->render();
-
 ?>