Update database.php

This commit is contained in:
FusionPBX
2020-02-08 15:53:32 -07:00
committed by GitHub
parent fb658a4e97
commit f41e989c7f
+63 -60
View File
@@ -711,23 +711,25 @@ include "root.php";
//exit; //exit;
//get the current data //get the current data
foreach($delete_array as $table_name => $rows) { if (is_array($delete_array)) {
foreach($rows as $row) { foreach($delete_array as $table_name => $rows) {
$i = 0; foreach($rows as $row) {
$sql = "select * from ".$table_prefix.$table_name." "; $i = 0;
foreach($row as $field_name => $field_value) { $sql = "select * from ".$table_prefix.$table_name." ";
if ($i == 0) { $sql .= "where "; } else { $sql .= "and "; } foreach($row as $field_name => $field_value) {
$sql .= $field_name." = :".$field_name." "; if ($i == 0) { $sql .= "where "; } else { $sql .= "and "; }
$parameters[$field_name] = $field_value; $sql .= $field_name." = :".$field_name." ";
$i++; $parameters[$field_name] = $field_value;
} $i++;
if (strlen($field_value) > 0) {
$results = $this->execute($sql, $parameters, 'row');
if (is_array($results)) {
$array[$table_name][] = $results;
} }
if (strlen($field_value) > 0) {
$results = $this->execute($sql, $parameters, 'row');
if (is_array($results)) {
$array[$table_name][] = $results;
}
}
unset($parameters);
} }
unset($parameters);
} }
} }
@@ -738,53 +740,54 @@ include "root.php";
$this->db->beginTransaction(); $this->db->beginTransaction();
//delete the current data //delete the current data
foreach($delete_array as $table_name => $rows) { if (is_array($delete_array)) {
//echo "table: ".$table_name."\n"; foreach($delete_array as $table_name => $rows) {
foreach($rows as $row) { //echo "table: ".$table_name."\n";
if (permission_exists($this->singular($table_name).'_delete')) { foreach($rows as $row) {
$sql = "delete from ".$table_prefix.$table_name." "; if (permission_exists($this->singular($table_name).'_delete')) {
$i = 0; $sql = "delete from ".$table_prefix.$table_name." ";
foreach($row as $field_name => $field_value) { $i = 0;
//echo "field: ".$field_name." = ".$field_value."\n"; foreach($row as $field_name => $field_value) {
if ($i == 0) { $sql .= "where "; } else { $sql .= "and "; } //echo "field: ".$field_name." = ".$field_value."\n";
$sql .= $field_name." = :".$field_name." "; if ($i == 0) { $sql .= "where "; } else { $sql .= "and "; }
$parameters[$field_name] = $field_value; $sql .= $field_name." = :".$field_name." ";
$i++; $parameters[$field_name] = $field_value;
} $i++;
try {
$this->execute($sql, $parameters);
$message["message"] = "OK";
$message["code"] = "200";
$message["uuid"] = $id;
$message["details"][$m]["name"] = $this->name;
$message["details"][$m]["message"] = "OK";
$message["details"][$m]["code"] = "200";
//$message["details"][$m]["uuid"] = $parent_key_value;
if ($this->debug["sql"]) {
$message["details"][$m]["sql"] = $sql;
} }
$this->message = $message; try {
$m++; $this->execute($sql, $parameters);
unset($sql); $message["message"] = "OK";
unset($statement); $message["code"] = "200";
} $message["uuid"] = $id;
catch(PDOException $e) { $message["details"][$m]["name"] = $this->name;
$message["message"] = "Bad Request"; $message["details"][$m]["message"] = "OK";
$message["code"] = "400"; $message["details"][$m]["code"] = "200";
$message["details"][$m]["name"] = $this->name; //$message["details"][$m]["uuid"] = $parent_key_value;
$message["details"][$m]["message"] = $e->getMessage(); if ($this->debug["sql"]) {
$message["details"][$m]["code"] = "400"; $message["details"][$m]["sql"] = $sql;
if ($this->debug["sql"]) { }
$message["details"][$m]["sql"] = $sql; $this->message = $message;
$m++;
unset($sql);
unset($statement);
} }
catch(PDOException $e) {
$this->message = $message; $message["message"] = "Bad Request";
$m++; $message["code"] = "400";
} $message["details"][$m]["name"] = $this->name;
unset($parameters); $message["details"][$m]["message"] = $e->getMessage();
} //if permission $message["details"][$m]["code"] = "400";
} //foreach rows if ($this->debug["sql"]) {
} //foreach $array $message["details"][$m]["sql"] = $sql;
}
$this->message = $message;
$m++;
}
unset($parameters);
} //if permission
} //foreach rows
} //foreach $array
}
//commit the atomic transaction //commit the atomic transaction
$this->db->commit(); $this->db->commit();