]> git.agnieray.net Git - galette.git/blobdiff - galette/lib/Galette/Entity/Entitled.php
Handle sequence on PostgreSQL for titles; closes #1374 refs #1158
[galette.git] / galette / lib / Galette / Entity / Entitled.php
index b1dd83d3d441b6dfec3400ffb03f15e97ea5ee2d..37d5821362d2772741099195de329e03a5d9ca9b 100644 (file)
@@ -182,23 +182,10 @@ abstract class Entitled
             $insert->values($values);
             $stmt = $this->zdb->sql->prepareStatementForSqlObject($insert);
 
-            if ($this->zdb->isPostgres()) {
-                //check for Postgres sequence
-                //see https://bugs.galette.eu/issues/1158
-                $expected = count(static::$defaults);
-                $seq = $this->table . '_id_seq';
-
-                $select = $this->zdb->select($seq);
-                $select->columns(['last_value']);
-                $results = $this->zdb->execute($select);
-                $result = $results->current();
-                if ($result->last_value < $expected) {
-                    $this->zdb->db->query(
-                        'SELECT setval(\'' . PREFIX_DB . $seq . '\', ' . $expected . ')',
-                        Adapter::QUERY_MODE_EXECUTE
-                    );
-                }
-            }
+            $this->zdb->handleSequence(
+                $this->table,
+                count(static::$defaults)
+            );
 
             $fnames = array_keys($values);
             foreach ($class::$defaults as $d) {