From bbad0a7c410dba23220a5fffe9b82885e545c11e Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sat, 14 May 2016 14:58:33 +0200 Subject: [PATCH] Making datamapper static --- Controller.php | 5 ++--- Models/CalendarMapper.php | 19 +++++++++++++------ Models/EventMapper.php | 12 ++++++------ Models/ScheduleMapper.php | 12 ++++++------ 4 files changed, 27 insertions(+), 21 deletions(-) diff --git a/Controller.php b/Controller.php index e1b7193..d4fccba 100644 --- a/Controller.php +++ b/Controller.php @@ -87,7 +87,7 @@ class Controller extends ModuleAbstract implements WebInterface * @param ResponseAbstract $response Response * @param mixed $data Generic data * - * @return RenderableInterface + * @return \Serializable * * @since 1.0.0 * @author Dennis Eichhorn @@ -98,8 +98,7 @@ class Controller extends ModuleAbstract implements WebInterface $view->setTemplate('/Modules/Calendar/Theme/Backend/calendar-dashboard'); $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1001201001, $request, $response)); - $mapper = new CalendarMapper($this->app->dbPool->get()); - $calendar = $mapper->get(1); + $calendar = CalendarMapper::get(1); $calendar->setDate(new SmartDateTime($request->getData('date') ?? 'now')); $view->addData('calendar', $calendar); diff --git a/Models/CalendarMapper.php b/Models/CalendarMapper.php index ddca68e..38bc236 100644 --- a/Models/CalendarMapper.php +++ b/Models/CalendarMapper.php @@ -32,6 +32,13 @@ use phpOMS\DataStorage\Database\Query\Column; */ class CalendarMapper extends DataMapperAbstract { + /** + * Class name for . + * + * @var array + * @since 1.0.0 + */ + protected static $CLASS = __CLASS__; /** * Columns. @@ -98,12 +105,12 @@ class CalendarMapper extends DataMapperAbstract * @since 1.0.0 * @author Dennis Eichhorn */ - public function create($obj) + public static function create($obj, bool $relations = true) { try { - $objId = parent::create($obj); - $query = new Builder($this->db); - $query->prefix($this->db->getPrefix()) + $objId = parent::create($obj, $relations); + $query = new Builder(self::$db); + $query->prefix(self::$db->getPrefix()) ->insert( 'account_permission_account', 'account_permission_from', @@ -119,7 +126,7 @@ class CalendarMapper extends DataMapperAbstract ->into('account_permission') ->values($obj->getCreatedBy(), 'calendar', 'calendar', 1, $objId, 1, 1, 1, 1, 1); - $this->db->con->prepare($query->toSql())->execute(); + self::$db->con->prepare($query->toSql())->execute(); } catch (\Exception $e) { return false; } @@ -137,7 +144,7 @@ class CalendarMapper extends DataMapperAbstract * @since 1.0.0 * @author Dennis Eichhorn */ - public function find(...$columns) : Builder + public static function find(...$columns) : Builder { return parent::find(...$columns)->from('account_permission') ->where('account_permission.account_permission_for', '=', 'calendar') diff --git a/Models/EventMapper.php b/Models/EventMapper.php index 84c19f7..8ca23f0 100644 --- a/Models/EventMapper.php +++ b/Models/EventMapper.php @@ -99,13 +99,13 @@ class EventMapper extends DataMapperAbstract * @since 1.0.0 * @author Dennis Eichhorn */ - public function create($obj) + public static function create($obj, bool $relations = true) { try { - $objId = parent::create($obj); - $query = new Builder($this->db); + $objId = parent::create($obj, $relations); + $query = new Builder(self::$db); - $query->prefix($this->db->getPrefix()) + $query->prefix(self::$db->getPrefix()) ->insert( 'account_permission_account', 'account_permission_from', @@ -121,7 +121,7 @@ class EventMapper extends DataMapperAbstract ->into('account_permission') ->values($obj->getCreatedBy(), 'calendar_event', 'calendar_event', 1, $objId, 1, 1, 1, 1, 1); - $this->db->con->prepare($query->toSql())->execute(); + self::$db->con->prepare($query->toSql())->execute(); } catch (\Exception $e) { var_dump($e->getMessage()); @@ -141,7 +141,7 @@ class EventMapper extends DataMapperAbstract * @since 1.0.0 * @author Dennis Eichhorn */ - public function find(...$columns) : Builder + public static function find(...$columns) : Builder { return parent::find(...$columns)->from('account_permission') ->where('account_permission.account_permission_for', '=', 'calendar_event') diff --git a/Models/ScheduleMapper.php b/Models/ScheduleMapper.php index 31a0413..faace6c 100644 --- a/Models/ScheduleMapper.php +++ b/Models/ScheduleMapper.php @@ -89,12 +89,12 @@ class ScheduleMapper extends DataMapperAbstract * @since 1.0.0 * @author Dennis Eichhorn */ - public function create($obj) + public static function create($obj, bool $relations = true) { try { - $objId = parent::create($obj); - $query = new Builder($this->db); - $query->prefix($this->db->getPrefix()) + $objId = parent::create($obj, $relations); + $query = new Builder(self::$db); + $query->prefix(self::$db->getPrefix()) ->insert( 'account_permission_account', 'account_permission_from', @@ -110,7 +110,7 @@ class ScheduleMapper extends DataMapperAbstract ->into('account_permission') ->values($obj->getCreatedBy(), 'schedule', 'schedule', 1, $objId, 1, 1, 1, 1, 1); - $this->db->con->prepare($query->toSql())->execute(); + self::$db->con->prepare($query->toSql())->execute(); } catch (\Exception $e) { var_dump($e->getMessage()); @@ -130,7 +130,7 @@ class ScheduleMapper extends DataMapperAbstract * @since 1.0.0 * @author Dennis Eichhorn */ - public function find(...$columns) : Builder + public static function find(...$columns) : Builder { return parent::find(...$columns)->from('account_permission') ->where('account_permission.account_permission_for', '=', 'calendar')