summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxence Lange <maxence@artificial-owl.com>2019-06-02 09:23:04 -0100
committerMaxence Lange <maxence@artificial-owl.com>2019-06-02 09:23:04 -0100
commit4f54b0cae5f0a2435b2b57ce515db48f66dcb9b8 (patch)
treed468290a7c531dade09bdf7a87024029ce6e7e20
parent0b4e325838827ffbc62929a46f4be6c19c8e3836 (diff)
avoid empty boolean value
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
-rw-r--r--lib/Migration/Version0002Date20190506000001.php17
1 files changed, 15 insertions, 2 deletions
diff --git a/lib/Migration/Version0002Date20190506000001.php b/lib/Migration/Version0002Date20190506000001.php
index bf32139f..e11fba08 100644
--- a/lib/Migration/Version0002Date20190506000001.php
+++ b/lib/Migration/Version0002Date20190506000001.php
@@ -1161,6 +1161,8 @@ class Version0002Date20190506000001 extends SimpleMigrationStep {
* @param string $source
* @param string $dest
* @param array $fields
+ *
+ * @throws Exception
*/
private function duplicateTable(
ISchemaWrapper $schema, string $source, string $dest, array $fields
@@ -1200,6 +1202,13 @@ class Version0002Date20190506000001 extends SimpleMigrationStep {
'published_time'
];
+ $booleanFields = [
+ 'local',
+ 'public',
+ 'accepted',
+ 'hidden_on_timeline'
+ ];
+
foreach ($fields as $field) {
$value = $this->get($field, $data, '');
if ($field === 'id_prim'
@@ -1207,19 +1216,23 @@ class Version0002Date20190506000001 extends SimpleMigrationStep {
&& $this->get('id', $data, '') !== '') {
$value = hash('sha512', $this->get('id', $data, ''));
}
-
+
if (in_array($field, $datetimeFields) && $value === '') {
$insert->setValue(
$field,
$insert->createNamedParameter(new DateTime('now'), IQueryBuilder::PARAM_DATE)
);
+ } else if (in_array($field, $booleanFields) && $value === '') {
+ $insert->setValue(
+ $field, $insert->createNamedParameter('0')
+ );
} else {
$insert->setValue(
$field, $insert->createNamedParameter($value)
);
}
}
-
+
try {
$insert->execute();
} catch (UniqueConstraintViolationException $e) {