aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2016-01-15 16:47:17 +0100
committerRobin Appelman <icewind@owncloud.com>2016-01-18 12:09:01 +0100
commitebd15fd5edbce1c173af885e61f9a1fbd1b4e33e (patch)
tree581a4a794fbacda04494a8eab7e8a09ca2d1f979 /lib/private
parent895fd49fb26da4c00ab8c64a45d58dae41fd7962 (diff)
downloadnextcloud-server-ebd15fd5edbce1c173af885e61f9a1fbd1b4e33e.tar.gz
nextcloud-server-ebd15fd5edbce1c173af885e61f9a1fbd1b4e33e.zip
handle bool in setValue
Diffstat (limited to 'lib/private')
-rw-r--r--lib/private/db/connection.php16
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/private/db/connection.php b/lib/private/db/connection.php
index 2d7545df36e..a961c84f372 100644
--- a/lib/private/db/connection.php
+++ b/lib/private/db/connection.php
@@ -242,6 +242,16 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection {
return $this->adapter->insertIfNotExist($table, $input, $compare);
}
+ private function getType($value) {
+ if (is_bool($value)) {
+ return \PDO::PARAM_BOOL;
+ } else if (is_int($value)) {
+ return \PDO::PARAM_INT;
+ } else {
+ return \PDO::PARAM_STR;
+ }
+ }
+
/**
* Insert or update a row value
*
@@ -259,7 +269,7 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection {
$insertQb->insert($table)
->values(
array_map(function($value) use ($insertQb) {
- return $insertQb->createNamedParameter($value);
+ return $insertQb->createNamedParameter($value, $this->getType($value));
}, array_merge($keys, $values))
);
return $insertQb->execute();
@@ -268,13 +278,13 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection {
$updateQb = $this->getQueryBuilder();
$updateQb->update($table);
foreach ($values as $name => $value) {
- $updateQb->set($name, $updateQb->createNamedParameter($value));
+ $updateQb->set($name, $updateQb->createNamedParameter($value), $this->getType($value));
}
$where = $updateQb->expr()->andx();
$whereValues = array_merge($keys, $updatePreconditionValues);
foreach ($whereValues as $name => $value) {
$where->add($updateQb->expr()->eq(
- $name, $updateQb->createNamedParameter($value)
+ $name, $updateQb->createNamedParameter($value, $this->getType($value))
));
}
$updateQb->where($where);