diff --git a/app/extensions/extension_copy.php b/app/extensions/extension_copy.php
index fc3936beb0..9148d21b6b 100644
--- a/app/extensions/extension_copy.php
+++ b/app/extensions/extension_copy.php
@@ -38,6 +38,9 @@
exit;
}
+//initialize the database object
+ $database = new database;
+
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -66,7 +69,6 @@
$sql .= "and extension_uuid = :extension_uuid ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$parameters['extension_uuid'] = $extension_uuid;
- $database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && @sizeof($row) != 0) {
$extension = $row["extension"];
@@ -140,9 +142,7 @@
$array['extensions'][0]['extension_type'] = $extension_type;
$array['extensions'][0]['enabled'] = $enabled;
$array['extensions'][0]['description'] = $description;
- $database = new database;
$database->save($array);
- $message = $database->message;
unset($array);
//get the source extension voicemail data
@@ -154,7 +154,6 @@
$sql .= "and voicemail_id = :voicemail_id ";
$parameters['voicemail_id'] = is_numeric($number_alias) ? $number_alias : $extension;
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
- $database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && @sizeof($row) != 0) {
$voicemail_mailto = $row["voicemail_mail_to"];
diff --git a/app/extensions/extension_download.php b/app/extensions/extension_download.php
index 6b72f49cbd..30909f4822 100644
--- a/app/extensions/extension_download.php
+++ b/app/extensions/extension_download.php
@@ -38,6 +38,9 @@
exit;
}
+//initialize the database object
+ $database = new database;
+
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -148,7 +151,6 @@
$sql = "select ".implode(', ', $selected_columns)." from v_extensions ";
$sql .= "where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
- $database = new database;
$extensions = $database->select($sql, $parameters, 'all');
unset($sql, $parameters, $selected_columns);
@@ -180,7 +182,7 @@
echo $text['description-extension_export'];
echo "
\n";
-
+
echo "
| \n"; diff --git a/app/extensions/extension_edit.php b/app/extensions/extension_edit.php index dde5950aa9..3b92172229 100644 --- a/app/extensions/extension_edit.php +++ b/app/extensions/extension_edit.php @@ -38,6 +38,9 @@ exit; } +//initialize the database object + $database = new database; + //add multi-lingual support $language = new text; $text = $language->get(); @@ -59,7 +62,6 @@ $sql .= "from v_extensions "; $sql .= "where domain_uuid = :domain_uuid "; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; - $database = new database; $total_extensions = $database->select($sql, $parameters, 'column'); unset($sql, $parameters); @@ -81,7 +83,6 @@ else { //lookup extension based on submitted uuid $sql = "select extension from v_extensions where extension_uuid = :extension_uuid"; $parameters['extension_uuid'] = $extension_uuid; - $database = new database; $extension = $database->select($sql, $parameters, 'column'); unset($sql, $parameters); } @@ -186,7 +187,6 @@ } $sql .= "order by device_address asc "; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $total_devices = $database->select($sql, $parameters, 'column'); unset($sql, $parameters); @@ -227,7 +227,6 @@ $sql .= "d1.domain_uuid = d2.domain_uuid and "; $sql .= "d1.device_address = :device_address "; $parameters['device_address'] = $device_address; - $database = new database; $row = $database->select($sql, $parameters, 'row'); if (is_array($row)) { if ($_SESSION['domain_uuid'] == $row['domain_uuid']) { @@ -266,7 +265,6 @@ $p->add('extension_user_delete', 'temp'); //save the array - $database = new database; $database->app_name = 'extensions'; $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; $database->delete($array); @@ -294,7 +292,6 @@ $p->add('device_line_delete', 'temp'); //save the array - $database = new database; $database->app_name = 'extensions'; $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; $database->delete($array); @@ -690,7 +687,6 @@ $sql .= "and domain_uuid = :domain_uuid "; $parameters['voicemail_id'] = $voicemail_id; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $row = $database->select($sql, $parameters, 'row'); if (is_array($row) && @sizeof($row) != 0) { $voicemail_uuid = $row["voicemail_uuid"]; @@ -766,7 +762,6 @@ $parameters['domain_uuid'] = $_SESSION['domain_uuid']; $parameters['server_address'] = $_SESSION['domain_name']; $parameters['user_id'] = $extension; - $database = new database; $database->execute($sql, $parameters); unset($sql, $parameters); } @@ -780,23 +775,20 @@ $parameters['device_key_label'] = $effective_caller_id_name; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; $parameters['device_key_value'] = $extension; - $database = new database; $database->execute($sql, $parameters); unset($sql, $parameters); } //save to the data - $database = new database; $database->app_name = 'extensions'; $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; - $database->save($array); - $message = $database->message; + $message = $database->save($array); unset($array); - //reload acl if allowed + //reload the access control list if (permission_exists("extension_cidr")) { - $esl = event_socket::create(); - if ($esl->is_connected()) { event_socket::api("reloadacl"); } + $event_socket = event_socket::create(); + if ($event_socket->is_connected()) { event_socket::api("reloadacl"); } } //check the permissions @@ -824,7 +816,6 @@ $sql = "select user_context from v_extensions "; $sql .= "where extension_uuid = :extension_uuid "; $parameters['extension_uuid'] = $extension_uuid; - $database = new database; $user_context = $database->select($sql, $parameters, 'column'); } $cache = new cache; @@ -863,7 +854,6 @@ $sql = "select * from v_extensions "; $sql .= "where extension_uuid = :extension_uuid "; $parameters['extension_uuid'] = $extension_uuid; - $database = new database; $row = $database->select($sql, $parameters, 'row'); if (is_array($row) && @sizeof($row) != 0) { $domain_uuid = $row["domain_uuid"]; @@ -924,7 +914,6 @@ $sql .= "and voicemail_id = :voicemail_id "; $parameters['domain_uuid'] = $domain_uuid; $parameters['voicemail_id'] = is_numeric($number_alias) ? $number_alias : $extension; - $database = new database; $row = $database->select($sql, $parameters, 'row'); if (is_array($row) && @sizeof($row) != 0) { $voicemail_password = str_replace("#", "", $row["voicemail_password"] ?? ''); @@ -956,7 +945,6 @@ $parameters['user_id_2'] = $number_alias ?? null; $parameters['password'] = $password ?? null; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $device_lines = $database->select($sql, $parameters, 'all'); unset($sql, $parameters); @@ -969,7 +957,6 @@ } $sql .= "order by device_address asc "; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $devices = $database->select($sql, $parameters, 'all'); if (!empty($devices) && is_array($devices)) { $total_devices = @sizeof($devices); @@ -981,7 +968,6 @@ $sql .= "from v_device_vendors "; $sql .= "where enabled = 'true' "; $sql .= "order by name asc "; - $database = new database; $device_vendors = $database->select($sql, null, 'all'); unset($sql); @@ -996,7 +982,6 @@ $sql .= "order by u.username asc "; $parameters['domain_uuid'] = $domain_uuid; $parameters['extension_uuid'] = $extension_uuid; - $database = new database; $assigned_users = $database->select($sql, $parameters, 'all'); if (is_array($assigned_users) && @sizeof($assigned_users) != 0) { foreach($assigned_users as $row) { @@ -1018,7 +1003,6 @@ $sql .= "and user_enabled = 'true' "; $sql .= "order by username asc "; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $users = $database->select($sql, $parameters, 'all'); unset($sql, $parameters, $assigned_user_uuids, $assigned_user_uuid); @@ -1028,7 +1012,6 @@ $sql .= "and destination_type = 'inbound' "; $sql .= "order by destination_number asc "; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $destinations = $database->select($sql, $parameters, 'all'); unset($sql, $parameters); @@ -1040,7 +1023,6 @@ $sql .= "and destination_type_emergency = 1 "; $sql .= "order by destination_number asc "; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; $emergency_destinations = $database->select($sql, $parameters, 'all'); unset($sql, $parameters); } @@ -2008,7 +1990,7 @@ echo "\n"; echo " |
|---|
| \n";
@@ -2331,4 +2313,4 @@
//include the footer
require_once "resources/footer.php";
-?>
+?>
\ No newline at end of file
diff --git a/app/extensions/extension_imports.php b/app/extensions/extension_imports.php
index 7bbdf6150b..5283eef89c 100644
--- a/app/extensions/extension_imports.php
+++ b/app/extensions/extension_imports.php
@@ -37,6 +37,9 @@
exit;
}
+//initialize the database object
+ $database = new database;
+
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -117,7 +120,7 @@
$schema[$i]['fields'][] = $field_name;
}
}
- $i++;
+ $i++;
}
}
@@ -246,14 +249,13 @@
//user selected fields
$fields = $_POST['fields'];
-
+
//set the domain_uuid
$domain_uuid = $_SESSION['domain_uuid'];
//get the users
$sql = "select * from v_users where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
- $database = new database;
$users = $database->select($sql, $parameters, 'all');
unset($sql, $parameters);
@@ -272,7 +274,7 @@
foreach ($fields as $key => $value) {
//get the line
$result = str_getcsv($line, $delimiter, $enclosure);
-
+
//get the table and field name
$field_array = explode(".",$value);
$table_name = $field_array[0];
@@ -280,7 +282,7 @@
//echo "value: $value \n"; //echo "table_name: $table_name \n"; //echo "field_name: $field_name \n"; - + //get the parent table name $parent = get_parent($schema, $table_name); @@ -322,7 +324,6 @@ if ($row_id === 1000) { //save to the data - $database = new database; $database->app_name = 'extensions'; $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; $database->save($array); @@ -342,7 +343,6 @@ //save to the data if (!empty($array) && is_array($array)) { - $database = new database; $database->app_name = 'extensions'; $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; $database->save($array); @@ -458,4 +458,4 @@ //include the footer require_once "resources/footer.php"; -?> +?> \ No newline at end of file diff --git a/app/extensions/extensions.php b/app/extensions/extensions.php index 8b7421e9f6..81d0d5e15a 100644 --- a/app/extensions/extensions.php +++ b/app/extensions/extensions.php @@ -39,6 +39,9 @@ exit; } +//initialize the database object + $database = new database; + //add multi-lingual support $language = new text; $text = $language->get(); @@ -85,7 +88,6 @@ $sql = "select count(*) from v_extensions "; $sql .= "where domain_uuid = :domain_uuid "; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; - $database = new database; $total_extensions = $database->select($sql, $parameters, 'column'); unset($sql, $parameters); } @@ -121,7 +123,6 @@ $sql .= ") "; $parameters['search'] = '%'.$search.'%'; } - $database = new database; $num_rows = $database->select($sql, $parameters ?? null, 'column'); //prepare to page the results @@ -198,7 +199,6 @@ } $sql .= order_by($order_by, $order, null, null, $sort); $sql .= limit_offset($rows_per_page, $offset); - $database = new database; $extensions = $database->select($sql, $parameters ?? null, 'all'); unset($sql, $parameters); @@ -436,4 +436,4 @@ //show the footer require_once "resources/footer.php"; -?> +?> \ No newline at end of file diff --git a/app/extensions/resources/classes/extension.php b/app/extensions/resources/classes/extension.php index 22c0e4410b..3599fa1c62 100644 --- a/app/extensions/resources/classes/extension.php +++ b/app/extensions/resources/classes/extension.php @@ -73,6 +73,7 @@ if (!class_exists('extension')) { public $enabled; public $description; public $delete_voicemail; + private $database; /** * declare private variables @@ -91,6 +92,11 @@ if (!class_exists('extension')) { */ public function __construct() { + //connect to the database + if (!isset($database)) { + $this->database = new database; + } + //assign private variables $this->app_name = 'extensions'; $this->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; @@ -113,8 +119,7 @@ if (!class_exists('extension')) { $sql .= "and enabled = 'true' "; $parameters['domain_uuid'] = $domain_uuid; $parameters['extension'] = $extension; - $database = new database; - return $database->select($sql, $parameters, 'column') != 0 ? true : false; + return $this->database->select($sql, $parameters, 'column') != 0 ? true : false; unset($sql, $parameters); } @@ -141,8 +146,7 @@ if (!class_exists('extension')) { $sql .= "and voicemail_id = :voicemail_id "; $parameters['domain_uuid'] = $this->domain_uuid; $parameters['voicemail_id'] = $this->voicemail_id; - $database = new database; - $voicemail_uuid = $database->select($sql, $parameters, 'column'); + $voicemail_uuid = $this->database->select($sql, $parameters, 'column'); unset($sql, $parameters); if (is_uuid($voicemail_uuid)) { @@ -170,10 +174,9 @@ if (!class_exists('extension')) { $array['voicemails'][0]['voicemail_enabled'] = $this->voicemail_enabled; $array['voicemails'][0]['voicemail_description'] = $this->description; //execute insert/update - $database = new database; - $database->app_name = 'extensions'; - $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; - $database->save($array); + $this->database->app_name = 'extensions'; + $this->database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; + $this->database->save($array); unset($array); //revoke temporary permissions $p->delete('voicemail_edit', 'temp'); @@ -204,8 +207,7 @@ if (!class_exists('extension')) { $sql .= "and coalesce(nullif(e.number_alias,''),e.extension) = cast(v.voicemail_id as varchar) "; $sql .= "order by e.call_group asc "; $parameters['domain_uuid'] = $domain_uuid; - $database = new database; - $rows = $database->select($sql, $parameters, 'all'); + $rows = $this->database->select($sql, $parameters, 'all'); unset($sql, $parameters); $extension_xml_condensed = false; @@ -567,8 +569,7 @@ if (!class_exists('extension')) { $sql .= "and extension_uuid = :extension_uuid "; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; $parameters['extension_uuid'] = $record['uuid']; - $database = new database; - $row = $database->select($sql, $parameters, 'row'); + $row = $this->database->select($sql, $parameters, 'row'); if (is_array($row) && @sizeof($row) != 0) { //for use below and to clear cache (bottom) @@ -622,8 +623,7 @@ if (!class_exists('extension')) { $sql .= "where domain_uuid = :domain_uuid "; $sql .= "and voicemail_id in ('".implode("','", $voicemail_ids)."') "; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; - $database = new database; - $rows = $database->select($sql, $parameters, 'all'); + $rows = $this->database->select($sql, $parameters, 'all'); if (is_array($rows) && @sizeof($rows) != 0) { foreach ($rows as $r => $row) { $voicemails[$r]['checked'] = 'true'; @@ -646,10 +646,9 @@ if (!class_exists('extension')) { $p->add('ring_group_destination_delete', 'temp'); //execute delete - $database = new database; - $database->app_name = $this->app_name; - $database->app_uuid = $this->app_uuid; - $database->delete($array); + $this->database->app_name = $this->app_name; + $this->database->app_uuid = $this->app_uuid; + $this->database->delete($array); unset($array); //revoke temporary permissions @@ -719,8 +718,7 @@ if (!class_exists('extension')) { $sql .= "where domain_uuid = :domain_uuid "; $sql .= "and ".$this->uuid_prefix."uuid in (".implode(', ', $uuids).") "; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; - $database = new database; - $rows = $database->select($sql, $parameters, 'all'); + $rows = $this->database->select($sql, $parameters, 'all'); if (is_array($rows) && @sizeof($rows) != 0) { foreach ($rows as $row) { //for use below and to clear cache (bottom) @@ -749,10 +747,9 @@ if (!class_exists('extension')) { $p->add('extension_edit', 'temp'); //save the array - $database = new database; - $database->app_name = $this->app_name; - $database->app_uuid = $this->app_uuid; - $database->save($array); + $this->database->app_name = $this->app_name; + $this->database->app_uuid = $this->app_uuid; + $this->database->save($array); unset($array); //revoke temporary permissions @@ -801,3 +798,4 @@ if (!class_exists('extension')) { } ?> + diff --git a/app/extensions/resources/dashboard/caller_id.php b/app/extensions/resources/dashboard/caller_id.php index 967900b419..e72a58eb85 100644 --- a/app/extensions/resources/dashboard/caller_id.php +++ b/app/extensions/resources/dashboard/caller_id.php @@ -95,8 +95,7 @@ //save to the data $database->app_name = 'extensions'; $database->app_uuid = 'e68d9689-2769-e013-28fa-6214bf47fca3'; - $database->save($array); - $message = $database->message; + $message = $database->save($array); //update the session array if ($message['message'] == 'OK' && $message['code'] == '200') { @@ -317,4 +316,4 @@ } -?> +?> \ No newline at end of file |