mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2026-01-06 11:43:50 +00:00
Re-use the database object
This commit is contained in:
@@ -39,13 +39,12 @@
|
||||
public function __construct($params = []) {
|
||||
|
||||
//preset the the values
|
||||
$database = null;
|
||||
$settings = null;
|
||||
$domain_uuid = null;
|
||||
|
||||
//use the parameters to set the values if they exist
|
||||
if (isset($params['database'])) {
|
||||
$database = $params['database'];
|
||||
$this->database = $params['database'];
|
||||
}
|
||||
if (isset($params['settings'])) {
|
||||
$settings = $params['settings'];
|
||||
@@ -55,20 +54,19 @@
|
||||
}
|
||||
|
||||
//check if we can use the settings object to get the database object
|
||||
if (!empty($settings) && empty($database)) {
|
||||
$database = $settings->database();
|
||||
if (!empty($settings) && empty($this->database)) {
|
||||
$this->database = $settings->database();
|
||||
}
|
||||
|
||||
//fill in missing
|
||||
if (empty($database)) {
|
||||
$database = database::new();
|
||||
if (empty($this->database)) {
|
||||
$this->database = database::new();
|
||||
}
|
||||
if (empty($settings)) {
|
||||
$settings = new settings(['database' => $database, 'domain_uuid' => $domain_uuid]);
|
||||
$settings = new settings(['database' => $this->database, 'domain_uuid' => $domain_uuid]);
|
||||
}
|
||||
|
||||
//assign to the object
|
||||
$this->database = $database;
|
||||
$this->settings = $settings;
|
||||
$this->domain_uuid = $domain_uuid;
|
||||
|
||||
@@ -142,8 +140,7 @@
|
||||
$sql .= "where device_address = :device_address ";
|
||||
$sql .= "and device_address <> '000000000000' ";
|
||||
$parameters['device_address'] = $device_address;
|
||||
$database = new database;
|
||||
$num_rows = $database->select($sql, $parameters, 'column');
|
||||
$num_rows = $this->database->select($sql, $parameters, 'column');
|
||||
if ($num_rows > 0) {
|
||||
return true;
|
||||
}
|
||||
@@ -236,8 +233,7 @@
|
||||
$parameters['device_user_uuid'] = $device_user_uuid;
|
||||
}
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
$database = new database;
|
||||
$database_contacts = $database->select($sql, $parameters, 'all');
|
||||
$database_contacts = $this->database->select($sql, $parameters, 'all');
|
||||
if (is_array($database_contacts)) {
|
||||
$x = 0;
|
||||
foreach ($database_contacts as &$row) {
|
||||
@@ -312,8 +308,7 @@
|
||||
$sql = "select domain_name from v_domains ";
|
||||
$sql .= "where domain_uuid = :domain_uuid ";
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
$database = new database;
|
||||
$domain_name = $database->select($sql, $parameters, 'column');
|
||||
$domain_name = $this->database->select($sql, $parameters, 'column');
|
||||
unset($sql, $parameters);
|
||||
}
|
||||
|
||||
@@ -341,8 +336,7 @@
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
}
|
||||
$parameters['device_address'] = $device_address;
|
||||
$database = new database;
|
||||
$row = $database->select($sql, $parameters, 'row');
|
||||
$row = $this->database->select($sql, $parameters, 'row');
|
||||
unset($sql, $parameters);
|
||||
|
||||
if (is_array($row) && sizeof($row) != 0) {
|
||||
@@ -370,8 +364,7 @@
|
||||
$parameters['device_provisioned_method'] = (isset($_SERVER["HTTPS"]) ? 'https' : 'http');
|
||||
$parameters['device_provisioned_ip'] = $_SERVER['REMOTE_ADDR'];
|
||||
$parameters['device_provisioned_agent'] = $_SERVER['HTTP_USER_AGENT'];
|
||||
$database = new database;
|
||||
$database->execute($sql, $parameters);
|
||||
$this->database->execute($sql, $parameters);
|
||||
unset($sql, $parameters);
|
||||
|
||||
//set the variables from values in the database
|
||||
@@ -398,8 +391,7 @@
|
||||
$sql .= "and device_enabled = 'true' ";
|
||||
$sql .= "limit 1 ";
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
$database = new database;
|
||||
$row = $database->select($sql, $parameters, 'row');
|
||||
$row = $this->database->select($sql, $parameters, 'row');
|
||||
if (!empty($row) && is_array($row) && sizeof($row) != 0) {
|
||||
$device_label = $row["device_label"];
|
||||
$device_template = $row["device_template"];
|
||||
@@ -566,14 +558,13 @@
|
||||
$p->add("device_edit", "temp");
|
||||
|
||||
//save to the data
|
||||
$database = new database;
|
||||
$database->app_name = 'devices';
|
||||
$database->app_uuid = '4efa1a1a-32e7-bf83-534b-6c8299958a8e';
|
||||
$this->database->app_name = 'devices';
|
||||
$this->database->app_uuid = '4efa1a1a-32e7-bf83-534b-6c8299958a8e';
|
||||
if (!empty($device_uuid)) {
|
||||
$database->uuid($device_uuid);
|
||||
$this->database->uuid($device_uuid);
|
||||
}
|
||||
$database->save($array);
|
||||
$message = $database->message;
|
||||
$this->database->save($array);
|
||||
$message = $this->database->message;
|
||||
|
||||
//remove the temporary permission
|
||||
$p->delete("device_add", "temp");
|
||||
@@ -592,8 +583,7 @@
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
}
|
||||
$parameters['device_uuid'] = $device_uuid;
|
||||
$database = new database;
|
||||
$row = $database->select($sql, $parameters, 'row');
|
||||
$row = $this->database->select($sql, $parameters, 'row');
|
||||
if (is_array($row) && sizeof($row) != 0) {
|
||||
$device_uuid_alternate = $row["device_uuid_alternate"];
|
||||
unset($sql, $row, $parameters);
|
||||
@@ -608,8 +598,7 @@
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
}
|
||||
$parameters['device_uuid'] = $device_uuid;
|
||||
$database = new database;
|
||||
$row = $database->select($sql, $parameters, 'row');
|
||||
$row = $this->database->select($sql, $parameters, 'row');
|
||||
if (is_array($row) && sizeof($row) != 0) {
|
||||
if ($row["device_enabled"] == "true") {
|
||||
$device_label = $row["device_label"];
|
||||
@@ -634,8 +623,7 @@
|
||||
$sql .= "where device_profile_uuid = :device_profile_uuid ";
|
||||
$sql .= "and profile_setting_enabled = 'true' ";
|
||||
$parameters['device_profile_uuid'] = $device_profile_uuid;
|
||||
$database = new database;
|
||||
$device_profile_settings = $database->select($sql, $parameters, 'all');
|
||||
$device_profile_settings = $this->database->select($sql, $parameters, 'all');
|
||||
if (is_array($device_profile_settings) && sizeof($device_profile_settings) != 0) {
|
||||
foreach($device_profile_settings as $row) {
|
||||
$key = $row['profile_setting_name'];
|
||||
@@ -652,8 +640,7 @@
|
||||
$sql .= "where device_uuid = :device_uuid ";
|
||||
$sql .= "and device_setting_enabled = 'true' ";
|
||||
$parameters['device_uuid'] = $device_uuid;
|
||||
$database = new database;
|
||||
$device_settings = $database->select($sql, $parameters, 'all');
|
||||
$device_settings = $this->database->select($sql, $parameters, 'all');
|
||||
if (is_array($device_settings) && sizeof($device_settings) != 0) {
|
||||
foreach($device_settings as $row) {
|
||||
$key = $row['device_setting_subcategory'];
|
||||
@@ -693,9 +680,8 @@
|
||||
$sql .= "where device_uuid = :device_uuid ";
|
||||
$sql .= "and (enabled = 'true' or enabled is null or enabled = '') ";
|
||||
$parameters['device_uuid'] = $device_uuid;
|
||||
$database = new database;
|
||||
//$database_device_lines = $database->select($sql, $parameters, 'all');
|
||||
foreach ($database->select($sql, $parameters, 'all') as $row) {
|
||||
//$database_device_lines = $this->database->select($sql, $parameters, 'all');
|
||||
foreach ($this->database->select($sql, $parameters, 'all') as $row) {
|
||||
$id = $row['line_number'];
|
||||
$device_lines[$id] = $row;
|
||||
}
|
||||
@@ -739,8 +725,7 @@
|
||||
$sql .= "cast(profile_key_id as numeric) asc ";
|
||||
}
|
||||
$parameters['device_profile_uuid'] = $device_profile_uuid;
|
||||
$database = new database;
|
||||
$keys = $database->select($sql, $parameters, 'all');
|
||||
$keys = $this->database->select($sql, $parameters, 'all');
|
||||
|
||||
//add the profile keys to the device keys array
|
||||
if (is_array($keys) && sizeof($keys) != 0) {
|
||||
@@ -793,8 +778,7 @@
|
||||
$sql .= "cast(device_key_id as numeric) asc ";
|
||||
}
|
||||
$parameters['device_uuid'] = $device_uuid;
|
||||
$database = new database;
|
||||
$keys = $database->select($sql, $parameters, 'all');
|
||||
$keys = $this->database->select($sql, $parameters, 'all');
|
||||
|
||||
//override profile keys with the device keys
|
||||
if (is_array($keys)) {
|
||||
@@ -932,8 +916,7 @@
|
||||
$sql .= "and directory_visible = 'true' ";
|
||||
$sql .= "order by number_alias, extension asc ";
|
||||
$parameters['domain_uuid'] = $domain_uuid;
|
||||
$database = new database;
|
||||
$extensions = $database->select($sql, $parameters, 'all');
|
||||
$extensions = $this->database->select($sql, $parameters, 'all');
|
||||
if (is_array($extensions) && sizeof($extensions) != 0) {
|
||||
foreach ($extensions as $row) {
|
||||
//get the contact_uuid
|
||||
@@ -1162,8 +1145,7 @@
|
||||
if (is_uuid($device_user_uuid)) {
|
||||
$sql = "select contact_uuid from v_users where user_uuid = :device_user_uuid ";
|
||||
$parameters['device_user_uuid'] = $device_user_uuid;
|
||||
$database = new database;
|
||||
$contact_uuid = $database->select($sql, $parameters, 'column');
|
||||
$contact_uuid = $this->database->select($sql, $parameters, 'column');
|
||||
$view->assign("ldap_username", "uid=" . $contact_uuid . "," . $this->settings->get('provision','grandstream_ldap_user_base', ''));
|
||||
$view->assign("ldap_password",md5($laddr_salt.$device_user_uuid));
|
||||
unset($sql, $parameters);
|
||||
@@ -1295,8 +1277,7 @@
|
||||
$sql = "select * from v_devices ";
|
||||
//$sql .= "where domain_uuid = :domain_uuid ";
|
||||
//$parameters['domain_uuid'] = $this->domain_uuid;
|
||||
$database = new database;
|
||||
$result = $database->select($sql, null, 'all');
|
||||
$result = $this->database->select($sql, null, 'all');
|
||||
|
||||
//process each device
|
||||
if (is_array($result)) {
|
||||
@@ -1306,7 +1287,7 @@
|
||||
$device_uuid = $row["device_uuid"];
|
||||
$device_address = $row["device_address"];
|
||||
$device_label = $row["device_label"];
|
||||
$device_vendor = strtolower($row["device_vendor"]);
|
||||
$device_vendor = strtolower($row["device_vendor"] ?? '');
|
||||
$device_model = $row["device_model"];
|
||||
$device_firmware_version = $row["device_firmware_version"];
|
||||
$device_enabled = $row["device_enabled"];
|
||||
|
||||
Reference in New Issue
Block a user