From 04ae565a0b9b790041ac9f31d651a90c5ad7c682 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 26 May 2009 12:20:13 +0000 Subject: [PATCH] --- vilesci/stammdaten/organisationseinheiten.php | 50 +++++++++++++++++-- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/vilesci/stammdaten/organisationseinheiten.php b/vilesci/stammdaten/organisationseinheiten.php index 7fecfb051..226b9ffec 100644 --- a/vilesci/stammdaten/organisationseinheiten.php +++ b/vilesci/stammdaten/organisationseinheiten.php @@ -35,11 +35,51 @@ echo '

Organisationseinheiten - Übersicht


'; -$arr = array(); -$arr = getChilds('etw'); -$arr1['etw'] = $arr; -displayh($arr1); +//Benutzerdefiniert Sortierfunktion damit die Eintraege mit +//Kindelementen nach oben sortiert werden +function mysort($a, $b) +{ + if(is_array($a) && is_array($b)) + { + if(count($a)==count($b)) + return 0; + + if(count($a)>count($b)) + return -1; + else + return 1; + } + else + { + if(is_array($a)) + return 1; + if(is_array($b)) + return -1; + else + return 0; + } +} + +//Alle obersten Organisationseinheiten holen +$oe = new organisationseinheit(); +$oe->getHeads(); + +foreach ($oe->result as $result) +{ + $arr = array(); + //Array mit den Kindelementen erzeugen + $arr = getChilds($result->oe_kurzbz); + + //Sortieren damit die Eintraege mit Kindern weiter oben stehen + uasort($arr,'mysort'); + + //Parent hinzufuegen + $arr1[$result->oe_kurzbz] = $arr; + + //Anzeigen + displayh($arr1); +} //Liefert die Kindelemente einer Organisationseinheit in //einem verschachteltem Array zurueck @@ -56,7 +96,7 @@ function getChilds($foo) $hlp = getChilds($val); $arr[$val] = $hlp; } - + return $arr; }