X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=module%2FGalerie%2Fsrc%2FGalerie%2FModel%2FGalerieInfoTable.php;h=a0b3421fb76b91353b39648960b487241c1ab6d9;hb=aa1c7f5a2437df40f75e7f2ff907c8e314593680;hp=2acd45dc83b0dd9094a653019bf63b12fd9e509b;hpb=28cdd0be52fbcc4c1f3bad307d0c5ca75652b89a;p=zf2.biz%2Fgalerie.git diff --git a/module/Galerie/src/Galerie/Model/GalerieInfoTable.php b/module/Galerie/src/Galerie/Model/GalerieInfoTable.php index 2acd45d..a0b3421 100644 --- a/module/Galerie/src/Galerie/Model/GalerieInfoTable.php +++ b/module/Galerie/src/Galerie/Model/GalerieInfoTable.php @@ -43,7 +43,7 @@ class GalerieInfoTable implements TableGatewayInterface public function select($where = null) { $select = $this->sql->select() - ->columns(array('name', 'description')) + ->columns(array('id', 'name', 'description')) ->join('user', 'gallery.id_user = user.id', array( 'username' => new \Zend\Db\Sql\Expression("user.firstname || ' ' || user.lastname") )) @@ -87,4 +87,37 @@ class GalerieInfoTable implements TableGatewayInterface throw new \Exception('delete is not allowed'); } + public function all() + { + return $this->select(); + } + + public function one($id) + { + if ($id === null) { + $row = null; + } else { + $row = $this->select(array('gallery.id' => (int) $id))->current(); + } + if (!$row) { + throw new \Exception("cannot get row {id: {$id}} in table 'galerie'"); + } + return $row; + } + + public function any($id) + { + if ($id === null) { + $row = null; + } else { + $row = $this->select(array('gallery.id' => (int) $id))->current(); + } + return $row; + } + + public function all_by_user($id_user) + { + return $this->select(array('gallery.id_user' => (int) $id_user)); + } + }