<?php
|
|
|
|
abstract class AskModel
|
|
{
|
|
protected $models = array();
|
|
|
|
function loadModel($model)
|
|
{
|
|
if (file_exists('./inc/models/'.$model.'.class.php') && !array_key_exists($model, $this->models)) //realizowany singleton
|
|
{
|
|
require_once('./inc/models/'.$model.'.class.php');
|
|
$this->models[$model] = new $model($this->db);
|
|
}
|
|
else
|
|
{
|
|
throw new Exception('Could not load selected model: '.$model);
|
|
}
|
|
}
|
|
|
|
function getModel($model)
|
|
{
|
|
if (array_key_exists($model, $this->models))
|
|
return $this->models[$model];
|
|
else
|
|
throw new Exception('Could not get selected model: '.$model);
|
|
}
|
|
|
|
function putExistingModel($model, &$model_ptr)
|
|
{
|
|
$this->models[$model] = $model_ptr;
|
|
}
|
|
}
|
|
|
|
?>
|