";
+ $trow.="";
+
+ // Save rendered entry
+ $this->entry[$row]['_rendered']= $trow;
$alt++;
}
+ // Complete list by sorting entries for _sort$index and appending them to the output
+ $entryIterator= new listingSortIterator($this->entries, $this->sortDirection[$this->sortColumn], "_sort".$this->sortColumn, $this->sortType);
+ foreach ($entryIterator as $row => $entry){
+ $result.= $entry['_rendered'];
+ }
+
// Need to fill the list if it's not full (nobody knows why this is 22 ;-))
$emptyListStyle= (count($this->entries) + $deps == 0)?"border:0;":"";
if ((count($this->entries) + $deps) < 22) {
@@ -511,6 +526,10 @@ class listing {
// Watch out for filters and prepare to execute them
$data= $this->processElementFilter($data, $config, $row);
+ // Replace all non replaced %{...} instances because they
+ // are non resolved attributes or filters
+ $data= preg_replace('/%{[^}]+}/', ' ', $data);
+
return $data;
}
@@ -897,7 +916,7 @@ class listing {
$actions= &$this->xmlData['actionmenu']['action'];
$result= "".
"
Aktionen ";
+ "border=0 class='center' src='images/lists/sort-down.png'>";
// Build ul/li list
$result.= $this->recurseActions($actions);
@@ -922,7 +941,7 @@ class listing {
// Fill image if set
$img= "";
if (isset($action['image'])){
- $img= " ";
+ $img= " ";
}
if ($action['type'] == "separator"){
@@ -983,7 +1002,7 @@ class listing {
// Every ACL has to pass
foreach ($acls as $acl) {
$module= $this->module;
- $acllist= array();
+ $aclList= array();
// Split for category and plugins if needed
// match for "[rw]" style entries
@@ -1273,9 +1292,9 @@ class listing {
// If there is a daemon registered, draw the menu entries
if(class_available("DaemonEvent")){
$events= DaemonEvent::get_event_types_by_category($this->categories);
- if(count($events['BY_CLASS'])){
+ if(isset($events['BY_CLASS']) && count($events['BY_CLASS'])){
foreach($events['BY_CLASS'] as $name => $event){
- $result.= "