diff --git a/app/ring_groups/app_config.php b/app/ring_groups/app_config.php
index 0306391fa8..cffbffe1f1 100644
--- a/app/ring_groups/app_config.php
+++ b/app/ring_groups/app_config.php
@@ -150,4 +150,12 @@
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'char(36)';
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = 'Select the extension.';
$z++;
+ $apps[$x]['db'][$y]['fields'][$z]['name'] = 'extension_delay';
+ $apps[$x]['db'][$y]['fields'][$z]['type'] = 'numeric';
+ $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = '';
+ $z++;
+ $apps[$x]['db'][$y]['fields'][$z]['name'] = 'extension_timeout';
+ $apps[$x]['db'][$y]['fields'][$z]['type'] = 'numeric';
+ $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = '';
+ $z++;
?>
\ No newline at end of file
diff --git a/app/ring_groups/app_languages.php b/app/ring_groups/app_languages.php
index 30e36c531c..4bfd41ad4f 100644
--- a/app/ring_groups/app_languages.php
+++ b/app/ring_groups/app_languages.php
@@ -71,9 +71,11 @@
$text['label-strategy']['en-us'] = 'Strategy';
- $text['dropdown-sequence']['en-us'] = 'sequence';
+ $text['select-sequence']['en-us'] = 'sequence';
- $text['dropdown-simultaneous']['en-us'] = 'simultaneous';
+ $text['select-simultaneous']['en-us'] = 'simultaneous';
+
+ $text['select-enterprise']['en-us'] = 'enterprise';
$text['label-sequence']['en-us'] = 'Select the strategy.';
@@ -115,4 +117,10 @@
$text['label-extensions']['en-us'] = 'Extensions';
+ $text['label-delay']['en-us'] = 'Delay';
+ $text['label-delay']['pt-pt'] = '';
+
+ $text['label-timeout']['en-us'] = 'Timeout';
+ $text['label-timeout']['pt-pt'] = '';
+
?>
\ No newline at end of file
diff --git a/app/ring_groups/ring_groups_edit.php b/app/ring_groups/ring_groups_edit.php
index 844bd5d407..d062fed6f9 100644
--- a/app/ring_groups/ring_groups_edit.php
+++ b/app/ring_groups/ring_groups_edit.php
@@ -69,6 +69,25 @@ else {
$action = "add";
}
+//define the destination_select function
+ function destination_select($select_name, $select_value, $select_default) {
+ if (strlen($select_value) == 0) { $select_value = $select_default; }
+ echo " \n";
+ }
+
//get http post variables and set them to php variables
if (count($_POST)>0) {
//set variables from http values
@@ -88,6 +107,8 @@ else {
$ring_group_timeout_app = array_shift($ring_group_timeout_array);
$ring_group_timeout_data = join(':', $ring_group_timeout_array);
$extension_uuid = check_str($_POST["extension_uuid"]);
+ $extension_delay = check_str($_POST["extension_delay"]);
+ $extension_timeout = check_str($_POST["extension_timeout"]);
//set the context for users that are not in the superadmin group
if (!if_group("superadmin")) {
@@ -207,6 +228,10 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) {
$sql .= "domain_uuid, ";
$sql .= "ring_group_uuid, ";
$sql .= "ring_group_extension_uuid, ";
+ $sql .= "extension_delay, ";
+ if (strlen($extension_timeout) > 0) {
+ $sql .= "extension_timeout, ";
+ }
$sql .= "extension_uuid ";
$sql .= ")";
$sql .= "values ";
@@ -214,6 +239,10 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) {
$sql .= "'".$_SESSION['domain_uuid']."', ";
$sql .= "'$ring_group_uuid', ";
$sql .= "'$ring_group_extension_uuid', ";
+ $sql .= "'$extension_delay', ";
+ if (strlen($extension_timeout) > 0) {
+ $sql .= "'$extension_timeout', ";
+ }
$sql .= "'$extension_uuid' ";
$sql .= ")";
$db->exec(check_sql($sql));
@@ -355,7 +384,6 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) {
echo "
\n";
echo "\n";
echo "| ".$text['label-ring-group']." | \n";
-
echo " | \n";
echo "
\n";
echo "\n";
@@ -407,16 +435,22 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) {
echo " \n";
echo "
\n";
@@ -428,21 +462,37 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) {
echo " ".$text['label-extensions'].": | ";
echo " ";
if ($action == "update") {
- echo " \n";
- $sql = "SELECT g.ring_group_extension_uuid, e.extension_uuid, e.extension ";
+ echo " \n";
+ $sql = "SELECT g.ring_group_extension_uuid, e.extension_uuid, g.extension_delay, g.extension_timeout, e.extension ";
$sql .= "FROM v_ring_groups as r, v_ring_group_extensions as g, v_extensions as e ";
- $sql .= "where g.ring_group_uuid = r.ring_group_uuid ";
+ $sql .= "where g.ring_group_uuid = r.ring_group_uuid ";
$sql .= "and g.domain_uuid = '".$_SESSION['domain_uuid']."' ";
$sql .= "and g.ring_group_uuid = '".$ring_group_uuid."' ";
$sql .= "and e.extension_uuid = g.extension_uuid ";
- $sql .= "order by e.extension asc ";
+ $sql .= "order by g.extension_delay asc, e.extension asc ";
$prep_statement = $db->prepare(check_sql($sql));
$prep_statement->execute();
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
$result_count = count($result);
+ echo "\n";
+ echo " | ".$text['label-extension']." | \n";
+ echo " ".$text['label-delay']." | \n";
+ echo " ".$text['label-timeout']." | \n";
+ echo " | \n";
+ echo " \n";
foreach($result as $field) {
+ if (strlen($field['extension_delay']) == 0) { $field['extension_delay'] = "0"; }
+ if (strlen($field['extension_timeout']) == 0) { $field['extension_timeout'] = "30"; }
echo " \n";
- echo " | ".$field['extension']." | \n";
+ echo " \n";
+ echo " ".$field['extension'];
+ echo " | \n";
+ echo " \n";
+ echo " ".$field['extension_delay']." \n";
+ echo " | \n";
+ echo " \n";
+ echo " ".$field['extension_timeout']." \n";
+ echo " | \n";
echo " \n";
echo " $v_link_label_delete\n";
echo " | \n";
@@ -463,6 +513,12 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) {
echo " \n";
}
echo " ";
+ echo " \n";
+
+ echo " ".$text['label-delay']." ";
+ destination_select('extension_delay', $extension_delay, '0');
+ echo " ".$text['label-timeout']." \n";
+ destination_select('extension_timeout', $extension_timeout, '30');
if ($action == "update") {
echo " \n";
}
|