[cvs] [Wiki] changed: Doc/Dev/Registry

Jan Schneider jan at horde.org
Sun Aug 7 13:28:23 PDT 2005


jan  Sun, 07 Aug 2005 13:28:23 -0700

Modified page: http://wiki.horde.org/Doc/Dev/Registry
New Revision:  1.1
Change log:  Initial content from the bostonphp2005-05 presentation

@@ -1 +1,74 @@
++ The Registry
+
+++ registry.php
+
+Here's an application's registry.php entry:
+
+<code type="php">
+$this->applications['whups'] = array(
+    'fileroot' => dirname(__FILE__) . '/../whups',
+    'webroot' => $this->applications['horde']['webroot'] . '/whups',
+    'name' => _("Tickets"),
+    'status' => 'active',
+    'provides' => 'tickets',
+    'menu_parent' => 'devel',
+);
+</code>
+
++++ fileroot
+
+<code type="php">
+    'fileroot' => dirname(__FILE__) . '/../whups',
+</code>
+
+The {{fileroot}} setting tells Horde where the application - in this case Whups - lives on the filesystem. The {{__FILE__}} constant is the current file; {{dirname()}} strips off the filename and turns it into just a directory.
+This means that the location is by default relative to {{registry.php}} - under the {{horde/}} directory - which is almost always right. But it's configurable just in case.
+
++++ webroot
+
+<code type="php">
+    'webroot' => $this->applications['horde']['webroot'] . '/whups',
+</code>
+
+The {{webroot}} setting tells Horde where the application lives relative to the webserver's document root. Usually this is predictable as well, but you might want to give an application its own domain - for example, {{http://cvs.php.net/}}, which is powered by Horde and Chora.
+
++++ name
+
+<code type="php">
+    'name' => _("Tickets"),
+</code>
+
+The {{name}} setting surprisingly sets the human-readable name of the application. The {{_()}} is an alias for {{gettext()}}, which translates the name into other languages.
+
++++ status
+
+<code type="php">
+    'status' => 'active',
+</code>
+
+The {{status}} setting tells Horde what kind of application this is. Possible statuses are:
+
+* inactive
+* hidden
+* notoolbar
+* heading
+* block
+* admin
+* active
+
++++ provides
+
+<code type="php">
+    'provides' => 'tickets',
+</code>
+
+The {{provides}} setting tells Horde if the application provides any APIs. In this case Whups provides the tickets API, which allows for adding and listing tickets. In turn, Horde knows that if it gets a request for a {{tickets/search}} method, it should pass it along to Whups.
+
++++ menu_parent
+
+<code type="php">
+    'menu_parent' => 'devel',
+</code>
+
+The {{menu_parent}} setting is just for the sidebar - it tells Horde what item to make the application of a child of. This lets you customize the menu to your heart's content. This can be left out or set to null for top-level items.
 


More information about the cvs mailing list