<?php include_once TOOLKIT . '/class.htmlpage.php'; $Page = new HTMLPage(); $Page->Html->setElementStyle('html'); $Page->Html->setDTD('<!DOCTYPE html>'); $Page->Html->setAttribute('xml:lang', 'en'); $Page->addElementToHead(new XMLElement('meta', NULL, array('http-equiv' => 'Content-Type', 'content' => 'text/html; charset=UTF-8')), 0); $Page->addStylesheetToHead(SYMPHONY_URL . '/assets/basic.css', 'screen', 30); $Page->addStylesheetToHead(SYMPHONY_URL . '/assets/error.css', 'screen', 30); $Page->addHeaderToPage('HTTP/1.0 500 Server Error'); $Page->addHeaderToPage('Content-Type', 'text/html; charset=UTF-8'); $Page->addHeaderToPage('Symphony-Error-Type', 'xslt'); $Page->setTitle(__('%1$s – %2$s', array(__('Symphony'), __('XSLT Processing Error')))); $div = new XMLElement('div', NULL, array('id' => 'description')); $div->appendChild(new XMLElement('h1', __('XSLT Processing Error'))); $div->appendChild(new XMLElement('p', __('This page could not be rendered due to the following XSLT processing errors.'))); $Page->Body->appendChild($div); $ul = new XMLElement('ul', NULL, array('id' => 'details')); $errors_grouped = array(); list($key, $val) = $e->getAdditional()->proc->getError(false, true); do { if (preg_match('/^loadXML\\(\\)/i', $val['message']) && preg_match_all('/line:\\s+(\\d+)/i', $val['message'], $matches)) { $errors_grouped['xml'][] = array('line' => $matches[1][0], 'raw' => $val); } elseif (preg_match_all('/pages\\/([^.\\/]+\\.xsl)\\s+line\\s+(\\d+)/i', $val['message'], $matches)) { $errors_grouped['page'][$matches[1][0]][] = array('line' => $matches[2][0], 'raw' => $val); } elseif (preg_match_all('/utilities\\/([^.\\/]+\\.xsl)\\s+line\\s+(\\d+)/i', $val['message'], $matches)) { $errors_grouped['utility'][$matches[1][0]][] = array('line' => $matches[2][0], 'raw' => $val); } else { $errors_grouped['general'][] = $val; }
<?php include_once TOOLKIT . '/class.htmlpage.php'; $Page = new HTMLPage(); $Page->Html->setElementStyle('html'); $Page->Html->setDTD('<!DOCTYPE html>'); $Page->Html->setAttribute('xml:lang', 'en'); $Page->addElementToHead(new XMLElement('meta', NULL, array('http-equiv' => 'Content-Type', 'content' => 'text/html; charset=UTF-8')), 0); $Page->addElementToHead(new XMLElement('link', NULL, array('rel' => 'icon', 'href' => URL . '/symphony/assets/images/bookmark.png', 'type' => 'image/png')), 20); $Page->addStylesheetToHead(URL . '/symphony/assets/error.css', 'screen', 30); $Page->addElementToHead(new XMLElement('!--[if IE]><link rel="stylesheet" href="' . URL . '/symphony/assets/legacy.css" type="text/css"><![endif]--'), 40); $Page->addHeaderToPage('Content-Type', 'text/html; charset=UTF-8'); $Page->addHeaderToPage('Symphony-Error-Type', 'generic'); if (isset($additional['header'])) { $Page->addHeaderToPage($additional['header']); } $Page->setTitle(__('%1$s – %2$s', array(__('Symphony'), $heading))); $div = new XMLElement('div', NULL, array('id' => 'description')); $div->appendChild(new XMLElement('h1', $heading)); $div->appendChild(is_object($errstr) ? $errstr : new XMLElement('p', trim($errstr))); $Page->Body->appendChild($div); print $Page->generate(); exit;
<?php include_once TOOLKIT . '/class.htmlpage.php'; $Page = new HTMLPage(); $Page->Html->setElementStyle('html'); $Page->Html->setDTD('<!DOCTYPE html>'); $Page->Html->setAttribute('xml:lang', 'en'); $Page->addElementToHead(new XMLElement('meta', NULL, array('http-equiv' => 'Content-Type', 'content' => 'text/html; charset=UTF-8')), 0); $Page->addElementToHead(new XMLElement('link', NULL, array('rel' => 'icon', 'href' => URL . '/symphony/assets/images/bookmark.png', 'type' => 'image/png')), 20); $Page->addStylesheetToHead(URL . '/symphony/assets/error.css', 'screen', 30); $Page->addHeaderToPage('HTTP/1.0 500 Server Error'); $Page->addHeaderToPage('Content-Type', 'text/html; charset=UTF-8'); $Page->addHeaderToPage('Symphony-Error-Type', 'generic'); if (isset($additional['header'])) { $Page->addHeaderToPage($additional['header']); } $Page->setTitle(__('%1$s – %2$s', array(__('Symphony'), $heading))); $div = new XMLElement('div', NULL, array('id' => 'description')); $div->appendChild(new XMLElement('h1', $heading)); $div->appendChild(is_object($errstr) ? $errstr : new XMLElement('p', trim($errstr))); $Page->Body->appendChild($div); print $Page->generate(); exit;