X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=include%2Fclass_divlist.inc;h=ef1c137e9b621157a9f410f412101789aeec2a4b;hb=e4bf3ecc1b431adcb5b9ad1bdf58d7e3739f6849;hp=58591666a0c1724d1c8b3e2a07803026ea12f3ac;hpb=4eb0a20be4443722d99fbbfe02c39b72240a4699;p=gosa.git diff --git a/include/class_divlist.inc b/include/class_divlist.inc index 58591666a..ef1c137e9 100644 --- a/include/class_divlist.inc +++ b/include/class_divlist.inc @@ -48,23 +48,30 @@ class divlist { } function DrawList(){ - $s_return = ""; - - $s_return.= ""; - + $s_return.= "
"; if($this->i_entriesPerPage==0) { - - $s_return.= "".$this->_generateHeader().""; - - // Define an alternate style for IE - $s_return.= ""; - - $s_return.= "".$this->_generatePage().""; + // TODO: Find a more convenient way to use the same functionality in both + // MSIE and non-MSIE browsers. ATM we need to manually set entriesPerPage to + // a non-zero value, because MSIE won't scroll the tbody properly. + $s_browser = isset($_SERVER['HTTP_USER_AGENT'])?$_SERVER['HTTP_USER_AGENT']:""; + if(is_numeric(strpos($s_browser,'Mozilla')) && + !is_numeric(strpos($s_browser,'MSIE')) && + !is_numeric(strpos($s_browser,'KHTML')) + ){ + $s_return.= "".$this->_generateHeader().""; + // Define an alternate style for IE (not used ATM) + // $s_return.= ""; + $s_return.= "".$this->_generatePage().""; + } else { + // Call ourself with i_entriesPerPage set to a default value + $this->SetEntriesPerPage(20); + $s_return.=$this->_generateHeader(); + $s_return.=$this->_generatePage(); + } } else { - $s_return.=$this->_generateHeader(); - - $s_return.=$this->_generatePage(); + $s_return.=$this->_generateHeader(); + $s_return.=$this->_generatePage(); } //$s_return.= nl2br(htmlentities($this->_generatePage())); @@ -102,9 +109,9 @@ class divlist { if(!isset($s_value['attach'])){ $s_value['attach'] = ""; } - + if($i_count == 0) { - $s_return .= "\n"; + $s_return .= "\n"; } else { $s_return .= "\n"; } @@ -113,7 +120,7 @@ class divlist { // Only create additional column if we're using scrollbars if($this->i_entriesPerPage==0) { - $s_return .= ""; + $s_return .= "\n"; } $s_return .= "\n"; return $s_return; @@ -141,7 +148,17 @@ class divlist { $start=0; } } - + + /* If divlist is empty, append a single white entry */ + if(count($this->a_entries)==0){ + $str = ""; + for($i = 0 ; $i < count($this->a_header[0]); $i++){ + $str.=""; + } + $str .=""; + return($str); + } + if ($this->i_entriesPerPage > 0) { while($start > $this->_numentries()){ $start = $start - $this->i_entriesPerPage; @@ -214,49 +231,58 @@ class divlist { } } else { // We should display all entries on one page - foreach($this->a_entries as $s_key => $s_value){ - - if($i_alternate){ + + $i = $this->_numEntries(); + foreach($this->a_entries as $s_key => $s_value){ + $i--; + + if($i_alternate!=0){ $i_alternate=0; } else { $i_alternate=1; } - + $s_return .= "\n"; - - $cnt = 0; - - foreach($s_value as $s_key2 => $s_value2 ){ - - $this->cols = count($s_value) ; - $cnt++; - - if(!isset($s_value2['class'])){ - $class = "list".$i_alternate; - } else { - $class = $s_value2['class']; - } - - if(!isset($s_value2['attach'])){ - $style = ""; - } else { - $style = " ".$s_value2['attach']." " ; - } - - $s_return .= "\n"; - } - - if($cnt == 0 ){ - $s_return.="\n"; - } else { - //$s_return.="\n"; + + $cnt = 0; + + foreach($s_value as $s_key2 => $s_value2 ){ + + $this->cols = count($s_value) ; + $cnt++; + + if(!isset($s_value2['class'])){ + $class = "list".$i_alternate; + } else { + $class = $s_value2['class']; + } + + if(!isset($s_value2['attach'])){ + $style = ""; + } else { + $style = " ".$s_value2['attach']." " ; + } + + $s_return .= "\n"; + } + $s_return .= "\n"; + } + } + + // if fewer than 22 Entries (list not full), print row to fill empty space + if($this->_numEntries()<22){ + $fill= ""; + for ($i= 1; $i <= $this->cols; $i++){ + if ($i == $this->cols){ + $fill.= ""; + } else { + $fill.= ""; } - $s_return .= "\n"; - } + } + $s_return.="\n$fill"; } - return $s_return; } }
".$s_value['string']."".$s_value['string']."".$s_value['string']."  
 
"; - $s_return .= $s_value2['string']; - $s_return .= "  "; + $s_return .= $s_value2['string']; + $s_return .= "