[Pieforms-commit] SF.net SVN: pieforms: [25] pieforms/src/pieform/renderers/multicolumntable. php
Status: Alpha
Brought to you by:
oracleshinoda
From: <ora...@us...> - 2006-11-18 12:21:57
|
Revision: 25 http://svn.sourceforge.net/pieforms/?rev=25&view=rev Author: oracleshinoda Date: 2006-11-18 04:21:55 -0800 (Sat, 18 Nov 2006) Log Message: ----------- Multicolumntable renderer: * Fixed headers * Re-ordered some functions (so the phpdoc is for the right function) * Added some todo items * One feature request (1598823) and one bug (1598825) as a result of cleaning up the file Modified Paths: -------------- pieforms/src/pieform/renderers/multicolumntable.php Modified: pieforms/src/pieform/renderers/multicolumntable.php =================================================================== --- pieforms/src/pieform/renderers/multicolumntable.php 2006-11-18 12:00:03 UTC (rev 24) +++ pieforms/src/pieform/renderers/multicolumntable.php 2006-11-18 12:21:55 UTC (rev 25) @@ -1,6 +1,6 @@ <?php /** - * This program is part of Mahara + * This program is part of Pieforms * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,18 +16,23 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA * - * @package mahara - * @subpackage form-renderer + * @package pieform + * @subpackage renderer * @author Penny Leach <pe...@ca...> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL - * @copyright (C) 2006,2007 Catalyst IT Ltd http://catalyst.net.nz + * @copyright (C) 2006 Catalyst IT Ltd http://catalyst.net.nz * */ -defined('INTERNAL') || die(); +// @todo this renderer needs to take into account potentially being called more +// than once in the same PHP script (clobbering of the $formrenderermct variable). +// Also, not sure what 'static $var' does in global scope... +require_once(dirname(__FILE__) . '/table.php'); +static $formrenderermct; /** - * Renders form elements inside a <table>. + * Renders form elements inside a <table>. If elements have the same title, + * they will be rendered in the same table row, allowing a grid layout. * * @param string $builtelement The element, already built * @param array $rawelement The element in raw form, for looking up @@ -35,25 +40,21 @@ * @return string The element rendered inside an appropriate * container. */ - -require_once(dirname(__FILE__) . '/table.php'); -static $formrenderermct; - -function form_renderer_multicolumntable_messages_js($id, $submitid) { - return form_renderer_table_messages_js($id, $submitid); -} - -function form_renderer_multicolumntable($builtelement, $rawelement) { +function pieform_renderer_multicolumntable($builtelement, $rawelement) { global $formrenderermct; $formrenderermct->add_element($builtelement, $rawelement); } -function form_renderer_multicolumntable_header() { +function pieform_renderer_multicolumntable_messages_js($id, $submitid) { + return pieform_renderer_table_messages_js($id, $submitid); +} + +function pieform_renderer_multicolumntable_header() { global $formrenderermct; $formrenderermct = new FormRendererMultiColumnTable(); } -function form_renderer_multicolumntable_footer() { +function pieform_renderer_multicolumntable_footer() { global $formrenderermct; return $formrenderermct->build(); } @@ -82,25 +83,34 @@ $result .= ' class="' . $data['settings']['class'] . '"'; } $result .= ">\n\t\t"; + $result .= '<th>'; if (isset($data['settings']['title'])) { - $result .= hsc($data['settings']['title']); + $result .= Pieform::hsc($data['settings']['title']); } $result .= "</th>\n\t"; + foreach ($data['builtelements'] as $k => $builtelement) { $rawelement = $data['rawelements'][$k]; - $result .= "\t<td id=\"" . $rawelement['name'] . '_container"'; + $result .= "\t<td"; + if (isset($rawelement['name'])) { + $result .= " id=\"" . $rawelement['name'] . '_container"'; + } if ($rawelement['class']) { $result .= ' class="' . $rawelement['class'] . '"'; } $result .= '>'; + $result .= $builtelement; + // Contextual help if (!empty($rawelement['help'])) { $result .= ' <span class="help"><a href="#" title="' - . hsc($rawelement['help']) . '">?</a></span>'; + . Pieform::hsc($rawelement['help']) . '">?</a></span>'; } $result .= "</td>\n\t"; + + // @todo description... } $result .= "</tr>\n"; } @@ -110,4 +120,4 @@ } -?> \ No newline at end of file +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |