Code

Changed some js comments
[gosa.git] / include / class_ObjectListViewport.inc
index 6f070214b3fbb88ffac2a47a7265c7b95c90f96c..7ff0e655f0cddf1043281a7e5b36c679f436aae9 100644 (file)
@@ -84,11 +84,14 @@ class ObjectListViewport {
       \return HTML rendered headline
         */
   private function renderHeadline(){
-    $buffer ="<tr>\n";
+    $buffer ="<table class='ObjectListViewport_Header_Table'>\n";
+    $buffer.="<tr>\n";
     foreach($this->headline as $key => $value){
-      $buffer .= "<td style='".$value['style']."'>".$value['name']."</td>\n";
+      $buffer .= "<td  style='".$value['style']."'>".$value['name']."</td>\n";
     }
+    $buffer.="<td style='width:13px;'>&nbsp;</td>";
     $buffer.="</tr>\n";
+    $buffer.="</table>\n";
     return $buffer;
   }
 
@@ -100,10 +103,11 @@ class ObjectListViewport {
       \return HTML rendered footer
         */
   private function renderFooter(){
-
-    $buffer ="<tr>\n";
-    $buffer .= "<td colspan='".count($this->headline)."'>".$this->footer."</td>\n";
+    $buffer ="<table class='ObjectListViewport_Footer_Table'>\n"; 
+    $buffer.="<tr>\n";
+    $buffer.= "<td class='ObjectListViewport_Footer_Cell' colspan='".count($this->headline)."'>".$this->footer."</td>\n";
     $buffer.="</tr>\n";
+    $buffer.="</table>\n";
     return $buffer;
   }
 
@@ -148,9 +152,21 @@ class ObjectListViewport {
 
     $tmp = split("\|",trim($buffer,"|"));  
 
-    $buffer ="<tr>\n";
+
+    $buffer="<tr>\n";
     foreach($tmp as $key => $value){
-      $buffer .= "<td class='ObjectListViewportEntry' style='".$this->headline[$key]['style']."'>".$value."</td>\n";
+
+      if(1 || empty($this->headline[$key]['width']) || preg_match("/\%/",$this->headline[$key]['width'])){
+        $buffer .= "<td class='ObjectListViewport_Entry_Cell' style='".$this->headline[$key]['style']."'>".
+          "<div style='overflow:hidden;".$this->headline[$key]['style']."'>".
+            $value.
+          "</div>".
+          "</td>\n";
+      }else{
+        $buffer .= "<td class='ObjectListViewport_Entry_Cell' style='".$this->headline[$key]['style']."'>".
+          $value.
+          "</td>\n";
+      }
     }
     $buffer.="</tr>\n";
 
@@ -178,21 +194,51 @@ class ObjectListViewport {
         */
   public function render() {
 
-    /* Generate fixed headline */
-    $buffer= $this->renderHeadline();
+    $header = $this->renderHeadline();
+    $footer = $this->renderFooter();
 
     /* Apply current filter */
+    $entries = "";
     $objects= new ObjectListFilterIterator($this->objects->getIterator());
-    
     foreach ($objects as $value){
-      $buffer.= $this->renderEntry($value);
+      $entries .= $this->renderEntry($value);
     }
 
-    /* Generate footer */
-    $buffer.= $this->renderFooter();
-
+    
 
-    return ("<table class='ObjectListViewportTable'>".$buffer."</table>");
+    /* Generate fixed headline */
+    $buffer = "
+    <table class='ObjectListViewport' id='ObjectListViewport' cellspacing=o cellpadding=0>
+      <tr>
+        <td>
+              <table class='ObjectListViewport_Table' id='ObjectListViewport_Table' cellpadding=0 cellspacing=0 >
+                <tr>
+                  <td class='ObjectListViewport_TD_Header' id='ObjectListViewport_TD_Header'>
+                    ".$header."
+                  </td>
+                </tr>
+                <tr>
+                  <td class='ObjectListViewport_TD_Entries' id='ObjectListViewport_TD_Entries'>
+                    <div style='overflow:auto' id='ObjectListViewport_Entry_Cover'> 
+                      <table class='ObjectListViewport_Entry_Table' id='ObjectListViewport_Entry_Table'>
+                        ".$entries."
+                      </table> 
+                    </div>
+                  </td>
+                </tr>
+                <tr>
+                  <td class='ObjectListViewport_TD_Footer' id='ObjectListViewport_TD_Footer'>
+                    ".$footer."
+                  </td>
+                </tr>
+              </table>
+
+        </td>
+      </tr>
+    </table>
+";
+
+    return ($buffer);
   }