array('has_header' => true), 'menu' => array('show_submenus' => false), 'vmenu' => array('show_submenus' => true, 'simple' => false) ); function artxHasMessages() { global $mainframe; $messages = $mainframe->getMessageQueue(); if (is_array($messages) && count($messages)) foreach ($messages as $msg) if (isset($msg['type']) && isset($msg['message'])) return true; return false; } function artxPost($caption, $content) { $hasCaption = (null !== $caption && strlen(trim($caption)) > 0); $hasContent = (null !== $content && strlen(trim($content)) > 0); if (!$hasCaption && !$hasContent) return ''; ob_start(); ?>

'24', 'height' => '32')); ?>

0); $hasContent = (null !== $content && strlen(trim($content)) > 0); if (!$hasCaption && !$hasContent) return ''; ob_start(); ?>
0); $hasContent = (null !== $content && strlen(trim($content)) > 0); if (!$hasCaption && !$hasContent) return ''; ob_start(); ?>
params->def('show_page_title', 1); return $criteria ? ('' . $page->escape($page->params->get($key === null ? 'page_title' : $key)) . '') : ''; } function artxCountModules(&$document, $position) { return $document->countModules($position); } function artxPositions(&$document, $positions, $style) { ob_start(); if (count($positions) == 3) { if (artxCountModules($document, $positions[0]) && artxCountModules($document, $positions[1]) && artxCountModules($document, $positions[2])) { ?>
0 && $rightCnt > 0) return 'content'; if ($rightCnt > 0) return 'content-sidebar1'; if ($leftCnt > 0) return 'content-sidebar2'; return 'content-wide'; } function artxHtmlFixMoveScriptToHead($re, $content) { if (preg_match($re, $content, $matches, PREG_OFFSET_CAPTURE)) { $content = substr($content, 0, $matches[0][1]) . substr($content, $matches[0][1] + strlen($matches[0][0])); $document =& JFactory::getDocument(); $document->addScriptDeclaration($matches[1][0]); } return $content; } function artxHtmlFixRemove($re, $content) { if (preg_match($re, $content, $matches, PREG_OFFSET_CAPTURE)) { $content = substr($content, 0, $matches[0][1]) . substr($content, $matches[0][1] + strlen($matches[0][0])); } return $content; } function artxComponentWrapper(&$document) { if ($document->getType() != 'html') return; $option = JRequest::getCmd('option'); $view = JRequest::getCmd('view'); $layout = JRequest::getCmd('layout'); $content = $document->getBuffer('component'); // fixes for w3.org validation if ('com_contact' == $option) { if ('category' == $view) { $content = artxHtmlFixFormAction($content); } elseif ('contact' == $view) { $content = artxHtmlFixMoveScriptToHead('~~', $content); } } elseif ('com_content' == $option) { if ('category' == $view) { if ('' == $layout) { $content = artxHtmlFixMoveScriptToHead('~~', $content); $content = artxHtmlFixFormAction($content); } } elseif ('archive' == $view) { $content = artxHtmlFixRemove('~~', $content); } } elseif ('com_user' == $option) { if ('user' == $view) { if ('form' == $layout) { $content = artxHtmlFixRemove('~autocomplete="off"~', $content); } } } if (false === strpos($content, '
')) { $title = null; if (preg_match('~]*)>([^<]+)
~', $content, $matches, PREG_OFFSET_CAPTURE)) { $content = substr($content, 0, $matches[0][1]) . substr($content, $matches[0][1] + strlen($matches[0][0])); $title = '' . $matches[3][0] . ''; } $document->setBuffer(artxPost($title, $content), 'component'); } } function artxModules(&$document, $position, $style = null) { return ''; } function artxUrlToHref($url) { $result = ''; $p = parse_url($url); if (isset($p['scheme']) && isset($p['host'])) { $result = $p['scheme'] . '://'; if (isset($p['user'])) { $result .= $p['user']; if (isset($p['pass'])) $result .= ':' . $p['pass']; $result .= '@'; } $result .= $p['host']; if (isset($p['port'])) $result .= ':' . $p['port']; if (!isset($p['path'])) $result .= '/'; } if (isset($p['path'])) $result .= $p['path']; if (isset($p['query'])) { $result .= '?' . str_replace('&', '&', $p['query']); } if (isset($p['fragment'])) $result .= '#' . $p['fragment']; return $result; } function artxReplaceButtonsRegex() { return '' . '~]*' . '(?:' . '[^>]*\bclass=(?:"(?:[^"]*\s)?button(?:\s[^"]*)?"|\'(?:[^\']*\s)?button(?:\s[^\']*)?\'|button\b)[^>]*' . '(?:\bvalue=(?:"[^"]*"|\'[^\']*\'|[^>\s]*))' . '|' . '(?:\bvalue=(?:"[^"]*"|\'[^\']*\'|[^>\s]*))' . '[^>]*\bclass=(?:"(?:[^"]*\s)?button(?:\s[^"]*)?"|\'(?:[^\']*\s)?button(?:\s[^\']*)?\'|button\b)[^>]*' . '|' . '[^>]*\bclass=(?:"(?:[^"]*\s)?button(?:\s[^"]*)?"|\'(?:[^\']*\s)?button(?:\s[^\']*)?\'|button\b)[^>]*' . ')' . '[^>]*/?\s*>~i'; } function artxReplaceButtons($content) { $re = artxReplaceButtonsRegex(); if (!preg_match_all($re, $content, $matches, PREG_OFFSET_CAPTURE)) return $content; $result = ''; $position = 0; foreach ($matches[0] as $match) { $result .= substr($content, $position, $match[1] - $position); $position = $match[1] + strlen($match[0]); $result .= ' ' . preg_replace('~\bclass=(?:"([^"]*\s)?button(\s[^"]*)?"|\'([^\']*\s)?button(\s[^\']*)?\'|button\b)~i', 'class="\1\3button art-button\2\4"', $match[0]) . ''; } $result .= substr($content, $position); return $result; } function artxHtmlFixFormAction($content) { if (preg_match('~ action="([^"]+)" ~', $content, $matches, PREG_OFFSET_CAPTURE)) { $content = substr($content, 0, $matches[0][1]) . ' action="' . artxUrlToHref($matches[1][0]) . '" ' . substr($content, $matches[0][1] + strlen($matches[0][0])); } return $content; } $artxFragments = array(); function artxFragmentBegin($head = '') { global $artxFragments; $artxFragments[] = array('head' => $head, 'content' => '', 'tail' => ''); } function artxFragmentContent($content = '') { global $artxFragments; $artxFragments[count($artxFragments) - 1]['content'] = $content; } function artxFragmentEnd($tail = '', $separator = '') { global $artxFragments; $fragment = array_pop($artxFragments); $fragment['tail'] = $tail; $content = trim($fragment['content']); if (count($artxFragments) == 0) { echo (trim($content) == '') ? '' : ($fragment['head'] . $content . $fragment['tail']); } else { $result = (trim($content) == '') ? '' : ($fragment['head'] . $content . $fragment['tail']); $fragment =& $artxFragments[count($artxFragments) - 1]; $fragment['content'] .= (trim($fragment['content']) == '' ? '' : $separator) . $result; } } function artxFragment($head = '', $content = '', $tail = '', $separator = '') { global $artxFragments; if ($head != '' && $content == '' && $tail == '' && $separator == '') { $content = $head; $head = ''; } elseif ($head != '' && $content != '' && $tail == '' && $separator == '') { $separator = $content; $content = $head; $head = ''; } artxFragmentBegin($head); artxFragmentContent($content); artxFragmentEnd($tail, $separator); } }