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";
- $s_return .= $s_value2['string'];
- $s_return .= " | ";
- }
-
- 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 .= $s_value2['string'];
+ $s_return .= " | ";
+ }
+ $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;
}
}