Simple Layout library to replace the layout functionality hardcoded into the old...
authorChuck Hagenbuch <chuck@horde.org>
Sat, 7 Aug 2010 02:05:36 +0000 (22:05 -0400)
committerChuck Hagenbuch <chuck@horde.org>
Sat, 7 Aug 2010 02:05:36 +0000 (22:05 -0400)
This is very likely to evolve further as it gets used.

framework/Ui/lib/Horde/Ui/Layout.php [new file with mode: 0644]
framework/Ui/package.xml [new file with mode: 0644]

diff --git a/framework/Ui/lib/Horde/Ui/Layout.php b/framework/Ui/lib/Horde/Ui/Layout.php
new file mode 100644 (file)
index 0000000..1627bb5
--- /dev/null
@@ -0,0 +1,22 @@
+<?php
+class Horde_Ui_Layout
+{
+    protected $_view;
+    protected $_layoutName;
+
+    public function setView(Horde_View $view)
+    {
+        $this->_view = $view;
+    }
+
+    public function setLayoutName($layoutName)
+    {
+        $this->_layoutName = $layoutName;
+    }
+
+    public function render($name)
+    {
+        $this->_view->contentForLayout = $this->_view->render($name);
+        return $this->_view->render($this->_layoutName);
+    }
+}
diff --git a/framework/Ui/package.xml b/framework/Ui/package.xml
new file mode 100644 (file)
index 0000000..310d1a9
--- /dev/null
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<package packagerversion="1.4.9" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0
+http://pear.php.net/dtd/tasks-1.0.xsd
+http://pear.php.net/dtd/package-2.0
+http://pear.php.net/dtd/package-2.0.xsd">
+ <name>Ui</name>
+ <channel>pear.horde.org</channel>
+ <summary>Horde UI libraries</summary>
+ <description>Horde user interface libraries
+ </description>
+ <lead>
+  <name>Chuck Hagenbuch</name>
+  <user>chuck</user>
+  <email>chuck@horde.org</email>
+  <active>yes</active>
+ </lead>
+ <lead>
+  <name>Jan Schneider</name>
+  <user>jan</user>
+  <email>jan@horde.org</email>
+  <active>yes</active>
+ </lead>
+ <date>2010-08-06</date>
+ <version>
+  <release>0.1.0</release>
+  <api>0.1.0</api>
+ </version>
+ <stability>
+  <release>beta</release>
+  <api>beta</api>
+ </stability>
+ <license uri="http://www.gnu.org/copyleft/lesser.html">LGPL</license>
+ <notes>* Initial release.
+ </notes>
+ <contents>
+  <dir name="/">
+   <dir name="lib">
+    <dir name="Horde">
+     <dir name="Ui">
+      <file name="Layout.php" role="php" />
+     </dir> <!-- /lib/Horde/Layout -->
+    </dir> <!-- /lib/Horde -->
+   </dir> <!-- /lib -->
+  </dir> <!-- / -->
+ </contents>
+ <dependencies>
+  <required>
+   <php>
+    <min>5.2.0</min>
+   </php>
+   <pearinstaller>
+    <min>1.7.0</min>
+   </pearinstaller>
+   <package>
+    <name>View</name>
+    <channel>pear.horde.org</channel>
+   </package>
+  </required>
+ </dependencies>
+ <phprelease>
+  <filelist>
+   <install name="lib/Horde/Ui/Layout.php" as="Horde/Ui/Layout.php" />
+  </filelist>
+ </phprelease>
+</package>