if ($this->countModules('mobile1')) { ?> <div id="mobile1" class="clearfix mobilepad"><jdoc:include type="modules" name="mobile1" style="xtc" /></div> <?php } if ($this->countModules('mobile2')) { ?> <div id="mobile2" class="clearfix mobilepad"><jdoc:include type="modules" name="mobile2" style="xtc" /></div> <?php } if ($this->countModules('mobile3')) { ?> <div id="mobile3" class="clearfix mobilepad"><jdoc:include type="modules" name="mobile3" style="xtc" /></div> <?php } if (xtcCanShowComponent()) { echo '<div id="region3" class="mobilepad"><div id="component" class="mobilecomponent clearfix"><jdoc:include type="component" /></div></div>'; } if ($this->countModules('mobile4')) { ?> <div id="mobile4" class="clearfix mobilepad"><jdoc:include type="modules" name="mobile4" style="xtc" /></div> <?php } ?> </div> <?php if ($this->countModules('mobilefooter')) { ?> <div id="footerwrap"> <div id="footerpad" class="clearfix"><jdoc:include type="modules" name="mobilefooter" style="xtc" /></div> </div>
function _xtcJdocRender(&$doc, $includeCalls, &$total) { // Resolves jdoc calls in a string/array $matches = array(); if (!is_array($includeCalls)) { $includeCalls = array($includeCalls); } $idx = 0; $output = ''; foreach ($includeCalls as $includeCall) { $jdocs = preg_match_all('/<jdoc:include\\ type="([^"]+)" (.*)\\/>/iU', $includeCall, $matches); $count = count($matches[1]); $jdocsCount = 0; for ($i = 0; $i < $count; $i++) { $attribs = JUtility::parseAttributes($matches[2][$i]); $type = $matches[1][$i]; $name = isset($attribs['name']) ? $attribs['name'] : null; $jdocCall = $matches[0][$i]; switch ($type) { case 'component': $buffer = xtcCanShowComponent() ? $doc->getBuffer($type, $name, $attribs) : ''; if ($idx == 0 && $total == 1) { $class = 'singlearea'; } elseif ($idx == 0 && $total > 1) { $class = 'firstarea'; } elseif ($idx == $total - 1) { $class = 'lastarea'; } else { $class = 'centerarea'; } if ($buffer) { $buffer = '<div class="' . $class . '">' . $buffer . '</div>'; $idx++; $jdocsCount++; } break; case 'message': $buffer = $doc->getBuffer($type, $name, $attribs); if ($idx == 0 && $total == 1) { $class = 'singlearea'; } elseif ($idx == 0 && $total > 1) { $class = 'firstarea'; } elseif ($idx == $total - 1) { $class = 'lastarea'; } else { $class = 'centerarea'; } if ($buffer) { $buffer = '<div class="' . $class . '">' . $buffer . '</div>'; $idx++; $jdocsCount++; } break; default: // modules $buffer = ''; $modules = JModuleHelper::getModules($name); foreach ($modules as $mod) { if ($mod->position != $name) { continue; } $temp = xtcRenderModule($mod, $attribs); if ($idx == 0 && $total == 1) { $class = 'singlearea'; } elseif ($idx == 0 && $total > 1) { $class = 'firstarea'; } elseif ($idx == $total - 1) { $class = 'lastarea'; } else { $class = 'centerarea'; } if ($temp) { $buffer .= '<div class="' . $class . '">' . $temp . '</div>'; $idx++; $jdocsCount++; } } break; } $includeCall = str_replace($jdocCall, $buffer, $includeCall); } if ($jdocsCount) { $output .= $includeCall; } } return $output; }