Making datamapper static

This commit is contained in:
Dennis Eichhorn 2016-05-14 14:58:33 +02:00
parent 8c3955371c
commit 24a3a2fac2
3 changed files with 12 additions and 18 deletions

View File

@ -19,16 +19,12 @@ use Modules\Media\Models\Media;
use Modules\Media\Models\MediaMapper;
use Modules\Media\Models\UploadFile;
use Modules\Media\Models\UploadStatus;
use Modules\Navigation\Models\Navigation;
use Modules\Navigation\Views\NavigationView;
use phpOMS\Asset\AssetType;
use phpOMS\Contract\RenderableInterface;
use phpOMS\Message\RequestAbstract;
use phpOMS\Message\ResponseAbstract;
use phpOMS\Module\ModuleAbstract;
use phpOMS\Module\WebInterface;
use phpOMS\Views\View;
use phpOMS\Views\ViewLayout;
/**
* Media class.
@ -107,7 +103,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 <d.eichhorn@oms.com>
@ -126,7 +122,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 <d.eichhorn@oms.com>
@ -137,8 +133,7 @@ class Controller extends ModuleAbstract implements WebInterface
$view->setTemplate('/Modules/Media/Theme/Backend/media-single');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000401001, $request, $response));
$mediaMapper = new MediaMapper($this->app->dbPool->get());
$view->addData('media', $mediaMapper->get($request->getData('id')));
$view->addData('media', MediaMapper::get($request->getData('id')));
return $view;
}
@ -148,7 +143,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 <d.eichhorn@oms.com>
@ -236,7 +231,6 @@ class Controller extends ModuleAbstract implements WebInterface
public function createDbEntries(array $status, int $account) : array
{
$mediaCreated = [];
$mediaMapper = new MediaMapper($this->app->dbPool->get());
foreach ($status as $uFile) {
if ($uFile['status'] === UploadStatus::OK) {
@ -248,7 +242,7 @@ class Controller extends ModuleAbstract implements WebInterface
$media->setCreatedAt(new \DateTime('NOW'));
$media->setExtension($uFile['extension']);
$mediaCreated[] = $mediaMapper->create($media);
$mediaCreated[] = MediaMapper::create($media);
}
}

View File

@ -64,7 +64,7 @@ class CollectionMapper extends MediaMapper
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function find(...$columns) : Builder
public static function find(...$columns) : Builder
{
return parent::find(...$columns)->from('account_permission')
->where('account_permission.account_permission_for', '=', 'news')

View File

@ -75,12 +75,12 @@ class MediaMapper extends DataMapperAbstract
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
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',
@ -96,7 +96,7 @@ class MediaMapper extends DataMapperAbstract
->into('account_permission')
->values($obj->getCreatedBy(), 'media', 'media', 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;
}
@ -114,7 +114,7 @@ class MediaMapper extends DataMapperAbstract
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function find(...$columns) : Builder
public static function find(...$columns) : Builder
{
return parent::find(...$columns)->from('account_permission')
->where('account_permission.account_permission_for', '=', 'media')