From c4c65240237a8e9a9dd5784e3e6f989d9a987a5c Mon Sep 17 00:00:00 2001 From: Mendel <44873735+rabbidiesel@users.noreply.github.com> Date: Fri, 26 Nov 2021 13:32:37 -0500 Subject: [PATCH 001/496] Updated Yealink t33g (#6158) * Update provision.php * Update y000000000124.cfg Added {$yealink_dnd_allow} so that you can remove DND from the phone --- app/provision/resources/classes/provision.php | 1 + resources/templates/provision/yealink/t33g/y000000000124.cfg | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/provision/resources/classes/provision.php b/app/provision/resources/classes/provision.php index d629f6ac2f..02cbfe1ad2 100644 --- a/app/provision/resources/classes/provision.php +++ b/app/provision/resources/classes/provision.php @@ -435,6 +435,7 @@ include "root.php"; $templates['Yealink SIP-T29G'] = 'yealink/t29g'; $templates['yealink SIP-T29P'] = 'yealink/t29p'; $templates['Yealink SIP-T32G'] = 'yealink/t32g'; + $templates['Yealink SIP-T33G'] = 'yealink/t33g'; $templates['Yealink SIP-T38G'] = 'yealink/t38g'; $templates['Yealink SIP-T40P'] = 'yealink/t40p'; $templates['Yealink SIP-T41G'] = 'yealink/t41g'; diff --git a/resources/templates/provision/yealink/t33g/y000000000124.cfg b/resources/templates/provision/yealink/t33g/y000000000124.cfg index ce88495c4e..d5b65ccf12 100644 --- a/resources/templates/provision/yealink/t33g/y000000000124.cfg +++ b/resources/templates/provision/yealink/t33g/y000000000124.cfg @@ -1151,7 +1151,7 @@ features.no_answer_code= ####################################################################################### ## DND ## ####################################################################################### -features.dnd.allow= +features.dnd.allow = {$yealink_dnd_allow} features.dnd_mode= features.dnd.enable= From 9fe891e64ced18b30fb135752ed687f5f8a77056 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 12:32:19 -0700 Subject: [PATCH 002/496] Create cidr.php --- resources/cidr.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 resources/cidr.php diff --git a/resources/cidr.php b/resources/cidr.php new file mode 100644 index 0000000000..3d8f7a2ad8 --- /dev/null +++ b/resources/cidr.php @@ -0,0 +1,18 @@ + From 1aaf1aa2fa97bded3149a7d7379b0c56efbd33ea Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 12:34:02 -0700 Subject: [PATCH 003/496] Add the new cidr.php file. --- resources/require.php | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/require.php b/resources/require.php index 31a620650e..ade0bd7a3b 100644 --- a/resources/require.php +++ b/resources/require.php @@ -123,6 +123,7 @@ require_once "resources/functions.php"; if ($config_exists) { require "resources/pdo.php"; + require_once "resources/cidr.php"; if (file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/switch.php")) { require_once "resources/switch.php"; } From ef5e5175c40df9dbecdaa491a38bf8ec5ca10d25 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 12:34:38 -0700 Subject: [PATCH 004/496] Update cidr.php --- resources/cidr.php | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/resources/cidr.php b/resources/cidr.php index 3d8f7a2ad8..00efa89f0b 100644 --- a/resources/cidr.php +++ b/resources/cidr.php @@ -1,4 +1,28 @@ + Portions created by the Initial Developer are Copyright (C) 20018-2021 + the Initial Developer. All Rights Reserved. + + Contributor(s): + Mark J Crane +*/ //check the domain cidr range if (isset($_SESSION['domain']["cidr"]) && !defined('STDIN')) { From 750177a51d16cb3ee1d8e0408e0669a02006b09c Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 12:35:45 -0700 Subject: [PATCH 005/496] Remove cidr from the pdo.php file. This was an awkward place for this code so moved it into its own include. --- resources/pdo.php | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/resources/pdo.php b/resources/pdo.php index fbf18c265f..a165a3735b 100644 --- a/resources/pdo.php +++ b/resources/pdo.php @@ -347,35 +347,4 @@ if ($db_type == "pgsql") { $domain_uuid = uuid(); } -//check the domain cidr range - if (isset($_SESSION['domain']["cidr"]) && !defined('STDIN')) { - $found = false; - foreach($_SESSION['domain']["cidr"] as $cidr) { - if (check_cidr($cidr, $_SERVER['REMOTE_ADDR'])) { - $found = true; - break; - } - } - if (!$found) { - echo "access denied"; - exit; - } - } - -//check the api cidr range - if (isset($_SESSION['api']["cidr"])) { - $found = false; - foreach($_SESSION['api']["cidr"] as $cidr) { - if (check_cidr($cidr, $_SERVER['REMOTE_ADDR'])) { - $found = true; - break; - } - } - if (!$found) { - unset ($_REQUEST['key']); - unset ($_POST['key']); - unset ($_GET['key']); - } - } - ?> From 91f27219253e196674943f8f46f264b60a8fa17b Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 13:11:20 -0700 Subject: [PATCH 006/496] Create auto_loader.php --- resources/classes/auto_loader.php | 101 ++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 resources/classes/auto_loader.php diff --git a/resources/classes/auto_loader.php b/resources/classes/auto_loader.php new file mode 100644 index 0000000000..5075b96087 --- /dev/null +++ b/resources/classes/auto_loader.php @@ -0,0 +1,101 @@ + + Portions created by the Initial Developer are Copyright (C) 2008-2021 + the Initial Developer. All Rights Reserved. + + Contributor(s): + Mark J Crane +*/ + +class auto_loader { + + public function __construct() { + spl_autoload_register(array($this, 'loader')); + } + + private function loader($class_name) { + //set the default value + $class_found = false; + + //sanitize the class name + $class_name = preg_replace('[^a-zA-Z0-9_]', '', $class_name); + + //save the log to the syslog server + if ($_REQUEST['debug'] == 'true') { + openlog("XML CDR", LOG_PID | LOG_PERROR, LOG_LOCAL0); + } + + //find the most relevant class name + if (!$class_found && file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/classes/".$class_name.".php")) { + //first priority + $path = $_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/classes/".$class_name.".php"; + $class_found = true; + if ($_REQUEST['debug'] == 'true') { + syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$path.", line: ".__line__); + } + include $path; + } + elseif (!$class_found && file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/core/".$class_name."/resources/classes/".$class_name.".php")) { + //second priority + $path = $_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/core/".$class_name."/resources/classes/".$class_name.".php"; + $class_found = true; + if ($_REQUEST['debug'] == 'true') { + syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$path.", line: ".__line__); + } + include $path; + } + elseif (!$class_found && file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/app/".$class_name."/resources/classes/".$class_name.".php")) { + //third priority + $path = $_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/app/".$class_name."/resources/classes/".$class_name.".php"; + $class_found = true; + if ($_REQUEST['debug'] == 'true') { + syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$path.", line: ".__line__); + } + include $path; + } + + //use glob for a more exensive search for the classes (note: GLOB_BRACE doesn't work on some systems) + if (!$class_found && !class_exists($class_name)) { + //fourth priority + $results_1 = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/*/*/resources/classes/".$class_name.".php"); + $results_2 = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/classes/".$class_name.".php"); + $results = array_merge((array)$results_1,(array)$results_2); + unset($results_1, $results_2); + foreach ($results as &$class_file) { + if (!$class_found) { + $class_found = true; + if ($_REQUEST['debug'] == 'true') { + syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$class_file.", line: ".__line__); + } + include $class_file; + break; + } + } + unset($results); + } + + //save the log to the syslog server + if ($_REQUEST['debug'] == 'true') { + closelog(); + } + } +} + +?> From bfbfca96e3a3cfd002cab9f4dad8697ae5b14590 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 13:13:04 -0700 Subject: [PATCH 007/496] Use the new PHP auto_loader.php file. --- resources/require.php | 76 ++----------------------------------------- 1 file changed, 2 insertions(+), 74 deletions(-) diff --git a/resources/require.php b/resources/require.php index ade0bd7a3b..e60c640b0b 100644 --- a/resources/require.php +++ b/resources/require.php @@ -28,7 +28,7 @@ include "root.php"; //find and include the config.php file - $config_exists = false; + $config_exists = false; if (file_exists("/etc/fusionpbx/config.php")) { $config_exists = true; include "/etc/fusionpbx/config.php"; @@ -43,79 +43,7 @@ } //class auto loader - if (!class_exists('auto_loader')) { - class auto_loader { - public function __construct() { - spl_autoload_register(array($this, 'loader')); - } - private function loader($class_name) { - //set the default value - $class_found = false; - - //sanitize the class name - $class_name = preg_replace('[^a-zA-Z0-9_]', '', $class_name); - - //save the log to the syslog server - if ($_REQUEST['debug'] == 'true') { - openlog("XML CDR", LOG_PID | LOG_PERROR, LOG_LOCAL0); - } - - //find the most relevant class name - if (!$class_found && file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/classes/".$class_name.".php")) { - //first priority - $path = $_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/classes/".$class_name.".php"; - $class_found = true; - if ($_REQUEST['debug'] == 'true') { - syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$path.", line: ".__line__); - } - include $path; - } - elseif (!$class_found && file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/core/".$class_name."/resources/classes/".$class_name.".php")) { - //second priority - $path = $_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/core/".$class_name."/resources/classes/".$class_name.".php"; - $class_found = true; - if ($_REQUEST['debug'] == 'true') { - syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$path.", line: ".__line__); - } - include $path; - } - elseif (!$class_found && file_exists($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/app/".$class_name."/resources/classes/".$class_name.".php")) { - //third priority - $path = $_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/app/".$class_name."/resources/classes/".$class_name.".php"; - $class_found = true; - if ($_REQUEST['debug'] == 'true') { - syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$path.", line: ".__line__); - } - include $path; - } - - //use glob for a more exensive search for the classes (note: GLOB_BRACE doesn't work on some systems) - if (!$class_found && !class_exists($class_name)) { - //fourth priority - $results_1 = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/*/*/resources/classes/".$class_name.".php"); - $results_2 = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/resources/classes/".$class_name.".php"); - $results = array_merge((array)$results_1,(array)$results_2); - unset($results_1, $results_2); - foreach ($results as &$class_file) { - if (!$class_found) { - $class_found = true; - if ($_REQUEST['debug'] == 'true') { - syslog(LOG_WARNING, "[php][autoloader] name: ".$class_name.", path: ".$class_file.", line: ".__line__); - } - include $class_file; - break; - } - } - unset($results); - } - - //save the log to the syslog server - if ($_REQUEST['debug'] == 'true') { - closelog(); - } - } - } - } + include "resources/classes/auto_loader.php"; $autoload = new auto_loader(); //additional includes From 7c6ed79d6c876e536d579329cfe68354a546a815 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Fri, 26 Nov 2021 21:30:39 -0700 Subject: [PATCH 008/496] usleep 1 million is 1 second --- resources/classes/event_socket.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/classes/event_socket.php b/resources/classes/event_socket.php index 3ad74c2a98..d9b939b107 100644 --- a/resources/classes/event_socket.php +++ b/resources/classes/event_socket.php @@ -72,7 +72,7 @@ class event_socket { $kv = explode(':', $line, 2); $content[trim($kv[0])] = trim($kv[1]); } - usleep(100); + usleep(20000); if (feof($this->fp)) { break; From 486a3bbd05a3d514f1a869d3caec9b1b97a4a058 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 21:40:57 -0700 Subject: [PATCH 009/496] Add a field to store the conference email address. --- app/conferences/app_config.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/conferences/app_config.php b/app/conferences/app_config.php index 20f8d1b824..d776c083e4 100644 --- a/app/conferences/app_config.php +++ b/app/conferences/app_config.php @@ -132,6 +132,11 @@ $apps[$x]['db'][$y]['fields'][$z]['search'] = 'true'; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional pin number to secure access to the conference."; $z++; + $apps[$x]['db'][$y]['fields'][$z]['name'] = "conference_email"; + $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; + $apps[$x]['db'][$y]['fields'][$z]['search'] = 'true'; + $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional email address for the conference."; + $z++; $apps[$x]['db'][$y]['fields'][$z]['name'] = "conference_profile"; $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Conference Profile is a collection of settings for the conference."; From 2bc46cf7a161a3bb00b196094118ccd4fe17fffa Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:01:51 -0700 Subject: [PATCH 010/496] Add a field to store the conference email address. --- app/conference_centers/app_config.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/conference_centers/app_config.php b/app/conference_centers/app_config.php index 64b92d72bc..ad168d3fa7 100644 --- a/app/conference_centers/app_config.php +++ b/app/conference_centers/app_config.php @@ -307,6 +307,11 @@ $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the participant PIN number."; $z++; + $apps[$x]['db'][$y]['fields'][$z]['name'] = "email_address"; + $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; + $apps[$x]['db'][$y]['fields'][$z]['search'] = 'true'; + $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional email address for the conference."; + $z++; $apps[$x]['db'][$y]['fields'][$z]['name'] = "max_members"; $apps[$x]['db'][$y]['fields'][$z]['type'] = "numeric"; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Limit number of people in the conference."; From 9555c020d222415d7a223c3646f0a9df8140ad40 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:07:00 -0700 Subject: [PATCH 011/496] Change conference_email to conference_email_address. --- app/conferences/app_config.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/conferences/app_config.php b/app/conferences/app_config.php index d776c083e4..ce64590108 100644 --- a/app/conferences/app_config.php +++ b/app/conferences/app_config.php @@ -132,7 +132,7 @@ $apps[$x]['db'][$y]['fields'][$z]['search'] = 'true'; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional pin number to secure access to the conference."; $z++; - $apps[$x]['db'][$y]['fields'][$z]['name'] = "conference_email"; + $apps[$x]['db'][$y]['fields'][$z]['name'] = "conference_email_address"; $apps[$x]['db'][$y]['fields'][$z]['type'] = "text"; $apps[$x]['db'][$y]['fields'][$z]['search'] = 'true'; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional email address for the conference."; From 8d70f757b94c75f3fd37583cb26f527a4a50dd7b Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:36:24 -0700 Subject: [PATCH 012/496] Add conference email address --- app/conferences/conference_edit.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/app/conferences/conference_edit.php b/app/conferences/conference_edit.php index 0bd7508cd3..747111fac1 100644 --- a/app/conferences/conference_edit.php +++ b/app/conferences/conference_edit.php @@ -57,6 +57,7 @@ $conference_name = $_POST["conference_name"]; $conference_extension = $_POST["conference_extension"]; $conference_pin_number = $_POST["conference_pin_number"]; + $conference_email_address = $_POST["conference_email_address"]; $conference_profile = $_POST["conference_profile"]; $conference_flags = $_POST["conference_flags"]; $conference_order = $_POST["conference_order"]; @@ -180,6 +181,9 @@ $array['conferences'][0]['conference_name'] = $conference_name; $array['conferences'][0]['conference_extension'] = $conference_extension; $array['conferences'][0]['conference_pin_number'] = $conference_pin_number; + if (permission_exists('conference_cdr_edit')) { + $array['conferences'][0]['conference_email_address'] = $conference_email_address; + } $array['conferences'][0]['conference_profile'] = $conference_profile; $array['conferences'][0]['conference_flags'] = $conference_flags; $array['conferences'][0]['conference_order'] = $conference_order; @@ -273,6 +277,7 @@ $conference_name = $row["conference_name"]; $conference_extension = $row["conference_extension"]; $conference_pin_number = $row["conference_pin_number"]; + $conference_email_address = $row["conference_email_address"]; $conference_profile = $row["conference_profile"]; $conference_flags = $row["conference_flags"]; $conference_order = $row["conference_order"]; @@ -385,6 +390,19 @@ echo "\n"; echo "\n"; + if (permission_exists('conference_cdr_edit')) { + echo "\n"; + echo "\n"; + echo " ".$text['label-email_address']."\n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo "
\n"; + echo "".$text['description-email_address']."\n"; + echo "\n"; + echo "\n"; + } + if (permission_exists('conference_user_add') || permission_exists('conference_user_edit')) { if ($action == "update") { echo " "; From 17b7312b730363fc77ecedec45183e5b856d771c Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:38:23 -0700 Subject: [PATCH 013/496] Add conference email address. --- app/conferences/app_languages.php | 42 +++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/app/conferences/app_languages.php b/app/conferences/app_languages.php index 712f3d98ca..1afa0db4bc 100644 --- a/app/conferences/app_languages.php +++ b/app/conferences/app_languages.php @@ -526,6 +526,48 @@ $text['description-pin']['ru-ru'] = "Дополнительный PIN номер $text['description-pin']['sv-se'] = "Frivilligt pin nummer för att säkra tillgången till konferensen."; $text['description-pin']['uk-ua'] = ""; +$text['label-email_address']['en-us'] = "Email Address"; +$text['label-email_address']['en-gb'] = "Email Address"; +$text['label-email_address']['ar-eg'] = "البريد الإليكتروني"; +$text['label-email_address']['de-at'] = "Email Address"; //copied from de-de +$text['label-email_address']['de-ch'] = "Email Address"; //copied from de-de +$text['label-email_address']['de-de'] = "Email Address"; +$text['label-email_address']['es-cl'] = "Email Address"; +$text['label-email_address']['es-mx'] = "Email Address"; //copied from es-cl +$text['label-email_address']['fr-ca'] = "Courriel"; //copied from fr-fr +$text['label-email_address']['fr-fr'] = "Courriel"; +$text['label-email_address']['he-il'] = "אימייל"; +$text['label-email_address']['it-it'] = "Email Address"; +$text['label-email_address']['nl-nl'] = "E-mail Address"; +$text['label-email_address']['pl-pl'] = "Email Address"; +$text['label-email_address']['pt-br'] = "Email Address"; //copied from pt-pt +$text['label-email_address']['pt-pt'] = "Email Address"; +$text['label-email_address']['ro-ro'] = "Email Address"; +$text['label-email_address']['ru-ru'] = "Электронная Почта"; +$text['label-email_address']['sv-se'] = "E-post"; +$text['label-email_address']['uk-ua'] = "Електронна пошта"; + +$text['description-email_address']['en-us'] = "Optional conference email address."; +$text['description-email_address']['en-gb'] = "Optional conference email address."; +$text['description-email_address']['ar-eg'] = "البريد الإليكتروني"; +$text['description-email_address']['de-at'] = "Optional conference email address."; //copied from de-de +$text['description-email_address']['de-ch'] = "Optional conference email address."; //copied from de-de +$text['description-email_address']['de-de'] = "Optional conference email address."; +$text['description-email_address']['es-cl'] = "Optional conference email address."; +$text['description-email_address']['es-mx'] = "Optional conference email address."; //copied from es-cl +$text['description-email_address']['fr-ca'] = "Courriel"; //copied from fr-fr +$text['description-email_address']['fr-fr'] = "Courriel"; +$text['description-email_address']['he-il'] = "אימייל"; +$text['description-email_address']['it-it'] = "Optional conference email address."; +$text['description-email_address']['nl-nl'] = "Optional conference E-mail Address"; +$text['description-email_address']['pl-pl'] = "Optional conference email address."; +$text['description-email_address']['pt-br'] = "Optional conference email address."; //copied from pt-pt +$text['description-email_address']['pt-pt'] = "Optional conference email address."; +$text['description-email_address']['ro-ro'] = "Optional conference email address."; +$text['description-email_address']['ru-ru'] = "Электронная Почта"; +$text['description-email_address']['sv-se'] = "E-post"; +$text['description-email_address']['uk-ua'] = "Електронна пошта"; + $text['confirm-delete-2']['en-us'] = "Do you really want to delete this?"; $text['confirm-delete-2']['en-gb'] = "Do you really want to delete this?"; $text['confirm-delete-2']['ar-eg'] = ""; From c204c6d4a9c21eab92649d79208103082061bf2c Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:54:30 -0700 Subject: [PATCH 014/496] Update conference_edit.php --- app/conferences/conference_edit.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/conferences/conference_edit.php b/app/conferences/conference_edit.php index 747111fac1..6ec9668e2e 100644 --- a/app/conferences/conference_edit.php +++ b/app/conferences/conference_edit.php @@ -181,7 +181,7 @@ $array['conferences'][0]['conference_name'] = $conference_name; $array['conferences'][0]['conference_extension'] = $conference_extension; $array['conferences'][0]['conference_pin_number'] = $conference_pin_number; - if (permission_exists('conference_cdr_edit')) { + if (permission_exists('conference_cdr_view')) { $array['conferences'][0]['conference_email_address'] = $conference_email_address; } $array['conferences'][0]['conference_profile'] = $conference_profile; @@ -390,7 +390,7 @@ echo "\n"; echo "\n"; - if (permission_exists('conference_cdr_edit')) { + if (permission_exists('conference_cdr_view')) { echo "\n"; echo "\n"; echo " ".$text['label-email_address']."\n"; From ee7dce921772301bfb65ec7c38cd5f630693fae2 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:57:56 -0700 Subject: [PATCH 015/496] Add email address to the conference room. --- .../conference_room_edit.php | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/app/conference_centers/conference_room_edit.php b/app/conference_centers/conference_room_edit.php index 7b054b13a1..a543127e05 100644 --- a/app/conference_centers/conference_room_edit.php +++ b/app/conference_centers/conference_room_edit.php @@ -58,6 +58,7 @@ $conference_room_name = $_POST['conference_room_name']; $moderator_pin = $_POST["moderator_pin"]; $participant_pin = $_POST["participant_pin"]; + $email_address = $_POST["email_address"]; $profile = $_POST["profile"]; $record = $_POST["record"]; $user_uuid = $_POST["user_uuid"]; @@ -307,6 +308,9 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { $array['conference_rooms'][0]['record'] = $record; $array['conference_rooms'][0]['moderator_pin'] = $moderator_pin; $array['conference_rooms'][0]['participant_pin'] = $participant_pin; + if (permission_exists('conference_cdr_view')) { + $array['conference_rooms'][0]['email_address'] = $email_address; + } $array['conference_rooms'][0]['max_members'] = $max_members; $array['conference_rooms'][0]['start_datetime'] = $start_datetime; $array['conference_rooms'][0]['stop_datetime'] = $stop_datetime; @@ -367,6 +371,9 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { } $array['conference_rooms'][0]['moderator_pin'] = $moderator_pin; $array['conference_rooms'][0]['participant_pin'] = $participant_pin; + if (permission_exists('conference_cdr_view')) { + $array['conference_rooms'][0]['email_address'] = $email_address; + } if (strlen($max_members) > 0) { $array['conference_rooms'][0]['max_members'] = $max_members; } @@ -453,6 +460,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { $record = $row["record"]; $moderator_pin = $row["moderator_pin"]; $participant_pin = $row["participant_pin"]; + $email_address = $row["email_address"]; $max_members = $row["max_members"]; $start_datetime = $row["start_datetime"]; $stop_datetime = $row["stop_datetime"]; @@ -606,6 +614,19 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { echo " "; echo " "; + if (permission_exists('conference_cdr_view')) { + echo "\n"; + echo "\n"; + echo " ".$text['label-email_address']."\n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo "
\n"; + echo "".$text['description-email_address']."\n"; + echo "\n"; + echo "\n"; + } + if (if_group("superadmin") || if_group("admin")) { echo " "; echo " ".$text['label-users'].""; From d18ce4bc8d5e30f6d784cd7e3eda402f8a6bad07 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 22:59:46 -0700 Subject: [PATCH 016/496] Add email_address to the conference center languages file. --- app/conference_centers/app_languages.php | 42 ++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/app/conference_centers/app_languages.php b/app/conference_centers/app_languages.php index 7f10328487..322b859610 100644 --- a/app/conference_centers/app_languages.php +++ b/app/conference_centers/app_languages.php @@ -212,6 +212,48 @@ $text['description-conference_center_pin_length']['ru-ru'] = "Введите м $text['description-conference_center_pin_length']['sv-se'] = "Ange minimum PIN längd."; $text['description-conference_center_pin_length']['uk-ua'] = "Введіть мінімальну довжину PIN-коду."; +$text['label-email_address']['en-us'] = "Email Address"; +$text['label-email_address']['en-gb'] = "Email Address"; +$text['label-email_address']['ar-eg'] = "البريد الإليكتروني"; +$text['label-email_address']['de-at'] = "Email Address"; //copied from de-de +$text['label-email_address']['de-ch'] = "Email Address"; //copied from de-de +$text['label-email_address']['de-de'] = "Email Address"; +$text['label-email_address']['es-cl'] = "Email Address"; +$text['label-email_address']['es-mx'] = "Email Address"; //copied from es-cl +$text['label-email_address']['fr-ca'] = "Courriel"; //copied from fr-fr +$text['label-email_address']['fr-fr'] = "Courriel"; +$text['label-email_address']['he-il'] = "אימייל"; +$text['label-email_address']['it-it'] = "Email Address"; +$text['label-email_address']['nl-nl'] = "E-mail Address"; +$text['label-email_address']['pl-pl'] = "Email Address"; +$text['label-email_address']['pt-br'] = "Email Address"; //copied from pt-pt +$text['label-email_address']['pt-pt'] = "Email Address"; +$text['label-email_address']['ro-ro'] = "Email Address"; +$text['label-email_address']['ru-ru'] = "Электронная Почта"; +$text['label-email_address']['sv-se'] = "E-post"; +$text['label-email_address']['uk-ua'] = "Електронна пошта"; + +$text['description-email_address']['en-us'] = "Optional conference email address."; +$text['description-email_address']['en-gb'] = "Optional conference email address."; +$text['description-email_address']['ar-eg'] = "البريد الإليكتروني"; +$text['description-email_address']['de-at'] = "Optional conference email address."; //copied from de-de +$text['description-email_address']['de-ch'] = "Optional conference email address."; //copied from de-de +$text['description-email_address']['de-de'] = "Optional conference email address."; +$text['description-email_address']['es-cl'] = "Optional conference email address."; +$text['description-email_address']['es-mx'] = "Optional conference email address."; //copied from es-cl +$text['description-email_address']['fr-ca'] = "Courriel"; //copied from fr-fr +$text['description-email_address']['fr-fr'] = "Courriel"; +$text['description-email_address']['he-il'] = "אימייל"; +$text['description-email_address']['it-it'] = "Optional conference email address."; +$text['description-email_address']['nl-nl'] = "Optional conference E-mail Address"; +$text['description-email_address']['pl-pl'] = "Optional conference email address."; +$text['description-email_address']['pt-br'] = "Optional conference email address."; //copied from pt-pt +$text['description-email_address']['pt-pt'] = "Optional conference email address."; +$text['description-email_address']['ro-ro'] = "Optional conference email address."; +$text['description-email_address']['ru-ru'] = "Электронная Почта"; +$text['description-email_address']['sv-se'] = "E-post"; +$text['description-email_address']['uk-ua'] = "Електронна пошта"; + $text['label-conference_center_greeting']['en-us'] = "Greeting"; $text['label-conference_center_greeting']['en-gb'] = "Greeting"; $text['label-conference_center_greeting']['ar-eg'] = ""; From c87a87061ff4a85f9ad32c1c8f6d769d73e07f8b Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 23:03:42 -0700 Subject: [PATCH 017/496] Change the type from number to text. --- app/conference_centers/conference_room_edit.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/conference_centers/conference_room_edit.php b/app/conference_centers/conference_room_edit.php index a543127e05..3cb4287516 100644 --- a/app/conference_centers/conference_room_edit.php +++ b/app/conference_centers/conference_room_edit.php @@ -620,7 +620,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { echo " ".$text['label-email_address']."\n"; echo "\n"; echo "\n"; - echo " \n"; + echo " \n"; echo "
\n"; echo "".$text['description-email_address']."\n"; echo "\n"; From 8607ee1f0ddd37b2a76779e961882fd42d1ffc1e Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 23:06:33 -0700 Subject: [PATCH 018/496] Change type from number to text and change the the permission. --- app/conferences/conference_edit.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/conferences/conference_edit.php b/app/conferences/conference_edit.php index 6ec9668e2e..e83159aede 100644 --- a/app/conferences/conference_edit.php +++ b/app/conferences/conference_edit.php @@ -390,13 +390,13 @@ echo "\n"; echo "\n"; - if (permission_exists('conference_cdr_view')) { + if (permission_exists('conference_email_address')) { echo "\n"; echo "\n"; echo " ".$text['label-email_address']."\n"; echo "\n"; echo "\n"; - echo " \n"; + echo " \n"; echo "
\n"; echo "".$text['description-email_address']."\n"; echo "\n"; From 4c6f154713c4a84e631d21c22a88f20534718279 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 23:07:56 -0700 Subject: [PATCH 019/496] Add new permission conference_email_address --- app/conferences/app_config.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/conferences/app_config.php b/app/conferences/app_config.php index ce64590108..d02a0c1e08 100644 --- a/app/conferences/app_config.php +++ b/app/conferences/app_config.php @@ -82,10 +82,13 @@ $apps[$x]['permissions'][$y]['groups'][] = "superadmin"; $apps[$x]['permissions'][$y]['groups'][] = "admin"; $y++; + $apps[$x]['permissions'][$y]['name'] = "conference_email_address"; + $y++; $apps[$x]['permissions'][$y]['name'] = "conference_destinations"; $apps[$x]['permissions'][$y]['groups'][] = "superadmin"; $apps[$x]['permissions'][$y]['groups'][] = "admin"; + //cache details $apps[$x]['cache']['key'] = "dialplan.\${domain_name}"; From bbc5cae019af9d8ead44aafce47265f51a0fde7f Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 23:12:40 -0700 Subject: [PATCH 020/496] Update the permission --- app/conference_centers/conference_room_edit.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/conference_centers/conference_room_edit.php b/app/conference_centers/conference_room_edit.php index 3cb4287516..94baa7d4d8 100644 --- a/app/conference_centers/conference_room_edit.php +++ b/app/conference_centers/conference_room_edit.php @@ -308,7 +308,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { $array['conference_rooms'][0]['record'] = $record; $array['conference_rooms'][0]['moderator_pin'] = $moderator_pin; $array['conference_rooms'][0]['participant_pin'] = $participant_pin; - if (permission_exists('conference_cdr_view')) { + if (permission_exists('conference_room_email_address')) { $array['conference_rooms'][0]['email_address'] = $email_address; } $array['conference_rooms'][0]['max_members'] = $max_members; @@ -371,7 +371,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { } $array['conference_rooms'][0]['moderator_pin'] = $moderator_pin; $array['conference_rooms'][0]['participant_pin'] = $participant_pin; - if (permission_exists('conference_cdr_view')) { + if (permission_exists('conference_room_email_address')) { $array['conference_rooms'][0]['email_address'] = $email_address; } if (strlen($max_members) > 0) { @@ -614,7 +614,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { echo " "; echo " "; - if (permission_exists('conference_cdr_view')) { + if (permission_exists('conference_room_email_address')) { echo "\n"; echo "\n"; echo " ".$text['label-email_address']."\n"; From 8e7f46101ffb021442dee72a2ce551a8b0a1eb7d Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 23:15:23 -0700 Subject: [PATCH 021/496] Add a new conference_room_email_address permission. --- app/conference_centers/app_config.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/conference_centers/app_config.php b/app/conference_centers/app_config.php index ad168d3fa7..665bfc7f47 100644 --- a/app/conference_centers/app_config.php +++ b/app/conference_centers/app_config.php @@ -102,6 +102,8 @@ $apps[$x]['permissions'][$y]['groups'][] = "superadmin"; $apps[$x]['permissions'][$y]['groups'][] = "admin"; $y++; + $apps[$x]['permissions'][$y]['name'] = "conference_room_email_address"; + $y++; $apps[$x]['permissions'][$y]['name'] = "conference_room_profile"; $apps[$x]['permissions'][$y]['groups'][] = "superadmin"; $apps[$x]['permissions'][$y]['groups'][] = "admin"; From 1295da2dfe1b9ccf34e7722f33017843f54e4682 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Sun, 28 Nov 2021 23:19:37 -0700 Subject: [PATCH 022/496] Update the permission name. --- app/conferences/conference_edit.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/conferences/conference_edit.php b/app/conferences/conference_edit.php index e83159aede..15162376d2 100644 --- a/app/conferences/conference_edit.php +++ b/app/conferences/conference_edit.php @@ -181,7 +181,7 @@ $array['conferences'][0]['conference_name'] = $conference_name; $array['conferences'][0]['conference_extension'] = $conference_extension; $array['conferences'][0]['conference_pin_number'] = $conference_pin_number; - if (permission_exists('conference_cdr_view')) { + if (permission_exists('conference_email_address')) { $array['conferences'][0]['conference_email_address'] = $conference_email_address; } $array['conferences'][0]['conference_profile'] = $conference_profile; From 2dd10ef66dbd63b7c474ffc6b80b65c641553032 Mon Sep 17 00:00:00 2001 From: AlexC <40072887+alexdcrane@users.noreply.github.com> Date: Tue, 30 Nov 2021 08:35:08 -0700 Subject: [PATCH 023/496] Add default settings for user and domain header (#6161) --- themes/default/app_config.php | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/themes/default/app_config.php b/themes/default/app_config.php index 64b6ba3d9d..c19bc5420c 100644 --- a/themes/default/app_config.php +++ b/themes/default/app_config.php @@ -55,14 +55,38 @@ $apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true"; $apps[$x]['default_settings'][$y]['default_setting_description'] = "Set a secondary background color, for a gradient effect."; $y++; + $apps[$x]['default_settings'][$y]['default_setting_uuid'] = "18a0c698-738e-4d88-a592-115dde20730f"; + $apps[$x]['default_settings'][$y]['default_setting_category'] = "theme"; + $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "header_user_visible"; + $apps[$x]['default_settings'][$y]['default_setting_name'] = "text"; + $apps[$x]['default_settings'][$y]['default_setting_value'] = "true"; + $apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true"; + $apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the visibility of the username currently logged in."; + $y++; + $apps[$x]['default_settings'][$y]['default_setting_uuid'] = "425427bb-ac21-4c8f-9ec3-ef8fecd78f8f"; + $apps[$x]['default_settings'][$y]['default_setting_category'] = "theme"; + $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "header_user_color_hover"; + $apps[$x]['default_settings'][$y]['default_setting_name'] = "text"; + $apps[$x]['default_settings'][$y]['default_setting_value'] = "#fd9c03"; + $apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true"; + $apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the text hover color (and opacity) for header user name."; + $y++; $apps[$x]['default_settings'][$y]['default_setting_uuid'] = "e46af53d-0dd7-4b2b-9806-f790a477f245"; $apps[$x]['default_settings'][$y]['default_setting_category'] = "theme"; - $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "domain_visible"; + $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "header_domain_visible"; $apps[$x]['default_settings'][$y]['default_setting_name'] = "text"; $apps[$x]['default_settings'][$y]['default_setting_value'] = "true"; $apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true"; $apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the visibility of the name of the domain currently being managed."; $y++; + $apps[$x]['default_settings'][$y]['default_setting_uuid'] = "b999bb99-2224-48f0-8a61-38c4f75c9869"; + $apps[$x]['default_settings'][$y]['default_setting_category'] = "theme"; + $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "header_domain_color_hover"; + $apps[$x]['default_settings'][$y]['default_setting_name'] = "text"; + $apps[$x]['default_settings'][$y]['default_setting_value'] = "#fd9c03"; + $apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true"; + $apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the text hover color (and opacity) for header domain name."; + $y++; $apps[$x]['default_settings'][$y]['default_setting_uuid'] = "4a92f422-934f-4ae9-b918-fa932cb1e089"; $apps[$x]['default_settings'][$y]['default_setting_category'] = "theme"; $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "logout_icon_visible"; From 70b876f5da7c49b6bdd620c658d69b783c5d66d8 Mon Sep 17 00:00:00 2001 From: AlexC <40072887+alexdcrane@users.noreply.github.com> Date: Tue, 30 Nov 2021 08:35:40 -0700 Subject: [PATCH 024/496] Add user header and domain icon to menu.php (#6160) --- resources/classes/menu.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/resources/classes/menu.php b/resources/classes/menu.php index 95a275d263..31f4f08614 100644 --- a/resources/classes/menu.php +++ b/resources/classes/menu.php @@ -1042,10 +1042,16 @@ if (!class_exists('menu')) { $html .= " \n"; $html .= "