<?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->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', 'database'); $Page->setTitle(__('%1$s – %2$s', array(__('Symphony'), __('Database Error')))); $div = new XMLElement('div', NULL, array('id' => 'description')); $div->appendChild(new XMLElement('h1', __('Symphony Database Error'))); $div->appendChild(new XMLElement('p', $additional['message'])); $div->appendChild(new XMLElement('p', '<code>' . $additional['error']['num'] . ': ' . $additional['error']['msg'] . '</code>')); if (!empty($error['query'])) { $div->appendChild(new XMLElement('p', '<code>' . $additional['error']['query'] . '</code>')); } $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->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', '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) = $additional['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->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($e->getAdditional()->header)) { $Page->addHeaderToPage($e->getAdditional()->header); } $Page->setTitle(__('%1$s – %2$s', array(__('Symphony'), $e->getHeading()))); $div = new XMLElement('div', NULL, array('id' => 'description')); $div->appendChild(new XMLElement('h1', $e->getHeading())); $div->appendChild($e->getMessageObject() instanceof XMLElement ? $e->getMessageObject() : new XMLElement('p', trim($e->getMessage()))); $Page->Body->appendChild($div); $output = $Page->generate(); header(sprintf('Content-Length: %d', strlen($output))); echo $output; exit;