implementing abstract classes for QuesttypeAgents (-Agent, -Controller, -Model and -View)
This commit is contained in:
parent
3af0e9d570
commit
f1b5affa79
13 changed files with 1165 additions and 6 deletions
231
app/QuesttypeAgent.inc
Normal file
231
app/QuesttypeAgent.inc
Normal file
|
|
@ -0,0 +1,231 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Abstract class for implementing a QuesttypeAgent.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
abstract class QuesttypeAgent extends \nre\agents\BottomlevelAgent
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Current request
|
||||||
|
*
|
||||||
|
* @var Request
|
||||||
|
*/
|
||||||
|
private $request;
|
||||||
|
/**
|
||||||
|
* Current response
|
||||||
|
*
|
||||||
|
* @var Response
|
||||||
|
*/
|
||||||
|
private $response;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load a QuesttypeAgent.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws QuesttypeAgentNotFoundException
|
||||||
|
* @throws QuesttypeAgentNotValidException
|
||||||
|
* @param string $questtypeName Name of the QuesttypeAgent to load
|
||||||
|
*/
|
||||||
|
public static function load($questtypeName)
|
||||||
|
{
|
||||||
|
// Determine full classname
|
||||||
|
$className = self::getClassName($questtypeName);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// Load class
|
||||||
|
static::loadClass($questtypeName, $className);
|
||||||
|
|
||||||
|
// Validate class
|
||||||
|
static::checkClass($className, get_class());
|
||||||
|
}
|
||||||
|
catch(\nre\exceptions\ClassNotValidException $e) {
|
||||||
|
throw new \hhu\z\exceptions\QuesttypeAgentNotValidException($e->getClassName());
|
||||||
|
}
|
||||||
|
catch(\nre\exceptions\ClassNotFoundException $e) {
|
||||||
|
throw new \hhu\z\exceptions\QuesttypeAgentNotFoundException($e->getClassName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Instantiate a QuesttypeAgent (Factory Pattern).
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws DatamodelException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
* @throws QuesttypeControllerNotValidException
|
||||||
|
* @throws QuesttypeControllerNotFoundException
|
||||||
|
* @param string $questtypeName Name of the QuesttypeAgent to instantiate
|
||||||
|
* @param Request $request Current request
|
||||||
|
* @param Response $respone Current respone
|
||||||
|
* @param Logger $log Log-system
|
||||||
|
*/
|
||||||
|
public static function factory($questtypeName, \nre\core\Request $request, \nre\core\Response $response, \nre\core\Logger $log=null)
|
||||||
|
{
|
||||||
|
// Determine full classname
|
||||||
|
$className = self::getClassName($questtypeName);
|
||||||
|
|
||||||
|
// Construct and return Questmodule
|
||||||
|
return new $className($request, $response, $log);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine the Agent-classname for the given Questtype-name.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @param string $questtypeName Questtype-name to get Agent-classname of
|
||||||
|
* @return string Classname for the Questtype-name
|
||||||
|
*/
|
||||||
|
private static function getClassName($questtypeName)
|
||||||
|
{
|
||||||
|
$className = \nre\core\ClassLoader::concatClassNames($questtypeName, \nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::stripNamespace(get_class())), 'agent');
|
||||||
|
|
||||||
|
|
||||||
|
return \nre\configs\AppConfig::$app['namespace']."questtypes\\$className";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the class of a QuesttypeAgent.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws ClassNotFoundException
|
||||||
|
* @param string $questtypeName Name of the QuesttypeAgent to load
|
||||||
|
* @param string $fullClassName Name of the class to load
|
||||||
|
*/
|
||||||
|
private static function loadClass($questtypeName, $fullClassName)
|
||||||
|
{
|
||||||
|
// Determine folder to look in
|
||||||
|
$className = explode('\\', $fullClassName);
|
||||||
|
$className = array_pop($className);
|
||||||
|
|
||||||
|
// Determine filename
|
||||||
|
$fileName = ROOT.DS.\nre\configs\AppConfig::$dirs['questtypes'].DS.strtolower($questtypeName).DS.$className.\nre\configs\CoreConfig::getFileExt('includes');
|
||||||
|
|
||||||
|
// Check file
|
||||||
|
if(!file_exists($fileName))
|
||||||
|
{
|
||||||
|
throw new \nre\exceptions\ClassNotFoundException(
|
||||||
|
$fullClassName
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Include file
|
||||||
|
include_once($fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check inheritance of the QuesttypeAgent-class.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws ClassNotValidException
|
||||||
|
* @param string $className Name of the class to check
|
||||||
|
* @param string $parentClassName Name of the parent class
|
||||||
|
*/
|
||||||
|
public static function checkClass($className, $parentClassName)
|
||||||
|
{
|
||||||
|
// Check if class is subclass of parent class
|
||||||
|
if(!is_subclass_of($className, $parentClassName)) {
|
||||||
|
throw new \nre\exceptions\ClassNotValidException(
|
||||||
|
$className
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new QuesttypeAgent.
|
||||||
|
*
|
||||||
|
* @throws DatamodelException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @throws ModelNotValidException
|
||||||
|
* @throws ModelNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
* @throws QuesttypeControllerNotValidException
|
||||||
|
* @throws QuesttypeControllerNotFoundException
|
||||||
|
* @param Request $request Current request
|
||||||
|
* @param Response $respone Current response
|
||||||
|
* @param Logger $log Log-system
|
||||||
|
*/
|
||||||
|
protected function __construct(\nre\core\Request $request, \nre\core\Response $response, \nre\core\Logger $log=null)
|
||||||
|
{
|
||||||
|
// Store values
|
||||||
|
$this->request = $request;
|
||||||
|
$this->response = $response;
|
||||||
|
|
||||||
|
|
||||||
|
// Call parent constructor
|
||||||
|
parent::__construct($request, $response, $log);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the Controller of this Agent.
|
||||||
|
*
|
||||||
|
* @throws DatamodelException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @throws ModelNotValidException
|
||||||
|
* @throws ModelNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
* @throws QuesttypeControllerNotValidException
|
||||||
|
* @throws QuesttypeControllerNotFoundException
|
||||||
|
*/
|
||||||
|
protected function loadController()
|
||||||
|
{
|
||||||
|
// Determine Controller name
|
||||||
|
$controllerName = \nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::getClassName(get_class($this)));
|
||||||
|
|
||||||
|
// Determine ToplevelAgent
|
||||||
|
$toplevelAgentName = $this->response->getParam(0);
|
||||||
|
if(is_null($toplevelAgentName)) {
|
||||||
|
$toplevelAgentName = $this->request->getParam(0, 'toplevel');
|
||||||
|
$this->response->addParam($toplevelAgentName);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine Action
|
||||||
|
$action = \nre\configs\CoreConfig::$defaults['action'];
|
||||||
|
|
||||||
|
|
||||||
|
// Load Controller
|
||||||
|
\hhu\z\QuesttypeController::load($controllerName);
|
||||||
|
|
||||||
|
// Construct Controller
|
||||||
|
$this->controller = QuesttypeController::factory($controllerName, $toplevelAgentName, $action, $this);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
235
app/QuesttypeController.inc
Normal file
235
app/QuesttypeController.inc
Normal file
|
|
@ -0,0 +1,235 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Abstract class for implementing a QuesttypeController.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
abstract class QuesttypeController extends \nre\core\Controller
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load a QuesttypeController.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws QuesttypeControllerNotFoundException
|
||||||
|
* @throws QuesttypeControllerNotValidException
|
||||||
|
* @param string $controllerName Name of the QuesttypeController to load
|
||||||
|
*/
|
||||||
|
public static function load($controllerName)
|
||||||
|
{
|
||||||
|
// Determine full classname
|
||||||
|
$className = self::getClassName($controllerName);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// Load class
|
||||||
|
static::loadClass($controllerName, $className);
|
||||||
|
|
||||||
|
// Validate class
|
||||||
|
static::checkClass($className, get_class());
|
||||||
|
}
|
||||||
|
catch(\nre\exceptions\ClassNotValidException $e) {
|
||||||
|
throw new \hhu\z\exceptions\QuesttypeControllerNotValidException($e->getClassName());
|
||||||
|
}
|
||||||
|
catch(\nre\exceptions\ClassNotFoundException $e) {
|
||||||
|
throw new \hhu\z\exceptions\QuesttypeControllerNotFoundException($e->getClassName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Instantiate a QuesttypeController (Factory Pattern).
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws DatamodelException
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws ModelNotValidException
|
||||||
|
* @throws ModelNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @param string $controllerName Name of the QuesttypeController to instantiate
|
||||||
|
* @param string $layoutName Name of the current Layout
|
||||||
|
* @param string $action Current Action
|
||||||
|
*/
|
||||||
|
public static function factory($controllerName, $layoutName, $action, $agent)
|
||||||
|
{
|
||||||
|
// Determine full classname
|
||||||
|
$className = self::getClassName($controllerName);
|
||||||
|
|
||||||
|
// Construct and return Controller
|
||||||
|
return new $className($layoutName, $action, $agent);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine the Controller-classname for the given Questtype-name.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @param string $questtypeName Questtype-name to get Controller-classname of
|
||||||
|
* @return string Classname for the Questtype-name
|
||||||
|
*/
|
||||||
|
private static function getClassName($questtypeName)
|
||||||
|
{
|
||||||
|
$className = \nre\core\ClassLoader::concatClassNames($questtypeName, \nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::stripNamespace(get_class())), 'controller');
|
||||||
|
|
||||||
|
|
||||||
|
return \nre\configs\AppConfig::$app['namespace']."questtypes\\$className";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the class of a QuesttypeController
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws ClassNotFoundException
|
||||||
|
* @param string $questtypeName Name of the QuesttypeController to load
|
||||||
|
* @param string $fullClassName Name of the class to load
|
||||||
|
*/
|
||||||
|
private static function loadClass($questtypeName, $fullClassName)
|
||||||
|
{
|
||||||
|
// Determine folder to look in
|
||||||
|
$className = explode('\\', $fullClassName);
|
||||||
|
$className = array_pop($className);
|
||||||
|
|
||||||
|
// Determine filename
|
||||||
|
$fileName = ROOT.DS.\nre\configs\AppConfig::$dirs['questtypes'].DS.strtolower($questtypeName).DS.$className.\nre\configs\CoreConfig::getFileExt('includes');
|
||||||
|
|
||||||
|
// Check file
|
||||||
|
if(!file_exists($fileName))
|
||||||
|
{
|
||||||
|
throw new \nre\exceptions\ClassNotFoundException(
|
||||||
|
$fullClassName
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Include file
|
||||||
|
include_once($fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check inheritance of the QuesttypeController-class.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws ClassNotValidException
|
||||||
|
* @param string $className Name of the class to check
|
||||||
|
* @param string $parentClassName Name of the parent class
|
||||||
|
*/
|
||||||
|
public static function checkClass($className, $parentClassName)
|
||||||
|
{
|
||||||
|
// Check if class is subclass of parent class
|
||||||
|
if(!is_subclass_of($className, $parentClassName)) {
|
||||||
|
throw new \nre\exceptions\ClassNotValidException(
|
||||||
|
$className
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new application Controller.
|
||||||
|
*
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws ModelNotValidException
|
||||||
|
* @throws ModelNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @param string $layoutName Name of the current Layout
|
||||||
|
* @param string $action Current Action
|
||||||
|
* @param Agent $agent Corresponding Agent
|
||||||
|
*/
|
||||||
|
public function __construct($layoutName, $action, $agent)
|
||||||
|
{
|
||||||
|
parent::__construct($layoutName, $action, $agent);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the Models of this Controller.
|
||||||
|
*
|
||||||
|
* @throws DatamodelException
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws ModelNotValidException
|
||||||
|
* @throws ModelNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
*/
|
||||||
|
protected function loadModels()
|
||||||
|
{
|
||||||
|
// Load default models
|
||||||
|
parent::loadModels();
|
||||||
|
|
||||||
|
// Load QuesttypeModel
|
||||||
|
$this->loadModel();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the Model of the Questtype.
|
||||||
|
*
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
*/
|
||||||
|
private function loadModel()
|
||||||
|
{
|
||||||
|
// Determine Model
|
||||||
|
$model = \nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::stripNamespace(get_class($this))));
|
||||||
|
|
||||||
|
// Load class
|
||||||
|
QuesttypeModel::load($model);
|
||||||
|
|
||||||
|
// Construct Model
|
||||||
|
$modelName = ucfirst(strtolower($model));
|
||||||
|
$this->$modelName = QuesttypeModel::factory($model);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the View of this QuesttypeController.
|
||||||
|
*
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @param string $layoutName Name of the current Layout
|
||||||
|
* @param string $action Current Action
|
||||||
|
*/
|
||||||
|
protected function loadView($layoutName, $action)
|
||||||
|
{
|
||||||
|
// Check Layout name
|
||||||
|
if(is_null($layoutName)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine controller name
|
||||||
|
$controllerName = \nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::getClassName(get_class($this)));
|
||||||
|
|
||||||
|
|
||||||
|
// Load view
|
||||||
|
$this->view = QuesttypeView::loadAndFactory($layoutName, $controllerName, $action);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
154
app/QuesttypeModel.inc
Normal file
154
app/QuesttypeModel.inc
Normal file
|
|
@ -0,0 +1,154 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Abstract class for implementing a QuesttypeModel.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
abstract class QuesttypeModel extends \hhu\z\Model
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load a Model.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @param string $modelName Name of the QuesttypeModel to load
|
||||||
|
*/
|
||||||
|
public static function load($modelName)
|
||||||
|
{
|
||||||
|
// Determine full classname
|
||||||
|
$className = self::getClassName($modelName);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// Load class
|
||||||
|
static::loadClass($modelName, $className);
|
||||||
|
|
||||||
|
// Validate class
|
||||||
|
static::checkClass($className, get_class());
|
||||||
|
}
|
||||||
|
catch(\nre\exceptions\ClassNotValidException $e) {
|
||||||
|
throw new \hhu\z\exceptions\QuesttypeModelNotValidException($e->getClassName());
|
||||||
|
}
|
||||||
|
catch(\nre\exceptions\ClassNotFoundException $e) {
|
||||||
|
throw new \hhu\z\exceptions\QuesttypeModelNotFoundException($e->getClassName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Instantiate a QuesttypeModel (Factory Pattern).
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @param string $questtypeName Name of the QuesttypeModel to instantiate
|
||||||
|
*/
|
||||||
|
public static function factory($questtypeName)
|
||||||
|
{
|
||||||
|
// Determine full classname
|
||||||
|
$className = self::getClassName($questtypeName);
|
||||||
|
|
||||||
|
// Construct and return Model
|
||||||
|
return new $className();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine the Model-classname for the given Questtype-name.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @param string $questtypeName Questtype-name to get Model-classname of
|
||||||
|
* @return string Classname for the Questtype-name
|
||||||
|
*/
|
||||||
|
private static function getClassName($questtypeName)
|
||||||
|
{
|
||||||
|
$className = \nre\core\ClassLoader::concatClassNames($questtypeName, \nre\core\ClassLoader::stripClassType(\nre\core\ClassLoader::stripNamespace(get_class())), 'model');
|
||||||
|
|
||||||
|
|
||||||
|
return \nre\configs\AppConfig::$app['namespace']."questtypes\\$className";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load the class of a QuesttypeModel.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws ClassNotFoundException
|
||||||
|
* @param string $questtypeName Name of the QuesttypeModel to load
|
||||||
|
* @param string $fullClassName Name of the class to load
|
||||||
|
*/
|
||||||
|
private static function loadClass($questtypeName, $fullClassName)
|
||||||
|
{
|
||||||
|
// Determine folder to look in
|
||||||
|
$className = explode('\\', $fullClassName);
|
||||||
|
$className = array_pop($className);
|
||||||
|
|
||||||
|
// Determine filename
|
||||||
|
$fileName = ROOT.DS.\nre\configs\AppConfig::$dirs['questtypes'].DS.strtolower($questtypeName).DS.$className.\nre\configs\CoreConfig::getFileExt('includes');
|
||||||
|
|
||||||
|
// Check file
|
||||||
|
if(!file_exists($fileName))
|
||||||
|
{
|
||||||
|
throw new \nre\exceptions\ClassNotFoundException(
|
||||||
|
$fullClassName
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Include file
|
||||||
|
include_once($fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check inheritance of the QuesttypeModel-class.
|
||||||
|
*
|
||||||
|
* @static
|
||||||
|
* @throws ClassNotValidException
|
||||||
|
* @param string $className Name of the class to check
|
||||||
|
* @param string $parentClassName Name of the parent class
|
||||||
|
*/
|
||||||
|
public static function checkClass($className, $parentClassName)
|
||||||
|
{
|
||||||
|
// Check if class is subclass of parent class
|
||||||
|
if(!is_subclass_of($className, $parentClassName)) {
|
||||||
|
throw new \nre\exceptions\ClassNotValidException(
|
||||||
|
$className
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new QuesttypeModel.
|
||||||
|
*
|
||||||
|
* @throws DatamodelException
|
||||||
|
* @throws DriverNotFoundException
|
||||||
|
* @throws DriverNotValidException
|
||||||
|
* @throws QuesttypeModelNotValidException
|
||||||
|
* @throws QuesttypeModelNotFoundException
|
||||||
|
*/
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
parent::__construct();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
76
app/QuesttypeView.inc
Normal file
76
app/QuesttypeView.inc
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Abstract class for implementing a QuesttypeView.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeView extends \nre\core\View
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load and instantiate the QuesttypeView of a QuesttypeAgent.
|
||||||
|
*
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @param string $layoutName Name of Layout in use
|
||||||
|
* @param string $agentName Name of the Agent
|
||||||
|
* @param string $action Current Action
|
||||||
|
* @param bool $isToplevel Agent is a ToplevelAgent
|
||||||
|
*/
|
||||||
|
public static function loadAndFactory($layoutName, $agentName=null, $action=null, $isToplevel=false)
|
||||||
|
{
|
||||||
|
return new QuesttypeView($layoutName, $agentName, $action, $isToplevel);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new QuesttypeView.
|
||||||
|
*
|
||||||
|
* @throws ViewNotFoundException
|
||||||
|
* @param string $layoutName Name of Layout in use
|
||||||
|
* @param string $agentName Name of the Agent
|
||||||
|
* @param string $action Current Action
|
||||||
|
* @param bool $isToplevel Agent is a ToplevelAgent
|
||||||
|
*/
|
||||||
|
protected function __construct($layoutName, $agentName=null, $action=null, $isToplevel=false)
|
||||||
|
{
|
||||||
|
// Create template filename
|
||||||
|
// LayoutName
|
||||||
|
$fileName = ROOT.DS.\nre\configs\AppConfig::$dirs['questtypes'].DS.strtolower($agentName).DS.strtolower($layoutName).DS;
|
||||||
|
|
||||||
|
// Action
|
||||||
|
$fileName .= strtolower($action);
|
||||||
|
|
||||||
|
// File extension
|
||||||
|
$fileName .= \nre\configs\CoreConfig::getFileExt('views');
|
||||||
|
|
||||||
|
|
||||||
|
// Check template file
|
||||||
|
if(!file_exists($fileName)) {
|
||||||
|
throw new \nre\exceptions\ViewNotFoundException($fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Save filename
|
||||||
|
$this->templateFilename = $fileName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
77
app/exceptions/QuesttypeAgentNotFoundException.inc
Normal file
77
app/exceptions/QuesttypeAgentNotFoundException.inc
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z\exceptions;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception: QuesttypeAgent not found.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeAgentNotFoundException extends \nre\core\Exception
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Error code
|
||||||
|
*
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
const CODE = 101;
|
||||||
|
/**
|
||||||
|
* Error message
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
const MESSAGE = 'QuesttypeAgent not found';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the class that was not found
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
private $questtypeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new exception.
|
||||||
|
*
|
||||||
|
* @param string $questtypeName Name of the QuesttypeAgent that was not found
|
||||||
|
*/
|
||||||
|
function __construct($questtypeName, $message=self::MESSAGE, $code=self::CODE)
|
||||||
|
{
|
||||||
|
parent::__construct(
|
||||||
|
$message,
|
||||||
|
$code,
|
||||||
|
$questtypeName
|
||||||
|
);
|
||||||
|
|
||||||
|
// Store values
|
||||||
|
$this->questtypeName = $questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the QuesttypeAgent that was not found.
|
||||||
|
*
|
||||||
|
* @return string Name of the QuesttypeAgent that was not found
|
||||||
|
*/
|
||||||
|
public function getClassName()
|
||||||
|
{
|
||||||
|
return $this->questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
77
app/exceptions/QuesttypeAgentNotValidException.inc
Normal file
77
app/exceptions/QuesttypeAgentNotValidException.inc
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z\exceptions;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception: QuesttypeAgent not valid.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeAgentNotValidException extends \nre\core\Exception
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Error code
|
||||||
|
*
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
const CODE = 102;
|
||||||
|
/**
|
||||||
|
* Error message
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
const MESSAGE = 'QuesttypeAgent not valid';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the invalid class
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
private $questtypeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new exception.
|
||||||
|
*
|
||||||
|
* @param string $questtypeName Name of the invalid QuesttypeAgent
|
||||||
|
*/
|
||||||
|
function __construct($questtypeName, $message=self::MESSAGE, $code=self::CODE)
|
||||||
|
{
|
||||||
|
parent::__construct(
|
||||||
|
$message,
|
||||||
|
$code,
|
||||||
|
$questtypeName
|
||||||
|
);
|
||||||
|
|
||||||
|
// Store value
|
||||||
|
$this->questtypeName = $questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the invalid QuesttypeAgent.
|
||||||
|
*
|
||||||
|
* @return string Name of the invalid QuesttypeAgent
|
||||||
|
*/
|
||||||
|
public function getClassName()
|
||||||
|
{
|
||||||
|
return $this->questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
77
app/exceptions/QuesttypeControllerNotFoundException.inc
Normal file
77
app/exceptions/QuesttypeControllerNotFoundException.inc
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z\exceptions;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception: QuesttypeController not found.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeControllerNotFoundException extends \nre\core\Exception
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Error code
|
||||||
|
*
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
const CODE = 103;
|
||||||
|
/**
|
||||||
|
* Error message
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
const MESSAGE = 'QuesttypeController not found';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the class that was not found
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
private $questtypeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new exception.
|
||||||
|
*
|
||||||
|
* @param string $questtypeName Name of the QuesttypeController that was not found
|
||||||
|
*/
|
||||||
|
function __construct($questtypeName, $message=self::MESSAGE, $code=self::CODE)
|
||||||
|
{
|
||||||
|
parent::__construct(
|
||||||
|
$message,
|
||||||
|
$code,
|
||||||
|
$questtypeName
|
||||||
|
);
|
||||||
|
|
||||||
|
// Store values
|
||||||
|
$this->questtypeName = $questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the QuesttypeController that was not found.
|
||||||
|
*
|
||||||
|
* @return string Name of the QuesttypeController that was not found
|
||||||
|
*/
|
||||||
|
public function getClassName()
|
||||||
|
{
|
||||||
|
return $this->questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
77
app/exceptions/QuesttypeControllerNotValidException.inc
Normal file
77
app/exceptions/QuesttypeControllerNotValidException.inc
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z\exceptions;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception: QuesttypeController not valid.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeControllerNotValidException extends \nre\core\Exception
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Error code
|
||||||
|
*
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
const CODE = 104;
|
||||||
|
/**
|
||||||
|
* Error message
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
const MESSAGE = 'QuesttypeController not valid';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the invalid class
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
private $questtypeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new exception.
|
||||||
|
*
|
||||||
|
* @param string $questtypeName Name of the invalid QuesttypeController
|
||||||
|
*/
|
||||||
|
function __construct($questtypeName, $message=self::MESSAGE, $code=self::CODE)
|
||||||
|
{
|
||||||
|
parent::__construct(
|
||||||
|
$message,
|
||||||
|
$code,
|
||||||
|
$questtypeName
|
||||||
|
);
|
||||||
|
|
||||||
|
// Store value
|
||||||
|
$this->questtypeName = $questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the invalid QuesttypeController.
|
||||||
|
*
|
||||||
|
* @return string Name of the invalid QuesttypeController
|
||||||
|
*/
|
||||||
|
public function getClassName()
|
||||||
|
{
|
||||||
|
return $this->questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
77
app/exceptions/QuesttypeModelNotFoundException.inc
Normal file
77
app/exceptions/QuesttypeModelNotFoundException.inc
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z\exceptions;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception: QuesttypeModel not found.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeModelNotFoundException extends \nre\core\Exception
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Error code
|
||||||
|
*
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
const CODE = 105;
|
||||||
|
/**
|
||||||
|
* Error message
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
const MESSAGE = 'QuesttypeModel not found';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the class that was not found
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
private $questtypeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new exception.
|
||||||
|
*
|
||||||
|
* @param string $questtypeName Name of the QuesttypeModel that was not found
|
||||||
|
*/
|
||||||
|
function __construct($questtypeName, $message=self::MESSAGE, $code=self::CODE)
|
||||||
|
{
|
||||||
|
parent::__construct(
|
||||||
|
$message,
|
||||||
|
$code,
|
||||||
|
$questtypeName
|
||||||
|
);
|
||||||
|
|
||||||
|
// Store values
|
||||||
|
$this->questtypeName = $questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the QuesttypeModel that was not found.
|
||||||
|
*
|
||||||
|
* @return string Name of the QuesttypeModel that was not found
|
||||||
|
*/
|
||||||
|
public function getClassName()
|
||||||
|
{
|
||||||
|
return $this->questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
77
app/exceptions/QuesttypeModelNotValidException.inc
Normal file
77
app/exceptions/QuesttypeModelNotValidException.inc
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Legend of Z
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
* @copyright 2014 Heinrich-Heine-Universität Düsseldorf
|
||||||
|
* @license http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link https://bitbucket.org/coderkun/the-legend-of-z
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace hhu\z\exceptions;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception: QuesttypeModel not valid.
|
||||||
|
*
|
||||||
|
* @author Oliver Hanraths <oliver.hanraths@uni-duesseldorf.de>
|
||||||
|
*/
|
||||||
|
class QuesttypeModelNotValidException extends \nre\core\Exception
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Error code
|
||||||
|
*
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
const CODE = 106;
|
||||||
|
/**
|
||||||
|
* Error message
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
const MESSAGE = 'QuesttypeModel not valid';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the invalid class
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
private $questtypeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a new exception.
|
||||||
|
*
|
||||||
|
* @param string $questtypeName Name of the invalid QuesttypeModel
|
||||||
|
*/
|
||||||
|
function __construct($questtypeName, $message=self::MESSAGE, $code=self::CODE)
|
||||||
|
{
|
||||||
|
parent::__construct(
|
||||||
|
$message,
|
||||||
|
$code,
|
||||||
|
$questtypeName
|
||||||
|
);
|
||||||
|
|
||||||
|
// Store value
|
||||||
|
$this->questtypeName = $questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the invalid QuesttypeModel.
|
||||||
|
*
|
||||||
|
* @return string Name of the invalid QuesttypeModel
|
||||||
|
*/
|
||||||
|
public function getClassName()
|
||||||
|
{
|
||||||
|
return $this->questtypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
@ -60,7 +60,8 @@
|
||||||
*/
|
*/
|
||||||
public static $dirs = array(
|
public static $dirs = array(
|
||||||
'locale' => 'locale',
|
'locale' => 'locale',
|
||||||
'media' => 'media'
|
'media' => 'media',
|
||||||
|
'questtypes' => 'questtypes'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@
|
||||||
*
|
*
|
||||||
* @var View
|
* @var View
|
||||||
*/
|
*/
|
||||||
private $view = null;
|
protected $view = null;
|
||||||
/**
|
/**
|
||||||
* Data to pass to the View
|
* Data to pass to the View
|
||||||
*
|
*
|
||||||
|
|
@ -348,7 +348,7 @@
|
||||||
* @throws ModelNotValidException
|
* @throws ModelNotValidException
|
||||||
* @throws ModelNotFoundException
|
* @throws ModelNotFoundException
|
||||||
*/
|
*/
|
||||||
private function loadModels()
|
protected function loadModels()
|
||||||
{
|
{
|
||||||
// Determine Models
|
// Determine Models
|
||||||
$explicit = false;
|
$explicit = false;
|
||||||
|
|
@ -403,7 +403,7 @@
|
||||||
* @param string $layoutName Name of the current Layout
|
* @param string $layoutName Name of the current Layout
|
||||||
* @param string $action Current Action
|
* @param string $action Current Action
|
||||||
*/
|
*/
|
||||||
private function loadView($layoutName, $action)
|
protected function loadView($layoutName, $action)
|
||||||
{
|
{
|
||||||
// Check Layout name
|
// Check Layout name
|
||||||
if(is_null($layoutName)) {
|
if(is_null($layoutName)) {
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@
|
||||||
*
|
*
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
private $templateFilename;
|
protected $templateFilename;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -57,7 +57,7 @@
|
||||||
* @param string $action Current Action
|
* @param string $action Current Action
|
||||||
* @param bool $isToplevel Agent is a ToplevelAgent
|
* @param bool $isToplevel Agent is a ToplevelAgent
|
||||||
*/
|
*/
|
||||||
private function __construct($layoutName, $agentName=null, $action=null, $isToplevel=false)
|
protected function __construct($layoutName, $agentName=null, $action=null, $isToplevel=false)
|
||||||
{
|
{
|
||||||
// Create template filename
|
// Create template filename
|
||||||
// LayoutName
|
// LayoutName
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue