merge selected changes from 'branches/diogenes-newplugins':
[diogenes.git] / include / diogenes.barrel.inc.php
index 35f4e8a..65ad7ff 100644 (file)
@@ -214,7 +214,6 @@ class DiogenesBarrel extends DiogenesPage
         $render_plugin = $plugobj;
       }
     }
-
     // source page or pass it to a rendering plugin
     if (is_object($render_plugin)) {    
       $content = $render_plugin->render($path);
@@ -316,7 +315,7 @@ class DiogenesBarrel extends DiogenesPage
       array_push($this->head, '<link rel="icon" href="'.$this->urlSite("", $bbarrel->options->favicon).'" type="image/png" />');
 
     // RSS feed
-    array_push($this->head, '<link rel="alternate" type="text/xml" title="RSS .92" href="'.$this->urlSite("admin", "rss").'" />');
+    array_push($this->head, '<link rel="alternate" type="application/rss+xml" title="'.stripslashes($bbarrel->options->title).'" href="'.$this->urlSite("admin", "rss").'" />');
   }
 
 
@@ -363,6 +362,33 @@ class DiogenesBarrel extends DiogenesPage
   }
 
 
+  /** Read this barrel's menu entries from database.
+   */
+  function menuRead()
+  {
+    $menu = array();
+    $menu[0]['children'] = array();
+    $res = $this->dbh->query("select MID,MIDpere,title,link,PID from {$this->table_menu} order by ordre");
+    while (list($mid, $parent, $title, $link, $pid) = mysql_fetch_row($res))
+    {
+      $menu[$mid]['parent'] = $parent;
+      $menu[$mid]['title'] = $title;
+      $menu[$mid]['link'] = $link;
+      $menu[$mid]['title'] = $title;
+      $menu[$mid]['pid'] = $pid;
+      if (!is_array($menu[$mid]['children']))
+        $menu[$mid]['children'] = array();
+
+      // register this entry with its parent
+      if (!is_array($menu[$parent]['children']))
+        $menu[$parent]['children'] = array();
+      array_push($menu[$parent]['children'], $mid);
+    }
+    mysql_free_result($res);
+    return $menu;
+  }
+
+
   /** 
    * Break down a PATH_INFO into site, page id and file
    * Directories *must* be accessed with a final slash.