cleaned project, repaired router

This commit is contained in:
Logsol 2013-07-08 22:52:36 +02:00
parent 2156d3f5c6
commit bffe0f1660
16 changed files with 1172 additions and 1440 deletions

View file

@ -1,51 +1,40 @@
<?php <?php
/** class Katharsis_Autoload
* Autoloader {
* Loads class files automatically when they are needed. protected static $_classLocations = array(
* 'library',
* @author Karl Pannek <info@katharsis.in> 'application/controller',
* @version 0.5.2 'application/model'
* @package Katharsis );
*/
class Katharsis_Autoload public static function init()
{ {
/** spl_autoload_register('Katharsis_Autoload::autoload');
* @var array }
*/
protected static $_classLocations = array( public static function autoload($classname)
'library', {
'application/controller', if($location = self::findClass($classname))
'application/model' {
); require_once $location;
return;
/** }
* Registering autoload method
* throw new exception('Autoload: could not load class "' . $classname . '"');
* @return void }
*/
public static function init() public static function findClass($classname)
{ {
spl_autoload_register('Katharsis_Autoload::autoload'); $name = str_replace("_", DIRECTORY_SEPARATOR, $classname);
}
foreach(self::$_classLocations as $location)
/** {
* Actual autoload method. Loads class files automatically when they are needed if(file_exists($location . DIRECTORY_SEPARATOR . $name . ".php"))
* {
* @return void return $location . DIRECTORY_SEPARATOR . $name . ".php";
*/ }
public static function autoload($classname) }
{ return false;
$name = str_replace("_", DIRECTORY_SEPARATOR, $classname); }
}
foreach(self::$_classLocations as $location) ?>
{
if(file_exists($location . DIRECTORY_SEPARATOR . $name . ".php"))
{
require_once $location . DIRECTORY_SEPARATOR . $name . ".php";
return;
}
}
die('Autoload: could not load class "' . $classname . '"');
}
}

View file

@ -1,29 +1,23 @@
<?php require_once('library/Katharsis/Autoload.php'); <?php
/** require_once('library/Katharsis/Autoload.php');
* Bootstrap Class
* Central application routing entity class Katharsis_Bootstrap
* {
* @author Karl Pannek <info@katharsis.in> public static function init()
* @version 0.5.2 {
* @package Katharsis $router = Katharsis_ControllerRouting::getInstance();
*/ $router->init();
class Katharsis_Bootstrap }
{
/** public static function run()
* Central application routing method {
* $router = Katharsis_ControllerRouting::getInstance();
* @return void
*/ Katharsis_Controller_Plugin::preControllerHook();
public static function run()
{ $router->route();
$router = Katharsis_ControllerRouting::getInstance();
Katharsis_Controller_Plugin::postControllerHook();
$router->init(); }
}
Katharsis_Controller_Plugin::preControllerHook(); ?>
$router->route();
Katharsis_Controller_Plugin::postControllerHook();
}
}

View file

@ -1,105 +1,57 @@
<?php <?php
/** abstract class Katharsis_Controller_Abstract
* Abstract Controller {
* All controllers must extend this class. protected $_con;
* protected $_view;
* @author Karl Pannek <info@katharsis.in>
* @version 0.5.2 public final function __construct()
* @package Katharsis {
*/ $this->_con = Katharsis_DatabaseConnector::getConnection();
abstract class Katharsis_Controller_Abstract $this->_view = Katharsis_View::getInstance();
{ $this->init();
/** }
* @var Katharsis_Db5
*/ public function init()
protected $_con; {
}
/**
* @var Katharsis_View public function __call($action, $params)
*/ {
protected $_view; throw new Katharsis_Exception('Die von Ihnen angeforderte Seite (Action) "' . substr($action, 0, -6) . '" konnte nicht gefunden werden.');
}
/**
* Instances class attributes, calles init method protected function _getParam($key)
* {
* @return void $params = Katharsis_Request::getParams();
*/ if(array_key_exists($key,$params))
public final function __construct() {
{ return $params[$key];
$this->_con = Katharsis_DatabaseConnector::getConnection(); }
$this->_view = Katharsis_View::getInstance(); return null;
$this->init(); }
}
protected function _getAllParams()
/** {
* Overwrite this method instead of using a constructor return Katharsis_Request::getParams();
* }
* @return void
*/ protected function _location($action, $controller = null, $getParams = null)
public function init() {
{ if($controller === null)
} {
$controller = Katharsis_Request::getControllerName();
/** }
* If subclass hasn't got a __call method, this exception will be thrown
* $paramstring = "";
* @return void if($getParams !== null)
*/ {
public function __call($action, $params) foreach($getParams as $key => $value)
{ {
throw new Katharsis_Exception('Action "' . $action . '" doesn\'t exist.'); $paramstring .= "/" . (string) $key . "/" . (string) $value;
} }
}
/**
* Returns a specific request parameter header("location: " . $this->_view->base . "/" . $controller . "/" . $action . $paramstring);
* }
* @param string $key }
* @return mixed ?>
*/
protected function _getParam($key)
{
$params = Katharsis_Request::getParams();
if(array_key_exists($key,$params))
{
return $params[$key];
}
return null;
}
/**
* Returns all request parameters
*
* @return array
*/
protected function _getAllParams()
{
return Katharsis_Request::getParams();
}
/**
* Forward to an other action
*
* @param string $action
* @param string $controller
* @param array $getParams
* @return void
*/
protected function _location($action, $controller = null, $getParams = null)
{
if($controller === null)
{
$controller = Katharsis_Request::getControllerName();
}
$paramstring = "";
if($getParams !== null)
{
foreach($getParams as $key => $value)
{
$paramstring .= "/" . (string) $key . "/" . (string) $value;
}
}
header("location: " . $this->_view->base . "/" . $controller . "/" . $action . $paramstring);
}
}

View file

@ -1,53 +1,27 @@
<?php <?php
/** class Katharsis_Controller_Plugin
* Central Plugin Class {
* protected static $_plugins;
* @author Karl Pannek <info@katharsis.in>
* @version 0.5.2 public static function registerPlugin($object)
* @package Katharsis {
*/ self::$_plugins[] = $object;
class Katharsis_Controller_Plugin }
{
/** public static function preControllerHook()
* @var array {
*/ foreach(self::$_plugins as $plugin)
protected static $_plugins; {
$plugin->preController();
/** }
* Register all plugins with this method }
* Plugins will be called in the same order as they have been registered
* public static function postControllerHook()
* @param object $object - an instance of your plugin {
* @return void foreach(self::$_plugins as $plugin)
*/ {
public static function registerPlugin($object) $plugin->postController();
{ }
self::$_plugins[] = $object; }
} }
?>
/**
* Processes preController methods of all plugins
*
* @return void
*/
public static function preControllerHook()
{
foreach(self::$_plugins as $plugin)
{
$plugin->preController();
}
}
/**
* Processes postController methods of all plugins
*
* @return void
*/
public static function postControllerHook()
{
foreach(self::$_plugins as $plugin)
{
$plugin->postController();
}
}
}

View file

@ -1,36 +1,19 @@
<?php <?php
/** abstract class Katharsis_Controller_Plugin_Abstract
* Abstract Controller Plugin {
* All controller plugins must extend this class. protected $_con;
*
* @author Karl Pannek <info@katharsis.in> public function __construct()
* @version 0.5.2 {
* @package Katharsis $this->_con = Katharsis_DatabaseConnector::getConnection();
*/ }
abstract class Katharsis_Controller_Plugin_Abstract
{ public function preController()
public function __construct() {
{ }
$this->_con = Katharsis_DatabaseConnector::getConnection();
} public function postController()
{
/** }
* Overwrite this method, if you want something to be processed }
* _before_ the controller is called ?>
*
* @return void
*/
public function preController()
{
}
/**
* Overwrite this method, if you want something to be processed
* _after_ the controller was called
*
* @return void
*/
public function postController()
{
}
}

View file

@ -0,0 +1,21 @@
<?php
class Katharsis_Controller_Plugin_AutoScriptControl extends Katharsis_Controller_Plugin_Abstract
{
public function preController()
{
$view = Katharsis_View::getInstance();
$view->autoScriptFile = false;
$scriptName = ucfirst(Katharsis_Request::getControllerName()) . '/' . strtolower(Katharsis_Request::getActionName());
$autoScriptFile = 'scripts/DidgeridooArtwork/' . $scriptName . '.js';
$sl = DIRECTORY_SEPARATOR;
if(file_exists(getcwd() . $sl . str_replace('/', $sl, $autoScriptFile)))
{
$view->autoScriptFile = $view->base . '/' . $autoScriptFile;
}
}
}

View file

@ -1,33 +1,20 @@
<?php <?php
/** class Katharsis_Controller_Plugin_Autorender extends Katharsis_Controller_Plugin_Abstract
* Autorender Controller Plugin {
* public function postController()
* @author Karl Pannek <info@katharsis.in> {
* @version 0.5.2 $view = Katharsis_View::getInstance();
* @package Katharsis
*/ $view->stageContent = false;
class Katharsis_Controller_Plugin_Autorender extends Katharsis_Controller_Plugin_Abstract
{ $templateName = ucfirst(Katharsis_Request::getControllerName()) . DIRECTORY_SEPARATOR . strtolower(Katharsis_Request::getActionName());
/**
* Renders a controller/action.phtml template automaticly after processing controller if(file_exists(getcwd() . '/application/view' . DIRECTORY_SEPARATOR . $templateName . '.phtml'))
* {
* @return void $view->stageContent = $view->render($templateName);
*/ }
public function postController()
{ echo $view->render('main');
}
$view = Katharsis_View::getInstance(); }
?>
$view->controllerAction = false;
$templateName = strtolower(Katharsis_Request::getControllerName()) . DIRECTORY_SEPARATOR . strtolower(Katharsis_Request::getActionName());
if(file_exists('application/view' . DIRECTORY_SEPARATOR . $templateName . '.phtml'))
{
$view->controllerAction = $templateName;
}
$view = Katharsis_View::getInstance();
echo $view->render('main');
}
}

View file

@ -1,136 +1,102 @@
<?php <?php
/** class Katharsis_ControllerRouting
* Controller Router {
* Specific routing entity protected static $_instance = null;
*
* @author Karl Pannek <info@katharsis.in> public static function getInstance()
* @version 0.5.2 {
* @package Katharsis if(self::$_instance === null)
*/ {
class Katharsis_ControllerRouting self::$_instance = new self();
{ }
/** return self::$_instance;
* @var Katharsis_ControllerRouting }
*/
protected static $_instance = null; protected function __construct()
{
/** Katharsis_Request::setControllerName('index');
* Singleton. Returns the same instance every time Katharsis_Request::setActionName('index');
* }
* @return Katharsis_ControllerRouting
*/ public function init()
public static function getInstance() {
{ $paramstring = "";
if(self::$_instance === null) $baseUrl = preg_replace('#(.*/)[^/]+#', '\1', $_SERVER['SCRIPT_NAME']);
{
self::$_instance = new self(); if(preg_match("~/([^/\?]+)/([^/\?]+)/*([^\?]*)~", $_SERVER['REQUEST_URI'], $matches))
} {
return self::$_instance; $controller = $matches[1];
} $action = $matches[2];
$paramstring = $matches[3];
/** $params = $this->_buildParams($paramstring);
* Sets default controller and action names
* Katharsis_Request::setControllerName($controller);
* @return void Katharsis_Request::setActionName($action);
*/ }
protected function __construct() else if(preg_match("~/([^/\?]+)/*([^\?]*)~", $_SERVER['REQUEST_URI'], $matches))
{ {
Katharsis_Request::setControllerName('index'); $controller = $matches[1];
Katharsis_Request::setActionName('index'); $paramstring = $matches[2];
} $params = $this->_buildParams($paramstring);
/** Katharsis_Request::setControllerName($controller);
* Initiates routing process }
* else
* @return void {
*/ if(array_key_exists('controller', $_GET))
public function init() {
{ $controller = $_GET['controller'];
$paramstring = ""; Katharsis_Request::setControllerName($controller);
$baseUrl = preg_replace('#(.*/)[^/]+#', '\1', $_SERVER['SCRIPT_NAME']); }
if(preg_match("~.*" . $baseUrl . "([^/\?]+)/([^/\?]+)/*([^\?]*)~", $_SERVER['REQUEST_URI'], $matches)) if(array_key_exists('action', $_GET))
{ {
$controller = $matches[1]; $action = $_GET['action'];
$action = $matches[2]; Katharsis_Request::setActionName($action);
$paramstring = $matches[3]; }
$params = $this->_buildParams($paramstring);
$params = $_GET;
Katharsis_Request::setControllerName($controller); }
Katharsis_Request::setActionName($action);
} else if(preg_match("~.*" . $baseUrl . "([^/\?]+)/*([^\?]*)~", $_SERVER['REQUEST_URI'], $matches)) Katharsis_Request::setParams($params);
{
$controller = $matches[1]; Katharsis_View::getInstance()->requestHook();
$paramstring = $matches[2]; }
$params = $this->_buildParams($paramstring);
public function route()
Katharsis_Request::setControllerName($controller); {
} else $controllerName = ucfirst(Katharsis_Request::getControllerName()) . 'Controller';
{ $action = Katharsis_Request::getActionName() . 'Action';
if(array_key_exists('controller', $_GET))
{ if(class_exists($controllerName))
$controller = $_GET['controller']; {
Katharsis_Request::setControllerName($controller); $controllerObject = new $controllerName();
}
$controllerObject->$action();
if(array_key_exists('action', $_GET)) }
{
$action = $_GET['action']; }
Katharsis_Request::setActionName($action);
} protected function _buildParams($string)
{
$params = $_GET; $params = array();
} if(trim($string) !== '')
{
Katharsis_Request::setParams($params); $urlparams = explode("/", $string);
Katharsis_View::getInstance()->requestHook(); for($i = 0; $i < count($urlparams); $i=$i+2)
} {
if(array_key_exists($i+1, $urlparams))
{
/** $params[$urlparams[$i]] = $urlparams[$i+1];
* Routing processing method } else
* {
* @return void $params[$urlparams[$i]] = null;
*/ }
public function route() }
{ }
$controllerName = ucfirst(Katharsis_Request::getControllerName()) . 'Controller';
$action = Katharsis_Request::getActionName() . 'Action'; return $params;
}
if(class_exists($controllerName)) }
{ ?>
$controllerObject = new $controllerName();
$controllerObject->$action();
}
}
/**
* Splits parameters to an array and returns them
*
* @return array
*/
protected function _buildParams($string)
{
$params = array();
if(trim($string) !== '')
{
$urlparams = explode("/", $string);
for($i = 0; $i < count($urlparams); $i=$i+2)
{
if(array_key_exists($i+1, $urlparams))
{
$params[$urlparams[$i]] = $urlparams[$i+1];
} else
{
$params[$urlparams[$i]] = null;
}
}
}
return $params;
}
}

View file

@ -1,130 +1,92 @@
<?php <?php
/** class Katharsis_DatabaseConnector
* Database Connector {
* controls database connections public static $_conns = array();
*
* @author Karl Pannek <info@katharsis.in> protected static function connect($requestedName = null)
* @version 0.5.2 {
* @package Katharsis $ini = parse_ini_file('config/database.config.ini', true);
*/ if($ini !== array())
class Katharsis_DatabaseConnector {
{ $conInformation = self::_selectConnection($ini, $requestedName);
/** return self::_realConnect($conInformation);
* @var array } else
*/ {
public static $_conns = array(); return null;
}
/** }
* Reading ini file information and connecting
* public static function connectAll($requestedName = null)
* @param string $requestedName {
* @return Katharsis_Db5 $groups = parse_ini_file('config/database.config.ini', true);
*/
protected static function connect($requestedName = null) foreach($groups as $iniName => $conInformation)
{ {
$ini = parse_ini_file('config/database.config.ini', true); if(preg_match("~^connection:([^:]+)~", $iniName, $matches))
if($ini !== array()) {
{ self::getConnection($matches[1]);
$conInformation = self::_selectConnection($ini, $requestedName); }
return self::_realConnect($conInformation); }
} else }
{
return null; protected static function _realConnect($conInformation)
} {
} //$con = new PDO('mysql:host=' . $conInformation['host'] . ';dbname=' . $conInformation['database'], $conInformation['user'], $conInformation['password']);
/**
* Connects to all connections in config file $con = new Katharsis_Db5($conInformation['host'], $conInformation['user'], $conInformation['password'], $conInformation['database']);
*
* @param string $requestedName self::$_conns[$conInformation['name']]['connection'] = $con;
* @return void self::$_conns[$conInformation['name']]['info'] = $conInformation;
*/
public static function connectAll() return $con;
{ }
$groups = parse_ini_file('config/database.config.ini', true);
public static function getConnection($requestedName = null)
foreach($groups as $iniName => $conInformation) {
{ if($requestedName === null)
if(preg_match("~^connection:([^:]+)~", $iniName, $matches)) {
{ foreach(self::$_conns as $con)
self::getConnection($matches[1]); {
} if($con['info']['default'] === true)
} {
} return $con['connection'];
}
/** }
* Calling Katharsis Db connecting method return self::connect(null);
* } else
* @param string $requestedName {
* @return Katharsis_Db5 if(in_array($requestedName, array_keys(self::$_conns)))
*/ {
protected static function _realConnect($conInformation) return self::$_conns[$requestedName]['connection'];
{ }
$con = new Katharsis_Db5($conInformation['host'], $conInformation['user'], $conInformation['password'], $conInformation['database']); return self::connect($requestedName);
}
self::$_conns[$conInformation['name']]['connection'] = $con; }
self::$_conns[$conInformation['name']]['info'] = $conInformation;
protected static function _selectConnection($ini, $requestedName = null)
return $con; {
} foreach($ini as $name => $connectionInfo)
{
/** if($requestedName === null)
* Returns specified or default connection {
* if(preg_match("~^connection:([^:]+):default~", $name, $matches))
* @param string $requestedName {
* @return Katharsis_Db5 $connectionInfo['name'] = $matches[1];
*/ $connectionInfo['default'] = true;
public static function getConnection($requestedName = null) return $connectionInfo;
{ }
if($requestedName === null) } else
{ {
foreach(self::$_conns as $con) if(preg_match("~^connection:" . $requestedName . ".*~", $name))
{ {
if($con['info']['default'] === true) $connectionInfo['default'] = false;
{ $connectionInfo['name'] = $requestedName;
return $con['connection']; return $connectionInfo;
} }
} }
return self::connect(null); }
} else throw new Katharsis_Exception('Could not find database connection information for "' . $requestedName . '"');
{ }
if(in_array($requestedName, array_keys(self::$_conns))) }
{ ?>
return self::$_conns[$requestedName]['connection'];
}
return self::connect($requestedName);
}
}
/**
* Returns an array of connection information
*
* @param array $ini
* @param string $requestedName
* @return array
*/
protected static function _selectConnection($ini, $requestedName = null)
{
foreach($ini as $name => $connectionInfo)
{
if($requestedName === null)
{
if(preg_match("~^connection:([^:]+):default~", $name, $matches))
{
$connectionInfo['name'] = $matches[1];
$connectionInfo['default'] = true;
return $connectionInfo;
}
} else
{
if(preg_match("~^connection:" . $requestedName . ".*~", $name))
{
$connectionInfo['default'] = false;
$connectionInfo['name'] = $requestedName;
return $connectionInfo;
}
}
}
throw new Katharsis_Exception('Could not find database connection information for "' . $requestedName . '"');
}
}

File diff suppressed because it is too large Load diff

View file

@ -1,11 +1,4 @@
<?php <?php
/** class Katharsis_Exception extends Exception
* Katharsis Exception {
*
* @author Karl Pannek <info@katharsis.in>
* @version 0.5.2
* @package Katharsis
*/
class Katharsis_Exception extends Exception
{
} }

View file

@ -1,36 +1,16 @@
<?php <?php
/** abstract class Katharsis_Model_Abstract
* Abstract Model {
* All models must extend this class. protected $_con;
*
* @author Karl Pannek <info@katharsis.in> public final function __construct()
* @version 0.5.2 {
* @package Katharsis $this->_con = Katharsis_DatabaseConnector::getConnection();
*/ $this->init();
abstract class Katharsis_Model_Abstract }
{
/** public function init()
* @var Katharsis_Db5 {
*/ }
protected $_con; }
?>
/**
* Instances class attributes, calles init method
*
* @return void
*/
public final function __construct()
{
$this->_con = Katharsis_DatabaseConnector::getConnection();
$this->init();
}
/**
* Overwrite this method instead of using a constructor
*
* @return void
*/
public function init()
{
}
}

View file

@ -1,93 +1,44 @@
<?php <?php
/** class Katharsis_Request
* Katharsis Request {
* Represents a http call protected static $_controller = null;
* protected static $_action = null;
* @author Karl Pannek <info@katharsis.in> protected static $_params = array();
* @version 0.5.2
* @package Katharsis public static function setControllerName($name)
*/ {
class Katharsis_Request self::$_controller = $name;
{ }
/**
* @var string public static function setActionName($name)
*/ {
protected static $_controller; self::$_action = $name;
}
/**
* @var string public static function setParams($params)
*/ {
protected static $_action; foreach($_POST as $key => $value)
{
/** $params[$key] = $value;
* @var array }
*/ self::$_params = $params;
protected static $_params = array();
}
/**
* Set name of controller public static function getControllerName()
* {
* @param string $name return self::$_controller;
* @return void }
*/
public static function setControllerName($name) public static function getActionName()
{ {
self::$_controller = $name; return self::$_action;
} }
/**
* Set name of action public static function getParams()
* {
* @param string $name return self::$_params;
* @return void }
*/ }
public static function setActionName($name) ?>
{
self::$_action = $name;
}
/**
* Set parameters
*
* @param array $params
* @return void
*/
public static function setParams($params)
{
foreach($_POST as $key => $value)
{
$params[$key] = $value;
}
self::$_params = $params;
}
/**
* Get controller name
*
* @return string
*/
public static function getControllerName()
{
return self::$_controller;
}
/**
* Get action name
*
* @return string
*/
public static function getActionName()
{
return self::$_action;
}
/**
* Get parameter array
*
* @return array
*/
public static function getParams()
{
return self::$_params;
}
}

View file

@ -1,101 +1,73 @@
<?php <?php
/** class Katharsis_View
* Katharsis View {
* Controls anything related to the display level protected static $_instance = null;
* protected $_items = array();
* @author Karl Pannek <info@katharsis.in>
* @version 0.5.2 public static function getInstance()
* @package Katharsis {
*/ if(self::$_instance === null)
class Katharsis_View {
{ self::$_instance = new self();
/** }
* @var Katharsis_View return self::$_instance;
*/ }
protected static $_instance = null;
protected function __construct()
/** {
* @var array $base = preg_replace('/(.+)\/[^\/]+/', '\1', $_SERVER['SCRIPT_NAME']);
*/ $this->_items['base'] = $base != $_SERVER['SCRIPT_NAME'] ? $base : '';
protected $_params = array(); }
/** public function __get($name)
* Singleton. Returns the same instance every time {
* if(array_key_exists($name, $this->_items))
* @return Katharsis_View {
*/ if(is_array($this->_items[$name]))
public static function getInstance() {
{ return (array) $this->_items[$name];
if(self::$_instance === null) }
{ return $this->_items[$name];
self::$_instance = new self(); }
} return null;
return self::$_instance; }
}
public function __set($name, $value)
/** {
* Sets base application path $this->_items[$name] = $value;
* }
* @return void
*/ public function render($template)
protected function __construct() {
{ ob_start();
$base = preg_replace('/(.+)\/[^\/]+/', '\1', $_SERVER['SCRIPT_NAME']); if(file_exists('application/view/' . $template . '.phtml'))
$this->_params['base'] = $base != $_SERVER['SCRIPT_NAME'] ? $base : ''; {
} include('application/view/' . $template . '.phtml');
}
/** $output = ob_get_contents();
* Magical get method, gets specific param ob_end_clean();
*
* @param string $name return $output;
* @return string }
*/
public function __get($name) public function requestHook()
{ {
if(array_key_exists($name, $this->_params)) }
{
return $this->_params[$name]; public function _getParam($key)
} {
return null; $params = Katharsis_Request::getParams();
} if(array_key_exists($key,$params))
{
/** return $params[$key];
* Magical set method, sets specific param }
* return null;
* @param string name }
* @param string value
*/ public function formatDate($date)
public function __set($name, $value) {
{ $date = explode("-", $date);
$this->_params[$name] = $value; return $date[2] . '.' . $date[1] . '.' . $date[0];
} }
}
/** ?>
* Template rendering method
*
* @param string $template
* @return string
*/
public function render($template)
{
ob_start();
if(file_exists('application/view/' . $template . '.phtml'))
{
include('application/view/' . $template . '.phtml');
}
$output = ob_get_contents();
ob_end_clean();
return $output;
}
/**
* Sets Request params into View params
*
* @return void
*/
public function requestHook()
{
$this->_params['params'] = Katharsis_Request::getParams();
}
}

View file

@ -1,4 +1,7 @@
RewriteEngine On RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d RewriteCond %{REQUEST_FILENAME} -d

View file

@ -23,6 +23,7 @@ Katharsis_Controller_Plugin::registerPlugin(new DidgeridooArtwork_Controller_Plu
try { try {
Katharsis_Bootstrap::init();
Katharsis_Bootstrap::run(); Katharsis_Bootstrap::run();
} catch(Exception $e) } catch(Exception $e)
{ {