Commit 845a0fd1 authored by Carsten  Rose's avatar Carsten Rose
Browse files

Exceptions*: Namespace changed to 'qfq'. Implemented AbstractException.

parent da850387
...@@ -9,7 +9,7 @@ namespace qfq; ...@@ -9,7 +9,7 @@ namespace qfq;
use qfq; use qfq;
use qfq\Store; use qfq\Store;
use qfq\exceptions\UserException; use qfq\UserException;
use qfq\OnArray; use qfq\OnArray;
require_once(__DIR__ . '/../qfq/store/Store.php'); require_once(__DIR__ . '/../qfq/store/Store.php');
...@@ -96,8 +96,8 @@ abstract class AbstractBuildForm { ...@@ -96,8 +96,8 @@ abstract class AbstractBuildForm {
/** /**
* @return string The whole form as HTML * @return string The whole form as HTML
* @throws exceptions\CodeException * @throws CodeException
* @throws exceptions\DbException * @throws DbException
*/ */
public function process() { public function process() {
...@@ -134,8 +134,8 @@ abstract class AbstractBuildForm { ...@@ -134,8 +134,8 @@ abstract class AbstractBuildForm {
* @param $recordId * @param $recordId
* @param string $filter FORM_ELEMENTS_NATIVE | FORM_ELEMENTS_SUBRECORD | FORM_ELEMENTS_NATIVE_SUBRECORD * @param string $filter FORM_ELEMENTS_NATIVE | FORM_ELEMENTS_SUBRECORD | FORM_ELEMENTS_NATIVE_SUBRECORD
* @return string * @return string
* @throws exceptions\CodeException * @throws CodeException
* @throws exceptions\DbException * @throws DbException
*/ */
public function elements($recordId, $filter = FORM_ELEMENTS_NATIVE, $feIdContainer = 0) { public function elements($recordId, $filter = FORM_ELEMENTS_NATIVE, $feIdContainer = 0) {
$html = ''; $html = '';
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
namespace qfq; namespace qfq;
use qfq; use qfq;
use qfq\exceptions\UserException; use qfq\UserException;
require_once(__DIR__ . '/../qfq/Constants.php'); require_once(__DIR__ . '/../qfq/Constants.php');
require_once(__DIR__ . '/../qfq/helper/OnArray.php'); require_once(__DIR__ . '/../qfq/helper/OnArray.php');
......
...@@ -155,6 +155,7 @@ const CLIENT_PHP_SELF = 'PHP_SELF'; ...@@ -155,6 +155,7 @@ const CLIENT_PHP_SELF = 'PHP_SELF';
const TYPO3_FORM = CLIENT_FORM; const TYPO3_FORM = CLIENT_FORM;
const TYPO3_DEBUG_LOAD = 'debugLoad'; const TYPO3_DEBUG_LOAD = 'debugLoad';
const TYPO3_DEBUG_SAVE = 'debugSave'; const TYPO3_DEBUG_SAVE = 'debugSave';
const TYPO3_DEBUG_SHOW_STACK = 'debugShowStack';
const TYPO3_FE_USER = 'feUser'; const TYPO3_FE_USER = 'feUser';
const TYPO3_FE_USER_UID = 'feUserUid'; const TYPO3_FE_USER_UID = 'feUserUid';
const TYPO3_FE_USER_GROUP = 'feUserGroup'; const TYPO3_FE_USER_GROUP = 'feUserGroup';
......
...@@ -10,9 +10,9 @@ namespace qfq; ...@@ -10,9 +10,9 @@ namespace qfq;
use qfq; use qfq;
use qfq\Store; use qfq\Store;
use qfq\exceptions\CodeException; use qfq\CodeException;
use qfq\exceptions\UserException; use qfq\UserException;
use qfq\exceptions\DbException; use qfq\DbException;
require_once(__DIR__ . '/../qfq/exceptions/UserException.php'); require_once(__DIR__ . '/../qfq/exceptions/UserException.php');
...@@ -97,7 +97,7 @@ class Database { ...@@ -97,7 +97,7 @@ class Database {
* @param string $table name of the table * @param string $table name of the table
* @param string $columnName name of the column * @param string $columnName name of the column
* *
* @throws exceptions\UserException if the table or column does not exist, or is not of type ENUM or SET * @throws UserException if the table or column does not exist, or is not of type ENUM or SET
* @return array * @return array
*/ */
public function getEnumSetValueList($table, $columnName) { public function getEnumSetValueList($table, $columnName) {
...@@ -135,7 +135,7 @@ class Database { ...@@ -135,7 +135,7 @@ class Database {
* *
* @return array the definition of the column as retrieved by Database::getTableDefinition(). * @return array the definition of the column as retrieved by Database::getTableDefinition().
* *
* @throws exceptions\UserException * @throws UserException
* *
*/ */
private function getFieldDefinitionFromTable($table, $columnName) { private function getFieldDefinitionFromTable($table, $columnName) {
......
...@@ -65,12 +65,12 @@ class Evaluate { ...@@ -65,12 +65,12 @@ class Evaluate {
* @param $line * @param $line
* @param int $recursion * @param int $recursion
* @return array|mixed|null|string * @return array|mixed|null|string
* @throws exceptions\UserException * @throws UserException
*/ */
public function parse($line, $recursion = 0) { public function parse($line, $recursion = 0) {
if ($recursion > 4) { if ($recursion > 4) {
throw new qfq\exceptions\UserException("Recursion too deep: $line", ERROR_RECURSION_TOO_DEEP); throw new qfq\UserException("Recursion too deep: $line", ERROR_RECURSION_TOO_DEEP);
} }
$posFirstClose = strpos($line, $this->endDelimiter); $posFirstClose = strpos($line, $this->endDelimiter);
...@@ -81,7 +81,7 @@ class Evaluate { ...@@ -81,7 +81,7 @@ class Evaluate {
$posMatchOpen = strrpos(substr($line, 0, $posFirstClose), $this->startDelimiter); $posMatchOpen = strrpos(substr($line, 0, $posFirstClose), $this->startDelimiter);
if ($posMatchOpen === false) { if ($posMatchOpen === false) {
throw new \qfq\exceptions\UserException("Missing open delimiter: $line", ERROR_MISSING_OPEN_DELIMITER); throw new \qfq\UserException("Missing open delimiter: $line", ERROR_MISSING_OPEN_DELIMITER);
} }
$pre = substr($line, 0, $posMatchOpen); $pre = substr($line, 0, $posMatchOpen);
...@@ -119,7 +119,7 @@ class Evaluate { ...@@ -119,7 +119,7 @@ class Evaluate {
* *
* @param $token * @param $token
* @return array|mixed|null|string * @return array|mixed|null|string
* @throws exceptions\DbException * @throws DbException
*/ */
public function substitute($token) { public function substitute($token) {
$sqlMode = ROW_IMPLODE_ALL; $sqlMode = ROW_IMPLODE_ALL;
......
...@@ -13,9 +13,9 @@ use qfq; ...@@ -13,9 +13,9 @@ use qfq;
use qfq\BuildFormPlain; use qfq\BuildFormPlain;
use qfq\BuildFormTable; use qfq\BuildFormTable;
use qfq\BuildFormBootstrap; use qfq\BuildFormBootstrap;
use qfq\exceptions\UserException; use qfq\UserException;
use qfq\exceptions\CodeException; use qfq\CodeException;
use qfq\exceptions\DbException; use qfq\DbException;
//use qfq\helper; //use qfq\helper;
use qfq\Store; use qfq\Store;
...@@ -199,7 +199,7 @@ class Form { ...@@ -199,7 +199,7 @@ class Form {
/** /**
* @return string * @return string
* @throws UserException * @throws UserException
* @throws exceptions\CodeException * @throws CodeException
*/ */
private function getFormName() { private function getFormName() {
......
<?php
/**
* Created by PhpStorm.
* User: crose
* Date: 1/29/16
* Time: 8:03 AM
*/
namespace qfq;
class AbstractException extends \Exception {
public $messageArray = array();
public $store;
/**
* Constructor
*
* @param string $message
* @param int $code
* @param \Exception $previous
*/
public function __construct($message = '', $code = 0, \Exception $previous = null) {
$this->store = \qfq\Store::getInstance('');
parent::__construct($message, $code, $previous);
}
/**
* @return string
*/
public function formatException() {
$this->messageArray['File'] = $this->getFile();
$this->messageArray['Line'] = $this->getLine();
$this->messageArray['Message'] = $this->getMessage();
$this->messageArray['Code'] = $this->getCode();
if ($this->store->getVar('debugShowStack', STORE_TYPO3) === '1') {
$this->messageArray['Stacktrace'] = '<pre>' . $this->getTraceAsString() . '</pre>';
}
// Layout
$html = '<tr bgcolor="#dddddd"><td colspan="2">Exception</td></tr>';
foreach ($this->messageArray as $key => $value) {
$html .= "<tr>" . "<td>$key</td>" . "<td>$value</td>" . "</tr>";
}
return "<table border=1>" . $html . "</table>";
}
}
\ No newline at end of file
...@@ -6,9 +6,9 @@ ...@@ -6,9 +6,9 @@
* Time: 12:43 PM * Time: 12:43 PM
*/ */
namespace qfq\exceptions; namespace qfq;
use qfq\Store; require_once(__DIR__ . '/AbstractException.php');
/** /**
* Class UserException * Class UserException
...@@ -17,23 +17,15 @@ use qfq\Store; ...@@ -17,23 +17,15 @@ use qfq\Store;
* *
* @package qfq\exceptions * @package qfq\exceptions
*/ */
class CodeException extends AbstractException {
class CodeException extends \Exception {
/* /*
* @return string HTML formatted error string * @return string HTML formatted error string
*/ */
public function formatMessage() { public function formatMessage() {
$message = '<table border="1">';
$message .= '<tr bgcolor="#dddddd"><td>Action</td><td>Code Exception</td></tr>' ;
$message .= '<tr bgcolor="#dddddd"><td>File</td><td>'. $this->getFile(). '</td></tr>' ;
$message .= '<tr bgcolor="#dddddd"><td>Line</td><td>'. $this->getLine(). '</td></tr>' ;
$message .= '<tr bgcolor="#dddddd"><td>Message</td><td>'. $this->getMessage(). '</td></tr>' ;
$message .= '<tr bgcolor="#dddddd"><td>Code</td><td>'. $this->getCode(). '</td></tr>' ;
$message .= '<tr bgcolor="#dddddd"><td>Stacktrace</td><td>'. str_replace("\n", "<br>", $this->getTraceAsString()). '</td></tr>' ;
$message .= '</table>';
$this->messageArray['Type'] = 'Code Exception';
return($message); return parent::formatException();
} }
} }
\ No newline at end of file
...@@ -7,12 +7,9 @@ ...@@ -7,12 +7,9 @@
*/ */
namespace qfq\exceptions; namespace qfq;
use qfq\Store; require_once(__DIR__ . '/AbstractException.php');
require_once(__DIR__ . '/../../qfq/store/Store.php');
require_once(__DIR__ . '/../../qfq/Constants.php');
/** /**
* Class UserException * Class UserException
...@@ -21,26 +18,22 @@ require_once(__DIR__ . '/../../qfq/Constants.php'); ...@@ -21,26 +18,22 @@ require_once(__DIR__ . '/../../qfq/Constants.php');
* *
* @package qfq\exceptions * @package qfq\exceptions
*/ */
class DbException extends \Exception { class DbException extends AbstractException {
/* /*
* @return string HTML formatted error string * @return string HTML formatted error string
*/ */
public function formatMessage() { public function formatMessage() {
$store = Store::getInstance('');
$this->messageArray['Type'] = 'Db Exception';
$message = '<table border=1><tr><th>DB Exception</th></tr>' . $this->messageArray['Form'] = $this->store->getVar(SYSTEM_FORM, STORE_SYSTEM);
'<tr><td>Message</td><td><b>' . $this->getMessage() . '</b></td></tr>' . $this->messageArray['Form Element'] = $this->store->getVar(SYSTEM_FORM_ELEMENT, STORE_SYSTEM);
'<tr><td>Code</td><td><b>' . $this->getCode() . '</b></td></tr>' . $this->messageArray['Form Element Column'] = $this->store->getVar(SYSTEM_FORM_ELEMENT_COLUMN, STORE_SYSTEM);
'<tr><td>Form</td><td>' . $store->getVar(SYSTEM_FORM, STORE_SYSTEM) . '</td></tr>' . $this->messageArray['SQL before evaluation'] = $this->store->getVar(SYSTEM_SQL_RAW, STORE_SYSTEM);
'<tr><td>Form Element</td><td>' . $store->getVar(SYSTEM_FORM_ELEMENT, STORE_SYSTEM) . '</td></tr>' . $this->messageArray['SQL after evaluation'] = $this->store->getVar(SYSTEM_SQL_FINAL, STORE_SYSTEM);
'<tr><td>Form Element Column</td><td>' . $store->getVar(SYSTEM_FORM_ELEMENT_COLUMN, STORE_SYSTEM) . '</td></tr>' . $this->messageArray['SQL Params'] = $this->store->getVar(SYSTEM_SQL_PARAM_ARRAY, STORE_SYSTEM);
'<tr><td>SQL before evaluation</td><td>' . $store->getVar(SYSTEM_SQL_RAW, STORE_SYSTEM) . '</td></tr>' .
'<tr><td>SQL after evaluation</td><td>' . $store->getVar(SYSTEM_SQL_FINAL, STORE_SYSTEM) . '</td></tr>' . return parent::formatException();
'<tr><td>SQL Params</td><td>' . str_replace("\n", "<br>", print_r($store->getVar(SYSTEM_SQL_PARAM_ARRAY, STORE_SYSTEM), true)) . '</td></tr>' .
'<tr bgcolor="#dddddd"><td>Stacktrace</td><td>'. str_replace("\n", "<br>", $this->getTraceAsString()). '</td></tr>' .
'</table>';
return ($message);
} }
} }
...@@ -7,12 +7,9 @@ ...@@ -7,12 +7,9 @@
*/ */
namespace qfq\exceptions; namespace qfq;
use qfq\Store; require_once(__DIR__ . '/AbstractException.php');
require_once(__DIR__ . '/../../qfq/store/Store.php');
require_once(__DIR__ . '/../../qfq/Constants.php');
/** /**
* Class UserException * Class UserException
...@@ -21,24 +18,18 @@ require_once(__DIR__ . '/../../qfq/Constants.php'); ...@@ -21,24 +18,18 @@ require_once(__DIR__ . '/../../qfq/Constants.php');
* *
* @package qfq\exceptions * @package qfq\exceptions
*/ */
class UserException extends AbstractException {
class UserException extends \Exception {
/* /*
* @return string HTML formatted error string * @return string HTML formatted error string
*/ */
public function formatMessage() { public function formatMessage() {
$store = \qfq\Store::getInstance('');
$message = '<table border=1><tr><th>User Exception</th></tr>' . $this->messageArray['Type'] = 'User Exception';
'<tr><td>Message</td><td><b>' . $this->getMessage() . '</b></td></tr>' . $this->messageArray['Form'] = $this->store->getVar(SYSTEM_FORM, STORE_SYSTEM);
'<tr><td>Code</td><td><b>' . $this->getCode() . '</b></td></tr>' . $this->messageArray['Form Element'] = $this->store->getVar(SYSTEM_FORM_ELEMENT, STORE_SYSTEM);
'<tr><td>Form</td><td>' . $store->getVar(SYSTEM_FORM, STORE_SYSTEM) . '</td></tr>' . $this->messageArray['Form Element Column'] = $this->store->getVar(SYSTEM_FORM_ELEMENT_COLUMN, STORE_SYSTEM);
'<tr><td>Form Element</td><td>' . $store->getVar(SYSTEM_FORM_ELEMENT, STORE_SYSTEM) . '</td></tr>' .
'<tr><td>Form Element Column</td><td>' . $store->getVar(SYSTEM_FORM_ELEMENT_COLUMN, STORE_SYSTEM) . '</td></tr>' .
'<tr bgcolor="#dddddd"><td>Stacktrace</td><td>'. str_replace("\n", "<br>", $this->getTraceAsString()). '</td></tr>' .
'</table>';
return ($message); return parent::formatException();
} }
} }
...@@ -10,7 +10,7 @@ namespace qfq; ...@@ -10,7 +10,7 @@ namespace qfq;
use qfq; use qfq;
use qfq\Store; use qfq\Store;
use qfq\exceptions\UserException; use qfq\UserException;
require_once(__DIR__ . '/../../qfq/store/Store.php'); require_once(__DIR__ . '/../../qfq/store/Store.php');
require_once(__DIR__ . '/../../qfq/Constants.php'); require_once(__DIR__ . '/../../qfq/Constants.php');
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
namespace qfq; namespace qfq;
use qfq; use qfq;
use qfq\exceptions\UserException; use qfq\UserException;
require_once(__DIR__ . '/../exceptions/UserException.php'); require_once(__DIR__ . '/../exceptions/UserException.php');
require_once(__DIR__ . '/../../qfq/Constants.php'); require_once(__DIR__ . '/../../qfq/Constants.php');
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
namespace qfq; namespace qfq;
use qfq; use qfq;
use qfq\exceptions\CodeException; use qfq\CodeException;
require_once(__DIR__ . '/../../qfq/Constants.php'); require_once(__DIR__ . '/../../qfq/Constants.php');
......
...@@ -14,7 +14,7 @@ class Support { ...@@ -14,7 +14,7 @@ class Support {
/** /**
* @return string If exist content of $_GET[], otherwise the name of the first GET Parameter * @return string If exist content of $_GET[], otherwise the name of the first GET Parameter
* @throws exceptions\CodeException * @throws CodeException
*/ */
public static function getCurrentPage() { public static function getCurrentPage() {
if (isset($_GET['id'])) { if (isset($_GET['id'])) {
......
...@@ -8,8 +8,8 @@ ...@@ -8,8 +8,8 @@
namespace qfq; namespace qfq;
use qfq\exceptions\CodeException; use qfq\CodeException;
use qfq\exceptions\UserException; use qfq\UserException;
use qfq\OnArray; use qfq\OnArray;
use qfq\KeyValueStringParser; use qfq\KeyValueStringParser;
...@@ -206,7 +206,7 @@ class Sip { ...@@ -206,7 +206,7 @@ class Sip {
* @param $s * @param $s
* @return array Parameter Array * @return array Parameter Array
* @throws UserException * @throws UserException
* @throws \qfq\exceptions\UserException * @throws \qfq\UserException
*/ */
public function getVarsFromSip($s) { public function getVarsFromSip($s) {
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
namespace qfq; namespace qfq;
use qfq\exceptions\CodeException; use qfq\CodeException;
use qfq\keyValueStringParser; use qfq\keyValueStringParser;
use qfq\OnArray; use qfq\OnArray;
use qfq; use qfq;
...@@ -152,13 +152,13 @@ class Store { ...@@ -152,13 +152,13 @@ class Store {
/** /**
* @throws CodeException * @throws CodeException
* @throws qfq\exceptions\UserException * @throws qfq\UserException
*/ */
private function fillSystemStore() { private function fillSystemStore() {
try { try {
$config = parse_ini_file(QFQ_INI, false); $config = parse_ini_file(QFQ_INI, false);
} catch (\Exception $e) { } catch (\Exception $e) {
throw new qfq\exceptions\UserException ("Error read file " . QFQ_INI . ": " . $e->getMessage(), ERROR_READ_FILE); throw new qfq\UserException ("Error read file " . QFQ_INI . ": " . $e->getMessage(), ERROR_READ_FILE);
} }
self::setVarArray($config, STORE_SYSTEM); self::setVarArray($config, STORE_SYSTEM);
} }
...@@ -220,7 +220,7 @@ class Store { ...@@ -220,7 +220,7 @@ class Store {
/** /**
* @throws CodeException * @throws CodeException
* @throws exceptions\UserException * @throws UserException
*/ */
private function fillStoreSip() { private function fillStoreSip() {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment