<XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
</XMI.header>
<XMI.content>
- <docsettings viewid="132" documentation="Parse XML data getting widgets." uniqueid="138" />
+ <docsettings viewid="132" documentation="Parse XML data getting widgets." uniqueid="147" />
<umlobjects>
<UML:Class stereotype="" package="BIFE" xmi.id="3" abstract="1" documentation="Base widget class." name="Widget" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="126" type="void" abstract="0" documentation="Constructor." name="BIFE_Widget" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="4" type="string" abstract="1" documentation="Renders the widget using a template returning a string with the results." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template object to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template object to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
<UML:Attribute stereotype="" package="" xmi.id="125" value="array()" type="array" abstract="0" documentation="Attribute list." name="attrs" static="0" scope="202" />
</UML:Class>
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&mixed" abstract="0" documentation="Contents to add to the container." name="contents" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="59" type="string" abstract="0" documentation="Renders the widget using a template returning a string with the results." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template object to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template object to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
<UML:Attribute stereotype="" package="" xmi.id="47" value="" type="array" abstract="0" documentation="" name="contents" static="0" scope="200" />
</UML:Class>
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&mixed" abstract="0" documentation="Contents to add." name="contents" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="12" type="string" abstract="0" documentation="Renders the widget." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="BIFE" xmi.id="14" abstract="0" documentation="Page widget." name="Page" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&mixed" abstract="0" documentation="Contents to add." name="contents" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="90" type="string" abstract="0" documentation="Returns the rendered widget as a string." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="BIFE" xmi.id="17" abstract="0" documentation="Title widget." name="Title" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="23" type="string" abstract="0" documentation="Renders the widget." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="95" type="array" abstract="0" documentation="Gets a list of photos with their descriptions and thumbnails.
<UML:Parameter stereotype="" package="" xmi.id="2" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="82" type="void" abstract="0" documentation="Renders the widget returning a string with the results." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="BIFE" xmi.id="85" abstract="0" documentation="Root container class." name="Root" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="108" type="string" abstract="0" documentation="Renders the widget using a template returning a string with the results." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="BIFE" xmi.id="110" abstract="0" documentation="Link to another page." name="Link" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="112" type="void" abstract="0" documentation="Constructor." name="__construct" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
</UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="142" type="string" abstract="0" documentation="Gets a URL string based on Link attributes." name="getURL" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Link attributes." name="attrs" static="0" scope="200" />
+ </UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="BIFE" xmi.id="115" abstract="0" documentation="Dynamic Menu." name="Menu" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="121" type="void" abstract="0" documentation="Constructor." name="BIFE_Menu" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="117" type="string" abstract="0" documentation="Renders the widget using a template returning a string with the results." name="render" static="0" scope="200" >
- <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_Sigma" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template to use to render the widget." name="template" static="0" scope="200" />
</UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="HTML/Template" xmi.id="130" abstract="0" documentation="Hooks vs. IT (HIT) is a simple template implementation, based on hooks and IT template systems." name="HIT" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="'.'" type="int" abstract="0" documentation="Root directory where template files are." name="root" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="2" value="''" type="int" abstract="0" documentation="Group of templates to use (a subdirectory in root)." name="group" static="0" scope="200" />
</UML:Operation>
- <UML:Operation stereotype="" package="" xmi.id="138" type="void" abstract="0" documentation="Parse a template.
+ <UML:Operation stereotype="" package="" xmi.id="138" type="string" abstract="0" documentation="Parse a template returning the results.
If $vars is an array, the {[keys]} are replaced with [values] ($val is ignored). If is a string, {$vars} is replaced with $val." name="parse" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of template to parse." name="name" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="2" value="''" type="mixed" abstract="0" documentation="Variables to replace in the template." name="vars" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="3" value="''" type="string" abstract="0" documentation="If $vars is a string, the value to replace for $vars." name="val" static="0" scope="200" />
</UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="144" type="void" abstract="0" documentation="Parse a template buffering the results.
+
+Parse a template appending the results to an internal buffer. If $vars is an array, the {[keys]} are replaced with [values] ($val is ignored). If is a string, {$vars} is replaced with $val." name="parseBuffered" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of template to parse." name="name" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="2" value="''" type="mixed" abstract="0" documentation="Variables to replace in the template." name="vars" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="3" value="''" type="string" abstract="0" documentation="If $vars is a string, the value to replace for $vars." name="val" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="145" type="string" abstract="0" documentation="Gets a parsed buffer." name="getBuffer" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of the parsed template to get." name="name" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="2" value="true" type="bool" abstract="0" documentation="Flush buffer." name="flush" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="146" type="void" abstract="0" documentation="Gets a parsed buffer and removes it." name="popBuffer" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="''" type="int" abstract="0" documentation="Name of the buffer to flush." name="name" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="139" type="void" abstract="0" documentation="Sets the group to use and add it to the groups stack." name="setGroup" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="''" type="string" abstract="0" documentation="Group to use." name="group" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="140" type="void" abstract="0" documentation="Removes the group from the groups stack and returns to the previous used group." name="unsetGroup" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="133" value="'.'" type="string" abstract="0" documentation="Root directory where template files are." name="root" static="0" scope="200" />
- <UML:Attribute stereotype="" package="" xmi.id="134" value="''" type="string" abstract="0" documentation="Group of templates to use (a subdirectory in root)." name="group" static="0" scope="200" />
+ <UML:Attribute stereotype="" package="" xmi.id="134" value="''" type="string" abstract="0" documentation="Group of templates to use (a subdirectory in root)." name="group" static="0" scope="202" />
<UML:Attribute stereotype="" package="" xmi.id="135" value="array()" type="array" abstract="0" documentation="Templates cache." name="cache" static="0" scope="202" />
+ <UML:Attribute stereotype="" package="" xmi.id="147" value="array()" type="array" abstract="0" documentation="" name="buffer" static="0" scope="202" />
</UML:Class>
</umlobjects>
<diagrams>
<widgets>
<UML:ConceptWidget usesdiagramfillcolour="0" width="120" showattsigs="601" usesdiagramusefillcolour="0" x="56" linecolour="#ff0000" y="350" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="81" usefillcolor="1" showattributes="1" xmi.id="76" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="1" width="131" showattsigs="601" usesdiagramusefillcolour="1" x="265" linecolour="none" y="180" showopsigs="600" usesdiagramlinecolour="1" fillcolour="none" height="99" usefillcolor="1" showattributes="1" xmi.id="7" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="1" width="120" showattsigs="601" usesdiagramusefillcolour="1" x="345" linecolour="none" y="350" showopsigs="600" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" showattributes="1" xmi.id="110" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="1" width="120" showattsigs="601" usesdiagramusefillcolour="1" x="345" linecolour="none" y="350" showopsigs="600" usesdiagramlinecolour="1" fillcolour="none" height="81" usefillcolor="1" showattributes="1" xmi.id="110" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="0" width="127" showattsigs="601" usesdiagramusefillcolour="0" x="499" linecolour="#ff0000" y="350" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="99" usefillcolor="1" showattributes="1" xmi.id="14" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="1" width="120" showattsigs="601" usesdiagramusefillcolour="1" x="205" linecolour="none" y="350" showopsigs="600" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" showattributes="1" xmi.id="17" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="0" width="134" showattsigs="601" usesdiagramusefillcolour="0" x="50" linecolour="#ff0000" y="180" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#dcdcdc" height="72" usefillcolor="1" showattributes="1" xmi.id="61" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
</diagram>
<diagram snapgrid="1" showattsig="1" fillcolor="#ffffc0" showgrid="1" showopsig="0" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="132" documentation="" type="402" showops="1" showpackage="1" name="HIT Classes" localid="30000" showstereotype="0" showscope="1" font="Helvetica,9,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
<widgets>
- <UML:ConceptWidget usesdiagramfillcolour="0" width="180" showattsigs="601" usesdiagramusefillcolour="0" x="50" linecolour="#ff0000" y="40" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" xmi.id="130" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="181" showattsigs="601" usesdiagramusefillcolour="0" x="50" linecolour="#ff0000" y="40" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="234" usefillcolor="1" showattributes="1" xmi.id="130" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations/>
<listitem open="0" type="813" id="110" label="Link" >
<listitem open="0" type="815" id="111" label="BIFE_Link" />
<listitem open="0" type="815" id="112" label="__construct" />
+ <listitem open="0" type="815" id="142" label="getURL" />
</listitem>
<listitem open="0" type="813" id="14" label="Page" >
<listitem open="0" type="815" id="93" label="addContents" />
</listitem>
</listitem>
<listitem open="1" type="803" id="-1" label="HIT" >
- <listitem open="1" type="813" id="130" label="HIT" >
+ <listitem open="0" type="813" id="130" label="HIT" >
+ <listitem open="0" type="814" id="147" label="buffer" />
<listitem open="0" type="814" id="135" label="cache" />
<listitem open="0" type="815" id="137" label="__construct" />
+ <listitem open="0" type="815" id="145" label="getBuffer" />
<listitem open="0" type="814" id="134" label="group" />
<listitem open="0" type="815" id="136" label="HTML_Template_HIT" />
<listitem open="0" type="815" id="138" label="parse" />
+ <listitem open="0" type="815" id="144" label="parseBuffered" />
+ <listitem open="0" type="815" id="146" label="popBuffer" />
<listitem open="0" type="814" id="133" label="root" />
+ <listitem open="0" type="815" id="139" label="setGroup" />
+ <listitem open="0" type="815" id="140" label="unsetGroup" />
</listitem>
<listitem open="1" type="807" id="132" label="HIT Classes" />
</listitem>
/**
* Renders the widget.
*
- * @param HTML_Template_Sigma &$template Template to use to render the widget.
+ * @param HTML_Template_HIT &$template Template to use to render the widget.
*
* @return string
* @access public
*/
function render(&$template) // ~X2C
{
- $template->group = 'album';
+ $template->setGroup('album');
$list = $this->getList();
$tot = count($list);
$rows = ceil($tot / $this->attrs['COLUMNS']);
- $html_rows = '';
for ($row = 0; $row < $rows; $row++) {
- $html_cells = '';
for ($col = 0; $col < $this->attrs['COLUMNS']; $col++) {
$cur = $row * $this->attrs['COLUMNS'] + $col;
if ($photo = @$list[$cur]) {
if (is_null($photo['THUMB'])) {
$photo['THUMB'] = $this->makeThumb($photo['FILE']);
}
- // FIXME - Si no se pudo crear el thumb, devuelve null
- // (ver si se agrega otro template para indicar error
- // o algo asi).
- $photo['URL'] = $this->attrs['LINK-URL'] .
- '?BIFE_ALBUM_FILE=' . urlencode($photo['FILE']);
- if ($this->attrs['LINK-BIFE']) {
- $photo['URL'] .= '&BIFE=' .
- urlencode($this->attrs['LINK-BIFE']);
- }
- $html_cell = $template->parse('item', $photo);
+ /* XXX - Con objetos. *
+ $link =& new BIFE_Link(
+ array(
+ 'BIFE' => $this->attrs['LINK-BIFE'],
+ 'URL' => $this->attrs['LINK-URL'],
+ 'DESC' => $photo['DESC'],
+ 'DATA-BIFE_ALBUM_FILE' => $photo['FILE'],
+ )
+ );
+ $link->addContents($template->parse('item', $photo));
+ $out_cell = $link->render($template);
+ /**/
+ /* XXX - Intermedio, obteniendo el URL de Link. */
+ $photo['URL'] = BIFE_Link::getURL(
+ array(
+ 'BIFE' => $this->attrs['LINK-BIFE'],
+ 'URL' => $this->attrs['LINK-URL'],
+ 'DATA-BIFE_ALBUM_FILE' => $photo['FILE'],
+ )
+ );
+ $cell = $template->parse('item', $photo);
+ /**/
} else {
- $html_cell = $template->parse('empty');
+ $cell = $template->parse('empty');
}
- $html_cells .= $template->parse('cell', 'CONTENTS', $html_cell);
+ $template->parseBuffered('cell', 'CONTENTS', $cell);
}
- $html_rows .= $template->parse('row', 'CONTENTS', $html_cells);
+ $template->parseBuffered('row', 'CONTENTS', $template->popBuffer('cell'));
}
- return $template->parse(
+ $out = $template->parse(
'body',
- array('DESC' => $this->getDescription(), 'CONTENTS' => $html_rows));
+ array('DESC' => $this->getDescription(), 'CONTENTS' => $template->popBuffer('row'))
+ );
+ $template->unsetGroup();
+ return $out;
}
// -X2C
* Group of templates to use (a subdirectory in root).
*
* @var string $group
- * @access public
+ * @access protected
*/
var $group = '';
*/
var $cache = array();
+ /**
+ * @var array $buffer
+ * @access protected
+ */
+ var $buffer = array();
+
// ~X2C
// +X2C Operation 136
*/
function __construct($root = '.', $group = '') // ~X2C
{
- $this->root = $root;
- $this->group = $group;
+ $this->root = $root;
+ $this->setGroup($group);
}
// -X2C
// +X2C Operation 138
/**
- * Parse a template.
+ * Parse a template returning the results.
If $vars is an array, the {[keys]} are replaced with [values] ($val is ignored). If is a string, {$vars} is replaced with $val.
*
* @param string $name Name of template to parse.
* @param mixed $vars Variables to replace in the template.
* @param string $val If $vars is a string, the value to replace for $vars.
*
- * @return void
+ * @return string
* @access public
*/
function parse($name, $vars = '', $val = '') // ~X2C
{
- if ($this->group) {
- $file = "{$this->root}/{$this->group}/$name.tpl.html";
+ $group = end($this->group);
+ if ($group) {
+ $file = "{$this->root}/$group/$name.tpl.html";
} else {
$file = "{$this->root}/$name.tpl.html";
}
}
// -X2C
+ // +X2C Operation 144
+ /**
+ * Parse a template buffering the results.
+Parse a template appending the results to an internal buffer. If $vars is an array, the {[keys]} are replaced with [values] ($val is ignored). If is a string, {$vars} is replaced with $val.
+ *
+ * @param string $name Name of template to parse.
+ * @param mixed $vars Variables to replace in the template.
+ * @param string $val If $vars is a string, the value to replace for $vars.
+ *
+ * @return void
+ * @access public
+ */
+ function parseBuffered($name, $vars = '', $val = '') // ~X2C
+ {
+ @$this->buffer["{$this->group}/$name"] .= $this->parse($name, $vars, $val);
+ }
+ // -X2C
+
+ // +X2C Operation 145
+ /**
+ * Gets a parsed buffer.
+ *
+ * @param string $name Name of the parsed template to get.
+ * @param bool $flush Flush buffer.
+ *
+ * @return string
+ * @access public
+ */
+ function getBuffer($name, $flush = true) // ~X2C
+ {
+ return @$this->buffer["{$this->group}/$name"];
+ }
+ // -X2C
+
+ // +X2C Operation 146
+ /**
+ * Gets a parsed buffer and removes it.
+ *
+ * @param int $name Name of the buffer to flush.
+ *
+ * @return void
+ * @access public
+ */
+ function popBuffer($name = '') // ~X2C
+ {
+ $return = @$this->buffer["{$this->group}/$name"];
+ unset($this->buffer["{$this->group}/$name"]);
+ return $return;
+ }
+ // -X2C
+
+ // +X2C Operation 139
+ /**
+ * Sets the group to use and add it to the groups stack.
+ *
+ * @param string $group Group to use.
+ *
+ * @return void
+ * @access public
+ */
+ function setGroup($group = '') // ~X2C
+ {
+ if ($group) {
+ $this->group[] = $group;
+ } else {
+ $this->group[] = '';
+ }
+ }
+ // -X2C
+
+ // +X2C Operation 140
+ /**
+ * Removes the group from the groups stack and returns to the previous used group.
+ *
+ * @return void
+ * @access public
+ */
+ function unsetGroup() // ~X2C
+ {
+ array_pop($this->group);
+ }
+ // -X2C
+
} // -X2C Class :HIT
-?>
+?>
\ No newline at end of file