Merge branch 'fusionpbx:master' into master

This commit is contained in:
Mendel
2022-05-03 15:56:46 -04:00
committed by GitHub
539 changed files with 40235 additions and 12138 deletions

View File

@@ -161,9 +161,9 @@
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display:none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'access_controls.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'access_controls.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>\n";
}

View File

@@ -16,8 +16,8 @@
$apps[$x]['description']['de-de'] = "Zugriffssteuerungslisten verwalten";
$apps[$x]['description']['es-cl'] = "";
$apps[$x]['description']['es-mx'] = "";
$apps[$x]['description']['fr-ca'] = "";
$apps[$x]['description']['fr-fr'] = "";
$apps[$x]['description']['fr-ca'] = "Gérer les listes de contrôle d'accès";
$apps[$x]['description']['fr-fr'] = "Gérer les listes de contrôle d'accès";
$apps[$x]['description']['he-il'] = "";
$apps[$x]['description']['it-it'] = "";
$apps[$x]['description']['nl-nl'] = "Beheer toegangs controle lijsten";

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2016
Portions created by the Initial Developer are Copyright (C) 2016 - 2022
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -46,8 +46,10 @@
else {
$xml_string = "<configuration name=\"acl.conf\" description=\"Network Lists\">\n";
$xml_string .= " <network-lists>\n";
$xml_string .= " <list name=\"lan\" default=\"allow\">\n";
$xml_string .= " <node type=\"allow\" cidr=\"192.168.42.42/32\"/>\n";
$xml_string .= " <list name=\"rfc1918\" default=\"allow\">\n";
$xml_string .= " <node type=\"allow\" cidr=\"10.0.0.0/8\"/>\n";
$xml_string .= " <node type=\"allow\" cidr=\"172.16.0.0/12\"/>\n";
$xml_string .= " <node type=\"allow\" cidr=\"192.168.0.0/16\"/>\n";
$xml_string .= " </list>\n";
$xml_string .= " <list name=\"domains\" default=\"deny\">\n";
$xml_string .= " <node type=\"allow\" domain=\"".$_SESSION['domain_name']."\"/>\n";
@@ -77,7 +79,7 @@
$database = new database;
$database->app_name = 'access_controls';
$database->app_uuid = '1416a250-f6e1-4edc-91a6-5c9b883638fd';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('access_control_add', 'temp');
@@ -114,7 +116,7 @@
$database = new database;
$database->app_name = 'access_controls';
$database->app_uuid = '1416a250-f6e1-4edc-91a6-5c9b883638fd';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('access_control_node_add', 'temp');

View File

@@ -203,7 +203,7 @@ $text['label-deny']['fr-fr'] = " nier";
$text['label-deny']['he-il'] = "להכחיש";
$text['label-deny']['it-it'] = "nega";
$text['label-deny']['nl-nl'] = "verbieden";
$text['label-deny']['pl-pl'] = "zaprzeczać";
$text['label-deny']['pl-pl'] = "odrzuć";
$text['label-deny']['pt-br'] = "negar"; //copied from pt-pt
$text['label-deny']['pt-pt'] = "negar";
$text['label-deny']['ro-ro'] = "Nega";
@@ -224,7 +224,7 @@ $text['label-allow']['fr-fr'] = " permettre";
$text['label-allow']['he-il'] = "לאפשר";
$text['label-allow']['it-it'] = "permetti";
$text['label-allow']['nl-nl'] = "toestaan";
$text['label-allow']['pl-pl'] = "dopuszczać";
$text['label-allow']['pl-pl'] = "zezwól";
$text['label-allow']['pt-br'] = "permitir"; //copied from pt-pt
$text['label-allow']['pt-pt'] = "permitir";
$text['label-allow']['ro-ro'] = "Permite";
@@ -253,27 +253,6 @@ $text['label-access_control_name']['ru-ru'] = "Имя";
$text['label-access_control_name']['sv-se'] = "namn";
$text['label-access_control_name']['uk-ua'] = "ім'я";
$text['label-access_control_description']['en-us'] = "Description";
$text['label-access_control_description']['en-gb'] = "Description";
$text['label-access_control_description']['ar-eg'] = "وصف";
$text['label-access_control_description']['de-at'] = "Beschreibung"; //copied from de-de
$text['label-access_control_description']['de-ch'] = "Beschreibung"; //copied from de-de
$text['label-access_control_description']['de-de'] = "Beschreibung";
$text['label-access_control_description']['es-cl'] = "Descripción";
$text['label-access_control_description']['es-mx'] = "Descripción"; //copied from es-cl
$text['label-access_control_description']['fr-ca'] = "Description"; //copied from fr-fr
$text['label-access_control_description']['fr-fr'] = "Description";
$text['label-access_control_description']['he-il'] = "תיאור";
$text['label-access_control_description']['it-it'] = "Descrizione";
$text['label-access_control_description']['nl-nl'] = "Omschrijving";
$text['label-access_control_description']['pl-pl'] = "opis";
$text['label-access_control_description']['pt-br'] = "Descrição"; //copied from pt-pt
$text['label-access_control_description']['pt-pt'] = "Descrição";
$text['label-access_control_description']['ro-ro'] = "Descriere";
$text['label-access_control_description']['ru-ru'] = "Описание";
$text['label-access_control_description']['sv-se'] = "Beskrivning";
$text['label-access_control_description']['uk-ua'] = "опис";
$text['label-access_control_default']['en-us'] = "Default";
$text['label-access_control_default']['en-gb'] = "Default";
$text['label-access_control_default']['ar-eg'] = "افتراضي";
@@ -295,6 +274,48 @@ $text['label-access_control_default']['ru-ru'] = "По умолчанию";
$text['label-access_control_default']['sv-se'] = "Standard";
$text['label-access_control_default']['uk-ua'] = "дефолт";
$text['label-access_control_nodes']['en-us'] = "Nodes";
$text['label-access_control_nodes']['en-gb'] = "Nodes";
$text['label-access_control_nodes']['ar-eg'] = "العقد";
$text['label-access_control_nodes']['de-at'] = "Knoten"; //copied from de-de
$text['label-access_control_nodes']['de-ch'] = "Knoten"; //copied from de-de
$text['label-access_control_nodes']['de-de'] = "Knoten";
$text['label-access_control_nodes']['es-cl'] = "Nodos";
$text['label-access_control_nodes']['es-mx'] = "Nodos"; //copied from es-cl
$text['label-access_control_nodes']['fr-ca'] = " nœuds"; //copied from fr-fr
$text['label-access_control_nodes']['fr-fr'] = " nœuds";
$text['label-access_control_nodes']['he-il'] = "בלוטות";
$text['label-access_control_nodes']['it-it'] = "Nodi";
$text['label-access_control_nodes']['nl-nl'] = "Knooppunten";
$text['label-access_control_nodes']['pl-pl'] = "węzły";
$text['label-access_control_nodes']['pt-br'] = "Nodes";
$text['label-access_control_nodes']['pt-pt'] = " Nodes";
$text['label-access_control_nodes']['ro-ro'] = "Noduri";
$text['label-access_control_nodes']['ru-ru'] = "Узлы";
$text['label-access_control_nodes']['sv-se'] = "Noder";
$text['label-access_control_nodes']['uk-ua'] = "вузли";
$text['label-access_control_description']['en-us'] = "Description";
$text['label-access_control_description']['en-gb'] = "Description";
$text['label-access_control_description']['ar-eg'] = "وصف";
$text['label-access_control_description']['de-at'] = "Beschreibung"; //copied from de-de
$text['label-access_control_description']['de-ch'] = "Beschreibung"; //copied from de-de
$text['label-access_control_description']['de-de'] = "Beschreibung";
$text['label-access_control_description']['es-cl'] = "Descripción";
$text['label-access_control_description']['es-mx'] = "Descripción"; //copied from es-cl
$text['label-access_control_description']['fr-ca'] = "Description"; //copied from fr-fr
$text['label-access_control_description']['fr-fr'] = "Description";
$text['label-access_control_description']['he-il'] = "תיאור";
$text['label-access_control_description']['it-it'] = "Descrizione";
$text['label-access_control_description']['nl-nl'] = "Omschrijving";
$text['label-access_control_description']['pl-pl'] = "opis";
$text['label-access_control_description']['pt-br'] = "Descrição"; //copied from pt-pt
$text['label-access_control_description']['pt-pt'] = "Descrição";
$text['label-access_control_description']['ro-ro'] = "Descriere";
$text['label-access_control_description']['ru-ru'] = "Описание";
$text['label-access_control_description']['sv-se'] = "Beskrivning";
$text['label-access_control_description']['uk-ua'] = "опис";
$text['description-node_type']['en-us'] = "Select the type.";
$text['description-node_type']['en-gb'] = "Select the type.";
$text['description-node_type']['ar-eg'] = "حدد نوع.";

View File

@@ -75,5 +75,29 @@
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set if extensions are grouped by call_group when viewing all extensions.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "a9ccd174-5ae1-4f90-8ee2-b79a183a04f8";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "operator_panel_main_background_color";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#ffffff";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set main background color (and opacity) of extensions";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "b9d34460-db41-40d5-becd-5da037fa8942";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "operator_panel_sub_background_color";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#e5eaf5";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set sub background color (and opacity) of extensions";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "9cb6477d-0454-4b9c-b0fb-11c258d4f35f";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "operator_panel_border_color";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#b9c5d8";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set border color (and opacity) of extensions";
$y++;
?>
?>

View File

@@ -35,7 +35,7 @@ $text['label-status_on_demand']['fr-fr'] = "Sur Demande";
$text['label-status_on_demand']['he-il'] = "על פי דרישה";
$text['label-status_on_demand']['it-it'] = "Su Richiesta";
$text['label-status_on_demand']['nl-nl'] = "Op Aanvraag";
$text['label-status_on_demand']['pl-pl'] = "Na żądanie ";
$text['label-status_on_demand']['pl-pl'] = "Na żądanie";
$text['label-status_on_demand']['pt-br'] = "A pedido";
$text['label-status_on_demand']['pt-pt'] = "A Pedido";
$text['label-status_on_demand']['ro-ro'] = "";
@@ -77,7 +77,7 @@ $text['label-status_logged_out_or_unknown']['fr-fr'] = "Déconnexion / Unknown";
$text['label-status_logged_out_or_unknown']['he-il'] = "";
$text['label-status_logged_out_or_unknown']['it-it'] = "Sloggato/Sconosciuto";
$text['label-status_logged_out_or_unknown']['nl-nl'] = "Afgelogged / Onbekend";
$text['label-status_logged_out_or_unknown']['pl-pl'] = "Wylogowany/nieznany";
$text['label-status_logged_out_or_unknown']['pl-pl'] = "Wylogowany / Nieznany";
$text['label-status_logged_out_or_unknown']['pt-br'] = "Desligar / Desconhecido";
$text['label-status_logged_out_or_unknown']['pt-pt'] = "Desligado / Unknown";
$text['label-status_logged_out_or_unknown']['ro-ro'] = "";
@@ -119,7 +119,7 @@ $text['label-status_do_not_disturb']['fr-fr'] = "Ne pas Déranger";
$text['label-status_do_not_disturb']['he-il'] = "נא לא להפריע";
$text['label-status_do_not_disturb']['it-it'] = "Non Disturbare";
$text['label-status_do_not_disturb']['nl-nl'] = "Niet Storen";
$text['label-status_do_not_disturb']['pl-pl'] = "Nie przeszkadzać (DND)";
$text['label-status_do_not_disturb']['pl-pl'] = "Nie przeszkadzać (DND)";
$text['label-status_do_not_disturb']['pt-br'] = "Não perturbe";
$text['label-status_do_not_disturb']['pt-pt'] = "Não perturbe (DND)";
$text['label-status_do_not_disturb']['ro-ro'] = "";
@@ -140,7 +140,7 @@ $text['label-status_available_on_demand']['fr-fr'] = "Disponible (sur demande)";
$text['label-status_available_on_demand']['he-il'] = "";
$text['label-status_available_on_demand']['it-it'] = "Disponibile (Su Richiesta)";
$text['label-status_available_on_demand']['nl-nl'] = "Beschikbaar (Op Aaanvraag)";
$text['label-status_available_on_demand']['pl-pl'] = "Dostępny (na żądanie)";
$text['label-status_available_on_demand']['pl-pl'] = "Dostępny (na żądanie)";
$text['label-status_available_on_demand']['pt-br'] = "Disponivel (A pedido)";
$text['label-status_available_on_demand']['pt-pt'] = "Disponível (A Pedido)";
$text['label-status_available_on_demand']['ro-ro'] = "";
@@ -161,7 +161,7 @@ $text['label-status_available']['fr-fr'] = "Disponible";
$text['label-status_available']['he-il'] = "זמין";
$text['label-status_available']['it-it'] = "Disponibile";
$text['label-status_available']['nl-nl'] = "Beschikbaar";
$text['label-status_available']['pl-pl'] = "Dostępny";
$text['label-status_available']['pl-pl'] = "Dostępny";
$text['label-status_available']['pt-br'] = "Disponível";
$text['label-status_available']['pt-pt'] = "Disponível";
$text['label-status_available']['ro-ro'] = "";
@@ -182,7 +182,7 @@ $text['label-refresh_pause']['fr-fr'] = "Pause Actualiser";
$text['label-refresh_pause']['he-il'] = "עצור רענון";
$text['label-refresh_pause']['it-it'] = "Interrompi";
$text['label-refresh_pause']['nl-nl'] = "Stop verversen";
$text['label-refresh_pause']['pl-pl'] = "Pauzuj odświeżanie";
$text['label-refresh_pause']['pl-pl'] = "Pauzuj odświeżanie";
$text['label-refresh_pause']['pt-br'] = "Pausar atualização";
$text['label-refresh_pause']['pt-pt'] = "Pausa Atualizar";
$text['label-refresh_pause']['ro-ro'] = "";
@@ -203,7 +203,7 @@ $text['label-refresh_enable']['fr-fr'] = "Activer Actualiser";
$text['label-refresh_enable']['he-il'] = "אפשר רענון";
$text['label-refresh_enable']['it-it'] = "Abilita Aggiornamento";
$text['label-refresh_enable']['nl-nl'] = "Start verversen";
$text['label-refresh_enable']['pl-pl'] = "Włącz odświeżanie";
$text['label-refresh_enable']['pl-pl'] = "Włącz odświeżanie";
$text['label-refresh_enable']['pt-br'] = "Habilitar atualização";
$text['label-refresh_enable']['pt-pt'] = "Habilitar Atualização";
$text['label-refresh_enable']['ro-ro'] = "";
@@ -266,7 +266,7 @@ $text['label-other_extensions']['fr-fr'] = "Autres Extensions";
$text['label-other_extensions']['he-il'] = "שלוחות אחרות";
$text['label-other_extensions']['it-it'] = "Altri Interni";
$text['label-other_extensions']['nl-nl'] = "Andere toestellen";
$text['label-other_extensions']['pl-pl'] = "Inne numery wew";
$text['label-other_extensions']['pl-pl'] = "Inne numery wewnętrzne";
$text['label-other_extensions']['pt-br'] = "Outras extensões";
$text['label-other_extensions']['pt-pt'] = "Outros Extensions";
$text['label-other_extensions']['ro-ro'] = "";
@@ -287,7 +287,7 @@ $text['label-no_extensions_found']['fr-fr'] = "Aucun extensions trouvés.";
$text['label-no_extensions_found']['he-il'] = "לא נמצאו שלוחות";
$text['label-no_extensions_found']['it-it'] = "Nessun interno trovato.";
$text['label-no_extensions_found']['nl-nl'] = "Geen toestellen gevonden.";
$text['label-no_extensions_found']['pl-pl'] = "Nie znaleziono numeru wew";
$text['label-no_extensions_found']['pl-pl'] = "Nie znaleziono numerów wewnętrznych";
$text['label-no_extensions_found']['pt-br'] = "Não foi encontrada nenhuma extensão";
$text['label-no_extensions_found']['pt-pt'] = "Sem extensões encontrado.";
$text['label-no_extensions_found']['ro-ro'] = "";
@@ -308,7 +308,7 @@ $text['label-hangup']['fr-fr'] = "Tuer Appel";
$text['label-hangup']['he-il'] = "הפסק";
$text['label-hangup']['it-it'] = "Abbatti";
$text['label-hangup']['nl-nl'] = "Ophangen";
$text['label-hangup']['pl-pl'] = "WyÅÄ…cz";
$text['label-hangup']['pl-pl'] = "Rozłączenie się";
$text['label-hangup']['pt-br'] = "Chamada final";
$text['label-hangup']['pt-pt'] = "Chamada Final";
$text['label-hangup']['ro-ro'] = "";
@@ -329,7 +329,7 @@ $text['label-eavesdrop']['fr-fr'] = "Espionner";
$text['label-eavesdrop']['he-il'] = "";
$text['label-eavesdrop']['it-it'] = "Ascolta";
$text['label-eavesdrop']['nl-nl'] = "Afluisteren";
$text['label-eavesdrop']['pl-pl'] = "Podsłuchiwanie";
$text['label-eavesdrop']['pl-pl'] = "Podsłuchiwanie";
$text['label-eavesdrop']['pt-br'] = "Investigar";
$text['label-eavesdrop']['pt-pt'] = "Bisbilhotar";
$text['label-eavesdrop']['ro-ro'] = "";
@@ -350,7 +350,7 @@ $text['label-call_group']['fr-fr'] = "Groupe d'appel";
$text['label-call_group']['he-il'] = "קבוצת חיוג";
$text['label-call_group']['it-it'] = "Gruppo di Chiamata";
$text['label-call_group']['nl-nl'] = "Oproep Groep";
$text['label-call_group']['pl-pl'] = "Grupa odbiorców rozmowy";
$text['label-call_group']['pl-pl'] = "Grupa odbiorców rozmowy";
$text['label-call_group']['pt-br'] = "Grupo"; //copied from pt-pt
$text['label-call_group']['pt-pt'] = "Grupo";
$text['label-call_group']['ro-ro'] = "";
@@ -392,7 +392,7 @@ $text['description-eavesdrop_destination']['fr-fr'] = "Sélectionnez la destinat
$text['description-eavesdrop_destination']['he-il'] = "";
$text['description-eavesdrop_destination']['it-it'] = "Seleziona la Destinazione d'Ascolto";
$text['description-eavesdrop_destination']['nl-nl'] = "Kies afluister bestemming";
$text['description-eavesdrop_destination']['pl-pl'] = "Wybierz destynację podsłuchiwanych rozmów";
$text['description-eavesdrop_destination']['pl-pl'] = "Wybierz destynację podsłuchiwanych rozmów";
$text['description-eavesdrop_destination']['pt-br'] = "Selecione o eavesdrop de destino";
$text['description-eavesdrop_destination']['pt-pt'] = "Selecione o Eavesdrop Destino";
$text['description-eavesdrop_destination']['ro-ro'] = "";

View File

@@ -14,7 +14,7 @@
$text['title-bridges']['he-il'] = '';
$text['title-bridges']['it-it'] = '';
$text['title-bridges']['nl-nl'] = 'Bruggen';
$text['title-bridges']['pl-pl'] = '';
$text['title-bridges']['pl-pl'] = 'Mostki';
$text['title-bridges']['pt-br'] = '';
$text['title-bridges']['pt-pt'] = '';
$text['title-bridges']['ro-ro'] = '';
@@ -35,7 +35,7 @@
$text['title-bridge']['he-il'] = '';
$text['title-bridge']['it-it'] = '';
$text['title-bridge']['nl-nl'] = 'Brug';
$text['title-bridge']['pl-pl'] = '';
$text['title-bridge']['pl-pl'] = 'Mostek';
$text['title-bridge']['pt-br'] = '';
$text['title-bridge']['pt-pt'] = '';
$text['title-bridge']['ro-ro'] = '';
@@ -56,7 +56,7 @@
$text['title_description-bridge']['he-il'] = '';
$text['title_description-bridge']['it-it'] = '';
$text['title_description-bridge']['nl-nl'] = 'Voeg brug opdrachten toe aan bestemmings lijst.';
$text['title_description-bridge']['pl-pl'] = '';
$text['title_description-bridge']['pl-pl'] = 'Dodaj wyrażenia mostkowania do listy wyboru destynacji.';
$text['title_description-bridge']['pt-br'] = '';
$text['title_description-bridge']['pt-pt'] = '';
$text['title_description-bridge']['ro-ro'] = '';
@@ -77,7 +77,7 @@
$text['label-bridge_name']['he-il'] = '';
$text['label-bridge_name']['it-it'] = '';
$text['label-bridge_name']['nl-nl'] = 'Naam';
$text['label-bridge_name']['pl-pl'] = '';
$text['label-bridge_name']['pl-pl'] = 'Nazwa';
$text['label-bridge_name']['pt-br'] = '';
$text['label-bridge_name']['pt-pt'] = '';
$text['label-bridge_name']['ro-ro'] = '';
@@ -98,7 +98,7 @@
$text['description-bridge_name']['he-il'] = '';
$text['description-bridge_name']['it-it'] = '';
$text['description-bridge_name']['nl-nl'] = 'Voer naam in.';
$text['description-bridge_name']['pl-pl'] = '';
$text['description-bridge_name']['pl-pl'] = 'Wprowadź nazwę.';
$text['description-bridge_name']['pt-br'] = '';
$text['description-bridge_name']['pt-pt'] = '';
$text['description-bridge_name']['ro-ro'] = '';
@@ -119,7 +119,7 @@
$text['label-bridge_destination']['he-il'] = '';
$text['label-bridge_destination']['it-it'] = '';
$text['label-bridge_destination']['nl-nl'] = 'Bestemming';
$text['label-bridge_destination']['pl-pl'] = '';
$text['label-bridge_destination']['pl-pl'] = 'Destynacja';
$text['label-bridge_destination']['pt-br'] = '';
$text['label-bridge_destination']['pt-pt'] = '';
$text['label-bridge_destination']['ro-ro'] = '';
@@ -140,7 +140,7 @@
$text['description-bridge_destination']['he-il'] = '';
$text['description-bridge_destination']['it-it'] = '';
$text['description-bridge_destination']['nl-nl'] = 'Voer de bestemming in.';
$text['description-bridge_destination']['pl-pl'] = '';
$text['description-bridge_destination']['pl-pl'] = 'Wprowadź destynację.';
$text['description-bridge_destination']['pt-br'] = '';
$text['description-bridge_destination']['pt-pt'] = '';
$text['description-bridge_destination']['ro-ro'] = '';
@@ -161,7 +161,7 @@
$text['label-bridge_enabled']['he-il'] = '';
$text['label-bridge_enabled']['it-it'] = '';
$text['label-bridge_enabled']['nl-nl'] = 'Geactiveerd';
$text['label-bridge_enabled']['pl-pl'] = '';
$text['label-bridge_enabled']['pl-pl'] = 'Aktywny';
$text['label-bridge_enabled']['pt-br'] = '';
$text['label-bridge_enabled']['pt-pt'] = '';
$text['label-bridge_enabled']['ro-ro'] = '';
@@ -182,7 +182,7 @@
$text['description-bridge_enabled']['he-il'] = '';
$text['description-bridge_enabled']['it-it'] = '';
$text['description-bridge_enabled']['nl-nl'] = 'Kies aktiveer/deactiveer.';
$text['description-bridge_enabled']['pl-pl'] = '';
$text['description-bridge_enabled']['pl-pl'] = 'Wybierz czy aktywować lub dezaktywować.';
$text['description-bridge_enabled']['pt-br'] = '';
$text['description-bridge_enabled']['pt-pt'] = '';
$text['description-bridge_enabled']['ro-ro'] = '';
@@ -203,7 +203,7 @@
$text['label-bridge_description']['he-il'] = '';
$text['label-bridge_description']['it-it'] = '';
$text['label-bridge_description']['nl-nl'] = 'Omschrijving';
$text['label-bridge_description']['pl-pl'] = '';
$text['label-bridge_description']['pl-pl'] = 'Opis';
$text['label-bridge_description']['pt-br'] = '';
$text['label-bridge_description']['pt-pt'] = '';
$text['label-bridge_description']['ro-ro'] = '';
@@ -224,7 +224,7 @@
$text['description-bridge_description']['he-il'] = '';
$text['description-bridge_description']['it-it'] = '';
$text['description-bridge_description']['nl-nl'] = 'Voer omschrijving in.';
$text['description-bridge_description']['pl-pl'] = '';
$text['description-bridge_description']['pl-pl'] = 'Wprowadź opis.';
$text['description-bridge_description']['pt-br'] = '';
$text['description-bridge_description']['pt-pt'] = '';
$text['description-bridge_description']['ro-ro'] = '';

View File

@@ -6,7 +6,7 @@ $apps[$x]['menu'][0]['title']['es-cl'] = '';
$apps[$x]['menu'][0]['title']['fr-fr'] = '';
$apps[$x]['menu'][0]['title']['fr-ca'] = '';
$apps[$x]['menu'][0]['title']['nl-nl'] = 'Bruggen';
$apps[$x]['menu'][0]['title']['pl'] = '';
$apps[$x]['menu'][0]['title']['pl'] = 'Mostkowania';
$apps[$x]['menu'][0]['title']['sv-se'] = '';
$apps[$x]['menu'][0]['title']['uk'] = '';
$apps[$x]['menu'][0]['title']['de-at'] = '';

View File

@@ -143,13 +143,13 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'bridge_edit.php']);
}
if (permission_exists('bridge_add') && $bridges) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('bridge_edit') && $bridges) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('bridge_delete') && $bridges) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
if (permission_exists('bridge_all')) {
@@ -160,9 +160,9 @@
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?show=all']);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'bridges.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'bridges.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>\n";
}
@@ -192,7 +192,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('bridge_add') || permission_exists('bridge_edit') || permission_exists('bridge_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($bridges ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($bridges ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == 'all' && permission_exists('bridge_all')) {
@@ -216,7 +216,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('bridge_add') || permission_exists('bridge_edit') || permission_exists('bridge_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='bridges[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='bridges[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='bridges[$x][uuid]' value='".escape($row['bridge_uuid'])."' />\n";
echo " </td>\n";
}

View File

@@ -75,6 +75,10 @@
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_block_ring_group";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_block_voicemail";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";

View File

@@ -81,7 +81,7 @@ $text['label-update-complete']['fr-fr'] = "Mise à jour effectuée";
$text['label-update-complete']['he-il'] = "העדכון הושלם";
$text['label-update-complete']['it-it'] = "Aggiornamento Completato";
$text['label-update-complete']['nl-nl'] = "Bijgewerkt";
$text['label-update-complete']['pl-pl'] = "Zaktualizowano poprawnie";
$text['label-update-complete']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['label-update-complete']['pt-br'] = "Atualização Completa";
$text['label-update-complete']['pt-pt'] = "Actualização Efectuada";
$text['label-update-complete']['ro-ro'] = "Actualizare completă";
@@ -190,7 +190,7 @@ $text['label-country_code']['fr-fr'] = "Préfixe";
$text['label-country_code']['he-il'] = "";
$text['label-country_code']['it-it'] = "";
$text['label-country_code']['nl-nl'] = "Voorloop";
$text['label-country_code']['pl-pl'] = "";
$text['label-country_code']['pl-pl'] = "Kod Kraju";
$text['label-country_code']['pt-br'] = "Prefixo"; //copied from pt-pt
$text['label-country_code']['pt-pt'] = "";
$text['label-country_code']['ro-ro'] = "";
@@ -284,6 +284,48 @@ $text['label-ivr']['ru-ru'] = "IVR";
$text['label-ivr']['sv-se'] = "IVR";
$text['label-ivr']['uk-ua'] = "";
$text['label-ring_groups']['en-us'] = "Ring Groups";
$text['label-ring_groups']['en-gb'] = "Ring Groups";
$text['label-ring_groups']['ar-eg'] = "مجموعات الرنين";
$text['label-ring_groups']['de-at'] = "Ringgruppen"; //copied from de-de
$text['label-ring_groups']['de-ch'] = "Ringgruppen"; //copied from de-de
$text['label-ring_groups']['de-de'] = "Ringgruppen";
$text['label-ring_groups']['es-cl'] = "Grupos de timbre";
$text['label-ring_groups']['es-mx'] = "Grupos de timbre"; //copied from es-cl
$text['label-ring_groups']['fr-ca'] = "Groupes de sonnerie"; //copied from fr-fr
$text['label-ring_groups']['fr-fr'] = "Groupes de sonnerie";
$text['label-ring_groups']['he-il'] = "קבוצות טבעת";
$text['label-ring_groups']['it-it'] = "Gruppi di suoneria";
$text['label-ring_groups']['nl-nl'] = "Belgroepen";
$text['label-ring_groups']['pl-pl'] = "Grupy dzwonków";
$text['label-ring_groups']['pt-br'] = "Grupos de toque"; //copied from pt-pt
$text['label-ring_groups']['pt-pt'] = "Grupos de toque";
$text['label-ring_groups']['ro-ro'] = "Grupuri de apeluri";
$text['label-ring_groups']['ru-ru'] = "Кольцевые группы";
$text['label-ring_groups']['sv-se'] = "Ringgrupper";
$text['label-ring_groups']['uk-ua'] = "Кільцеві групи";
$text['label-ring_group']['en-us'] = "Ring Group";
$text['label-ring_group']['en-gb'] = "Ring Group";
$text['label-ring_group']['ar-eg'] = "";
$text['label-ring_group']['de-at'] = "Rufgruppe"; //copied from de-de
$text['label-ring_group']['de-ch'] = "Rufgruppe"; //copied from de-de
$text['label-ring_group']['de-de'] = "Rufgruppe";
$text['label-ring_group']['es-cl'] = "Grupo de llamado";
$text['label-ring_group']['es-mx'] = "Grupo de llamado"; //copied from es-cl
$text['label-ring_group']['fr-ca'] = "Groupe de sonnerie"; //copied from fr-fr
$text['label-ring_group']['fr-fr'] = "Groupe de sonnerie";
$text['label-ring_group']['he-il'] = "קבוצת חיוג";
$text['label-ring_group']['it-it'] = "Gruppo di Squillo";
$text['label-ring_group']['nl-nl'] = "Belgroep";
$text['label-ring_group']['pl-pl'] = "Grupa odbiorców.";
$text['label-ring_group']['pt-br'] = "Grupo"; //copied from pt-pt
$text['label-ring_group']['pt-pt'] = "Grupo";
$text['label-ring_group']['ro-ro'] = "";
$text['label-ring_group']['ru-ru'] = "Группа вызовов";
$text['label-ring_group']['sv-se'] = "Ringgrupp";
$text['label-ring_group']['uk-ua'] = "";
$text['label-local']['en-us'] = "Local";
$text['label-local']['en-gb'] = "Local";
$text['label-local']['ar-eg'] = "محلي";
@@ -472,7 +514,7 @@ $text['label-delete-complete']['fr-fr'] = "Supprimé";
$text['label-delete-complete']['he-il'] = "המחיקה הושלמה";
$text['label-delete-complete']['it-it'] = "Cancellazione Completata";
$text['label-delete-complete']['nl-nl'] = "Verwijderen gereed";
$text['label-delete-complete']['pl-pl'] = "Usunięto poprawnie";
$text['label-delete-complete']['pl-pl'] = "Usunięto pomyślnie";
$text['label-delete-complete']['pt-br'] = "Remoção efetuada";
$text['label-delete-complete']['pt-pt'] = "Remoção Efectuada";
$text['label-delete-complete']['ro-ro'] = "Ștergere completă";
@@ -648,7 +690,7 @@ $text['label-add-complete']['fr-fr'] = "Ajouté";
$text['label-add-complete']['he-il'] = "הוספה הושלמה";
$text['label-add-complete']['it-it'] = "Inserimento Completato";
$text['label-add-complete']['nl-nl'] = "Toevoegen gereed";
$text['label-add-complete']['pl-pl'] = "Dodano poprawnie";
$text['label-add-complete']['pl-pl'] = "Dodano pomyślnie";
$text['label-add-complete']['pt-br'] = "Criação efetuada ";
$text['label-add-complete']['pt-pt'] = "Adição Efectuada";
$text['label-add-complete']['ro-ro'] = "Adăugare completă";
@@ -713,7 +755,7 @@ $text['description-direction']['fr-fr'] = "Sélectionnez la direction des appels
$text['description-direction']['he-il'] = "Select the direction of the calls to block.";
$text['description-direction']['it-it'] = "Select the direction of the calls to block.";
$text['description-direction']['nl-nl'] = "Select the direction of the calls to block.";
$text['description-direction']['pl-pl'] = "Select the direction of the calls to block.";
$text['description-direction']['pl-pl'] = "Wybierz kierunek połączeń, które mają być blokowane.";
$text['description-direction']['pt-br'] = "Select the direction of the calls to block.";
$text['description-direction']['pt-pt'] = "Select the direction of the calls to block.";
$text['description-direction']['ro-ro'] = "Select the direction of the calls to block.";
@@ -735,7 +777,7 @@ $text['description-call_block_name']['fr-fr'] = "Entrez le nom d'affichage à bl
$text['description-call_block_name']['he-il'] = "";
$text['description-call_block_name']['it-it'] = "";
$text['description-call_block_name']['nl-nl'] = "Voer het te blokkeren CID Naam in.";
$text['description-call_block_name']['pl-pl'] = "";
$text['description-call_block_name']['pl-pl'] = "Wprowadź prezentację Nazwy numeru dzwoniącego do zablokowania.";
$text['description-call_block_name']['pt-br'] = "";
$text['description-call_block_name']['pt-pt'] = "";
$text['description-call_block_name']['ro-ro'] = "";
@@ -756,7 +798,7 @@ $text['description-country_code']['fr-fr'] = "Entrez le préfixe de destination.
$text['description-country_code']['he-il'] = "";
$text['description-country_code']['it-it'] = "";
$text['description-country_code']['nl-nl'] = "Voer de bestemming prefix in.";
$text['description-country_code']['pl-pl'] = "";
$text['description-country_code']['pl-pl'] = "Wprowadź prefiks Kodu Kraju.";
$text['description-country_code']['pt-br'] = "Insira o prefixo do destino.";
$text['description-country_code']['pt-pt'] = "";
$text['description-country_code']['ro-ro'] = "";
@@ -778,7 +820,7 @@ $text['description-call_block_number']['fr-fr'] = "Entrez le numéro d'affichage
$text['description-call_block_number']['he-il'] = "";
$text['description-call_block_number']['it-it'] = "";
$text['description-call_block_number']['nl-nl'] = "Voer het te blokkeren CID Nummer in.";
$text['description-call_block_number']['pl-pl'] = "";
$text['description-call_block_number']['pl-pl'] = "Wprowadź Kod Kraju i prezentację Numeru dzwoniącego do zablokowania.";
$text['description-call_block_number']['pt-br'] = "";
$text['description-call_block_number']['pt-pt'] = "";
$text['description-call_block_number']['ro-ro'] = "";
@@ -800,7 +842,7 @@ $text['description-extension']['fr-fr'] = "Choissizez le poste sur lequel cette
$text['description-extension']['he-il'] = "";
$text['description-extension']['it-it'] = "";
$text['description-extension']['nl-nl'] = "Selecteer het toestel dat geblokkeerd moet worden.";
$text['description-extension']['pl-pl'] = "";
$text['description-extension']['pl-pl'] = "Wybierz numer wewnętrzny, którego blokowanie ma dotyczyć.";
$text['description-extension']['pt-br'] = "";
$text['description-extension']['pt-pt'] = "";
$text['description-extension']['ro-ro'] = "";
@@ -888,7 +930,7 @@ $text['confirm-block']['fr-fr'] = "Voulez-vous vraiment bloquer ceci?";
$text['confirm-block']['he-il'] = "Do you really want to block this?";
$text['confirm-block']['it-it'] = "Do you really want to block this?";
$text['confirm-block']['nl-nl'] = "Do you really want to block this?";
$text['confirm-block']['pl-pl'] = "Do you really want to block this?";
$text['confirm-block']['pl-pl'] = "Czy na pewno chcesz to zablokować?";
$text['confirm-block']['pt-br'] = "Do you really want to block this?";
$text['confirm-block']['pt-pt'] = "Do you really want to block this?";
$text['confirm-block']['ro-ro'] = "Do you really want to block this?";
@@ -911,7 +953,7 @@ $text['button-block']['fr-fr'] = "Bloquer";
$text['button-block']['he-il'] = "Block";
$text['button-block']['it-it'] = "Block";
$text['button-block']['nl-nl'] = "Block";
$text['button-block']['pl-pl'] = "Block";
$text['button-block']['pl-pl'] = "Blokuj";
$text['button-block']['pt-br'] = "Block";
$text['button-block']['pt-pt'] = "Block";
$text['button-block']['ro-ro'] = "Block";

View File

@@ -180,13 +180,13 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'call_block_edit.php']);
}
if (permission_exists('call_block_add') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('call_block_edit') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('call_block_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
if (permission_exists('call_forward_all')) {
@@ -197,9 +197,9 @@
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type='.urlencode($destination_type).'&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_block.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_block.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -229,7 +229,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('call_block_add') || permission_exists('call_block_edit') || permission_exists('call_block_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == 'all' && permission_exists('domain_all')) {
@@ -259,7 +259,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('call_block_add') || permission_exists('call_block_edit') || permission_exists('call_block_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='call_blocks[".$x."][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='call_blocks[".$x."][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='call_blocks[".$x."][uuid]' value='".escape($row['call_block_uuid'])."' />\n";
echo " </td>\n";
}

View File

@@ -283,6 +283,17 @@ if (permission_exists('call_block_all') || permission_exists('call_block_ivr'))
$ivrs = $database->select($sql, $parameters);
}
//get the ring groups
if (permission_exists('call_block_all') || permission_exists('call_block_ring_group')) {
$sql = "select ring_group_uuid,ring_group_name, ring_group_extension, ring_group_description from v_ring_groups ";
$sql .= "where domain_uuid = :domain_uuid ";
// $sql .= "and ring_group_enabled = 'true' ";
$sql .= "order by ring_group_extension asc ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$ring_groups = $database->select($sql, $parameters);
}
//get the voicemails
$sql = "select voicemail_uuid, voicemail_id, voicemail_description ";
$sql .= "from v_voicemails ";
@@ -405,7 +416,7 @@ if (permission_exists('call_block_all') || permission_exists('call_block_ivr'))
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
function call_block_action_select($label = false) {
global $select_margin, $text, $call_block_app, $call_block_data, $extensions, $ivrs, $voicemails;
global $select_margin, $text, $call_block_app, $call_block_data, $extensions, $ivrs, $voicemails, $ring_groups;
echo "<select class='formfld' style='".$select_margin."' name='call_block_action'>\n";
if ($label) {
echo " <option value='' disabled='disabled'>".$text['label-action']."</option>\n";
@@ -448,6 +459,16 @@ if (permission_exists('call_block_all') || permission_exists('call_block_ivr'))
echo " </optgroup>\n";
}
}
if (permission_exists('call_block_ring_group')) {
if (is_array($ring_groups) && sizeof($ring_groups) != 0) {
echo " <optgroup label='".$text['label-ring_groups']."'>\n";
foreach ($ring_groups as &$row) {
$selected = ($call_block_app == 'ring_group' && $call_block_data == $row['ring_group_extension']) ? "selected='selected'" : null;
echo " <option value='ring_group:".urlencode($row["ring_group_extension"])."' ".$selected.">".escape($row['ring_group_name'])." ".escape($row['ring_group_extension'])."</option>\n";
}
echo " </optgroup>\n";
}
}
if (permission_exists('call_block_voicemail')) {
if (is_array($voicemails) && sizeof($voicemails) != 0) {
echo " <optgroup label='".$text['label-voicemail']."'>\n";

View File

@@ -328,8 +328,14 @@ if (!class_exists('call_block')) {
$array['call_block'][$x]['extension_uuid'] = $this->extension_uuid;
}
if ($this->call_block_direction == 'inbound') {
//remove e.164 and country code
$call_block_number = str_replace("+".trim($_SESSION['domain']['country_code']['numeric']), "", trim($row["caller_id_number"]));
//build the array
$array['call_block'][$x]['call_block_country_code'] = trim($_SESSION['domain']['country_code']['numeric']);
$array['call_block'][$x]['call_block_name'] = trim($row["caller_id_name"]);
$array['call_block'][$x]['call_block_number'] = trim($row["caller_id_number"]);
$array['call_block'][$x]['call_block_number'] = $call_block_number;
$array['call_block'][$x]['call_block_description'] = trim($row["caller_id_name"]);
}
if ($this->call_block_direction == 'outbound') {
$array['call_block'][$x]['call_block_number'] = trim($row["caller_destination"]);
@@ -350,8 +356,13 @@ if (!class_exists('call_block')) {
$array['call_block'][$x]['call_block_direction'] = $this->call_block_direction;
$array['call_block'][$x]['extension_uuid'] = $field['extension_uuid'];
if ($this->call_block_direction == 'inbound') {
//remove e.164 and country code
$call_block_number = str_replace("+".trim($_SESSION['domain']['country_code']['numeric']), "", trim($row["caller_id_number"]));
//build the array
$array['call_block'][$x]['call_block_name'] = trim($row["caller_id_name"]);
$array['call_block'][$x]['call_block_number'] = trim($row["caller_id_number"]);
$array['call_block'][$x]['call_block_number'] = $call_block_number;
$array['call_block'][$x]['call_block_description'] = trim($row["caller_id_name"]);
}
if ($this->call_block_direction == 'outbound') {
$array['call_block'][$x]['call_block_number'] = trim($row["caller_destination"]);
@@ -417,4 +428,4 @@ if (!class_exists('call_block')) {
} //class
}
?>
?>

View File

@@ -80,6 +80,9 @@
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_broadcast_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_broadcast_send";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";

View File

@@ -56,7 +56,7 @@ $text['title_description-call_broadcast']['fr-fr'] = "";
$text['title_description-call_broadcast']['he-il'] = "";
$text['title_description-call_broadcast']['it-it'] = "";
$text['title_description-call_broadcast']['nl-nl'] = "Beheer de aflevering van voor-opgenomen boodschappen naar meerdere ontvangers.";
$text['title_description-call_broadcast']['pl-pl'] = "";
$text['title_description-call_broadcast']['pl-pl'] = "Zarządzaj dostarczaniem nagranych wiadomości do odbiorców masowych.";
$text['title_description-call_broadcast']['pt-br'] = "";
$text['title_description-call_broadcast']['pt-pt'] = "";
$text['title_description-call_broadcast']['ro-ro'] = "";
@@ -140,7 +140,7 @@ $text['label-start_time']['fr-fr'] = "Start Time";
$text['label-start_time']['he-il'] = "Start Time";
$text['label-start_time']['it-it'] = "Start Time";
$text['label-start_time']['nl-nl'] = "Start Time";
$text['label-start_time']['pl-pl'] = "Start Time";
$text['label-start_time']['pl-pl'] = "Czas rozpoczęcia";
$text['label-start_time']['pt-br'] = "Start Time";
$text['label-start_time']['pt-pt'] = "Start Time";
$text['label-start_time']['ro-ro'] = "Start Time";
@@ -435,7 +435,7 @@ $text['label-sample_file']['fr-fr'] = "Sample CSV File";
$text['label-sample_file']['he-il'] = "Sample CSV File";
$text['label-sample_file']['it-it'] = "Sample CSV File";
$text['label-sample_file']['nl-nl'] = "Voorbeeld CSV File";
$text['label-sample_file']['pl-pl'] = "Sample CSV File";
$text['label-sample_file']['pl-pl'] = "Przykładowy plik CSV";
$text['label-sample_file']['pt-br'] = "Sample CSV File";
$text['label-sample_file']['pt-pt'] = "Sample CSV File";
$text['label-sample_file']['ro-ro'] = "Sample CSV File";
@@ -456,7 +456,7 @@ $text['label-list_example']['fr-fr'] = "Number|First,Last\nNumber|First,Last\n..
$text['label-list_example']['he-il'] = "Number|First,Last\nNumber|First,Last\n...";
$text['label-list_example']['it-it'] = "Number|First,Last\nNumber|First,Last\n...";
$text['label-list_example']['nl-nl'] = "Nummer|Eerste,Laatste\nNummer|Eerste,Laatste\n...";
$text['label-list_example']['pl-pl'] = "Number|First,Last\nNumber|First,Last\n...";
$text['label-list_example']['pl-pl'] = "Numer|Pierwsze,Ostatnie\nNumer|Pierwsze,Ostatnie\n...";
$text['label-list_example']['pt-br'] = "Number|First,Last\nNumber|First,Last\n...";
$text['label-list_example']['pt-pt'] = "Number|First,Last\nNumber|First,Last\n...";
$text['label-list_example']['ro-ro'] = "Number|First,Last\nNumber|First,Last\n...";
@@ -477,7 +477,7 @@ $text['description-start_time']['fr-fr'] = "";
$text['description-start_time']['he-il'] = "";
$text['description-start_time']['it-it'] = "";
$text['description-start_time']['nl-nl'] = "";
$text['description-start_time']['pl-pl'] = "";
$text['description-start_time']['pl-pl'] = "Jest to czas w sekundach, po którym rozpocznie się wysyłanie połączeń";
$text['description-start_time']['pt-br'] = ""; //copied from pt-pt
$text['description-start_time']['pt-pt'] = "";
$text['description-start_time']['ro-ro'] = "";
@@ -498,7 +498,7 @@ $text['description-accountcode']['fr-fr'] = "";
$text['description-accountcode']['he-il'] = "";
$text['description-accountcode']['it-it'] = "";
$text['description-accountcode']['nl-nl'] = "";
$text['description-accountcode']['pl-pl'] = "";
$text['description-accountcode']['pl-pl'] = "Kod konta używany najczęściej w systemach bilingowych.";
$text['description-accountcode']['pt-br'] = ""; //copied from pt-pt
$text['description-accountcode']['pt-pt'] = "";
$text['description-accountcode']['ro-ro'] = "";
@@ -729,7 +729,7 @@ $text['confirm-update']['fr-fr'] = "Mise à jour terminée";
$text['confirm-update']['he-il'] = "עידכון הושלם";
$text['confirm-update']['it-it'] = "Aggiornamento Completato.";
$text['confirm-update']['nl-nl'] = "Bijwerken gereed";
$text['confirm-update']['pl-pl'] = "Aktualizacja zakonczona";
$text['confirm-update']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['confirm-update']['pt-br'] = "Atualização Efetuada";
$text['confirm-update']['pt-pt'] = "Actualização Efectuada";
$text['confirm-update']['ro-ro'] = "";
@@ -792,7 +792,7 @@ $text['confirm-add']['fr-fr'] = "Ajouté";
$text['confirm-add']['he-il'] = "הוספה הושלמה";
$text['confirm-add']['it-it'] = "Inserimento Completato";
$text['confirm-add']['nl-nl'] = "Toevoegen gereed";
$text['confirm-add']['pl-pl'] = "Dodano poprawnie";
$text['confirm-add']['pl-pl'] = "Dodano pomyślnie";
$text['confirm-add']['pt-br'] = "Criação efetuada";
$text['confirm-add']['pt-pt'] = "Adição Efectuada";
$text['confirm-add']['ro-ro'] = "";

View File

@@ -90,17 +90,23 @@
//get the count
$sql = "select count(*) from v_call_broadcasts ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('call_broadcast_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (isset($sql_search)) {
$sql .= "and ".$sql_search;
}
$database = new database;
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$num_rows = $database->select($sql, $parameters, 'column');
//prepare the paging
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('call_broadcast_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -131,15 +137,23 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'call_broadcast_edit.php']);
}
if (permission_exists('call_broadcast_add') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('call_broadcast_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_broadcast.php','style'=>($search == '' ? 'display: none;' : null)]);
if (permission_exists('call_broadcast_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type='.urlencode($destination_type).'&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_broadcast.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -166,9 +180,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('call_broadcast_add') || permission_exists('call_broadcast_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_broadcast_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('broadcast_name', $text['label-name'], $order_by, $order);
echo th_order_by('broadcast_concurrent_limit', $text['label-concurrent-limit'], $order_by, $order);
echo th_order_by('broadcast_description', $text['label-description'], $order_by, $order);
@@ -186,10 +203,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('call_broadcast_add') || permission_exists('call_broadcast_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='call_broadcasts[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='call_broadcasts[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='call_broadcasts[$x][uuid]' value='".escape($row['call_broadcast_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_broadcast_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td>";
if (permission_exists('call_broadcast_edit')) {
echo "<a href='".$list_row_url."'>".escape($row['broadcast_name'])."</a>";
@@ -222,4 +248,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -66,6 +66,9 @@
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_center_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_center_agent_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "597c483a-51a9-f95a-8d54-ea7d87ada2b8";
$apps[$x]['permissions'][$y]['groups'][] = "admin";

View File

@@ -55,7 +55,7 @@ if ($domains_processed == 1) {
$database = new database;
$database->app_name = 'call_centers';
$database->app_uuid = '95788e50-9500-079e-2807-fd530b0ea370';
$database->save($array);
$database->save($array, false);
$response = $database->message;
unset($array);
@@ -153,7 +153,7 @@ if ($domains_processed == 1) {
}
}
unset ($prep_statement);
//save the array to the database
if (is_array($array)) {
//add the dialplan permission
@@ -165,7 +165,7 @@ if ($domains_processed == 1) {
$database = new database;
$database->app_name = 'call_centers';
$database->app_uuid = '95788e50-9500-079e-2807-fd530b0ea370';
$database->save($array);
$database->save($array, false);
$message = $database->message;
//remove the temporary permission

View File

@@ -81,17 +81,23 @@
//get total call center agent count from the database
$sql = "select count(*) from v_call_center_agents ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('call_center_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (isset($sql_search)) {
$sql .= "and ".$sql_search;
}
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('call_center_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -129,9 +135,17 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'call_center_agent_edit.php']);
}
if (permission_exists('call_center_agent_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>";
if (permission_exists('call_center_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type=&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_center_agents.php','style'=>($search == '' ? 'display: none;' : null)]);
@@ -158,9 +172,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('call_center_agent_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_center_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
//echo th_order_by('domain_uuid', 'domain_uuid', $order_by, $order);
echo th_order_by('agent_name', $text['label-agent_name'], $order_by, $order);
echo th_order_by('agent_id', $text['label-agent_id'], $order_by, $order);
@@ -186,10 +203,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('call_center_agent_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='call_center_agents[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='call_center_agents[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='call_center_agents[$x][uuid]' value='".escape($row['call_center_agent_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_center_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td>";
if (permission_exists('call_center_agent_edit')) {
echo "<a href='call_center_agent_edit.php?id=".escape($row['call_center_agent_uuid'])."'>".escape($row['agent_name'])."</a>";

View File

@@ -87,17 +87,23 @@
//get total call center queues count from the database
$sql = "select count(*) from v_call_center_queues ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('call_center_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (isset($sql_search)) {
$sql .= "and ".$sql_search;
}
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('call_center_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -139,17 +145,25 @@
unset($margin_left);
}
if (permission_exists('call_center_queue_add') && $result && (!is_numeric($_SESSION['limit']['call_center_queues']['numeric']) || $num_rows <= $_SESSION['limit']['call_center_queues']['numeric'])) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','style'=>$margin_left,'onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none; '.$margin_left,'onclick'=>"modal_open('modal-copy','btn_copy');"]);
unset($margin_left);
}
if (permission_exists('call_center_queue_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','style'=>$margin_left,'onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none; '.$margin_left,'onclick'=>"modal_open('modal-delete','btn_delete');"]);
unset($margin_left);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_center_queues.php','style'=>($search == '' ? 'display: none;' : null)]);
if (permission_exists('call_center_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type=&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_center_queues.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -176,9 +190,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('call_center_queue_add') || permission_exists('call_center_queue_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_center_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('queue_name', $text['label-queue_name'], $order_by, $order);
echo th_order_by('queue_extension', $text['label-extension'], $order_by, $order);
echo th_order_by('queue_strategy', $text['label-strategy'], $order_by, $order);
@@ -209,10 +226,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('call_center_queue_add') || permission_exists('call_center_queue_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='call_center_queues[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='call_center_queues[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='call_center_queues[$x][uuid]' value='".escape($row['call_center_queue_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_center_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td>";
if (permission_exists('call_center_queue_edit')) {
echo " <a href='".$list_row_url."' title=\"".$text['button-edit']."\">".escape($row['queue_name'])."</a>";

View File

@@ -34,13 +34,29 @@
$apps[$x]['destinations'][$y]['type'] = "sql";
$apps[$x]['destinations'][$y]['label'] = "call_flows";
$apps[$x]['destinations'][$y]['name'] = "call_flows";
$apps[$x]['destinations'][$y]['sql'] = "select call_flow_name as name, call_flow_uuid as uuid, call_flow_extension as destination, call_flow_context as context from v_call_flows ";
$apps[$x]['destinations'][$y]['where'] = "where domain_uuid = '\${domain_uuid}' and call_flow_enabled = 'true' ";
$apps[$x]['destinations'][$y]['order_by'] = "call_flow_name asc";
$apps[$x]['destinations'][$y]['field']['call_flow_uuid'] = "call_flow_uuid";
$apps[$x]['destinations'][$y]['field']['name'] = "call_flow_name";
$apps[$x]['destinations'][$y]['field']['destination'] = "call_flow_extension";
$apps[$x]['destinations'][$y]['field']['extension'] = "call_flow_extension";
$apps[$x]['destinations'][$y]['field']['context'] = "call_flow_context";
$apps[$x]['destinations'][$y]['field']['destination'] = "destination";
$apps[$x]['destinations'][$y]['field']['extension'] = "destination";
$apps[$x]['destinations'][$y]['field']['context'] = "context";
$apps[$x]['destinations'][$y]['select_value']['dialplan'] = "transfer:\${destination} XML \${context}";
$apps[$x]['destinations'][$y]['select_value']['ivr'] = "menu-exec-app:transfer \${destination} XML \${context}";
$apps[$x]['destinations'][$y]['select_label'] = "\${destination} \${name}";
$y++;
$apps[$x]['destinations'][$y]['type'] = "sql";
$apps[$x]['destinations'][$y]['label'] = "call_flows";
$apps[$x]['destinations'][$y]['name'] = "call_flows";
$apps[$x]['destinations'][$y]['sql'] = "select call_flow_name as name, call_flow_uuid as uuid, call_flow_extension as extension, call_flow_feature_code as destination, call_flow_context as context from v_call_flows ";
$apps[$x]['destinations'][$y]['where'] = "where domain_uuid = '\${domain_uuid}' and call_flow_enabled = 'true' ";
$apps[$x]['destinations'][$y]['order_by'] = "call_flow_extension asc";
$apps[$x]['destinations'][$y]['field']['uuid'] = "uuid";
$apps[$x]['destinations'][$y]['field']['name'] = "name";
$apps[$x]['destinations'][$y]['field']['destination'] = "destination";
$apps[$x]['destinations'][$y]['field']['extension'] = "extension";
$apps[$x]['destinations'][$y]['field']['context'] = "context";
$apps[$x]['destinations'][$y]['select_value']['dialplan'] = "transfer:\${destination} XML \${context}";
$apps[$x]['destinations'][$y]['select_value']['ivr'] = "menu-exec-app:transfer \${destination} XML \${context}";
$apps[$x]['destinations'][$y]['select_label'] = "\${destination} \${name}";
@@ -64,6 +80,9 @@
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_flow_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "call_flow_context";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;

View File

@@ -43,6 +43,48 @@ $text['title-call_flow']['ru-ru'] = "Переключатель вызовов";
$text['title-call_flow']['sv-se'] = "Samtalsflöde";
$text['title-call_flow']['uk-ua'] = "Потік дзвінків";
$text['title-call_flow_extension']['en-us'] = "Call Flows - Extension";
$text['title-call_flow_extension']['en-gb'] = "Call Flows - Extension";
$text['title-call_flow_extension']['ar-eg'] = "";
$text['title-call_flow_extension']['de-at'] = "Anruf Steuerung - Ziel"; //copied from de-de
$text['title-call_flow_extension']['de-ch'] = "Anruf Steuerung - Ziel"; //copied from de-de
$text['title-call_flow_extension']['de-de'] = "Anruf Steuerung - Ziel";
$text['title-call_flow_extension']['es-cl'] = "Flujo de Llamada - Destino";
$text['title-call_flow_extension']['es-mx'] = "Flujo de Llamada - Destino"; //copied from es-cl
$text['title-call_flow_extension']['fr-ca'] = "Flux d'appel - Destination"; //copied from fr-fr
$text['title-call_flow_extension']['fr-fr'] = "Flux d'appel - Destination";
$text['title-call_flow_extension']['he-il'] = "";
$text['title-call_flow_extension']['it-it'] = "Deviatori di Chiamata - Destinazione";
$text['title-call_flow_extension']['nl-nl'] = "Oproep besturing - Bestemming";
$text['title-call_flow_extension']['pl-pl'] = "Przepływ rozmów - Destynacja";
$text['title-call_flow_extension']['pt-br'] = "Fluxo de chamadas - Destino";
$text['title-call_flow_extension']['pt-pt'] = "Fluxo de Chamadas - Desvio";
$text['title-call_flow_extension']['ro-ro'] = "";
$text['title-call_flow_extension']['ru-ru'] = "Переключатели вызовов - Направление";
$text['title-call_flow_extension']['sv-se'] = "Samtalsflöden - Destination";
$text['title-call_flow_extension']['uk-ua'] = "Потоки дзвінків - Номер";
$text['title-call_flow_feature']['en-us'] = "Call Flows - Feature";
$text['title-call_flow_feature']['en-gb'] = "Call Flows - Feature";
$text['title-call_flow_feature']['ar-eg'] = "";
$text['title-call_flow_feature']['de-at'] = "Anruf Steuerung - Funktions"; //copied from de-de
$text['title-call_flow_feature']['de-ch'] = "Anruf Steuerung - Funktions"; //copied from de-de
$text['title-call_flow_feature']['de-de'] = "Anruf Steuerung - Funktions";
$text['title-call_flow_feature']['es-cl'] = "Flujo de Llamada - distintivo";
$text['title-call_flow_feature']['es-mx'] = "Flujo de Llamada - distintivo"; //copied from es-cl
$text['title-call_flow_feature']['fr-ca'] = "Flux d'appel - Fonction"; //copied from fr-fr
$text['title-call_flow_feature']['fr-fr'] = "Flux d'appel - Fonction";
$text['title-call_flow_feature']['he-il'] = "";
$text['title-call_flow_feature']['it-it'] = "Deviatori di Chiamata ";
$text['title-call_flow_feature']['nl-nl'] = "Oproep besturing - Functie";
$text['title-call_flow_feature']['pl-pl'] = "Przepływ rozmów ";
$text['title-call_flow_feature']['pt-br'] = "Fluxo de chamadas - Função";
$text['title-call_flow_feature']['pt-pt'] = "Fluxo de Chamadas - Função";
$text['title-call_flow_feature']['ro-ro'] = "";
$text['title-call_flow_feature']['ru-ru'] = "Переключатели вызовов - Код функции";
$text['title-call_flow_feature']['sv-se'] = "Samtalsflöden - Funktionskod";
$text['title-call_flow_feature']['uk-ua'] = "Потоки дзвінків";
$text['label-call_flow_name']['en-us'] = "Name";
$text['label-call_flow_name']['en-gb'] = "Name";
$text['label-call_flow_name']['ar-eg'] = "";
@@ -119,7 +161,7 @@ $text['label-call_flow_feature_code']['fr-fr'] = "Code Fonction";
$text['label-call_flow_feature_code']['he-il'] = "";
$text['label-call_flow_feature_code']['it-it'] = "";
$text['label-call_flow_feature_code']['nl-nl'] = "Functie-code";
$text['label-call_flow_feature_code']['pl-pl'] = "";
$text['label-call_flow_feature_code']['pl-pl'] = "Kod Funkcji";
$text['label-call_flow_feature_code']['pt-br'] = "Código de função";
$text['label-call_flow_feature_code']['pt-pt'] = "Código de Função";
$text['label-call_flow_feature_code']['ro-ro'] = "";

View File

@@ -101,15 +101,21 @@
//prepare to page the results
$sql = "select count(*) from v_call_flows ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('call_flow_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
$sql .= $sql_search;
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('call_flow_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -150,10 +156,10 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'call_flow_edit.php']);
}
if (permission_exists('call_flow_add') && $call_flows) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('call_flow_edit') && $call_flows) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"toggle_select(); this.blur();"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"toggle_select(); this.blur();"]);
echo "<select class='formfld' style='display: none; width: auto;' id='call_flow_feature' onchange=\"if (this.selectedIndex != 0) { modal_open('modal-toggle','btn_toggle'); }\">";
echo " <option value='' selected='selected'>".$text['label-select']."</option>";
echo " <option value='call_flow_status'>".$text['label-call_flow_status']."</option>";
@@ -161,12 +167,20 @@
echo " </select>";
}
if (permission_exists('call_flow_delete') && $call_flows) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_flows.php','style'=>($search == '' ? 'display: none;' : null)]);
if (permission_exists('call_flow_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type=&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_flows.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -197,9 +211,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('call_flow_add') || permission_exists('call_flow_edit') || permission_exists('call_flow_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($call_flows ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($call_flows ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_flow_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('call_flow_name', $text['label-call_flow_name'], $order_by, $order);
echo th_order_by('call_flow_extension', $text['label-call_flow_extension'], $order_by, $order);
echo th_order_by('call_flow_feature_code', $text['label-call_flow_feature_code'], $order_by, $order);
@@ -223,10 +240,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('call_flow_add') || permission_exists('call_flow_edit') || permission_exists('call_flow_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='call_flows[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='call_flows[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='call_flows[$x][uuid]' value='".escape($row['call_flow_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_flow_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td><a href='".$list_row_url."'>".escape($row['call_flow_name'])."</a>&nbsp;</td>\n";
echo " <td>".escape($row['call_flow_extension'])."&nbsp;</td>\n";
echo " <td>".escape($row['call_flow_feature_code'])."&nbsp;</td>\n";

View File

@@ -791,7 +791,7 @@ $text['description-call_routing']['fr-fr'] = "Définir la manipulation pour les
$text['description-call_routing']['he-il'] = "";
$text['description-call_routing']['it-it'] = "Definisce gestione alternativa per le chiamate in ingresso per i seguenti interni.";
$text['description-call_routing']['nl-nl'] = "Deinieer alternatief inkomend gesprek afhandeling in voor de volgende toestellen.";
$text['description-call_routing']['pl-pl'] = "Definiowanie alternatywnego połączenia przychodzącego obsługi dla następujących rozszerzeń.";
$text['description-call_routing']['pl-pl'] = "Definiowanie alternatywnego połączenia przychodzącego obsługi dla następujących numerów wewnętrznych.";
$text['description-call_routing']['pt-br'] = "Defina o tratamento de entradas alternativas para os seguintes ramais. ";
$text['description-call_routing']['pt-pt'] = "Definir alternativo chamada de entrada assistência para as seguintes extensões.";
$text['description-call_routing']['ro-ro'] = "";
@@ -854,7 +854,7 @@ $text['confirm-update']['fr-fr'] = "Mis à jour";
$text['confirm-update']['he-il'] = "";
$text['confirm-update']['it-it'] = "Aggiornamento Completato";
$text['confirm-update']['nl-nl'] = "Bijwerken gereed";
$text['confirm-update']['pl-pl'] = "Aktualizacja zakonczona";
$text['confirm-update']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['confirm-update']['pt-br'] = "Atualização Efetuada";
$text['confirm-update']['pt-pt'] = "Actualização Efectuada";
$text['confirm-update']['ro-ro'] = "";

View File

@@ -229,9 +229,9 @@
if ($_GET['show'] == 'all' && permission_exists('call_forward_all')) {
echo " <input type='hidden' name='show' value='all'>";
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_forward.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_forward.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}

View File

@@ -147,7 +147,7 @@
$token = new token;
if (!$token->validate($_SERVER['PHP_SELF'])) {
message::add($text['message-invalid_token'],'negative');
header('Location: calls.php');
header('Location: call_forward.php');
exit;
}

View File

@@ -26,6 +26,9 @@
$apps[$x]['permissions'][$y]['name'] = 'call_recording_delete';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'call_recording_all';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'call_recording_play';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;

View File

@@ -13,7 +13,7 @@ $text['title-call_recordings']['fr-fr'] = "Enregistrements d'appels";
$text['title-call_recordings']['he-il'] = "";
$text['title-call_recordings']['it-it'] = "";
$text['title-call_recordings']['nl-nl'] = "Gespreksopnamen";
$text['title-call_recordings']['pl-pl'] = "";
$text['title-call_recordings']['pl-pl'] = "Nagrania Rozmów";
$text['title-call_recordings']['pt-br'] = "";
$text['title-call_recordings']['pt-pt'] = "";
$text['title-call_recordings']['ro-ro'] = "";
@@ -55,7 +55,7 @@ $text['title_description-call_recordings']['fr-fr'] = "Affiche les enregistremen
$text['title_description-call_recordings']['he-il'] = "";
$text['title_description-call_recordings']['it-it'] = "";
$text['title_description-call_recordings']['nl-nl'] = "Toont de gespreksopnamen met naam, lengte, datum/tijd en oproep richting.";
$text['title_description-call_recordings']['pl-pl'] = "";
$text['title_description-call_recordings']['pl-pl'] = "Wyświetla nagrania połączeń wraz z nazwą, długością, datą i godziną oraz kierunkiem połączenia.";
$text['title_description-call_recordings']['pt-br'] = "";
$text['title_description-call_recordings']['pt-pt'] = "";
$text['title_description-call_recordings']['ro-ro'] = "";
@@ -76,7 +76,7 @@ $text['label-call_recording_name']['fr-fr'] = "Nom";
$text['label-call_recording_name']['he-il'] = "";
$text['label-call_recording_name']['it-it'] = "";
$text['label-call_recording_name']['nl-nl'] = "Naam";
$text['label-call_recording_name']['pl-pl'] = "";
$text['label-call_recording_name']['pl-pl'] = "Nazwa";
$text['label-call_recording_name']['pt-br'] = "";
$text['label-call_recording_name']['pt-pt'] = "";
$text['label-call_recording_name']['ro-ro'] = "";
@@ -118,7 +118,7 @@ $text['label-call_recording_path']['fr-fr'] = "Chemin";
$text['label-call_recording_path']['he-il'] = "";
$text['label-call_recording_path']['it-it'] = "";
$text['label-call_recording_path']['nl-nl'] = "Pad";
$text['label-call_recording_path']['pl-pl'] = "";
$text['label-call_recording_path']['pl-pl'] = "Scieżka";
$text['label-call_recording_path']['pt-br'] = "";
$text['label-call_recording_path']['pt-pt'] = "";
$text['label-call_recording_path']['ro-ro'] = "";
@@ -160,7 +160,7 @@ $text['label-call_recording_length']['fr-fr'] = "Longueur";
$text['label-call_recording_length']['he-il'] = "";
$text['label-call_recording_length']['it-it'] = "";
$text['label-call_recording_length']['nl-nl'] = "Lengte";
$text['label-call_recording_length']['pl-pl'] = "";
$text['label-call_recording_length']['pl-pl'] = "Długość";
$text['label-call_recording_length']['pt-br'] = "";
$text['label-call_recording_length']['pt-pt'] = "";
$text['label-call_recording_length']['ro-ro'] = "";
@@ -202,7 +202,7 @@ $text['label-call_recording_date']['fr-fr'] = "Date";
$text['label-call_recording_date']['he-il'] = "";
$text['label-call_recording_date']['it-it'] = "";
$text['label-call_recording_date']['nl-nl'] = "Datum";
$text['label-call_recording_date']['pl-pl'] = "";
$text['label-call_recording_date']['pl-pl'] = "Data";
$text['label-call_recording_date']['pt-br'] = "";
$text['label-call_recording_date']['pt-pt'] = "";
$text['label-call_recording_date']['ro-ro'] = "";
@@ -244,7 +244,7 @@ $text['label-call_direction']['fr-fr'] = "Direction";
$text['label-call_direction']['he-il'] = "";
$text['label-call_direction']['it-it'] = "";
$text['label-call_direction']['nl-nl'] = "Richting";
$text['label-call_direction']['pl-pl'] = "";
$text['label-call_direction']['pl-pl'] = "Kierunek";
$text['label-call_direction']['pt-br'] = "";
$text['label-call_direction']['pt-pt'] = "";
$text['label-call_direction']['ro-ro'] = "";
@@ -286,7 +286,7 @@ $text['label-call_recording_description']['fr-fr'] = "Description";
$text['label-call_recording_description']['he-il'] = "";
$text['label-call_recording_description']['it-it'] = "";
$text['label-call_recording_description']['nl-nl'] = "Omschrijving";
$text['label-call_recording_description']['pl-pl'] = "";
$text['label-call_recording_description']['pl-pl'] = "Opis";
$text['label-call_recording_description']['pt-br'] = "";
$text['label-call_recording_description']['pt-pt'] = "";
$text['label-call_recording_description']['ro-ro'] = "";
@@ -328,7 +328,7 @@ $text['label-call_recording_base64']['fr-fr'] = "Base64";
$text['label-call_recording_base64']['he-il'] = "";
$text['label-call_recording_base64']['it-it'] = "";
$text['label-call_recording_base64']['nl-nl'] = "Base64";
$text['label-call_recording_base64']['pl-pl'] = "";
$text['label-call_recording_base64']['pl-pl'] = "Base64";
$text['label-call_recording_base64']['pt-br'] = "";
$text['label-call_recording_base64']['pt-pt'] = "";
$text['label-call_recording_base64']['ro-ro'] = "";
@@ -370,7 +370,7 @@ $text['label-inbound']['fr-fr'] = "Inbound";
$text['label-inbound']['he-il'] = "Inbound";
$text['label-inbound']['it-it'] = "Inbound";
$text['label-inbound']['nl-nl'] = "Inkomend";
$text['label-inbound']['pl-pl'] = "Inbound";
$text['label-inbound']['pl-pl'] = "Przychodzący";
$text['label-inbound']['pt-br'] = "Inbound";
$text['label-inbound']['pt-pt'] = "Inbound";
$text['label-inbound']['ro-ro'] = "Inbound";
@@ -391,7 +391,7 @@ $text['label-outbound']['fr-fr'] = "Outbound";
$text['label-outbound']['he-il'] = "Outbound";
$text['label-outbound']['it-it'] = "Outbound";
$text['label-outbound']['nl-nl'] = "Uitgaand";
$text['label-outbound']['pl-pl'] = "Outbound";
$text['label-outbound']['pl-pl'] = "Wychodzący";
$text['label-outbound']['pt-br'] = "Outbound";
$text['label-outbound']['pt-pt'] = "Outbound";
$text['label-outbound']['ro-ro'] = "Outbound";
@@ -412,7 +412,7 @@ $text['label-local']['fr-fr'] = "Local";
$text['label-local']['he-il'] = "Local";
$text['label-local']['it-it'] = "Local";
$text['label-local']['nl-nl'] = "Lokaal";
$text['label-local']['pl-pl'] = "Local";
$text['label-local']['pl-pl'] = "Lokalny";
$text['label-local']['pt-br'] = "Local";
$text['label-local']['pt-pt'] = "Local";
$text['label-local']['ro-ro'] = "Local";

View File

@@ -6,7 +6,7 @@ $apps[$x]['menu'][0]['title']['es-cl'] = '';
$apps[$x]['menu'][0]['title']['fr-fr'] = '';
$apps[$x]['menu'][0]['title']['fr-ca'] = '';
$apps[$x]['menu'][0]['title']['nl-nl'] = 'Gespreksopnamen';
$apps[$x]['menu'][0]['title']['pl'] = '';
$apps[$x]['menu'][0]['title']['pl'] = 'Nagrania Rozmów';
$apps[$x]['menu'][0]['title']['sv-se'] = '';
$apps[$x]['menu'][0]['title']['uk'] = '';
$apps[$x]['menu'][0]['title']['de-at'] = '';

View File

@@ -82,17 +82,23 @@
//get the count
$sql = "select count(call_recording_uuid) from v_call_recordings ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('call_recording_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (isset($sql_search)) {
$sql .= $sql_search;
}
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('call_recording_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -123,12 +129,12 @@
echo button::create(['type'=>'button','label'=>$text['button-download'],'icon'=>$_SESSION['theme']['button_icon_download'],'collapse'=>'hide-xs','onclick'=>"list_action_set('download'); list_form_submit('form_list');"]);
}
if (permission_exists('call_recording_delete') && $call_recordings) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','style'=>'margin-left: 15px;','collapse'=>'hide-xs','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none; margin-left: 15px;','collapse'=>'hide-xs','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null),'collapse'=>'hide-xs']);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_recordings.php','style'=>($search == '' ? 'display: none;' : null),'collapse'=>'hide-xs']);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','collapse'=>'hide-xs']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'call_recordings.php','style'=>($search == '' ? 'display: none;' : null),'collapse'=>'hide-xs']);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>\n";
}
@@ -153,10 +159,13 @@
$col_count = 4;
if (permission_exists('call_recording_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($call_recordings ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($call_recordings ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
$col_count++;
}
if ($_GET['show'] == "all" && permission_exists('call_recording_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('call_recording_name', $text['label-call_recording_name'], $order_by, $order, null, "class='pct-40'");
if (permission_exists('call_recording_play') || permission_exists('call_recording_download')) {
echo "<th class='shrink center'>".$text['label-recording']."</th>\n";
@@ -184,10 +193,19 @@
echo "<tr class='list-row' href=\"".$list_row_url."\">\n";
if (permission_exists('call_recording_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='call_recordings[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='call_recordings[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='call_recordings[$x][uuid]' value='".escape($row['call_recording_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('call_recording_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td class='overflow'>".escape($row['call_recording_name'])."</td>\n";
if (permission_exists('call_recording_play') || permission_exists('call_recording_download')) {
echo " <td class='middle button center no-link no-wrap'>";

View File

@@ -56,7 +56,7 @@ $text['label-time']['fr-fr'] = "Temps";
$text['label-time']['he-il'] = "אזור זמן";
$text['label-time']['it-it'] = "Tempo";
$text['label-time']['nl-nl'] = "Tijd";
$text['label-time']['pl-pl'] = "Strefa czasowa";
$text['label-time']['pl-pl'] = "Czas";
$text['label-time']['pt-br'] = "Fuso Horário";
$text['label-time']['pt-pt'] = "Tempo";
$text['label-time']['ro-ro'] = "";
@@ -161,7 +161,7 @@ $text['label-refresh_pause']['fr-fr'] = "Pause Actualiser";
$text['label-refresh_pause']['he-il'] = "עצור רענון";
$text['label-refresh_pause']['it-it'] = "Pausa";
$text['label-refresh_pause']['nl-nl'] = "Stop pagina verversen";
$text['label-refresh_pause']['pl-pl'] = "Pauzuj odÅwieżanie";
$text['label-refresh_pause']['pl-pl'] = "Pauzuj Odświeżanie";
$text['label-refresh_pause']['pt-br'] = "Pausar atualização";
$text['label-refresh_pause']['pt-pt'] = "Pausa Atualizar";
$text['label-refresh_pause']['ro-ro'] = "";
@@ -560,7 +560,7 @@ $text['confirm-socket']['fr-fr'] = "la Connexion au Event Socket a échoué.";
$text['confirm-socket']['he-il'] = "";
$text['confirm-socket']['it-it'] = "Connessione alla Event Socket fallita.";
$text['confirm-socket']['nl-nl'] = "Verbinding met 'Event-Socket' mislukt";
$text['confirm-socket']['pl-pl'] = "Polaczenie do Event Socket nie powiodło się";
$text['confirm-socket']['pl-pl'] = "Połączenie do 'Event Socket' nie powiodło się";
$text['confirm-socket']['pt-br'] = "A conexão ao evento socket falhou";
$text['confirm-socket']['pt-pt'] = "A conexão ao Event Socket falhou.";
$text['confirm-socket']['ro-ro'] = "";
@@ -581,7 +581,7 @@ $text['confirm-hangup']['fr-fr'] = "Voulez-vous vraiment raccrocher cette commun
$text['confirm-hangup']['he-il'] = "";
$text['confirm-hangup']['it-it'] = "Vuoi veramente chiudere questa chiamata?";
$text['confirm-hangup']['nl-nl'] = "Wil je dit gesprek werkelijk verbreken?";
$text['confirm-hangup']['pl-pl'] = "Czy na pewno chcesz się rozłączyć tę rozmowę?";
$text['confirm-hangup']['pl-pl'] = "Czy na pewno chcesz rozłączyć tę rozmowę?";
$text['confirm-hangup']['pt-br'] = "Deseja realmente finalizar essa chamada?";
$text['confirm-hangup']['pt-pt'] = "Deseja realmente terminar esta chamada?";
$text['confirm-hangup']['ro-ro'] = "";
@@ -602,7 +602,7 @@ $text['confirm-hangups']['fr-fr'] = "Voulez-vous vraiment raccrocher cette commu
$text['confirm-hangups']['he-il'] = "";
$text['confirm-hangups']['it-it'] = "Vuoi veramente chiudere questa chiamata?";
$text['confirm-hangups']['nl-nl'] = "Wil je deze gesprekken werkelijk verbreken?";
$text['confirm-hangups']['pl-pl'] = "Czy na pewno chcesz się rozłączyć tę rozmowę?";
$text['confirm-hangups']['pl-pl'] = "Czy na pewno chcesz rozłączyć te rozmowy?";
$text['confirm-hangups']['pt-br'] = "Deseja realmente finalizar essa chamada?";
$text['confirm-hangups']['pt-pt'] = "Deseja realmente terminar esta chamada?";
$text['confirm-hangups']['ro-ro'] = "";
@@ -749,7 +749,7 @@ $text['message-calls_ended']['fr-fr'] = "";
$text['message-calls_ended']['he-il'] = "";
$text['message-calls_ended']['it-it'] = "";
$text['message-calls_ended']['nl-nl'] = "Beeindigde gesprekken";
$text['message-calls_ended']['pl-pl'] = "";
$text['message-calls_ended']['pl-pl'] = "Rozmowy Zakończone";
$text['message-calls_ended']['pt-br'] = "";
$text['message-calls_ended']['pt-pt'] = "";
$text['message-calls_ended']['ro-ro'] = "";

View File

@@ -5,7 +5,7 @@
$apps[$x]['uuid'] = "8d083f5a-f726-42a8-9ffa-8d28f848f10e";
$apps[$x]['category'] = "Switch";
$apps[$x]['subcategory'] = "";
$apps[$x]['version'] = "1.0";
$apps[$x]['version'] = "1.1";
$apps[$x]['license'] = "Mozilla Public License 1.1";
$apps[$x]['url'] = "http://www.fusionpbx.com";
$apps[$x]['description']['en-us'] = "Conferences Centers allows one or more audio and video conference rooms.";
@@ -64,6 +64,9 @@
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_center_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_room_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "95f88726-4706-43f0-b52b-9504a0b8046f";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
@@ -153,6 +156,12 @@
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$apps[$x]['permissions'][$y]['groups'][] = "user";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_room_email_address";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_room_account_code";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_room_enabled";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
@@ -199,6 +208,14 @@
$apps[$x]['default_settings'][$y]['default_setting_value'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Enable Conference Sessions";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "b1a4e1b7-8201-4637-b2fb-380b67112ea5";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "conference_center";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "account_code_enabled";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Request the account ID.";
//cache details
$apps[$x]['cache']['key'] = "dialplan.\${domain_name}";
@@ -355,6 +372,16 @@
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "The user that created the conference session.";
$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'] = "account_code";
$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 account code for the conference.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "enabled";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Select to enable or disable the session.";

View File

@@ -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'] = "";
@@ -254,6 +296,48 @@ $text['description-conference_center_greeting']['ru-ru'] = "Выберите п
$text['description-conference_center_greeting']['sv-se'] = "Välj hälsningsmeddelande som skall spelas upp före anslutning till konferensrummet.";
$text['description-conference_center_greeting']['uk-ua'] = "Виберіть привітання, яке грає до вступу в конференц-зал.";
$text['label-account_code']['en-us'] = "Account Code";
$text['label-account_code']['en-gb'] = "Account Code";
$text['label-account_code']['ar-eg'] = "";
$text['label-account_code']['de-at'] = "Kontoschlüssel"; //copied from de-de
$text['label-account_code']['de-ch'] = "Kontoschlüssel"; //copied from de-de
$text['label-account_code']['de-de'] = "Kontoschlüssel";
$text['label-account_code']['es-cl'] = "Código de Cuenta";
$text['label-account_code']['es-mx'] = "Código de Cuenta"; //copied from es-cl
$text['label-account_code']['fr-ca'] = "Centre de frais"; //copied from fr-fr
$text['label-account_code']['fr-fr'] = "Centre de frais";
$text['label-account_code']['he-il'] = "קוד חשבון";
$text['label-account_code']['it-it'] = "Account Code";
$text['label-account_code']['nl-nl'] = "Account code";
$text['label-account_code']['pl-pl'] = "Numer konta billingowego";
$text['label-account_code']['pt-br'] = "Código de conta";
$text['label-account_code']['pt-pt'] = "Código de Conta";
$text['label-account_code']['ro-ro'] = "";
$text['label-account_code']['ru-ru'] = "Код Учетной Записи";
$text['label-account_code']['sv-se'] = "Kontokod";
$text['label-account_code']['uk-ua'] = "";
$text['description-account_code']['en-us'] = "Enter the account code here.";
$text['description-account_code']['en-gb'] = "Enter the account code here.";
$text['description-account_code']['ar-eg'] = "";
$text['description-account_code']['de-at'] = "Geben Sie den Account Code hier an."; //copied from de-de
$text['description-account_code']['de-ch'] = "Geben Sie den Account Code hier an."; //copied from de-de
$text['description-account_code']['de-de'] = "Geben Sie den Account Code hier an.";
$text['description-account_code']['es-cl'] = "Ingrese el código de cuenta aquí.";
$text['description-account_code']['es-mx'] = "Ingrese el código de cuenta aquí."; //copied from es-cl
$text['description-account_code']['fr-ca'] = "Entrez le code de compte ici.";
$text['description-account_code']['fr-fr'] = "Entrez le code de compte ici.";
$text['description-account_code']['he-il'] = "";
$text['description-account_code']['it-it'] = "Inserire qui l'account code.";
$text['description-account_code']['nl-nl'] = "Voer de account code hier in.";
$text['description-account_code']['pl-pl'] = "Wpisz numer billingowy (nagłówek dodany do SIP INVITE).";
$text['description-account_code']['pt-br'] = "Insira o código de conta aqui.";
$text['description-account_code']['pt-pt'] = "Introduza o código de conta aqui.";
$text['description-account_code']['ro-ro'] = "";
$text['description-account_code']['ru-ru'] = "Введите здесь код счета.";
$text['description-account_code']['sv-se'] = "Ange 'account code' här.";
$text['description-account_code']['uk-ua'] = "";
$text['label-conference_center_enabled']['en-us'] = "Enabled";
$text['label-conference_center_enabled']['en-gb'] = "Enabled";
$text['label-conference_center_enabled']['ar-eg'] = "";
@@ -1653,7 +1737,7 @@ $text['button-view_active']['fr-fr'] = "Voir Active";
$text['button-view_active']['he-il'] = "";
$text['button-view_active']['it-it'] = "Mostra Attive";
$text['button-view_active']['nl-nl'] = "Toon aktieve ruimten";
$text['button-view_active']['pl-pl'] = "";
$text['button-view_active']['pl-pl'] = "Pokaż Aktywne";
$text['button-view_active']['pt-br'] = "Ver Ativo"; //copied from pt-pt
$text['button-view_active']['pt-pt'] = "Ver Ativo";
$text['button-view_active']['ro-ro'] = "";

View File

@@ -97,15 +97,21 @@
//prepare to page the results
$sql = "select count(*) from v_conference_centers ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('conference_center_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
$sql .= $sql_search;
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('conference_center_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -140,15 +146,23 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'conference_center_edit.php']);
}
if (permission_exists('conference_center_edit') && $conference_centers) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('conference_center_delete') && $conference_centers) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conference_centers.php','style'=>($search == '' ? 'display: none;' : null)]);
if (permission_exists('conference_center_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type=&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conference_centers.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -175,9 +189,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('conference_center_edit') || permission_exists('conference_center_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($conference_centers ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($conference_centers ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('conference_center_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('conference_center_name', $text['label-conference_center_name'], $order_by, $order);
echo th_order_by('conference_center_extension', $text['label-conference_center_extension'], $order_by, $order);
echo th_order_by('conference_center_greeting', $text['label-conference_center_greeting'], $order_by, $order);
@@ -198,10 +215,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('conference_center_edit') || permission_exists('conference_center_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='conference_centers[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='conference_centers[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='conference_centers[$x][uuid]' value='".escape($row['conference_center_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('conference_center_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td><a href='".$list_row_url."' title=\"".$text['button-edit']."\">".escape($row['conference_center_name'])."</a>&nbsp;</td>\n";
echo " <td>".escape($row['conference_center_extension'])."&nbsp;</td>\n";
echo " <td>".escape($row['conference_center_greeting'])."&nbsp;</td>\n";
@@ -238,4 +264,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2020
Portions created by the Initial Developer are Copyright (C) 2008-2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -58,6 +58,7 @@
$conference_room_name = $_POST['conference_room_name'];
$moderator_pin = $_POST["moderator_pin"];
$participant_pin = $_POST["participant_pin"];
$profile = $_POST["profile"];
$record = $_POST["record"];
$user_uuid = $_POST["user_uuid"];
@@ -73,6 +74,8 @@
$mute = $_POST["mute"];
$created = $_POST["created"];
$created_by = $_POST["created_by"];
$email_address = $_POST["email_address"];
$account_code = $_POST["account_code"];
$enabled = $_POST["enabled"];
$description = $_POST["description"];
@@ -319,6 +322,12 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$array['conference_rooms'][0]['mute'] = $mute;
$array['conference_rooms'][0]['created'] = 'now()';
$array['conference_rooms'][0]['created_by'] = $_SESSION['user_uuid'];
if (permission_exists('conference_room_email_address')) {
$array['conference_rooms'][0]['email_address'] = $email_address;
}
if (permission_exists('conference_room_account_code')) {
$array['conference_rooms'][0]['account_code'] = $account_code;
}
$array['conference_rooms'][0]['enabled'] = $enabled;
$array['conference_rooms'][0]['description'] = $description;
@@ -391,6 +400,12 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$array['conference_rooms'][0]['mute'] = $mute;
}
$array['conference_rooms'][0]['sounds'] = $sounds;
if (permission_exists('conference_room_email_address')) {
$array['conference_rooms'][0]['email_address'] = $email_address;
}
if (permission_exists('conference_room_account_code')) {
$array['conference_rooms'][0]['account_code'] = $account_code;
}
if (strlen($enabled) > 0) {
$array['conference_rooms'][0]['enabled'] = $enabled;
}
@@ -465,6 +480,8 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$mute = $row["mute"];
$created = $row["created"];
$created_by = $row["created_by"];
$email_address = $row["email_address"];
$account_code = $row["account_code"];
$enabled = $row["enabled"];
$description = $row["description"];
}
@@ -863,6 +880,32 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
echo "</tr>\n";
}
if (permission_exists('conference_room_email_address')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-email_address']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='email_address' maxlength='255' value=\"".escape($email_address)."\">\n";
echo "<br />\n";
echo "".$text['description-email_address']."\n";
echo "</td>\n";
echo "</tr>\n";
}
if (permission_exists('conference_room_account_code')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-account_code']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='account_code' maxlength='255' value=\"".escape($account_code)."\">\n";
echo "<br />\n";
echo "".$text['description-account_code']."\n";
echo "</td>\n";
echo "</tr>\n";
}
if (permission_exists('conference_room_enabled')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>".$text['label-enabled']."</td>\n";

View File

@@ -223,7 +223,7 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'conference_room_edit.php']);
}
if (permission_exists('conference_room_edit') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"toggle_select(); this.blur();"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"toggle_select(); this.blur();"]);
echo "<select class='formfld' style='display: none; width: auto;' id='conference_room_feature' onchange=\"if (this.selectedIndex != 0) { modal_open('modal-toggle','btn_toggle'); }\">";
echo " <option value='' selected='selected'>".$text['label-select']."</option>";
echo " <option value='record'>".$text['label-record']."</option>";
@@ -237,7 +237,7 @@
echo " </select>";
}
if (permission_exists('conference_room_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
@@ -270,7 +270,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('conference_room_add') || permission_exists('conference_room_edit') || permission_exists('conference_room_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
//echo th_order_by('conference_center_uuid', 'Conference UUID', $order_by, $order);
@@ -318,7 +318,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('conference_room_add') || permission_exists('conference_room_edit') || permission_exists('conference_room_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='conference_rooms[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='conference_rooms[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='conference_rooms[$x][uuid]' value='".escape($row['conference_room_uuid'])."' />\n";
echo " </td>\n";
}

View File

@@ -14,7 +14,7 @@ $text['title-conference_controls']['fr-fr'] = "Contrôles de conférence";
$text['title-conference_controls']['he-il'] = "";
$text['title-conference_controls']['it-it'] = "Controlli Conferenza";
$text['title-conference_controls']['nl-nl'] = "Conferentie besturingen";
$text['title-conference_controls']['pl-pl'] = "";
$text['title-conference_controls']['pl-pl'] = "Kontrole Konferencji";
$text['title-conference_controls']['pt-br'] = "Controles de conferência"; //copied from pt-pt
$text['title-conference_controls']['pt-pt'] = "Controles de conferência";
$text['title-conference_controls']['ro-ro'] = "";
@@ -35,7 +35,7 @@ $text['title-conference_control']['fr-fr'] = "Contrôle de conférence";
$text['title-conference_control']['he-il'] = "";
$text['title-conference_control']['it-it'] = "Controllo Conferenza";
$text['title-conference_control']['nl-nl'] = "Conferentie besturing";
$text['title-conference_control']['pl-pl'] = "";
$text['title-conference_control']['pl-pl'] = "Kontrola Konferencji";
$text['title-conference_control']['pt-br'] = "Controle de conferência"; //copied from pt-pt
$text['title-conference_control']['pt-pt'] = "Controle de conferência";
$text['title-conference_control']['ro-ro'] = "";
@@ -56,7 +56,7 @@ $text['description-conference_controls']['fr-fr'] = "Les commandes d'appel perme
$text['description-conference_controls']['he-il'] = "";
$text['description-conference_controls']['it-it'] = "I controlli in chiamata abilitano la possibilità di assegnare azioni ai tasti. Possono essere usati per silenziare, desilenziare, o fare altro durante le conferenze.";
$text['description-conference_controls']['nl-nl'] = "Oproep besturing maakt het mogelijk om cijfers aan akties toe te kennen. Ze kunnen gebruikt worden om deelnemers op stil/spreken in te stellen of andere acties uit te voeren.";
$text['description-conference_controls']['pl-pl'] = "";
$text['description-conference_controls']['pl-pl'] = "Kontrola połączeń umożliwia przypisywanie cyfr do akcji. Mogą być używane do wyciszania, anulowania wyciszenia lub innych działań podczas połączenia konferencyjnego.";
$text['description-conference_controls']['pt-br'] = "Controle de chamadas habilita atribuir ações aos números. Podem ser usadas para silenciar, ou outras ações durante a conferência."; //copied from pt-pt
$text['description-conference_controls']['pt-pt'] = "Controle de chamadas habilita atribuir ações aos números. Podem ser usadas para silenciar, ou outras ações durante a conferência.";
$text['description-conference_controls']['ro-ro'] = "";
@@ -77,7 +77,7 @@ $text['label-control_name']['fr-fr'] = "Nom";
$text['label-control_name']['he-il'] = "";
$text['label-control_name']['it-it'] = "Nome";
$text['label-control_name']['nl-nl'] = "Naam";
$text['label-control_name']['pl-pl'] = "";
$text['label-control_name']['pl-pl'] = "Nazwa";
$text['label-control_name']['pt-br'] = "Nome"; //copied from pt-pt
$text['label-control_name']['pt-pt'] = "Nome";
$text['label-control_name']['ro-ro'] = "";
@@ -98,7 +98,7 @@ $text['description-control_name']['fr-fr'] = "Entrez le nom du contrôle de la c
$text['description-control_name']['he-il'] = "";
$text['description-control_name']['it-it'] = "Inserire il nome del set di controllo della conferenza.";
$text['description-control_name']['nl-nl'] = "Voer conferentie besturings naam in.";
$text['description-control_name']['pl-pl'] = "";
$text['description-control_name']['pl-pl'] = "Wprowadź nazwę kontrolki konferencji.";
$text['description-control_name']['pt-br'] = "Entre com o nome do controle de conferência."; //copied from pt-pt
$text['description-control_name']['pt-pt'] = "Entre com o nome do controle de conferência.";
$text['description-control_name']['ro-ro'] = "";
@@ -119,7 +119,7 @@ $text['label-control_enabled']['fr-fr'] = "Activé";
$text['label-control_enabled']['he-il'] = "";
$text['label-control_enabled']['it-it'] = "Abilitato";
$text['label-control_enabled']['nl-nl'] = "Aktief";
$text['label-control_enabled']['pl-pl'] = "";
$text['label-control_enabled']['pl-pl'] = "Aktywny";
$text['label-control_enabled']['pt-br'] = "Habilitado"; //copied from pt-pt
$text['label-control_enabled']['pt-pt'] = "Habilitado";
$text['label-control_enabled']['ro-ro'] = "";
@@ -140,7 +140,7 @@ $text['description-control_enabled']['fr-fr'] = "Définir le statut du contrôle
$text['description-control_enabled']['he-il'] = "";
$text['description-control_enabled']['it-it'] = "Imposta lo stato del controllo.";
$text['description-control_enabled']['nl-nl'] = "Stel de status van de besturing in.";
$text['description-control_enabled']['pl-pl'] = "";
$text['description-control_enabled']['pl-pl'] = "Ustaw status kontrolki.";
$text['description-control_enabled']['pt-br'] = "Atribua o estado do controle."; //copied from pt-pt
$text['description-control_enabled']['pt-pt'] = "Atribua o estado do controle.";
$text['description-control_enabled']['ro-ro'] = "";
@@ -161,7 +161,7 @@ $text['label-control_description']['fr-fr'] = "Description";
$text['label-control_description']['he-il'] = "";
$text['label-control_description']['it-it'] = "Descrizione";
$text['label-control_description']['nl-nl'] = "Omschrijving";
$text['label-control_description']['pl-pl'] = "";
$text['label-control_description']['pl-pl'] = "Opis";
$text['label-control_description']['pt-br'] = "Descrição"; //copied from pt-pt
$text['label-control_description']['pt-pt'] = "Descrição";
$text['label-control_description']['ro-ro'] = "";
@@ -182,7 +182,7 @@ $text['description-control_description']['fr-fr'] = "Entrez la description.";
$text['description-control_description']['he-il'] = "";
$text['description-control_description']['it-it'] = "Inserire la descrizione.";
$text['description-control_description']['nl-nl'] = "Voer de omschrijving in.";
$text['description-control_description']['pl-pl'] = "";
$text['description-control_description']['pl-pl'] = "Wprowadź opis.";
$text['description-control_description']['pt-br'] = "Entre com a descrição."; //copied from pt-pt
$text['description-control_description']['pt-pt'] = "Entre com a descrição.";
$text['description-control_description']['ro-ro'] = "";
@@ -203,7 +203,7 @@ $text['message-required']['fr-fr'] = "Veuillez fournir";
$text['message-required']['he-il'] = "";
$text['message-required']['it-it'] = "Prego fornire: ";
$text['message-required']['nl-nl'] = "Geef aub: ";
$text['message-required']['pl-pl'] = "";
$text['message-required']['pl-pl'] = "Proszę wprowadzić: ";
$text['message-required']['pt-br'] = "Por favor, informe: "; //copied from pt-pt
$text['message-required']['pt-pt'] = "Por favor, informe: ";
$text['message-required']['ro-ro'] = "";
@@ -224,7 +224,7 @@ $text['title-conference_control_details']['fr-fr'] = "";
$text['title-conference_control_details']['he-il'] = "";
$text['title-conference_control_details']['it-it'] = "Controlli";
$text['title-conference_control_details']['nl-nl'] = "Besturingen";
$text['title-conference_control_details']['pl-pl'] = "";
$text['title-conference_control_details']['pl-pl'] = "Kontrolki";
$text['title-conference_control_details']['pt-br'] = "Controles"; //copied from pt-pt
$text['title-conference_control_details']['pt-pt'] = "Controles";
$text['title-conference_control_details']['ro-ro'] = "";
@@ -245,7 +245,7 @@ $text['title-conference_control_detail']['fr-fr'] = "Les contrôles";
$text['title-conference_control_detail']['he-il'] = "";
$text['title-conference_control_detail']['it-it'] = "Controllo";
$text['title-conference_control_detail']['nl-nl'] = "Besturing";
$text['title-conference_control_detail']['pl-pl'] = "";
$text['title-conference_control_detail']['pl-pl'] = "Kontrola";
$text['title-conference_control_detail']['pt-br'] = "Controle"; //copied from pt-pt
$text['title-conference_control_detail']['pt-pt'] = "Controle";
$text['title-conference_control_detail']['ro-ro'] = "";
@@ -266,7 +266,7 @@ $text['title_description-conference_control_detail']['fr-fr'] = "Les commandes d
$text['title_description-conference_control_detail']['he-il'] = "";
$text['title_description-conference_control_detail']['it-it'] = "";
$text['title_description-conference_control_detail']['nl-nl'] = "Oproep besturingen maken het mogelijk om cijfers aan akiteis toe te wijzen. Deze kunnen gebruikt worden om een deelnemer op stil/spreken in te stellen of andere acties.";
$text['title_description-conference_control_detail']['pl-pl'] = "";
$text['title_description-conference_control_detail']['pl-pl'] = "Kontrola połączeń umożliwia przypisywanie cyfr do akcji. Mogą być używane do wyciszania, anulowania wyciszenia lub innych działań podczas połączenia konferencyjnego.";
$text['title_description-conference_control_detail']['pt-br'] = "";
$text['title_description-conference_control_detail']['pt-pt'] = "";
$text['title_description-conference_control_detail']['ro-ro'] = "";
@@ -287,7 +287,7 @@ $text['label-control_digits']['fr-fr'] = "Chiffres";
$text['label-control_digits']['he-il'] = "";
$text['label-control_digits']['it-it'] = "Tasti";
$text['label-control_digits']['nl-nl'] = "Cijfers";
$text['label-control_digits']['pl-pl'] = "";
$text['label-control_digits']['pl-pl'] = "Cyfry";
$text['label-control_digits']['pt-br'] = "Digitos"; //copied from pt-pt
$text['label-control_digits']['pt-pt'] = "Digitos";
$text['label-control_digits']['ro-ro'] = "";
@@ -308,7 +308,7 @@ $text['description-control_digits']['fr-fr'] = "Entrez les chiffres";
$text['description-control_digits']['he-il'] = "";
$text['description-control_digits']['it-it'] = "Inserire i tasti.";
$text['description-control_digits']['nl-nl'] = "Voer de cijfers in.";
$text['description-control_digits']['pl-pl'] = "";
$text['description-control_digits']['pl-pl'] = "Wprowadź cyfry.";
$text['description-control_digits']['pt-br'] = "Entre com os digitos"; //copied from pt-pt
$text['description-control_digits']['pt-pt'] = "Entre com os digitos";
$text['description-control_digits']['ro-ro'] = "";
@@ -329,7 +329,7 @@ $text['label-control_action']['fr-fr'] = "Action";
$text['label-control_action']['he-il'] = "";
$text['label-control_action']['it-it'] = "Azione";
$text['label-control_action']['nl-nl'] = "Aktie";
$text['label-control_action']['pl-pl'] = "";
$text['label-control_action']['pl-pl'] = "Akcja";
$text['label-control_action']['pt-br'] = "Ação"; //copied from pt-pt
$text['label-control_action']['pt-pt'] = "Ação";
$text['label-control_action']['ro-ro'] = "";
@@ -350,7 +350,7 @@ $text['description-control_action']['fr-fr'] = "Entrer L'action";
$text['description-control_action']['he-il'] = "";
$text['description-control_action']['it-it'] = "Impostare azione.";
$text['description-control_action']['nl-nl'] = "Voer de aktie in.";
$text['description-control_action']['pl-pl'] = "";
$text['description-control_action']['pl-pl'] = "Wprowadź akcję.";
$text['description-control_action']['pt-br'] = "Informe uma ação."; //copied from pt-pt
$text['description-control_action']['pt-pt'] = "Informe uma ação.";
$text['description-control_action']['ro-ro'] = "";
@@ -371,7 +371,7 @@ $text['label-control_data']['fr-fr'] = "Les données";
$text['label-control_data']['he-il'] = "";
$text['label-control_data']['it-it'] = "Dati";
$text['label-control_data']['nl-nl'] = "Data";
$text['label-control_data']['pl-pl'] = "";
$text['label-control_data']['pl-pl'] = "Data";
$text['label-control_data']['pt-br'] = "Dados"; //copied from pt-pt
$text['label-control_data']['pt-pt'] = "Dados";
$text['label-control_data']['ro-ro'] = "";
@@ -392,7 +392,7 @@ $text['description-control_data']['fr-fr'] = "Entrer les données";
$text['description-control_data']['he-il'] = "";
$text['description-control_data']['it-it'] = "Inserire il dato.";
$text['description-control_data']['nl-nl'] = "Voer de data in.";
$text['description-control_data']['pl-pl'] = "";
$text['description-control_data']['pl-pl'] = "Wprowadź datę.";
$text['description-control_data']['pt-br'] = "Informe os dados."; //copied from pt-pt
$text['description-control_data']['pt-pt'] = "Informe os dados.";
$text['description-control_data']['ro-ro'] = "";

View File

@@ -129,18 +129,18 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'conference_control_edit.php']);
}
if (permission_exists('conference_control_add') && $conference_controls) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('conference_control_edit') && $conference_controls) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('conference_control_delete') && $conference_controls) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conference_controls.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conference_controls.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>\n";
}
@@ -170,7 +170,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('conference_control_add') || permission_exists('conference_control_edit') || permission_exists('conference_control_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($conference_controls ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($conference_controls ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
echo th_order_by('control_name', $text['label-control_name'], $order_by, $order);
@@ -190,7 +190,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('conference_control_add') || permission_exists('conference_control_edit') || permission_exists('conference_control_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='conference_controls[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='conference_controls[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='conference_controls[$x][uuid]' value='".escape($row['conference_control_uuid'])."' />\n";
echo " </td>\n";
}
@@ -232,4 +232,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2016
Portions created by the Initial Developer are Copyright (C) 2016 - 2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -72,7 +72,7 @@
$database = new database;
$database->app_name = 'conference_profiles';
$database->app_uuid = 'c33e2c2a-847f-44c1-8c0d-310df5d65ba9';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('conference_profile_add', 'temp');
@@ -99,7 +99,7 @@
$database = new database;
$database->app_name = 'conference_profiles';
$database->app_uuid = 'c33e2c2a-847f-44c1-8c0d-310df5d65ba9';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('conference_profile_param_add', 'temp');

View File

@@ -14,7 +14,7 @@ $text['title-conference_profiles']['fr-fr'] = "Profils de conférence";
$text['title-conference_profiles']['he-il'] = "";
$text['title-conference_profiles']['it-it'] = "Profili Conferenza";
$text['title-conference_profiles']['nl-nl'] = "Conferentie profielen";
$text['title-conference_profiles']['pl-pl'] = "";
$text['title-conference_profiles']['pl-pl'] = "Profile Konferencji";
$text['title-conference_profiles']['pt-br'] = "";
$text['title-conference_profiles']['pt-pt'] = "";
$text['title-conference_profiles']['ro-ro'] = "";
@@ -35,7 +35,7 @@ $text['title-conference_profile']['fr-fr'] = "Profil de la conférence";
$text['title-conference_profile']['he-il'] = "";
$text['title-conference_profile']['it-it'] = "Profilo Conferenza";
$text['title-conference_profile']['nl-nl'] = "Conferentie profiel";
$text['title-conference_profile']['pl-pl'] = "";
$text['title-conference_profile']['pl-pl'] = "Profil Konferencji";
$text['title-conference_profile']['pt-br'] = "";
$text['title-conference_profile']['pt-pt'] = "";
$text['title-conference_profile']['ro-ro'] = "";
@@ -56,7 +56,7 @@ $text['description-conference_profiles']['fr-fr'] = "Un groupe de paramètres de
$text['description-conference_profiles']['he-il'] = "";
$text['description-conference_profiles']['it-it'] = "Un insieme di parametri per le conferenze costituiscono un profilo.";
$text['description-conference_profiles']['nl-nl'] = "Een groep van conferentie parameters die gezamenlijk opgeslagen zijn.";
$text['description-conference_profiles']['pl-pl'] = "";
$text['description-conference_profiles']['pl-pl'] = "Grupa parametrów konferencji zapisywana razem jako profil.";
$text['description-conference_profiles']['pt-br'] = "";
$text['description-conference_profiles']['pt-pt'] = "";
$text['description-conference_profiles']['ro-ro'] = "";
@@ -77,7 +77,7 @@ $text['label-profile_name']['fr-fr'] = "Nom";
$text['label-profile_name']['he-il'] = "";
$text['label-profile_name']['it-it'] = "Nome";
$text['label-profile_name']['nl-nl'] = "Naam";
$text['label-profile_name']['pl-pl'] = "";
$text['label-profile_name']['pl-pl'] = "Nazwa";
$text['label-profile_name']['pt-br'] = "";
$text['label-profile_name']['pt-pt'] = "";
$text['label-profile_name']['ro-ro'] = "";
@@ -98,7 +98,7 @@ $text['description-profile_name']['fr-fr'] = "Entrez le nom du profil.";
$text['description-profile_name']['he-il'] = "";
$text['description-profile_name']['it-it'] = "Inserire il nome del profilo.";
$text['description-profile_name']['nl-nl'] = "Voer de profielnaam in.";
$text['description-profile_name']['pl-pl'] = "";
$text['description-profile_name']['pl-pl'] = "Wprowadź nazwę profilu.";
$text['description-profile_name']['pt-br'] = "";
$text['description-profile_name']['pt-pt'] = "";
$text['description-profile_name']['ro-ro'] = "";
@@ -119,7 +119,7 @@ $text['label-profile_enabled']['fr-fr'] = "Activé";
$text['label-profile_enabled']['he-il'] = "";
$text['label-profile_enabled']['it-it'] = "Abilitato";
$text['label-profile_enabled']['nl-nl'] = "Aktief";
$text['label-profile_enabled']['pl-pl'] = "";
$text['label-profile_enabled']['pl-pl'] = "Aktywny";
$text['label-profile_enabled']['pt-br'] = "";
$text['label-profile_enabled']['pt-pt'] = "";
$text['label-profile_enabled']['ro-ro'] = "";
@@ -140,7 +140,7 @@ $text['description-profile_enabled']['fr-fr'] = "Définir le statut du profil.";
$text['description-profile_enabled']['he-il'] = "";
$text['description-profile_enabled']['it-it'] = "Imposta lo stato del profilo.";
$text['description-profile_enabled']['nl-nl'] = "Stel de status van het profiel in.";
$text['description-profile_enabled']['pl-pl'] = "";
$text['description-profile_enabled']['pl-pl'] = "Ustaw status profilu.";
$text['description-profile_enabled']['pt-br'] = "";
$text['description-profile_enabled']['pt-pt'] = "";
$text['description-profile_enabled']['ro-ro'] = "";
@@ -161,7 +161,7 @@ $text['label-profile_description']['fr-fr'] = "Description";
$text['label-profile_description']['he-il'] = "";
$text['label-profile_description']['it-it'] = "Descrizione";
$text['label-profile_description']['nl-nl'] = "Omschrijving";
$text['label-profile_description']['pl-pl'] = "";
$text['label-profile_description']['pl-pl'] = "Opis";
$text['label-profile_description']['pt-br'] = "";
$text['label-profile_description']['pt-pt'] = "";
$text['label-profile_description']['ro-ro'] = "";
@@ -182,7 +182,7 @@ $text['description-profile_description']['fr-fr'] = "Entrez la description";
$text['description-profile_description']['he-il'] = "";
$text['description-profile_description']['it-it'] = "Inserire la descrizione.";
$text['description-profile_description']['nl-nl'] = "Voer de omschrijving in.";
$text['description-profile_description']['pl-pl'] = "";
$text['description-profile_description']['pl-pl'] = "Wprowadź opis.";
$text['description-profile_description']['pt-br'] = "";
$text['description-profile_description']['pt-pt'] = "";
$text['description-profile_description']['ro-ro'] = "";
@@ -203,7 +203,7 @@ $text['title-conference_profile_params']['fr-fr'] = "Paramètres du profil";
$text['title-conference_profile_params']['he-il'] = "";
$text['title-conference_profile_params']['it-it'] = "Parametri del Profilo";
$text['title-conference_profile_params']['nl-nl'] = "Profiel parameters";
$text['title-conference_profile_params']['pl-pl'] = "";
$text['title-conference_profile_params']['pl-pl'] = "Parametry Profilu";
$text['title-conference_profile_params']['pt-br'] = "";
$text['title-conference_profile_params']['pt-pt'] = "";
$text['title-conference_profile_params']['ro-ro'] = "";
@@ -224,7 +224,7 @@ $text['title-conference_profile_param']['fr-fr'] = "Paramètres du profil";
$text['title-conference_profile_param']['he-il'] = "";
$text['title-conference_profile_param']['it-it'] = "Parametro Profilo";
$text['title-conference_profile_param']['nl-nl'] = "Profiel parameter";
$text['title-conference_profile_param']['pl-pl'] = "";
$text['title-conference_profile_param']['pl-pl'] = "Parametr Profilu";
$text['title-conference_profile_param']['pt-br'] = "";
$text['title-conference_profile_param']['pt-pt'] = "";
$text['title-conference_profile_param']['ro-ro'] = "";
@@ -245,7 +245,7 @@ $text['title_description-conference_profile_param']['fr-fr'] = "Paramètres attr
$text['title_description-conference_profile_param']['he-il'] = "";
$text['title_description-conference_profile_param']['it-it'] = "Impostazioni assegnare ai profili di conferenza.";
$text['title_description-conference_profile_param']['nl-nl'] = "Instellinge die aan het conferentie profiel zijn toegewezen.";
$text['title_description-conference_profile_param']['pl-pl'] = "";
$text['title_description-conference_profile_param']['pl-pl'] = "Ustawienia przypisane do profili konferencji.";
$text['title_description-conference_profile_param']['pt-br'] = "";
$text['title_description-conference_profile_param']['pt-pt'] = "";
$text['title_description-conference_profile_param']['ro-ro'] = "";
@@ -266,7 +266,7 @@ $text['label-profile_param_name']['fr-fr'] = "Nom";
$text['label-profile_param_name']['he-il'] = "";
$text['label-profile_param_name']['it-it'] = "Nome";
$text['label-profile_param_name']['nl-nl'] = "Naam";
$text['label-profile_param_name']['pl-pl'] = "";
$text['label-profile_param_name']['pl-pl'] = "Nazwa";
$text['label-profile_param_name']['pt-br'] = "";
$text['label-profile_param_name']['pt-pt'] = "";
$text['label-profile_param_name']['ro-ro'] = "";
@@ -287,7 +287,7 @@ $text['description-profile_param_name']['fr-fr'] = "Entrez le nom du paramètre.
$text['description-profile_param_name']['he-il'] = "";
$text['description-profile_param_name']['it-it'] = "Inserire nome parametro.";
$text['description-profile_param_name']['nl-nl'] = "Voer de parameternaam in.";
$text['description-profile_param_name']['pl-pl'] = "";
$text['description-profile_param_name']['pl-pl'] = "Wprowadź nazwę parametru.";
$text['description-profile_param_name']['pt-br'] = "";
$text['description-profile_param_name']['pt-pt'] = "";
$text['description-profile_param_name']['ro-ro'] = "";
@@ -308,7 +308,7 @@ $text['label-profile_param_value']['fr-fr'] = "Valeur";
$text['label-profile_param_value']['he-il'] = "";
$text['label-profile_param_value']['it-it'] = "Valore";
$text['label-profile_param_value']['nl-nl'] = "Waarde";
$text['label-profile_param_value']['pl-pl'] = "";
$text['label-profile_param_value']['pl-pl'] = "Wartość";
$text['label-profile_param_value']['pt-br'] = "";
$text['label-profile_param_value']['pt-pt'] = "";
$text['label-profile_param_value']['ro-ro'] = "";
@@ -329,7 +329,7 @@ $text['description-profile_param_value']['fr-fr'] = "Entrez la valeur";
$text['description-profile_param_value']['he-il'] = "";
$text['description-profile_param_value']['it-it'] = "Inserire il valore.";
$text['description-profile_param_value']['nl-nl'] = "Voer de waarde in.";
$text['description-profile_param_value']['pl-pl'] = "";
$text['description-profile_param_value']['pl-pl'] = "Wprowadź wartość.";
$text['description-profile_param_value']['pt-br'] = "";
$text['description-profile_param_value']['pt-pt'] = "";
$text['description-profile_param_value']['ro-ro'] = "";
@@ -350,7 +350,7 @@ $text['label-profile_param_enabled']['fr-fr'] = "Activé";
$text['label-profile_param_enabled']['he-il'] = "";
$text['label-profile_param_enabled']['it-it'] = "Abilitato";
$text['label-profile_param_enabled']['nl-nl'] = "Aktief";
$text['label-profile_param_enabled']['pl-pl'] = "";
$text['label-profile_param_enabled']['pl-pl'] = "Aktywny";
$text['label-profile_param_enabled']['pt-br'] = "";
$text['label-profile_param_enabled']['pt-pt'] = "";
$text['label-profile_param_enabled']['ro-ro'] = "";
@@ -371,7 +371,7 @@ $text['description-profile_param_enabled']['fr-fr'] = "Définir le statut du par
$text['description-profile_param_enabled']['he-il'] = "";
$text['description-profile_param_enabled']['it-it'] = "Imposta lo stato del parametro.";
$text['description-profile_param_enabled']['nl-nl'] = "Stel de status van de parameter in.";
$text['description-profile_param_enabled']['pl-pl'] = "";
$text['description-profile_param_enabled']['pl-pl'] = "Ustaw status parametru.";
$text['description-profile_param_enabled']['pt-br'] = "";
$text['description-profile_param_enabled']['pt-pt'] = "";
$text['description-profile_param_enabled']['ro-ro'] = "";
@@ -392,7 +392,7 @@ $text['label-profile_param_description']['fr-fr'] = "Description";
$text['label-profile_param_description']['he-il'] = "";
$text['label-profile_param_description']['it-it'] = "Descrizione";
$text['label-profile_param_description']['nl-nl'] = "Omschrijving";
$text['label-profile_param_description']['pl-pl'] = "";
$text['label-profile_param_description']['pl-pl'] = "Opis";
$text['label-profile_param_description']['pt-br'] = "";
$text['label-profile_param_description']['pt-pt'] = "";
$text['label-profile_param_description']['ro-ro'] = "";
@@ -413,7 +413,7 @@ $text['description-profile_param_description']['fr-fr'] = "Entrez la description
$text['description-profile_param_description']['he-il'] = "";
$text['description-profile_param_description']['it-it'] = "Inserire la descrizione.";
$text['description-profile_param_description']['nl-nl'] = "Voer de omschrijving in.";
$text['description-profile_param_description']['pl-pl'] = "";
$text['description-profile_param_description']['pl-pl'] = "Wprowadź opis.";
$text['description-profile_param_description']['pt-br'] = "";
$text['description-profile_param_description']['pt-pt'] = "";
$text['description-profile_param_description']['ro-ro'] = "";

View File

@@ -14,7 +14,7 @@
$apps[$x]['menu'][$y]['title']['he-il'] = "";
$apps[$x]['menu'][$y]['title']['it-it'] = "Profili Conferenza";
$apps[$x]['menu'][$y]['title']['nl-nl'] = "Conferentie profielen";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "Profile Konferencji";
$apps[$x]['menu'][$y]['title']['pt-br'] = "";
$apps[$x]['menu'][$y]['title']['pt-pt'] = "";
$apps[$x]['menu'][$y]['title']['ro-ro'] = "";

View File

@@ -122,18 +122,18 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'conference_profile_edit.php']);
}
if (permission_exists('conference_profile_add') && $conference_profiles) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('conference_profile_edit') && $conference_profiles) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('conference_profile_delete') && $conference_profiles) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conference_profiles.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conference_profiles.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>\n";
}
@@ -163,7 +163,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('conference_profile_add') || permission_exists('conference_profile_edit') || permission_exists('conference_profile_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($conference_profiles ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($conference_profiles ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
echo th_order_by('profile_name', $text['label-profile_name'], $order_by, $order);
@@ -183,7 +183,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('conference_profile_add') || permission_exists('conference_profile_edit') || permission_exists('conference_profile_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='conference_profiles[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='conference_profiles[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='conference_profiles[$x][uuid]' value='".escape($row['conference_profile_uuid'])."' />\n";
echo " </td>\n";
}
@@ -225,4 +225,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -66,6 +66,9 @@
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "conference_user_view";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";;
@@ -82,10 +85,17 @@
$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_account_code";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$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}";
@@ -136,6 +146,15 @@
$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.";
$z++;
$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.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "conference_account_code";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional account code for the conference.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "conference_flags";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Optional conference flags. examples: mute|deaf|waste|moderator";

View File

@@ -14,7 +14,7 @@ $text['title-conferences']['fr-fr'] = "Conférences";
$text['title-conferences']['he-il'] = "חדר ועידה";
$text['title-conferences']['it-it'] = "Conferenze";
$text['title-conferences']['nl-nl'] = "Conferenties";
$text['title-conferences']['pl-pl'] = "";
$text['title-conferences']['pl-pl'] = "Konferencje";
$text['title-conferences']['pt-br'] = "Conferências"; //copied from pt-pt
$text['title-conferences']['pt-pt'] = "Conferências";
$text['title-conferences']['ro-ro'] = "";
@@ -35,7 +35,7 @@ $text['title-conference']['fr-fr'] = "Conférences";
$text['title-conference']['he-il'] = "";
$text['title-conference']['it-it'] = "Conferenze";
$text['title-conference']['nl-nl'] = "Conferenties";
$text['title-conference']['pl-pl'] = "";
$text['title-conference']['pl-pl'] = "Konferencja";
$text['title-conference']['pt-br'] = "Conferências"; //copied from pt-pt
$text['title-conference']['pt-pt'] = "Conferências";
$text['title-conference']['ro-ro'] = "";
@@ -56,7 +56,7 @@ $text['description']['fr-fr'] = "Ce menu est utilisé pour créer des salles de
$text['description']['he-il'] = "";
$text['description']['it-it'] = "Conferenze permette di configurare stanze di conferenza con nome, descrizione, e PIN opzionale.";
$text['description']['nl-nl'] = "Conferenties wordt gebruikt om gespreksruimten te maken met een naam, omschrijving en optionele PIN code";
$text['description']['pl-pl'] = "";
$text['description']['pl-pl'] = "Konferencja służy do konfigurowania sal konferencyjnych z nazwą, opisem i opcjonalnym numerem pin.";
$text['description']['pt-br'] = "As conferências são utilizadas para configurar salas de conferência com um nome, descrição e número pin opcional."; //copied from pt-pt
$text['description']['pt-pt'] = "As conferências são utilizadas para configurar salas de conferência com um nome, descrição e número pin opcional.";
$text['description']['ro-ro'] = "";
@@ -77,7 +77,7 @@ $text['label-active_conferences']['fr-fr'] = "Conférences actives";
$text['label-active_conferences']['he-il'] = "";
$text['label-active_conferences']['it-it'] = "Conferenze Attive";
$text['label-active_conferences']['nl-nl'] = "Aktieve conferenties";
$text['label-active_conferences']['pl-pl'] = "";
$text['label-active_conferences']['pl-pl'] = "Aktywne Konferencje";
$text['label-active_conferences']['pt-br'] = "Conferências Activas"; //copied from pt-pt
$text['label-active_conferences']['pt-pt'] = "Conferências Activas";
$text['label-active_conferences']['ro-ro'] = "";
@@ -98,7 +98,7 @@ $text['button-view_active']['fr-fr'] = "Voir Active";
$text['button-view_active']['he-il'] = "";
$text['button-view_active']['it-it'] = "Mostra Attive";
$text['button-view_active']['nl-nl'] = "Toon aktieve ruimten";
$text['button-view_active']['pl-pl'] = "";
$text['button-view_active']['pl-pl'] = "Pokaż Aktywne";
$text['button-view_active']['pt-br'] = "Ver Ativo"; //copied from pt-pt
$text['button-view_active']['pt-pt'] = "Ver Ativo";
$text['button-view_active']['ro-ro'] = "";
@@ -119,7 +119,7 @@ $text['table-name']['fr-fr'] = "Nom";
$text['table-name']['he-il'] = "";
$text['table-name']['it-it'] = "Nome";
$text['table-name']['nl-nl'] = "Naam";
$text['table-name']['pl-pl'] = "";
$text['table-name']['pl-pl'] = "Nazwa";
$text['table-name']['pt-br'] = "Nome"; //copied from pt-pt
$text['table-name']['pt-pt'] = "Nome";
$text['table-name']['ro-ro'] = "";
@@ -140,7 +140,7 @@ $text['table-extension']['fr-fr'] = "Extension";
$text['table-extension']['he-il'] = "";
$text['table-extension']['it-it'] = "Interno";
$text['table-extension']['nl-nl'] = "Toestel";
$text['table-extension']['pl-pl'] = "";
$text['table-extension']['pl-pl'] = "Numer Wewnętrzny";
$text['table-extension']['pt-br'] = "Extensão"; //copied from pt-pt
$text['table-extension']['pt-pt'] = "Extensão";
$text['table-extension']['ro-ro'] = "";
@@ -161,7 +161,7 @@ $text['table-profile']['fr-fr'] = "Profile";
$text['table-profile']['he-il'] = "";
$text['table-profile']['it-it'] = "Profilo";
$text['table-profile']['nl-nl'] = "Profiel";
$text['table-profile']['pl-pl'] = "";
$text['table-profile']['pl-pl'] = "Profil";
$text['table-profile']['pt-br'] = "Perfil"; //copied from pt-pt
$text['table-profile']['pt-pt'] = "Perfil";
$text['table-profile']['ro-ro'] = "";
@@ -182,7 +182,7 @@ $text['table-order']['fr-fr'] = "Ordre";
$text['table-order']['he-il'] = "";
$text['table-order']['it-it'] = "Ordine";
$text['table-order']['nl-nl'] = "Volgorde";
$text['table-order']['pl-pl'] = "";
$text['table-order']['pl-pl'] = "Kolejność";
$text['table-order']['pt-br'] = "Ordem"; //copied from pt-pt
$text['table-order']['pt-pt'] = "Ordem";
$text['table-order']['ro-ro'] = "";
@@ -203,7 +203,7 @@ $text['table-enabled']['fr-fr'] = "Actif";
$text['table-enabled']['he-il'] = "";
$text['table-enabled']['it-it'] = "Abilitato";
$text['table-enabled']['nl-nl'] = "Aan";
$text['table-enabled']['pl-pl'] = "";
$text['table-enabled']['pl-pl'] = "Aktywny";
$text['table-enabled']['pt-br'] = "Activo"; //copied from pt-pt
$text['table-enabled']['pt-pt'] = "Activo";
$text['table-enabled']['ro-ro'] = "";
@@ -224,7 +224,7 @@ $text['table-description']['fr-fr'] = "Description";
$text['table-description']['he-il'] = "";
$text['table-description']['it-it'] = "Descrizione";
$text['table-description']['nl-nl'] = "Omschrijving";
$text['table-description']['pl-pl'] = "";
$text['table-description']['pl-pl'] = "Opis";
$text['table-description']['pt-br'] = "Descrição"; //copied from pt-pt
$text['table-description']['pt-pt'] = "Descrição";
$text['table-description']['ro-ro'] = "";
@@ -245,7 +245,7 @@ $text['confirm-add']['fr-fr'] = "Ajouté";
$text['confirm-add']['he-il'] = "";
$text['confirm-add']['it-it'] = "Inserimento Completato";
$text['confirm-add']['nl-nl'] = "Toevoegen gereed";
$text['confirm-add']['pl-pl'] = "";
$text['confirm-add']['pl-pl'] = "Dodano pomyślnie";
$text['confirm-add']['pt-br'] = "Adição Efectuada"; //copied from pt-pt
$text['confirm-add']['pt-pt'] = "Adição Efectuada";
$text['confirm-add']['ro-ro'] = "";
@@ -266,7 +266,7 @@ $text['confirm-update']['fr-fr'] = "Mis a jour";
$text['confirm-update']['he-il'] = "";
$text['confirm-update']['it-it'] = "Aggiornamento Completato";
$text['confirm-update']['nl-nl'] = "Bijwerken gereed";
$text['confirm-update']['pl-pl'] = "";
$text['confirm-update']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['confirm-update']['pt-br'] = "Actualização Efectuada"; //copied from pt-pt
$text['confirm-update']['pt-pt'] = "Actualização Efectuada";
$text['confirm-update']['ro-ro'] = "";
@@ -287,7 +287,7 @@ $text['confirm-name']['fr-fr'] = "Merci d'indiquer: Nom";
$text['confirm-name']['he-il'] = "";
$text['confirm-name']['it-it'] = "Prego fornire: Nome";
$text['confirm-name']['nl-nl'] = "Geef aub.: Naam";
$text['confirm-name']['pl-pl'] = "";
$text['confirm-name']['pl-pl'] = "Wprowadź nazwę";
$text['confirm-name']['pt-br'] = "Por favor indique: Nome"; //copied from pt-pt
$text['confirm-name']['pt-pt'] = "Por favor indique: Nome";
$text['confirm-name']['ro-ro'] = "";
@@ -308,7 +308,7 @@ $text['confirm-extension']['fr-fr'] = "Merci d'indiquer: Extension";
$text['confirm-extension']['he-il'] = "";
$text['confirm-extension']['it-it'] = "Prego fornire: Interno";
$text['confirm-extension']['nl-nl'] = "Geef aub.: Toestel";
$text['confirm-extension']['pl-pl'] = "";
$text['confirm-extension']['pl-pl'] = "Wprowadź numer wewnętrzny";
$text['confirm-extension']['pt-br'] = "Por favor indique: Extensão"; //copied from pt-pt
$text['confirm-extension']['pt-pt'] = "Por favor indique: Extensão";
$text['confirm-extension']['ro-ro'] = "";
@@ -329,7 +329,7 @@ $text['confirm-profile']['fr-fr'] = "Merci d'indiquer: Profile";
$text['confirm-profile']['he-il'] = "";
$text['confirm-profile']['it-it'] = "Prego fornire: Profilo";
$text['confirm-profile']['nl-nl'] = "Geef aub.: Profiel";
$text['confirm-profile']['pl-pl'] = "";
$text['confirm-profile']['pl-pl'] = "Wprowadź profil";
$text['confirm-profile']['pt-br'] = "Por favor indique: Perfil"; //copied from pt-pt
$text['confirm-profile']['pt-pt'] = "Por favor indique: Perfil";
$text['confirm-profile']['ro-ro'] = "";
@@ -350,7 +350,7 @@ $text['confirm-enabled']['fr-fr'] = "Merci d'indiquer: Actif";
$text['confirm-enabled']['he-il'] = "";
$text['confirm-enabled']['it-it'] = "Prego fornire: Abilitato";
$text['confirm-enabled']['nl-nl'] = "Geef aub.: Aktief";
$text['confirm-enabled']['pl-pl'] = "";
$text['confirm-enabled']['pl-pl'] = "Wprowadź stan aktywacji";
$text['confirm-enabled']['pt-br'] = "Por favor indique: Ativado"; //copied from pt-pt
$text['confirm-enabled']['pt-pt'] = "Por favor indique: Ativado";
$text['confirm-enabled']['ro-ro'] = "";
@@ -371,7 +371,7 @@ $text['label-conference-add']['fr-fr'] = "Ajouter des conférences";
$text['label-conference-add']['he-il'] = "";
$text['label-conference-add']['it-it'] = "Inserisci Conferenze";
$text['label-conference-add']['nl-nl'] = "Conferentie toevoegen";
$text['label-conference-add']['pl-pl'] = "";
$text['label-conference-add']['pl-pl'] = "Dodaj Konferencje";
$text['label-conference-add']['pt-br'] = "Adição de Conferências"; //copied from pt-pt
$text['label-conference-add']['pt-pt'] = "Adição de Conferências";
$text['label-conference-add']['ro-ro'] = "";
@@ -392,7 +392,7 @@ $text['label-conference-edit']['fr-fr'] = "Editer les conférences";
$text['label-conference-edit']['he-il'] = "";
$text['label-conference-edit']['it-it'] = "Modifica Conferenze";
$text['label-conference-edit']['nl-nl'] = "Conferenties bewerken";
$text['label-conference-edit']['pl-pl'] = "";
$text['label-conference-edit']['pl-pl'] = "Edytuj Konferencje";
$text['label-conference-edit']['pt-br'] = "Edição de Conferências"; //copied from pt-pt
$text['label-conference-edit']['pt-pt'] = "Edição de Conferências";
$text['label-conference-edit']['ro-ro'] = "";
@@ -413,7 +413,7 @@ $text['label-extension']['fr-fr'] = "Extension";
$text['label-extension']['he-il'] = "";
$text['label-extension']['it-it'] = "Interno";
$text['label-extension']['nl-nl'] = "Toestel";
$text['label-extension']['pl-pl'] = "";
$text['label-extension']['pl-pl'] = "Numer Wewnętrzny";
$text['label-extension']['pt-br'] = "Extensão"; //copied from pt-pt
$text['label-extension']['pt-pt'] = "Extensão";
$text['label-extension']['ro-ro'] = "";
@@ -434,7 +434,7 @@ $text['description-name']['fr-fr'] = "Entrer le nom de la conférence.";
$text['description-name']['he-il'] = "";
$text['description-name']['it-it'] = "Inserisci il nome della conferenza.";
$text['description-name']['nl-nl'] = "Voer conferentie naam in.";
$text['description-name']['pl-pl'] = "";
$text['description-name']['pl-pl'] = "Wprowadź nazwę konferencji.";
$text['description-name']['pt-br'] = "Insira o nome da conferência."; //copied from pt-pt
$text['description-name']['pt-pt'] = "Insira o nome da conferência.";
$text['description-name']['ro-ro'] = "";
@@ -455,7 +455,7 @@ $text['description-extension']['fr-fr'] = "Entrer le numéro d'extension de la c
$text['description-extension']['he-il'] = "";
$text['description-extension']['it-it'] = "Inserisci il numero di interno della conferenza.";
$text['description-extension']['nl-nl'] = "Voer het conferentie toestel nummer in.";
$text['description-extension']['pl-pl'] = "";
$text['description-extension']['pl-pl'] = "Wprowadź numer wewnętrzny konferencji.";
$text['description-extension']['pt-br'] = "Insira a extensão da conferência"; //copied from pt-pt
$text['description-extension']['pt-pt'] = "Insira a extensão da conferência";
$text['description-extension']['ro-ro'] = "";
@@ -476,7 +476,7 @@ $text['description-3']['fr-fr'] = "Superviser et interagir avec la salle de conf
$text['description-3']['he-il'] = "";
$text['description-3']['it-it'] = "per monitorare e interagire con la stanza di conferenza.";
$text['description-3']['nl-nl'] = "om de gespreksruimte te bewaken en gebruiken.";
$text['description-3']['pl-pl'] = "";
$text['description-3']['pl-pl'] = "monitoring i interakcja z salą konferencyjną";
$text['description-3']['pt-br'] = "para monitorizar e interagir com a sala de conferências."; //copied from pt-pt
$text['description-3']['pt-pt'] = "para monitorizar e interagir com a sala de conferências.";
$text['description-3']['ro-ro'] = "";
@@ -497,7 +497,7 @@ $text['label-pin']['fr-fr'] = "Code Pin";
$text['label-pin']['he-il'] = "";
$text['label-pin']['it-it'] = "PIN";
$text['label-pin']['nl-nl'] = "PIN";
$text['label-pin']['pl-pl'] = "";
$text['label-pin']['pl-pl'] = "Numer PIN";
$text['label-pin']['pt-br'] = "Código Pin"; //copied from pt-pt
$text['label-pin']['pt-pt'] = "Código Pin";
$text['label-pin']['ro-ro'] = "";
@@ -518,7 +518,7 @@ $text['description-pin']['fr-fr'] = "Numéro d'identifiant pour sécuriser l'acc
$text['description-pin']['he-il'] = "";
$text['description-pin']['it-it'] = "PIN opzionale per proteggere l'accesso alla conferenza.";
$text['description-pin']['nl-nl'] = "Optionele PIN code om de gespreksruimte te beveiligen.";
$text['description-pin']['pl-pl'] = "";
$text['description-pin']['pl-pl'] = "Opcjonalny numer PIN dla zabezpieczenia dostępu do konferencji.";
$text['description-pin']['pt-br'] = "Código pin opcional para garantir o acesso à conferência."; //copied from pt-pt
$text['description-pin']['pt-pt'] = "Código pin opcional para garantir o acesso à conferência.";
$text['description-pin']['ro-ro'] = "";
@@ -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'] = "Adres Email";
$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'] = "Opcjonalny adres email konferencji.";
$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'] = "";
@@ -539,7 +581,7 @@ $text['confirm-delete-2']['fr-fr'] = "Voulez-vous vraiment supprimer cela?";
$text['confirm-delete-2']['he-il'] = "";
$text['confirm-delete-2']['it-it'] = "Vuoi veramente cancellarlo?";
$text['confirm-delete-2']['nl-nl'] = "Wil deze werkelijk verwijderen?";
$text['confirm-delete-2']['pl-pl'] = "";
$text['confirm-delete-2']['pl-pl'] = "Czy na pewno chcesz to usunąć?";
$text['confirm-delete-2']['pt-br'] = "Deseja realmente apagar isto?"; //copied from pt-pt
$text['confirm-delete-2']['pt-pt'] = "Deseja realmente apagar isto?";
$text['confirm-delete-2']['ro-ro'] = "";
@@ -560,7 +602,7 @@ $text['description-info']['fr-fr'] = "";
$text['description-info']['he-il'] = "";
$text['description-info']['it-it'] = "Inserire la descrizione.";
$text['description-info']['nl-nl'] = "Voer de omschrijving in.";
$text['description-info']['pl-pl'] = "";
$text['description-info']['pl-pl'] = "Wprowadź opis.";
$text['description-info']['pt-br'] = "Insira a descrição."; //copied from pt-pt
$text['description-info']['pt-pt'] = "Insira a descrição.";
$text['description-info']['ro-ro'] = "";
@@ -581,7 +623,7 @@ $text['description-conference-enable']['fr-fr'] = "Choisir d'activer ou non la c
$text['description-conference-enable']['he-il'] = "";
$text['description-conference-enable']['it-it'] = "Selezionare per abilitare o disabilitare la conferenza.";
$text['description-conference-enable']['nl-nl'] = "Kies om de conferentie aan/uit te zetten";
$text['description-conference-enable']['pl-pl'] = "";
$text['description-conference-enable']['pl-pl'] = "Wybierz czy aktywować czy dezaktywować konferencję.";
$text['description-conference-enable']['pt-br'] = "Seleccione se deseja ativar ou desativar a conferência."; //copied from pt-pt
$text['description-conference-enable']['pt-pt'] = "Seleccione se deseja ativar ou desativar a conferência.";
$text['description-conference-enable']['ro-ro'] = "";
@@ -602,7 +644,7 @@ $text['description-order']['fr-fr'] = "Entrer le numéro d'ordre.";
$text['description-order']['he-il'] = "";
$text['description-order']['it-it'] = "Inserire il numero d'ordine.";
$text['description-order']['nl-nl'] = "Voer volgorde nummer in.";
$text['description-order']['pl-pl'] = "";
$text['description-order']['pl-pl'] = "Wprowadź numer kolejności.";
$text['description-order']['pt-br'] = "Digite o número do pedido."; //copied from pt-pt
$text['description-order']['pt-pt'] = "Digite o número do pedido.";
$text['description-order']['ro-ro'] = "";
@@ -610,8 +652,8 @@ $text['description-order']['ru-ru'] = "Введите номер заказа.";
$text['description-order']['sv-se'] = "Ange ordnings numret.";
$text['description-order']['uk-ua'] = "";
$text['description-user-add']['en-us'] = "Assign the users that are can manage this conference extension.";
$text['description-user-add']['en-gb'] = "Assign the users that are can manage this conference extension.";
$text['description-user-add']['en-us'] = "Assign the users that can manage this conference extension.";
$text['description-user-add']['en-gb'] = "Assign the users that can manage this conference extension.";
$text['description-user-add']['ar-eg'] = "";
$text['description-user-add']['de-at'] = "Wählen Sie die Benutzer aus, welche die Konferenz administrieren können."; //copied from de-de
$text['description-user-add']['de-ch'] = "Wählen Sie die Benutzer aus, welche die Konferenz administrieren können."; //copied from de-de
@@ -623,7 +665,7 @@ $text['description-user-add']['fr-fr'] = "Wählen Sie die Benutzer aus, welche d
$text['description-user-add']['he-il'] = "";
$text['description-user-add']['it-it'] = "Imposta gli utenti che possono gestire questa conferenza.";
$text['description-user-add']['nl-nl'] = "Wijs de gebruikers die deze conferentie ruimte kunnen beheren.";
$text['description-user-add']['pl-pl'] = "";
$text['description-user-add']['pl-pl'] = "Przypisz użytkowników, którzy mogą zarządzać numerami wewnętrznymi konferencji.";
$text['description-user-add']['pt-br'] = "Atribuir utilizadores que podem gerir esta extensão de conferência."; //copied from pt-pt
$text['description-user-add']['pt-pt'] = "Atribuir utilizadores que podem gerir esta extensão de conferência.";
$text['description-user-add']['ro-ro'] = "";
@@ -644,7 +686,7 @@ $text['description-profile']['fr-fr'] = "Le profile de la conférence est une li
$text['description-profile']['he-il'] = "";
$text['description-profile']['it-it'] = "Il Profilo Conferenza è un insieme di parametri della conferenza.";
$text['description-profile']['nl-nl'] = "Conferentie profiel is een verzameling instellingen voor deze conferentie.";
$text['description-profile']['pl-pl'] = "";
$text['description-profile']['pl-pl'] = "Profil Konferencji jest zbiorem ustawien dla konferencji.";
$text['description-profile']['pt-br'] = "Perfil de conferência é um conjunto de definições para a conferência."; //copied from pt-pt
$text['description-profile']['pt-pt'] = "Perfil de conferência é um conjunto de definições para a conferência.";
$text['description-profile']['ro-ro'] = "";
@@ -665,7 +707,7 @@ $text['description-flags']['fr-fr'] = "Flags Optionnels de la conférence. exemp
$text['description-flags']['he-il'] = "";
$text['description-flags']['it-it'] = "Flag opzionali per la conferenza. es. : mute|deaf|waste|moderator";
$text['description-flags']['nl-nl'] = "Optionele conferentie instellingen, voorbeeld: mute|deaf|waste|moderator";
$text['description-flags']['pl-pl'] = "";
$text['description-flags']['pl-pl'] = "Opcjonalne flagi konferencji. Przykłady: mute|deaf|waste|moderator";
$text['description-flags']['pt-br'] = "Flags opcionais de conferências. Exemplos: mute|deaf|waste|moderator"; //copied from pt-pt
$text['description-flags']['pt-pt'] = "Flags opcionais de conferências. Exemplos: mute|deaf|waste|moderator";
$text['description-flags']['ro-ro'] = "";
@@ -673,6 +715,27 @@ $text['description-flags']['ru-ru'] = "Дополнительные флаги
$text['description-flags']['sv-se'] = "Valfria konferensflaggor. Exempel: mute|deaf|waste|moderator";
$text['description-flags']['uk-ua'] = "";
$text['description-account_code']['en-us'] = "Enter the account code here.";
$text['description-account_code']['en-gb'] = "Enter the account code here.";
$text['description-account_code']['ar-eg'] = "";
$text['description-account_code']['de-at'] = "Geben Sie den Account Code hier an."; //copied from de-de
$text['description-account_code']['de-ch'] = "Geben Sie den Account Code hier an."; //copied from de-de
$text['description-account_code']['de-de'] = "Geben Sie den Account Code hier an.";
$text['description-account_code']['es-cl'] = "Ingrese el código de cuenta aquí.";
$text['description-account_code']['es-mx'] = "Ingrese el código de cuenta aquí."; //copied from es-cl
$text['description-account_code']['fr-ca'] = "Entrez le code de compte ici.";
$text['description-account_code']['fr-fr'] = "Entrez le code de compte ici.";
$text['description-account_code']['he-il'] = "";
$text['description-account_code']['it-it'] = "Inserire qui l'account code.";
$text['description-account_code']['nl-nl'] = "Voer de accountcode hier in.";
$text['description-account_code']['pl-pl'] = "Wpisz numer billingowy (nagłówek dodany do SIP INVITE).";
$text['description-account_code']['pt-br'] = "Insira o código de conta aqui.";
$text['description-account_code']['pt-pt'] = "Introduza o código de conta aqui.";
$text['description-account_code']['ro-ro'] = "";
$text['description-account_code']['ru-ru'] = "Введите здесь код счета.";
$text['description-account_code']['sv-se'] = "Ange 'account code' här.";
$text['description-account_code']['uk-ua'] = "";
$text['label-user_list']['en-us'] = "User List";
$text['label-user_list']['en-gb'] = "User List";
$text['label-user_list']['ar-eg'] = "";
@@ -686,7 +749,7 @@ $text['label-user_list']['fr-fr'] = "Liste des utilisateurs";
$text['label-user_list']['he-il'] = "";
$text['label-user_list']['it-it'] = "Lista Utenti";
$text['label-user_list']['nl-nl'] = "Gebruikerslijst";
$text['label-user_list']['pl-pl'] = "";
$text['label-user_list']['pl-pl'] = "Lista Użytkowników";
$text['label-user_list']['pt-br'] = "Lista de usuários"; //copied from pt-pt
$text['label-user_list']['pt-pt'] = "Lista de usuários";
$text['label-user_list']['ro-ro'] = "";
@@ -707,7 +770,7 @@ $text['label-flags']['fr-fr'] = "Drapeaux";
$text['label-flags']['he-il'] = "";
$text['label-flags']['it-it'] = "Flags";
$text['label-flags']['nl-nl'] = "Attributen";
$text['label-flags']['pl-pl'] = "";
$text['label-flags']['pl-pl'] = "Flagi";
$text['label-flags']['pt-br'] = "Bandeiras"; //copied from pt-pt
$text['label-flags']['pt-pt'] = "Bandeiras";
$text['label-flags']['ro-ro'] = "";
@@ -715,4 +778,25 @@ $text['label-flags']['ru-ru'] = "Флаги";
$text['label-flags']['sv-se'] = "Flaggor";
$text['label-flags']['uk-ua'] = "";
$text['label-account_code']['en-us'] = "Account Code";
$text['label-account_code']['en-gb'] = "Account Code";
$text['label-account_code']['ar-eg'] = "";
$text['label-account_code']['de-at'] = "Kontoschlüssel"; //copied from de-de
$text['label-account_code']['de-ch'] = "Kontoschlüssel"; //copied from de-de
$text['label-account_code']['de-de'] = "Kontoschlüssel";
$text['label-account_code']['es-cl'] = "Código de Cuenta";
$text['label-account_code']['es-mx'] = "Código de Cuenta"; //copied from es-cl
$text['label-account_code']['fr-ca'] = "Centre de frais"; //copied from fr-fr
$text['label-account_code']['fr-fr'] = "Centre de frais";
$text['label-account_code']['he-il'] = "קוד חשבון";
$text['label-account_code']['it-it'] = "Account Code";
$text['label-account_code']['nl-nl'] = "Accountcode";
$text['label-account_code']['pl-pl'] = "Numer konta billingowego";
$text['label-account_code']['pt-br'] = "Código de conta";
$text['label-account_code']['pt-pt'] = "Código de Conta";
$text['label-account_code']['ro-ro'] = "";
$text['label-account_code']['ru-ru'] = "Код Учетной Записи";
$text['label-account_code']['sv-se'] = "Kontokod";
$text['label-account_code']['uk-ua'] = "";
?>

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2020
Portions created by the Initial Developer are Copyright (C) 2008-2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -59,6 +59,8 @@
$conference_pin_number = $_POST["conference_pin_number"];
$conference_profile = $_POST["conference_profile"];
$conference_flags = $_POST["conference_flags"];
$conference_email_address = $_POST["conference_email_address"];
$conference_account_code = $_POST["conference_account_code"];
$conference_order = $_POST["conference_order"];
$conference_description = $_POST["conference_description"];
$conference_enabled = $_POST["conference_enabled"];
@@ -182,6 +184,12 @@
$array['conferences'][0]['conference_pin_number'] = $conference_pin_number;
$array['conferences'][0]['conference_profile'] = $conference_profile;
$array['conferences'][0]['conference_flags'] = $conference_flags;
if (permission_exists('conference_email_address')) {
$array['conferences'][0]['conference_email_address'] = $conference_email_address;
}
if (permission_exists('conference_account_code')) {
$array['conferences'][0]['conference_account_code'] = $conference_account_code;
}
$array['conferences'][0]['conference_order'] = $conference_order;
$array['conferences'][0]['conference_description'] = $conference_description;
$array['conferences'][0]['conference_enabled'] = $conference_enabled;
@@ -275,6 +283,8 @@
$conference_pin_number = $row["conference_pin_number"];
$conference_profile = $row["conference_profile"];
$conference_flags = $row["conference_flags"];
$conference_email_address = $row["conference_email_address"];
$conference_account_code = $row["conference_account_code"];
$conference_order = $row["conference_order"];
$conference_description = $row["conference_description"];
$conference_enabled = $row["conference_enabled"];
@@ -452,6 +462,32 @@
echo "</td>\n";
echo "</tr>\n";
if (permission_exists('conference_email_address')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-email_address']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='conference_email_address' maxlength='255' value=\"".escape($conference_email_address)."\">\n";
echo "<br />\n";
echo "".$text['description-email_address']."\n";
echo "</td>\n";
echo "</tr>\n";
}
if (permission_exists('conference_account_code')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-account_code']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='conference_account_code' maxlength='255' value=\"".escape($conference_account_code)."\">\n";
echo "<br />\n";
echo "".$text['description-account_code']."\n";
echo "</td>\n";
echo "</tr>\n";
}
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-order']."\n";

View File

@@ -97,7 +97,11 @@
if (if_group("superadmin") || if_group("admin")) {
//show all extensions
$sql = "select count(*) from v_conferences ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('conference_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
}
else {
//show only assigned extensions
@@ -108,13 +112,15 @@
$parameters['user_uuid'] = $_SESSION['user_uuid'];
}
$sql .= $sql_search;
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('conference_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page);
@@ -148,18 +154,26 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'conference_edit.php']);
}
if (permission_exists('conference_add') && $conferences) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (permission_exists('conference_edit') && $conferences) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('conference_delete') && $conferences) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conferences.php','style'=>($search == '' ? 'display: none;' : null)]);
if (permission_exists('conference_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type=&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'conferences.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -189,9 +203,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('conference_add') || permission_exists('conference_edit') || permission_exists('conference_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($conferences ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($conferences ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('conference_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('conference_name', $text['table-name'], $order_by, $order);
echo th_order_by('conference_extension', $text['table-extension'], $order_by, $order);
echo th_order_by('conference_profile', $text['table-profile'], $order_by, $order);
@@ -212,10 +229,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('conference_add') || permission_exists('conference_edit') || permission_exists('conference_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='conferences[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='conferences[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='conferences[$x][uuid]' value='".escape($row['conference_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('conference_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td><a href='".$list_row_url."'>".str_replace('-', ' ', $row['conference_name'])."</a>&nbsp;</td>\n";
echo " <td>".escape($row['conference_extension'])."&nbsp;</td>\n";
echo " <td>".escape($row['conference_profile'])."&nbsp;</td>\n";
@@ -251,4 +277,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -5,7 +5,7 @@
$apps[$x]['uuid'] = "04481e0e-a478-c559-adad-52bd4174574c";
$apps[$x]['category'] = "CRM";
$apps[$x]['subcategory'] = "";
$apps[$x]['version'] = "1.1";
$apps[$x]['version'] = "2.0";
$apps[$x]['license'] = "Mozilla Public License 1.1";
$apps[$x]['contact_url'] = "http://www.fusionpbx.com";
$apps[$x]['description']['en-us'] = "Provides a place to store contact information for individuals and organizations.";
@@ -48,6 +48,9 @@
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "contact_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "contact_upload";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
@@ -459,6 +462,10 @@
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = "contact_uuid";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_label";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Custom label for the number";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_type_voice";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "numeric";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Number is used for voice calls.";
@@ -475,13 +482,13 @@
$apps[$x]['db'][$y]['fields'][$z]['type'] = "numeric";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Number is used for text messages.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_label";
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_speed_dial";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Custom label for the number";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the speed dial.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_primary";
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_country_code";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "numeric";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Designate a primary number.";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the country code.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_number";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
@@ -491,10 +498,11 @@
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the extension.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_speed_dial";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the speed dial.";
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_primary";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "numeric";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Designate a primary number.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "phone_description";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the description.";
@@ -943,5 +951,12 @@
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Define the allowed file attachment extensions and their mime types in a JSON array.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "d8998b7f-c27c-43ac-ad1b-a9c66187bb10";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "contact";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "permissions";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "";
?>

View File

@@ -87,7 +87,7 @@ if ($domains_processed == 1) {
$database = new database;
$database->app_name = 'contacts';
$database->app_uuid = '04481e0e-a478-c559-adad-52bd4174574c';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('contact_email_add', 'temp');
@@ -148,7 +148,7 @@ if ($domains_processed == 1) {
$database = new database;
$database->app_name = 'contacts';
$database->app_uuid = '04481e0e-a478-c559-adad-52bd4174574c';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('contact_url_add', 'temp');
@@ -213,7 +213,7 @@ if ($domains_processed == 1) {
$database = new database;
$database->app_name = 'contacts';
$database->app_uuid = '04481e0e-a478-c559-adad-52bd4174574c';
$database->save($array);
$database->save($array, false);
unset($array);
$array['contact_groups'][0]['contact_group_uuid'] = $row["contact_group_uuid"];
@@ -233,4 +233,4 @@ if ($domains_processed == 1) {
}
?>
?>

View File

@@ -32,7 +32,7 @@ $text['title-contacts_import']['de-de'] = "Kontakte importieren";
$text['title-contacts_import']['el-gr'] = "Εισαγωγή Επαφών";
$text['title-contacts_import']['es-cl'] = "Importar Contactos";
$text['title-contacts_import']['es-mx'] = "Importar Contactos"; //copied from es-cl
$text['title-contacts_import']['fr-ca'] = "Importe des Contacts"; //copied from fr-fr
$text['title-contacts_import']['fr-ca'] = "Importer Contacts";
$text['title-contacts_import']['fr-fr'] = "Importe des Contacts";
$text['title-contacts_import']['he-il'] = "ייבא אנשי קשר";
$text['title-contacts_import']['it-it'] = "Importa Contatti";
@@ -76,8 +76,8 @@ $text['title-contact_properties']['de-de'] = "Contact Properties";
$text['title-contact_properties']['el-gr'] = "Contact Properties";
$text['title-contact_properties']['es-cl'] = "Contact Properties";
$text['title-contact_properties']['es-mx'] = "Contact Properties";
$text['title-contact_properties']['fr-ca'] = "Contact Properties";
$text['title-contact_properties']['fr-fr'] = "Contact Properties";
$text['title-contact_properties']['fr-ca'] = "Propriétés de Contact";
$text['title-contact_properties']['fr-fr'] = "Propriétés de Contact";
$text['title-contact_properties']['he-il'] = "Contact Properties";
$text['title-contact_properties']['it-it'] = "Contact Properties";
$text['title-contact_properties']['nl-nl'] = "Contact Properties";
@@ -98,7 +98,7 @@ $text['title-contact_email-edit']['de-de'] = "Email des Kontakts bearbeiten";
$text['title-contact_email-edit']['el-gr'] = "Επεξεργασία e-mail επαφής";
$text['title-contact_email-edit']['es-cl'] = "Correo electrónico de contacto Editar";
$text['title-contact_email-edit']['es-mx'] = "Correo electrónico de contacto Editar"; //copied from es-cl
$text['title-contact_email-edit']['fr-ca'] = "Contact Courriel Modifier"; //copied from fr-fr
$text['title-contact_email-edit']['fr-ca'] = "Courriel de Contact Modifier";
$text['title-contact_email-edit']['fr-fr'] = "Contact Courriel Modifier";
$text['title-contact_email-edit']['he-il'] = "";
$text['title-contact_email-edit']['it-it'] = "Modifica Email Contatto";
@@ -120,7 +120,7 @@ $text['title-contact_email-add']['de-de'] = "Email zum Kontakt hinzufügen";
$text['title-contact_email-add']['el-gr'] = "Προσθήκη e-mail επαφής";
$text['title-contact_email-add']['es-cl'] = "Correo electrónico de contacto Agregar";
$text['title-contact_email-add']['es-mx'] = "Correo electrónico de contacto Agregar"; //copied from es-cl
$text['title-contact_email-add']['fr-ca'] = "Contactez-mail Ajouter"; //copied from fr-fr
$text['title-contact_email-add']['fr-ca'] = "Courriel de Contact Ajouter";
$text['title-contact_email-add']['fr-fr'] = "Contactez-mail Ajouter";
$text['title-contact_email-add']['he-il'] = "";
$text['title-contact_email-add']['it-it'] = "Inserisci Email Contatto";
@@ -142,7 +142,7 @@ $text['title-contact_url-edit']['de-de'] = "URL bearbeiten";
$text['title-contact_url-edit']['el-gr'] = "Επεξεργασία συνδέσμου URL επαφής";
$text['title-contact_url-edit']['es-cl'] = "Correo electrónico de contacto Editar";
$text['title-contact_url-edit']['es-mx'] = "Correo electrónico de contacto Editar"; //copied from es-cl
$text['title-contact_url-edit']['fr-ca'] = "Contact Courriel Modifier"; //copied from fr-fr
$text['title-contact_url-edit']['fr-ca'] = "URL de Contact Modifier";
$text['title-contact_url-edit']['fr-fr'] = "Contact Courriel Modifier";
$text['title-contact_url-edit']['he-il'] = "";
$text['title-contact_url-edit']['it-it'] = "Modifica URL Contatto";
@@ -164,7 +164,7 @@ $text['title-contact_url-add']['de-de'] = "URL hinzufügen";
$text['title-contact_url-add']['el-gr'] = "Προσθήκη συνδέσμου URL επαφής";
$text['title-contact_url-add']['es-cl'] = "Correo electrónico de contacto Agregar";
$text['title-contact_url-add']['es-mx'] = "Correo electrónico de contacto Agregar"; //copied from es-cl
$text['title-contact_url-add']['fr-ca'] = "Contactez-mail Ajouter"; //copied from fr-fr
$text['title-contact_url-add']['fr-ca'] = "URL de Contact Ajouter";
$text['title-contact_url-add']['fr-fr'] = "Contactez-mail Ajouter";
$text['title-contact_url-add']['he-il'] = "";
$text['title-contact_url-add']['it-it'] = "Inserisci URL Contatto";
@@ -274,7 +274,7 @@ $text['title-contact_relation']['de-de'] = "Beziehung";
$text['title-contact_relation']['el-gr'] = "Συσχετίσεις Επαφών";
$text['title-contact_relation']['es-cl'] = "Contacto Relación";
$text['title-contact_relation']['es-mx'] = "Contacto Relación"; //copied from es-cl
$text['title-contact_relation']['fr-ca'] = "Contactez Relation"; //copied from fr-fr
$text['title-contact_relation']['fr-ca'] = "Relation de Contact";
$text['title-contact_relation']['fr-fr'] = "Contactez Relation";
$text['title-contact_relation']['he-il'] = "";
$text['title-contact_relation']['it-it'] = "Relazioni Contatto";
@@ -296,7 +296,7 @@ $text['title-contact_phones-edit']['de-de'] = "Nummer bearbeiten";
$text['title-contact_phones-edit']['el-gr'] = "Επεξεργασία Αριθμού Επαφής";
$text['title-contact_phones-edit']['es-cl'] = "Editar Número de Contacto";
$text['title-contact_phones-edit']['es-mx'] = "Editar Número de Contacto"; //copied from es-cl
$text['title-contact_phones-edit']['fr-ca'] = "Editer le téléphone du Contact"; //copied from fr-fr
$text['title-contact_phones-edit']['fr-ca'] = "Numéro de Contact Modifier";
$text['title-contact_phones-edit']['fr-fr'] = "Editer le téléphone du Contact";
$text['title-contact_phones-edit']['he-il'] = "";
$text['title-contact_phones-edit']['it-it'] = "Modifica Numero Contatto";
@@ -318,7 +318,7 @@ $text['title-contact_phones-add']['de-de'] = "Nummer hinzufügen";
$text['title-contact_phones-add']['el-gr'] = "Προσθήκη Αριθμού Επαφής";
$text['title-contact_phones-add']['es-cl'] = "Agregar Número de Contacto";
$text['title-contact_phones-add']['es-mx'] = "Agregar Número de Contacto"; //copied from es-cl
$text['title-contact_phones-add']['fr-ca'] = "Ajouter un téléphone au Contact"; //copied from fr-fr
$text['title-contact_phones-add']['fr-ca'] = "Numéro de Contact Ajouter";
$text['title-contact_phones-add']['fr-fr'] = "Ajouter un téléphone au Contact";
$text['title-contact_phones-add']['he-il'] = "";
$text['title-contact_phones-add']['it-it'] = "Inserire Numero Contatto";
@@ -340,7 +340,7 @@ $text['title-contact_notes-edit']['de-de'] = "Notiz bearbeiten";
$text['title-contact_notes-edit']['el-gr'] = "Επεξεργασία Σημείωσης Επαφής";
$text['title-contact_notes-edit']['es-cl'] = "Editar Nota de Contactos";
$text['title-contact_notes-edit']['es-mx'] = "Editar Nota de Contactos"; //copied from es-cl
$text['title-contact_notes-edit']['fr-ca'] = "Editer la note du contact"; //copied from fr-fr
$text['title-contact_notes-edit']['fr-ca'] = "Note du Contact Modifier";
$text['title-contact_notes-edit']['fr-fr'] = "Editer la note du contact";
$text['title-contact_notes-edit']['he-il'] = "";
$text['title-contact_notes-edit']['it-it'] = "Modifica Note Contatto";
@@ -384,7 +384,7 @@ $text['title-contact_addresses-edit']['de-de'] = "Adresse bearbeiten";
$text['title-contact_addresses-edit']['el-gr'] = "Επεξεργασία Διεύθυνσης Επαφής";
$text['title-contact_addresses-edit']['es-cl'] = "Editar Dirección de Contacto";
$text['title-contact_addresses-edit']['es-mx'] = "Editar Dirección de Contacto"; //copied from es-cl
$text['title-contact_addresses-edit']['fr-ca'] = "Editer l'adresse du contact"; //copied from fr-fr
$text['title-contact_addresses-edit']['fr-ca'] = "Modifier l'adresse du contact";
$text['title-contact_addresses-edit']['fr-fr'] = "Editer l'adresse du contact";
$text['title-contact_addresses-edit']['he-il'] = "";
$text['title-contact_addresses-edit']['it-it'] = "Modifica Indirizzo Contatto";
@@ -428,8 +428,8 @@ $text['title-contact_attachment-edit']['de-de'] = "";
$text['title-contact_attachment-edit']['el-gr'] = "Επεξεργασία Επισύναψης Επαφής";
$text['title-contact_attachment-edit']['es-cl'] = "";
$text['title-contact_attachment-edit']['es-mx'] = "";
$text['title-contact_attachment-edit']['fr-ca'] = "";
$text['title-contact_attachment-edit']['fr-fr'] = "";
$text['title-contact_attachment-edit']['fr-ca'] = "Pièce jointe de Contact Modifier";
$text['title-contact_attachment-edit']['fr-fr'] = "Pièce jointe de Contact Modifier";
$text['title-contact_attachment-edit']['he-il'] = "";
$text['title-contact_attachment-edit']['it-it'] = "";
$text['title-contact_attachment-edit']['nl-nl'] = "Kontact aanhangsel bewerken";
@@ -450,8 +450,8 @@ $text['title-contact_attachment-add']['de-de'] = "";
$text['title-contact_attachment-add']['el-gr'] = "Προσθήκη Επισύναψης Επαφής";
$text['title-contact_attachment-add']['es-cl'] = "";
$text['title-contact_attachment-add']['es-mx'] = "";
$text['title-contact_attachment-add']['fr-ca'] = "";
$text['title-contact_attachment-add']['fr-fr'] = "";
$text['title-contact_attachment-add']['fr-ca'] = "Pièce jointe de Contact Ajouter";
$text['title-contact_attachment-add']['fr-fr'] = "Pièce jointe de Contact Ajouter";
$text['title-contact_attachment-add']['he-il'] = "";
$text['title-contact_attachment-add']['it-it'] = "";
$text['title-contact_attachment-add']['nl-nl'] = "Kontact aanhangsel toevoegen";
@@ -516,7 +516,7 @@ $text['option-work']['de-de'] = "Arbeit";
$text['option-work']['el-gr'] = "Εργασία";
$text['option-work']['es-cl'] = "Lugar de Trabajo";
$text['option-work']['es-mx'] = "Lugar de Trabajo"; //copied from es-cl
$text['option-work']['fr-ca'] = "En Milieu de Travail"; //copied from fr-fr
$text['option-work']['fr-ca'] = "Travail";
$text['option-work']['fr-fr'] = "En Milieu de Travail";
$text['option-work']['he-il'] = "עבודה";
$text['option-work']['it-it'] = "Lavoro";
@@ -560,7 +560,7 @@ $text['option-true']['de-de'] = "Ein";
$text['option-true']['el-gr'] = "Ναι";
$text['option-true']['es-cl'] = "Verdadero";
$text['option-true']['es-mx'] = "Verdadero"; //copied from es-cl
$text['option-true']['fr-ca'] = "Oui"; //copied from fr-fr
$text['option-true']['fr-ca'] = "vrai";
$text['option-true']['fr-fr'] = "Oui";
$text['option-true']['he-il'] = "חוקי";
$text['option-true']['it-it'] = "Vero";
@@ -846,8 +846,8 @@ $text['option-intl']['de-de'] = "International";
$text['option-intl']['el-gr'] = "Διεθνής";
$text['option-intl']['es-cl'] = "Internacional";
$text['option-intl']['es-mx'] = "Internacional"; //copied from es-cl
$text['option-intl']['fr-ca'] = "international"; //copied from fr-fr
$text['option-intl']['fr-fr'] = "international";
$text['option-intl']['fr-ca'] = "International"; //copied from fr-fr
$text['option-intl']['fr-fr'] = "International";
$text['option-intl']['he-il'] = "בילאומי";
$text['option-intl']['it-it'] = "Internazionale";
$text['option-intl']['nl-nl'] = "Internationaal";
@@ -912,7 +912,7 @@ $text['option-home']['de-de'] = "Privat";
$text['option-home']['el-gr'] = "Αρχική";
$text['option-home']['es-cl'] = "Casa";
$text['option-home']['es-mx'] = "Casa"; //copied from es-cl
$text['option-home']['fr-ca'] = "Maison"; //copied from fr-fr
$text['option-home']['fr-ca'] = "Domicile";
$text['option-home']['fr-fr'] = "Maison";
$text['option-home']['he-il'] = "בית";
$text['option-home']['it-it'] = "Casa";
@@ -956,7 +956,7 @@ $text['option-false']['de-de'] = "Aus";
$text['option-false']['el-gr'] = "Όχι";
$text['option-false']['es-cl'] = "Falso";
$text['option-false']['es-mx'] = "Falso"; //copied from es-cl
$text['option-false']['fr-ca'] = "Non"; //copied from fr-fr
$text['option-false']['fr-ca'] = "Faux";
$text['option-false']['fr-fr'] = "Non";
$text['option-false']['he-il'] = "לא חוקי";
$text['option-false']['it-it'] = "Falso";
@@ -1313,7 +1313,7 @@ $text['message-update']['fr-fr'] = "Mis à jour";
$text['message-update']['he-il'] = "העדכון הושלם";
$text['message-update']['it-it'] = "Aggiornamento Completato";
$text['message-update']['nl-nl'] = "Bijwerken gereed";
$text['message-update']['pl-pl'] = "Zaktualizowano poprawnie";
$text['message-update']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['message-update']['pt-br'] = "Atualização Efetuada";
$text['message-update']['pt-pt'] = "Actualização Efectuada";
$text['message-update']['ro-ro'] = "";
@@ -1423,7 +1423,7 @@ $text['message-delete']['fr-fr'] = "Supprimé";
$text['message-delete']['he-il'] = "מחיקה הושלמה";
$text['message-delete']['it-it'] = "Cancellazione Completata";
$text['message-delete']['nl-nl'] = "Verwijderen gereed";
$text['message-delete']['pl-pl'] = "Usunięto poprawnie";
$text['message-delete']['pl-pl'] = "Usunięto pomyślnie";
$text['message-delete']['pt-br'] = "Remoção Efetuada";
$text['message-delete']['pt-pt'] = "Remoção Efectuada";
$text['message-delete']['ro-ro'] = "";
@@ -1445,7 +1445,7 @@ $text['message-contacts_imported']['fr-fr'] = "Contacts Importés:";
$text['message-contacts_imported']['he-il'] = "אנשי קשר יובאו";
$text['message-contacts_imported']['it-it'] = "Contatti Importati:";
$text['message-contacts_imported']['nl-nl'] = "Kontacten geimporteerd";
$text['message-contacts_imported']['pl-pl'] = "Kontakty importowano poprawnie.";
$text['message-contacts_imported']['pl-pl'] = "Zaimportowane kontakty:";
$text['message-contacts_imported']['pt-br'] = "Contatos importados";
$text['message-contacts_imported']['pt-pt'] = "Contatos Importados:";
$text['message-contacts_imported']['ro-ro'] = "";
@@ -1467,7 +1467,7 @@ $text['message-add']['fr-fr'] = "Ajouté";
$text['message-add']['he-il'] = "הוספה הושלמה";
$text['message-add']['it-it'] = "Inserimento Completato";
$text['message-add']['nl-nl'] = "Toevoegen gereed";
$text['message-add']['pl-pl'] = "Dodano poprawnie";
$text['message-add']['pl-pl'] = "Dodano pomyślnie";
$text['message-add']['pt-br'] = "Criação Efetuada";
$text['message-add']['pt-pt'] = "Adição Efectuada";
$text['message-add']['ro-ro'] = "";
@@ -1616,7 +1616,7 @@ $text['label-url_address']['de-de'] = "Adresse";
$text['label-url_address']['el-gr'] = "Διεύθυνση";
$text['label-url_address']['es-cl'] = "Calle";
$text['label-url_address']['es-mx'] = "Calle"; //copied from es-cl
$text['label-url_address']['fr-ca'] = "Rue"; //copied from fr-fr
$text['label-url_address']['fr-ca'] = "Adresse";
$text['label-url_address']['fr-fr'] = "Rue";
$text['label-url_address']['he-il'] = "כתובת";
$text['label-url_address']['it-it'] = "Indirizzo";
@@ -1638,7 +1638,7 @@ $text['label-true']['de-de'] = "Ein";
$text['label-true']['el-gr'] = "Ναι";
$text['label-true']['es-cl'] = "Verdadero";
$text['label-true']['es-mx'] = "Verdadero"; //copied from es-cl
$text['label-true']['fr-ca'] = "Oui"; //copied from fr-fr
$text['label-true']['fr-ca'] = "Vrai";
$text['label-true']['fr-fr'] = "Oui";
$text['label-true']['he-il'] = "חיובי";
$text['label-true']['it-it'] = "Vero";
@@ -1682,7 +1682,7 @@ $text['label-time_timer']['de-de'] = "Timer";
$text['label-time_timer']['el-gr'] = "Χρονοδιακόπτης";
$text['label-time_timer']['es-cl'] = "Timer";
$text['label-time_timer']['es-mx'] = "Timer"; //copied from es-cl
$text['label-time_timer']['fr-ca'] = "Minuteur"; //copied from fr-fr
$text['label-time_timer']['fr-ca'] = "Minuterie";
$text['label-time_timer']['fr-fr'] = "Minuteur";
$text['label-time_timer']['he-il'] = "";
$text['label-time_timer']['it-it'] = "Timer";
@@ -1726,7 +1726,7 @@ $text['label-time_stop']['de-de'] = "Stopp";
$text['label-time_stop']['el-gr'] = "Διακοπή";
$text['label-time_stop']['es-cl'] = "Deténgase";
$text['label-time_stop']['es-mx'] = "Deténgase"; //copied from es-cl
$text['label-time_stop']['fr-ca'] = "Stop"; //copied from fr-fr
$text['label-time_stop']['fr-ca'] = "Arrêt"; //copied from fr-fr
$text['label-time_stop']['fr-fr'] = "Stop";
$text['label-time_stop']['he-il'] = "עצור";
$text['label-time_stop']['it-it'] = "Stop";
@@ -1849,27 +1849,27 @@ $text['label-shared']['ru-ru'] = "Общий";
$text['label-shared']['sv-se'] = "Delad";
$text['label-shared']['uk-ua'] = "";
$text['label-primary']['en-us'] = "Primary";
$text['label-primary']['en-gb'] = "Primary";
$text['label-primary']['ar-eg'] = "";
$text['label-primary']['de-at'] = "Primär"; //copied from de-de
$text['label-primary']['de-ch'] = "Primär"; //copied from de-de
$text['label-primary']['de-de'] = "Primär";
$text['label-primary']['el-gr'] = "Κύρια";
$text['label-primary']['es-cl'] = "Primário";
$text['label-primary']['es-mx'] = "Primário"; //copied from es-cl
$text['label-primary']['fr-ca'] = "Primaire"; //copied from fr-fr
$text['label-primary']['fr-fr'] = "Primaire";
$text['label-primary']['he-il'] = "ראשי";
$text['label-primary']['it-it'] = "Primario";
$text['label-primary']['nl-nl'] = "Primair";
$text['label-primary']['pl-pl'] = "Główny";
$text['label-primary']['pt-br'] = "Primário"; //copied from pt-pt
$text['label-primary']['pt-pt'] = "Primário";
$text['label-primary']['ro-ro'] = "";
$text['label-primary']['ru-ru'] = "Основной";
$text['label-primary']['sv-se'] = "Primär";
$text['label-primary']['uk-ua'] = "";
$text['label-phone_label']['en-us'] = "Label";
$text['label-phone_label']['en-gb'] = "Label";
$text['label-phone_label']['ar-eg'] = "";
$text['label-phone_label']['de-at'] = "Kennzeichnung"; //copied from de-de
$text['label-phone_label']['de-ch'] = "Kennzeichnung"; //copied from de-de
$text['label-phone_label']['de-de'] = "Kennzeichnung";
$text['label-phone_label']['el-gr'] = "Ετικέτα";
$text['label-phone_label']['es-cl'] = "Etiqueta";
$text['label-phone_label']['es-mx'] = "Etiqueta"; //copied from es-cl
$text['label-phone_label']['fr-ca'] = "Etiquette"; //copied from fr-fr
$text['label-phone_label']['fr-fr'] = "Etiquette";
$text['label-phone_label']['he-il'] = "";
$text['label-phone_label']['it-it'] = "Etichetta";
$text['label-phone_label']['nl-nl'] = "Etiket";
$text['label-phone_label']['pl-pl'] = "Etykieta";
$text['label-phone_label']['pt-br'] = "Identificador";
$text['label-phone_label']['pt-pt'] = "Etiqueta";
$text['label-phone_label']['ro-ro'] = "";
$text['label-phone_label']['ru-ru'] = "Метка";
$text['label-phone_label']['sv-se'] = "Etikett";
$text['label-phone_label']['uk-ua'] = "Назва";
$text['label-phone_type']['en-us'] = "Type";
$text['label-phone_type']['en-gb'] = "Type";
@@ -1924,8 +1924,8 @@ $text['label-phone_speed_dial']['de-de'] = "Kurzwahl";
$text['label-phone_speed_dial']['el-gr'] = "Ταχεία κλήση";
$text['label-phone_speed_dial']['es-cl'] = "";
$text['label-phone_speed_dial']['es-mx'] = "";
$text['label-phone_speed_dial']['fr-ca'] = "";
$text['label-phone_speed_dial']['fr-fr'] = "";
$text['label-phone_speed_dial']['fr-ca'] = "Numérotation Abrégée";
$text['label-phone_speed_dial']['fr-fr'] = "Numérotation Abrégée";
$text['label-phone_speed_dial']['he-il'] = "";
$text['label-phone_speed_dial']['it-it'] = "Numero Breve";
$text['label-phone_speed_dial']['nl-nl'] = "Snelkiezen";
@@ -1935,7 +1935,29 @@ $text['label-phone_speed_dial']['pt-pt'] = "";
$text['label-phone_speed_dial']['ro-ro'] = "";
$text['label-phone_speed_dial']['ru-ru'] = "Быстрый Набор";
$text['label-phone_speed_dial']['sv-se'] = "Snabb Nummer";
$text['label-phone_speed_dial']['uk-ua'] = "";
$text['label-phone_speed_dial']['uk-ua'] = "";
$text['label-phone_country_code']['en-us'] = "Country Code";
$text['label-phone_country_code']['en-gb'] = "Country Code";
$text['label-phone_country_code']['ar-eg'] = "";
$text['label-phone_country_code']['de-at'] = ""; //copied from de-de
$text['label-phone_country_code']['de-ch'] = ""; //copied from de-de
$text['label-phone_country_code']['de-de'] = "";
$text['label-phone_country_code']['el-gr'] = "";
$text['label-phone_country_code']['es-cl'] = "";
$text['label-phone_country_code']['es-mx'] = "";
$text['label-phone_country_code']['fr-ca'] = "Indicatif du Pays";
$text['label-phone_country_code']['fr-fr'] = "Indicatif du Pays";
$text['label-phone_country_code']['he-il'] = "";
$text['label-phone_country_code']['it-it'] = "";
$text['label-phone_country_code']['nl-nl'] = "";
$text['label-phone_country_code']['pl-pl'] = "";
$text['label-phone_country_code']['pt-br'] = "";
$text['label-phone_country_code']['pt-pt'] = "";
$text['label-phone_country_code']['ro-ro'] = "";
$text['label-phone_country_code']['ru-ru'] = "";
$text['label-phone_country_code']['sv-se'] = "";
$text['label-phone_country_code']['uk-ua'] = "";
$text['label-phone_numbers']['en-us'] = "Numbers";
$text['label-phone_numbers']['en-gb'] = "Numbers";
@@ -1981,28 +2003,6 @@ $text['label-phone_number']['ru-ru'] = "Номер";
$text['label-phone_number']['sv-se'] = "Nummer";
$text['label-phone_number']['uk-ua'] = "Номер";
$text['label-phone_label']['en-us'] = "Label";
$text['label-phone_label']['en-gb'] = "Label";
$text['label-phone_label']['ar-eg'] = "";
$text['label-phone_label']['de-at'] = "Kennzeichnung"; //copied from de-de
$text['label-phone_label']['de-ch'] = "Kennzeichnung"; //copied from de-de
$text['label-phone_label']['de-de'] = "Kennzeichnung";
$text['label-phone_label']['el-gr'] = "Ετικέτα";
$text['label-phone_label']['es-cl'] = "Etiqueta";
$text['label-phone_label']['es-mx'] = "Etiqueta"; //copied from es-cl
$text['label-phone_label']['fr-ca'] = "Etiquette"; //copied from fr-fr
$text['label-phone_label']['fr-fr'] = "Etiquette";
$text['label-phone_label']['he-il'] = "";
$text['label-phone_label']['it-it'] = "Etichetta";
$text['label-phone_label']['nl-nl'] = "Etiket";
$text['label-phone_label']['pl-pl'] = "Etykieta";
$text['label-phone_label']['pt-br'] = "Identificador";
$text['label-phone_label']['pt-pt'] = "Etiqueta";
$text['label-phone_label']['ro-ro'] = "";
$text['label-phone_label']['ru-ru'] = "Метка";
$text['label-phone_label']['sv-se'] = "Etikett";
$text['label-phone_label']['uk-ua'] = "Назва";
$text['label-phone_extension']['en-us'] = "Extension";
$text['label-phone_extension']['en-gb'] = "Extension";
$text['label-phone_extension']['ar-eg'] = "";
@@ -2025,6 +2025,28 @@ $text['label-phone_extension']['ru-ru'] = "Внутренний Номер";
$text['label-phone_extension']['sv-se'] = "Anknytning";
$text['label-phone_extension']['uk-ua'] = "Розширення";
$text['label-primary']['en-us'] = "Primary";
$text['label-primary']['en-gb'] = "Primary";
$text['label-primary']['ar-eg'] = "";
$text['label-primary']['de-at'] = "Primär"; //copied from de-de
$text['label-primary']['de-ch'] = "Primär"; //copied from de-de
$text['label-primary']['de-de'] = "Primär";
$text['label-primary']['el-gr'] = "Κύρια";
$text['label-primary']['es-cl'] = "Primário";
$text['label-primary']['es-mx'] = "Primário"; //copied from es-cl
$text['label-primary']['fr-ca'] = "Primaire"; //copied from fr-fr
$text['label-primary']['fr-fr'] = "Primaire";
$text['label-primary']['he-il'] = "ראשי";
$text['label-primary']['it-it'] = "Primario";
$text['label-primary']['nl-nl'] = "Primair";
$text['label-primary']['pl-pl'] = "Główny";
$text['label-primary']['pt-br'] = "Primário"; //copied from pt-pt
$text['label-primary']['pt-pt'] = "Primário";
$text['label-primary']['ro-ro'] = "";
$text['label-primary']['ru-ru'] = "Основной";
$text['label-primary']['sv-se'] = "Primär";
$text['label-primary']['uk-ua'] = "";
$text['label-phone_description']['en-us'] = "Description";
$text['label-phone_description']['en-gb'] = "Description";
$text['label-phone_description']['ar-eg'] = "";
@@ -2122,8 +2144,8 @@ $text['label-note_content']['de-de'] = "Inhalt";
$text['label-note_content']['el-gr'] = "Περιεχόμενο";
$text['label-note_content']['es-cl'] = "Contenido";
$text['label-note_content']['es-mx'] = "Contenido"; //copied from es-cl
$text['label-note_content']['fr-ca'] = "Content"; //copied from fr-fr
$text['label-note_content']['fr-fr'] = "Content";
$text['label-note_content']['fr-ca'] = "Contenu";
$text['label-note_content']['fr-fr'] = "Contenu";
$text['label-note_content']['he-il'] = "";
$text['label-note_content']['it-it'] = "Contenuto";
$text['label-note_content']['nl-nl'] = "Inhoud";
@@ -2166,7 +2188,7 @@ $text['label-import_fields']['de-de'] = "Felder";
$text['label-import_fields']['el-gr'] = "Πεδία";
$text['label-import_fields']['es-cl'] = "Campos";
$text['label-import_fields']['es-mx'] = "Campos"; //copied from es-cl
$text['label-import_fields']['fr-ca'] = "Les Champs"; //copied from fr-fr
$text['label-import_fields']['fr-ca'] = "Champs";
$text['label-import_fields']['fr-fr'] = "Les Champs";
$text['label-import_fields']['he-il'] = "שדות";
$text['label-import_fields']['it-it'] = "Campi";
@@ -2386,7 +2408,7 @@ $text['label-false']['de-de'] = "Aus";
$text['label-false']['el-gr'] = "Όχι";
$text['label-false']['es-cl'] = "Falso";
$text['label-false']['es-mx'] = "Falso"; //copied from es-cl
$text['label-false']['fr-ca'] = "Non"; //copied from fr-fr
$text['label-false']['fr-ca'] = "Faux";
$text['label-false']['fr-fr'] = "Non";
$text['label-false']['he-il'] = "לא חוקי";
$text['label-false']['it-it'] = "Falso";
@@ -2430,7 +2452,7 @@ $text['label-enabled']['de-de'] = "An";
$text['label-enabled']['el-gr'] = "Ενεργό";
$text['label-enabled']['es-cl'] = "Activado";
$text['label-enabled']['es-mx'] = "Activado"; //copied from es-cl
$text['label-enabled']['fr-ca'] = "Actif"; //copied from fr-fr
$text['label-enabled']['fr-ca'] = "Acti";
$text['label-enabled']['fr-fr'] = "Actif";
$text['label-enabled']['he-il'] = "מופעל";
$text['label-enabled']['it-it'] = "Abilitato";
@@ -2452,8 +2474,8 @@ $text['label-emails']['de-de'] = "Emails";
$text['label-emails']['el-gr'] = "E-mails";
$text['label-emails']['es-cl'] = "Extensións";
$text['label-emails']['es-mx'] = "Extensións"; //copied from es-cl
$text['label-emails']['fr-ca'] = "Extensions"; //copied from fr-fr
$text['label-emails']['fr-fr'] = "Extensions";
$text['label-emails']['fr-ca'] = "Courriels";
$text['label-emails']['fr-fr'] = "Courriels";
$text['label-emails']['he-il'] = "אימיילים";
$text['label-emails']['it-it'] = "Emails";
$text['label-emails']['nl-nl'] = "E-mails";
@@ -2474,8 +2496,8 @@ $text['label-email_label']['de-de'] = "Kennzeichnung";
$text['label-email_label']['el-gr'] = "Ετικέτα";
$text['label-email_label']['es-cl'] = "Etiqueta";
$text['label-email_label']['es-mx'] = "Etiqueta"; //copied from es-cl
$text['label-email_label']['fr-ca'] = "Etiquette"; //copied from fr-fr
$text['label-email_label']['fr-fr'] = "Etiquette";
$text['label-email_label']['fr-ca'] = "Étiquette"; //copied from fr-fr
$text['label-email_label']['fr-fr'] = "Étiquette";
$text['label-email_label']['he-il'] = "";
$text['label-email_label']['it-it'] = "Etichetta";
$text['label-email_label']['nl-nl'] = "Etiket";
@@ -2518,8 +2540,8 @@ $text['label-email_address']['de-de'] = "Email-Adresse";
$text['label-email_address']['el-gr'] = "Ηλεκτρονική διεύθυνση";
$text['label-email_address']['es-cl'] = "Calle";
$text['label-email_address']['es-mx'] = "Calle"; //copied from es-cl
$text['label-email_address']['fr-ca'] = "Rue"; //copied from fr-fr
$text['label-email_address']['fr-fr'] = "Rue";
$text['label-email_address']['fr-ca'] = "Courriel";
$text['label-email_address']['fr-fr'] = "Courriel";
$text['label-email_address']['he-il'] = "כתובת מייל";
$text['label-email_address']['it-it'] = "Indirizzo";
$text['label-email_address']['nl-nl'] = "E-mail Adres";
@@ -2870,8 +2892,8 @@ $text['label-contact_relation_option_parent']['de-de'] = "Eltern";
$text['label-contact_relation_option_parent']['el-gr'] = "Γονέας";
$text['label-contact_relation_option_parent']['es-cl'] = "Padre";
$text['label-contact_relation_option_parent']['es-mx'] = "Padre"; //copied from es-cl
$text['label-contact_relation_option_parent']['fr-ca'] = "Mère"; //copied from fr-fr
$text['label-contact_relation_option_parent']['fr-fr'] = "Mère";
$text['label-contact_relation_option_parent']['fr-ca'] = "Parent";
$text['label-contact_relation_option_parent']['fr-fr'] = "Parent";
$text['label-contact_relation_option_parent']['he-il'] = "";
$text['label-contact_relation_option_parent']['it-it'] = "Padre";
$text['label-contact_relation_option_parent']['nl-nl'] = "Ouder";
@@ -3002,8 +3024,8 @@ $text['label-contact_relation_name']['de-de'] = "Name";
$text['label-contact_relation_name']['el-gr'] = "Όνομα";
$text['label-contact_relation_name']['es-cl'] = "Nombre";
$text['label-contact_relation_name']['es-mx'] = "Nombre"; //copied from es-cl
$text['label-contact_relation_name']['fr-ca'] = "Nome"; //copied from fr-fr
$text['label-contact_relation_name']['fr-fr'] = "Nome";
$text['label-contact_relation_name']['fr-ca'] = "Nom"; //copied from fr-fr
$text['label-contact_relation_name']['fr-fr'] = "Nom";
$text['label-contact_relation_name']['he-il'] = "שם";
$text['label-contact_relation_name']['it-it'] = "Nome";
$text['label-contact_relation_name']['nl-nl'] = "Naam";
@@ -3442,8 +3464,8 @@ $text['label-address_region']['de-de'] = "Region";
$text['label-address_region']['el-gr'] = "Περιοχή";
$text['label-address_region']['es-cl'] = "Región";
$text['label-address_region']['es-mx'] = "Región"; //copied from es-cl
$text['label-address_region']['fr-ca'] = "Département"; //copied from fr-fr
$text['label-address_region']['fr-fr'] = "Département";
$text['label-address_region']['fr-ca'] = "Région"; //copied from fr-fr
$text['label-address_region']['fr-fr'] = "Région";
$text['label-address_region']['he-il'] = "";
$text['label-address_region']['it-it'] = "Regione";
$text['label-address_region']['nl-nl'] = "Regio";
@@ -3552,8 +3574,8 @@ $text['label-address_label']['de-de'] = "Kennzeichnung";
$text['label-address_label']['el-gr'] = "Ετικέτα";
$text['label-address_label']['es-cl'] = "Etiqueta";
$text['label-address_label']['es-mx'] = "Etiqueta"; //copied from es-cl
$text['label-address_label']['fr-ca'] = "Etiquette"; //copied from fr-fr
$text['label-address_label']['fr-fr'] = "Etiquette";
$text['label-address_label']['fr-ca'] = "Étiquette"; //copied from fr-fr
$text['label-address_label']['fr-fr'] = "Étiquette";
$text['label-address_label']['he-il'] = "";
$text['label-address_label']['it-it'] = "etichetta";
$text['label-address_label']['nl-nl'] = "Etiket";
@@ -3640,8 +3662,8 @@ $text['label-address_address']['de-de'] = "Adresse";
$text['label-address_address']['el-gr'] = "Διεύθυνση";
$text['label-address_address']['es-cl'] = "Calle";
$text['label-address_address']['es-mx'] = "Calle"; //copied from es-cl
$text['label-address_address']['fr-ca'] = "Rue"; //copied from fr-fr
$text['label-address_address']['fr-fr'] = "Rue";
$text['label-address_address']['fr-ca'] = "Adresse"; //copied from fr-fr
$text['label-address_address']['fr-fr'] = "Adresse";
$text['label-address_address']['he-il'] = "כתובת";
$text['label-address_address']['it-it'] = "Indirizzo";
$text['label-address_address']['nl-nl'] = "Adres";
@@ -3662,8 +3684,8 @@ $text['label-attachments']['de-de'] = "";
$text['label-attachments']['el-gr'] = "Επισυνάψεις";
$text['label-attachments']['es-cl'] = "";
$text['label-attachments']['es-mx'] = "";
$text['label-attachments']['fr-ca'] = "";
$text['label-attachments']['fr-fr'] = "";
$text['label-attachments']['fr-ca'] = "Pièces Jointes";
$text['label-attachments']['fr-fr'] = "Pièces Jointes";
$text['label-attachments']['he-il'] = "";
$text['label-attachments']['it-it'] = "";
$text['label-attachments']['nl-nl'] = "Aanhangsels";
@@ -3684,8 +3706,8 @@ $text['label-attachment_filename']['de-de'] = "";
$text['label-attachment_filename']['el-gr'] = "Όνομα αρχείου";
$text['label-attachment_filename']['es-cl'] = "";
$text['label-attachment_filename']['es-mx'] = "";
$text['label-attachment_filename']['fr-ca'] = "";
$text['label-attachment_filename']['fr-fr'] = "";
$text['label-attachment_filename']['fr-ca'] = "Nom du Fichier";
$text['label-attachment_filename']['fr-fr'] = "Nom du Fichier";
$text['label-attachment_filename']['he-il'] = "";
$text['label-attachment_filename']['it-it'] = "";
$text['label-attachment_filename']['nl-nl'] = "Bestandsnaam";
@@ -3706,8 +3728,8 @@ $text['label-attachment']['de-de'] = "";
$text['label-attachment']['el-gr'] = "Επισύναψη";
$text['label-attachment']['es-cl'] = "";
$text['label-attachment']['es-mx'] = "";
$text['label-attachment']['fr-ca'] = "";
$text['label-attachment']['fr-fr'] = "";
$text['label-attachment']['fr-ca'] = "Pièce Jointe";
$text['label-attachment']['fr-fr'] = "Pièce Jointe";
$text['label-attachment']['he-il'] = "";
$text['label-attachment']['it-it'] = "";
$text['label-attachment']['nl-nl'] = "Toevoeging";
@@ -3728,8 +3750,8 @@ $text['label-attachment_size']['de-de'] = "";
$text['label-attachment_size']['el-gr'] = "Μέγεθος";
$text['label-attachment_size']['es-cl'] = "";
$text['label-attachment_size']['es-mx'] = "";
$text['label-attachment_size']['fr-ca'] = "";
$text['label-attachment_size']['fr-fr'] = "";
$text['label-attachment_size']['fr-ca'] = "Taille";
$text['label-attachment_size']['fr-fr'] = "Taille";
$text['label-attachment_size']['he-il'] = "";
$text['label-attachment_size']['it-it'] = "";
$text['label-attachment_size']['nl-nl'] = "Omvang";
@@ -3750,8 +3772,8 @@ $text['label-attachment_description']['de-de'] = "";
$text['label-attachment_description']['el-gr'] = "Περιγραφή";
$text['label-attachment_description']['es-cl'] = "";
$text['label-attachment_description']['es-mx'] = "";
$text['label-attachment_description']['fr-ca'] = "";
$text['label-attachment_description']['fr-fr'] = "";
$text['label-attachment_description']['fr-ca'] = "Description";
$text['label-attachment_description']['fr-fr'] = "Description";
$text['label-attachment_description']['he-il'] = "";
$text['label-attachment_description']['it-it'] = "";
$text['label-attachment_description']['nl-nl'] = "Omschrijving";
@@ -3816,8 +3838,8 @@ $text['header-contacts_import']['de-de'] = "Kontakte importieren";
$text['header-contacts_import']['el-gr'] = "Εισαγωγή επαφών";
$text['header-contacts_import']['es-cl'] = "Importar Contactos";
$text['header-contacts_import']['es-mx'] = "Importar Contactos"; //copied from es-cl
$text['header-contacts_import']['fr-ca'] = "Importe des Contacts"; //copied from fr-fr
$text['header-contacts_import']['fr-fr'] = "Importe des Contacts";
$text['header-contacts_import']['fr-ca'] = "Importé des Contacts";
$text['header-contacts_import']['fr-fr'] = "Importé des Contacts";
$text['header-contacts_import']['he-il'] = "ייבא אנשי קשר";
$text['header-contacts_import']['it-it'] = "Importa Contatti";
$text['header-contacts_import']['nl-nl'] = "Importeer kontacten";
@@ -3860,7 +3882,7 @@ $text['header-contact_url-edit']['de-de'] = "URL bearbeiten";
$text['header-contact_url-edit']['el-gr'] = "Επεξεργασία συνδέσμου URL επαφής";
$text['header-contact_url-edit']['es-cl'] = "Correo electrónico de contacto Editar";
$text['header-contact_url-edit']['es-mx'] = "Correo electrónico de contacto Editar"; //copied from es-cl
$text['header-contact_url-edit']['fr-ca'] = "Contact Courriel Modifier"; //copied from fr-fr
$text['header-contact_url-edit']['fr-ca'] = "URL de Contact Modifier";
$text['header-contact_url-edit']['fr-fr'] = "Contact Courriel Modifier";
$text['header-contact_url-edit']['he-il'] = "";
$text['header-contact_url-edit']['it-it'] = "Modifica URL Contatto";
@@ -3882,7 +3904,7 @@ $text['header-contact_url-add']['de-de'] = "URL hinzufügen";
$text['header-contact_url-add']['el-gr'] = "Προσθήκη συνδέσμου URL επαφής";
$text['header-contact_url-add']['es-cl'] = "Correo electrónico de contacto Agregar";
$text['header-contact_url-add']['es-mx'] = "Correo electrónico de contacto Agregar"; //copied from es-cl
$text['header-contact_url-add']['fr-ca'] = "Contactez-mail Ajouter"; //copied from fr-fr
$text['header-contact_url-add']['fr-ca'] = "URL de Contactez Ajouter";
$text['header-contact_url-add']['fr-fr'] = "Contactez-mail Ajouter";
$text['header-contact_url-add']['he-il'] = "";
$text['header-contact_url-add']['it-it'] = "Inserisci URL Contatto";
@@ -4036,7 +4058,7 @@ $text['header-contact_phones-edit']['de-de'] = "Nummer des Kontakts bearbeiten";
$text['header-contact_phones-edit']['el-gr'] = "Επεξεργασία αριθμού επαφής";
$text['header-contact_phones-edit']['es-cl'] = "Editar Número de Contacto";
$text['header-contact_phones-edit']['es-mx'] = "Editar Número de Contacto"; //copied from es-cl
$text['header-contact_phones-edit']['fr-ca'] = "Editer le téléphone du Contact"; //copied from fr-fr
$text['header-contact_phones-edit']['fr-ca'] = "Numéro du Contact Modifier";
$text['header-contact_phones-edit']['fr-fr'] = "Editer le téléphone du Contact";
$text['header-contact_phones-edit']['he-il'] = "";
$text['header-contact_phones-edit']['it-it'] = "Modifica Numero Contatto";
@@ -4058,7 +4080,7 @@ $text['header-contact_phones-add']['de-de'] = "Nummer zum Kontakt hinzufügen";
$text['header-contact_phones-add']['el-gr'] = "Προσθήκη αριθμού επαφής";
$text['header-contact_phones-add']['es-cl'] = "Agregar Número de Contacto";
$text['header-contact_phones-add']['es-mx'] = "Agregar Número de Contacto"; //copied from es-cl
$text['header-contact_phones-add']['fr-ca'] = "Ajouter un téléphone au Contact"; //copied from fr-fr
$text['header-contact_phones-add']['fr-ca'] = "Numéro Contact Ajouter";
$text['header-contact_phones-add']['fr-fr'] = "Ajouter un téléphone au Contact";
$text['header-contact_phones-add']['he-il'] = "";
$text['header-contact_phones-add']['it-it'] = "Inserisci Numero Contatto";
@@ -4080,7 +4102,7 @@ $text['header-contact_notes-edit']['de-de'] = "Notiz für Kontakt bearbeiten";
$text['header-contact_notes-edit']['el-gr'] = "Επεξεργασία σημείωσης επαφής";
$text['header-contact_notes-edit']['es-cl'] = "Editar Nota de Contactos";
$text['header-contact_notes-edit']['es-mx'] = "Editar Nota de Contactos"; //copied from es-cl
$text['header-contact_notes-edit']['fr-ca'] = "Editer la note du contact"; //copied from fr-fr
$text['header-contact_notes-edit']['fr-ca'] = "Modifier la note du contact";
$text['header-contact_notes-edit']['fr-fr'] = "Editer la note du contact";
$text['header-contact_notes-edit']['he-il'] = "";
$text['header-contact_notes-edit']['it-it'] = "Modifica Note Contatto";
@@ -4124,7 +4146,7 @@ $text['header-contact_email-edit']['de-de'] = "Email des Kontakts bearbeiten";
$text['header-contact_email-edit']['el-gr'] = "Επεξεργασία e-mail επαφής";
$text['header-contact_email-edit']['es-cl'] = "Correo electrónico de contacto Editar";
$text['header-contact_email-edit']['es-mx'] = "Correo electrónico de contacto Editar"; //copied from es-cl
$text['header-contact_email-edit']['fr-ca'] = "Contact Courriel Modifier"; //copied from fr-fr
$text['header-contact_email-edit']['fr-ca'] = "Courriel Contact Modifier";
$text['header-contact_email-edit']['fr-fr'] = "Contact Courriel Modifier";
$text['header-contact_email-edit']['he-il'] = "";
$text['header-contact_email-edit']['it-it'] = "Modifica Email Contatto";
@@ -4146,7 +4168,7 @@ $text['header-contact_email-add']['de-de'] = "Email zum Kontakt hinzufügen";
$text['header-contact_email-add']['el-gr'] = "Προσθήκη e-mail επαφής";
$text['header-contact_email-add']['es-cl'] = "Correo electrónico de contacto Agregar";
$text['header-contact_email-add']['es-mx'] = "Correo electrónico de contacto Agregar"; //copied from es-cl
$text['header-contact_email-add']['fr-ca'] = "Contactez-mail Ajouter"; //copied from fr-fr
$text['header-contact_email-add']['fr-ca'] = "Courriel Contact Ajouter"; //copied from fr-fr
$text['header-contact_email-add']['fr-fr'] = "Contactez-mail Ajouter";
$text['header-contact_email-add']['he-il'] = "";
$text['header-contact_email-add']['it-it'] = "Inserisci Email Contatto";
@@ -4168,7 +4190,7 @@ $text['header-contact_addresses-edit']['de-de'] = "Adresse des Kontakts bearbeit
$text['header-contact_addresses-edit']['el-gr'] = "Επεξεργασία διεύθυνσης επαφής";
$text['header-contact_addresses-edit']['es-cl'] = "Editar Dirección de Contacto";
$text['header-contact_addresses-edit']['es-mx'] = "Editar Dirección de Contacto"; //copied from es-cl
$text['header-contact_addresses-edit']['fr-ca'] = "Editer l'adresse du contact"; //copied from fr-fr
$text['header-contact_addresses-edit']['fr-ca'] = "Adresse Contact Modifier";
$text['header-contact_addresses-edit']['fr-fr'] = "Editer l'adresse du contact";
$text['header-contact_addresses-edit']['he-il'] = "";
$text['header-contact_addresses-edit']['it-it'] = "Modifica Indirizzo Contatto";
@@ -4190,7 +4212,7 @@ $text['header-contact_addresses-add']['de-de'] = "Adresse zum Kontakt hinzufüge
$text['header-contact_addresses-add']['el-gr'] = "Προσθήκη διεύθυνσης επαφής";
$text['header-contact_addresses-add']['es-cl'] = "Agregar Dirección de Contacto";
$text['header-contact_addresses-add']['es-mx'] = "Agregar Dirección de Contacto"; //copied from es-cl
$text['header-contact_addresses-add']['fr-ca'] = "Ajouter une adresse au contact"; //copied from fr-fr
$text['header-contact_addresses-add']['fr-ca'] = "Adresse Contact Ajouter";
$text['header-contact_addresses-add']['fr-fr'] = "Ajouter une adresse au contact";
$text['header-contact_addresses-add']['he-il'] = "";
$text['header-contact_addresses-add']['it-it'] = "Inserisci Indirizzo Contatto";
@@ -4212,8 +4234,8 @@ $text['header-contact_attachment-edit']['de-de'] = "";
$text['header-contact_attachment-edit']['el-gr'] = "Επεξεργασία επισύναψης επαφής";
$text['header-contact_attachment-edit']['es-cl'] = "";
$text['header-contact_attachment-edit']['es-mx'] = "";
$text['header-contact_attachment-edit']['fr-ca'] = "";
$text['header-contact_attachment-edit']['fr-fr'] = "";
$text['header-contact_attachment-edit']['fr-ca'] = "Pièce Jointe Contact Modifier";
$text['header-contact_attachment-edit']['fr-fr'] = "Pièce Jointe Contact Modifier";
$text['header-contact_attachment-edit']['he-il'] = "";
$text['header-contact_attachment-edit']['it-it'] = "";
$text['header-contact_attachment-edit']['nl-nl'] = "Kontact aanhangsel bewerken";
@@ -4234,8 +4256,8 @@ $text['header-contact_attachment-add']['de-de'] = "";
$text['header-contact_attachment-add']['el-gr'] = "Προσθήκη επισύναψης επαφής";
$text['header-contact_attachment-add']['es-cl'] = "";
$text['header-contact_attachment-add']['es-mx'] = "";
$text['header-contact_attachment-add']['fr-ca'] = "";
$text['header-contact_attachment-add']['fr-fr'] = "";
$text['header-contact_attachment-add']['fr-ca'] = "Pièce Jointe Contact Ajouter";
$text['header-contact_attachment-add']['fr-fr'] = "Pièce Jointe Contact Ajouter";
$text['header-contact_attachment-add']['he-il'] = "";
$text['header-contact_attachment-add']['it-it'] = "";
$text['header-contact_attachment-add']['nl-nl'] = "Kontact aanhangsel toevoegen";
@@ -4300,7 +4322,7 @@ $text['description_timer']['de-de'] = "Den Timer stoppen bevor Sie das Fenster s
$text['description_timer']['el-gr'] = "Σταματήστε το χρονοδιακόπτη πριν κλείσετε το παράθυρο, εάν το επιθυμείτε.";
$text['description_timer']['es-cl'] = "Detenga el temporizador antes de cerrar la ventana, si se desea.";
$text['description_timer']['es-mx'] = "Detenga el temporizador antes de cerrar la ventana, si se desea."; //copied from es-cl
$text['description_timer']['fr-ca'] = "Arrêter le retardateur avant la fermeture de la fenêtre, si désiré."; //copied from fr-fr
$text['description_timer']['fr-ca'] = "Arrêter le minuteur avant la fermeture de la fenêtre, si désiré.";
$text['description_timer']['fr-fr'] = "Arrêter le retardateur avant la fermeture de la fenêtre, si désiré.";
$text['description_timer']['he-il'] = "";
$text['description_timer']['it-it'] = "Stoppa il timer prima di chiudere la finestra, se lo desideri.";
@@ -4379,6 +4401,28 @@ $text['description-shared']['ru-ru'] = "Разделите этот контак
$text['description-shared']['sv-se'] = "Dela denna kontakt med andra användare i domänen.";
$text['description-shared']['uk-ua'] = "";
$text['description-phone_label']['en-us'] = "Select or enter a custom label.";
$text['description-phone_label']['en-gb'] = "Select or enter a custom label.";
$text['description-phone_label']['ar-eg'] = "";
$text['description-phone_label']['de-at'] = "Wählen Sie eine beliebige Kennzeichnung."; //copied from de-de
$text['description-phone_label']['de-ch'] = "Wählen Sie eine beliebige Kennzeichnung."; //copied from de-de
$text['description-phone_label']['de-de'] = "Wählen Sie eine beliebige Kennzeichnung.";
$text['description-phone_label']['el-gr'] = "Επιλέξτε ή εισάγετε μια προσωποποιημένη ετικέτα";
$text['description-phone_label']['es-cl'] = "Seleccione o introduzca una etiqueta personalizada.";
$text['description-phone_label']['es-mx'] = "Seleccione o introduzca una etiqueta personalizada."; //copied from es-cl
$text['description-phone_label']['fr-ca'] = "Sélectionnez ou entrez une étiquette personnalisée."; //copied from fr-fr
$text['description-phone_label']['fr-fr'] = "Sélectionnez ou entrez une étiquette personnalisée.";
$text['description-phone_label']['he-il'] = "";
$text['description-phone_label']['it-it'] = "Seleziona o inserisci un'etichetta personalizzata.";
$text['description-phone_label']['nl-nl'] = "Kies of voer een keuze kenmerk in.";
$text['description-phone_label']['pl-pl'] = "Wybierz lub wprowadź własną etykietę.";
$text['description-phone_label']['pt-br'] = "Selecione ou digite um identificador personalizado";
$text['description-phone_label']['pt-pt'] = "Selecione ou digite um rótulo personalizado.";
$text['description-phone_label']['ro-ro'] = "";
$text['description-phone_label']['ru-ru'] = "Выберите или введите настраиваемую метку.";
$text['description-phone_label']['sv-se'] = "Välj eller ange anpassad etikett.";
$text['description-phone_label']['uk-ua'] = "";
$text['description-phone_type']['en-us'] = "Define the number type or purpose.";
$text['description-phone_type']['en-gb'] = "Define the number type or purpose.";
$text['description-phone_type']['ar-eg'] = "";
@@ -4401,28 +4445,6 @@ $text['description-phone_type']['ru-ru'] = "Определите тип или
$text['description-phone_type']['sv-se'] = "Definiera nummertypen eller nummerändamålet.";
$text['description-phone_type']['uk-ua'] = "";
$text['description-phone_primary']['en-us'] = "Set as the primary Number for this contact.";
$text['description-phone_primary']['en-gb'] = "Set as the primary Number for this contact.";
$text['description-phone_primary']['ar-eg'] = "";
$text['description-phone_primary']['de-at'] = "Als primäre Nummer für diesen Kontakt setzen."; //copied from de-de
$text['description-phone_primary']['de-ch'] = "Als primäre Nummer für diesen Kontakt setzen."; //copied from de-de
$text['description-phone_primary']['de-de'] = "Als primäre Nummer für diesen Kontakt setzen.";
$text['description-phone_primary']['el-gr'] = "Ορίστε τον κύριο αριθμό για αυτή την επαφή";
$text['description-phone_primary']['es-cl'] = "Establecer como el número primario para este contacto.";
$text['description-phone_primary']['es-mx'] = "Establecer como el número primario para este contacto."; //copied from es-cl
$text['description-phone_primary']['fr-ca'] = "Définir comme primaire numéro pour ce contact."; //copied from fr-fr
$text['description-phone_primary']['fr-fr'] = "Définir comme primaire numéro pour ce contact.";
$text['description-phone_primary']['he-il'] = "";
$text['description-phone_primary']['it-it'] = "Imposta come numero principale per questo contatto.";
$text['description-phone_primary']['nl-nl'] = "Stel nummer in als primair nummer voor dit kontact";
$text['description-phone_primary']['pl-pl'] = "Ustaw jako podstawowy numer tego kontaktu.";
$text['description-phone_primary']['pt-br'] = "Defina número principal para este contato";
$text['description-phone_primary']['pt-pt'] = "Definir como o principal número para este contato.";
$text['description-phone_primary']['ro-ro'] = "";
$text['description-phone_primary']['ru-ru'] = "Укажите в качестве основного номера для этого контакта.";
$text['description-phone_primary']['sv-se'] = "Sätt som primärt Nummer för denna kontakt.";
$text['description-phone_primary']['uk-ua'] = "";
$text['description-phone_speed_dial']['en-us'] = "Enter the speed dial number.";
$text['description-phone_speed_dial']['en-gb'] = "Enter the speed dial number.";
$text['description-phone_speed_dial']['ar-eg'] = "";
@@ -4432,8 +4454,8 @@ $text['description-phone_speed_dial']['de-de'] = "Kurzwahlnummer eingeben";
$text['description-phone_speed_dial']['el-gr'] = "Εισάγετε τον αριθμό ταχείας κλήσης.";
$text['description-phone_speed_dial']['es-cl'] = "";
$text['description-phone_speed_dial']['es-mx'] = "";
$text['description-phone_speed_dial']['fr-ca'] = "";
$text['description-phone_speed_dial']['fr-fr'] = "";
$text['description-phone_speed_dial']['fr-ca'] = "Entrez le numéro de numérotation abrégée";
$text['description-phone_speed_dial']['fr-fr'] = "Entrez le numéro de numérotation abrégée";
$text['description-phone_speed_dial']['he-il'] = "";
$text['description-phone_speed_dial']['it-it'] = "Inserire il numero breve del contatto.";
$text['description-phone_speed_dial']['nl-nl'] = "Voer snelkies nummer in.";
@@ -4445,6 +4467,28 @@ $text['description-phone_speed_dial']['ru-ru'] = "Введите номер бы
$text['description-phone_speed_dial']['sv-se'] = "Ange snabbknappens nummer.";
$text['description-phone_speed_dial']['uk-ua'] = "";
$text['description-phone_country_code']['en-us'] = "Enter the country code.";
$text['description-phone_country_code']['en-gb'] = "Enter the country code.";
$text['description-phone_country_code']['ar-eg'] = "";
$text['description-phone_country_code']['de-at'] = "";
$text['description-phone_country_code']['de-ch'] = "";
$text['description-phone_country_code']['de-de'] = "";
$text['description-phone_country_code']['el-gr'] = "";
$text['description-phone_country_code']['es-cl'] = "";
$text['description-phone_country_code']['es-mx'] = "";
$text['description-phone_country_code']['fr-ca'] = "Entrez l'indicatif du pays";
$text['description-phone_country_code']['fr-fr'] = "Entrez l'indicatif du pays";
$text['description-phone_country_code']['he-il'] = "";
$text['description-phone_country_code']['it-it'] = "";
$text['description-phone_country_code']['nl-nl'] = "";
$text['description-phone_country_code']['pl-pl'] = "";
$text['description-phone_country_code']['pt-br'] = "";
$text['description-phone_country_code']['pt-pt'] = "";
$text['description-phone_country_code']['ro-ro'] = "";
$text['description-phone_country_code']['ru-ru'] = "";
$text['description-phone_country_code']['sv-se'] = "";
$text['description-phone_country_code']['uk-ua'] = "";
$text['description-phone_number']['en-us'] = "Enter the phone number.";
$text['description-phone_number']['en-gb'] = "Enter the phone number.";
$text['description-phone_number']['ar-eg'] = "";
@@ -4467,28 +4511,6 @@ $text['description-phone_number']['ru-ru'] = "Введите номер теле
$text['description-phone_number']['sv-se'] = "Ange telefonnummer.";
$text['description-phone_number']['uk-ua'] = "";
$text['description-phone_label']['en-us'] = "Select or enter a custom label.";
$text['description-phone_label']['en-gb'] = "Select or enter a custom label.";
$text['description-phone_label']['ar-eg'] = "";
$text['description-phone_label']['de-at'] = "Wählen Sie eine beliebige Kennzeichnung."; //copied from de-de
$text['description-phone_label']['de-ch'] = "Wählen Sie eine beliebige Kennzeichnung."; //copied from de-de
$text['description-phone_label']['de-de'] = "Wählen Sie eine beliebige Kennzeichnung.";
$text['description-phone_label']['el-gr'] = "Επιλέξτε ή εισάγετε μια προσωποποιημένη ετικέτα";
$text['description-phone_label']['es-cl'] = "Seleccione o introduzca una etiqueta personalizada.";
$text['description-phone_label']['es-mx'] = "Seleccione o introduzca una etiqueta personalizada."; //copied from es-cl
$text['description-phone_label']['fr-ca'] = "Sélectionnez ou entrez une étiquette personnalisée."; //copied from fr-fr
$text['description-phone_label']['fr-fr'] = "Sélectionnez ou entrez une étiquette personnalisée.";
$text['description-phone_label']['he-il'] = "";
$text['description-phone_label']['it-it'] = "Seleziona o inserisci un'etichetta personalizzata.";
$text['description-phone_label']['nl-nl'] = "Kies of voer een keuze kenmerk in.";
$text['description-phone_label']['pl-pl'] = "Wybierz lub wprowadź własną etykietę.";
$text['description-phone_label']['pt-br'] = "Selecione ou digite um identificador personalizado";
$text['description-phone_label']['pt-pt'] = "Selecione ou digite um rótulo personalizado.";
$text['description-phone_label']['ro-ro'] = "";
$text['description-phone_label']['ru-ru'] = "Выберите или введите настраиваемую метку.";
$text['description-phone_label']['sv-se'] = "Välj eller ange anpassad etikett.";
$text['description-phone_label']['uk-ua'] = "";
$text['description-phone_extension']['en-us'] = "Enter the extension.";
$text['description-phone_extension']['en-gb'] = "Enter the extension.";
$text['description-phone_extension']['ar-eg'] = "";
@@ -4511,6 +4533,28 @@ $text['description-phone_extension']['ru-ru'] = "Введите Внутренн
$text['description-phone_extension']['sv-se'] = "Ange anknytningen.";
$text['description-phone_extension']['uk-ua'] = "";
$text['description-phone_primary']['en-us'] = "Set as the primary Number for this contact.";
$text['description-phone_primary']['en-gb'] = "Set as the primary Number for this contact.";
$text['description-phone_primary']['ar-eg'] = "";
$text['description-phone_primary']['de-at'] = "Als primäre Nummer für diesen Kontakt setzen."; //copied from de-de
$text['description-phone_primary']['de-ch'] = "Als primäre Nummer für diesen Kontakt setzen."; //copied from de-de
$text['description-phone_primary']['de-de'] = "Als primäre Nummer für diesen Kontakt setzen.";
$text['description-phone_primary']['el-gr'] = "Ορίστε τον κύριο αριθμό για αυτή την επαφή";
$text['description-phone_primary']['es-cl'] = "Establecer como el número primario para este contacto.";
$text['description-phone_primary']['es-mx'] = "Establecer como el número primario para este contacto."; //copied from es-cl
$text['description-phone_primary']['fr-ca'] = "Définir comme primaire numéro pour ce contact."; //copied from fr-fr
$text['description-phone_primary']['fr-fr'] = "Définir comme primaire numéro pour ce contact.";
$text['description-phone_primary']['he-il'] = "";
$text['description-phone_primary']['it-it'] = "Imposta come numero principale per questo contatto.";
$text['description-phone_primary']['nl-nl'] = "Stel nummer in als primair nummer voor dit kontact";
$text['description-phone_primary']['pl-pl'] = "Ustaw jako podstawowy numer tego kontaktu.";
$text['description-phone_primary']['pt-br'] = "Defina número principal para este contato";
$text['description-phone_primary']['pt-pt'] = "Definir como o principal número para este contato.";
$text['description-phone_primary']['ro-ro'] = "";
$text['description-phone_primary']['ru-ru'] = "Укажите в качестве основного номера для этого контакта.";
$text['description-phone_primary']['sv-se'] = "Sätt som primärt Nummer för denna kontakt.";
$text['description-phone_primary']['uk-ua'] = "";
$text['description-phone_description']['en-us'] = "Enter the description.";
$text['description-phone_description']['en-gb'] = "Enter the description.";
$text['description-phone_description']['ar-eg'] = "";
@@ -5312,8 +5356,8 @@ $text['description-contact_name_given']['de-de'] = "Geben Sie den Vornamen ein."
$text['description-contact_name_given']['el-gr'] = "Εισάγετε το όνομα.";
$text['description-contact_name_given']['es-cl'] = "Ingrese el nombre dado.";
$text['description-contact_name_given']['es-mx'] = "Ingrese el nombre dado."; //copied from es-cl
$text['description-contact_name_given']['fr-ca'] = "Entrez le nom donné."; //copied from fr-fr
$text['description-contact_name_given']['fr-fr'] = "Entrez le nom donné.";
$text['description-contact_name_given']['fr-ca'] = "Entrez le prénom."; //copied from fr-fr
$text['description-contact_name_given']['fr-fr'] = "Entrez le prénom.";
$text['description-contact_name_given']['he-il'] = "";
$text['description-contact_name_given']['it-it'] = "Inserire il nome.";
$text['description-contact_name_given']['nl-nl'] = "Voer de voornaam in.";
@@ -5356,8 +5400,8 @@ $text['description-contact_email-edit']['de-de'] = "Email-Address Informationen.
$text['description-contact_email-edit']['el-gr'] = "Πληροφορίες ηλεκτρονικής διεύθυνσης αλληλογραφίας.";
$text['description-contact_email-edit']['es-cl'] = "Contactar con información de la dirección de correo electrónico.";
$text['description-contact_email-edit']['es-mx'] = "Contactar con información de la dirección de correo electrónico."; //copied from es-cl
$text['description-contact_email-edit']['fr-ca'] = "Coordonnées de l'adresse e-mail."; //copied from fr-fr
$text['description-contact_email-edit']['fr-fr'] = "Coordonnées de l'adresse e-mail.";
$text['description-contact_email-edit']['fr-ca'] = "Coordonnées de l'adresse courriel.";
$text['description-contact_email-edit']['fr-fr'] = "Coordonnées de l'adresse courriel.";
$text['description-contact_email-edit']['he-il'] = "";
$text['description-contact_email-edit']['it-it'] = "Indirizzo email del contatto.";
$text['description-contact_email-edit']['nl-nl'] = "Voer het E-mail adres informatie in.";
@@ -5378,8 +5422,8 @@ $text['description-contact_email-add']['de-de'] = "Email-Address Informationen."
$text['description-contact_email-add']['el-gr'] = "Πληροφορίες ηλεκτρονικής διεύθυνσης αλληλογραφίας.";
$text['description-contact_email-add']['es-cl'] = "Contactar con información de la dirección de correo electrónico.";
$text['description-contact_email-add']['es-mx'] = "Contactar con información de la dirección de correo electrónico."; //copied from es-cl
$text['description-contact_email-add']['fr-ca'] = "Coordonnées de l'adresse e-mail."; //copied from fr-fr
$text['description-contact_email-add']['fr-fr'] = "Coordonnées de l'adresse e-mail.";
$text['description-contact_email-add']['fr-ca'] = "Coordonnées de l'adresse courriel.";
$text['description-contact_email-add']['fr-fr'] = "Coordonnées de l'adresse courriel.";
$text['description-contact_email-add']['he-il'] = "";
$text['description-contact_email-add']['it-it'] = "Indirizzo email del contatto.";
$text['description-contact_email-add']['nl-nl'] = "Kontact E-mail adres informatie.";
@@ -5400,8 +5444,8 @@ $text['description-contact_email']['de-de'] = "Geben Sie die Email Addresse ein.
$text['description-contact_email']['el-gr'] = "Ορίστε τη διεύθυνση ηλεκτρονικής αλληλογραφίας.";
$text['description-contact_email']['es-cl'] = "Ingrese la dirección de correo electrónico.";
$text['description-contact_email']['es-mx'] = "Ingrese la dirección de correo electrónico."; //copied from es-cl
$text['description-contact_email']['fr-ca'] = "Entrez l'adresse e-mail."; //copied from fr-fr
$text['description-contact_email']['fr-fr'] = "Entrez l'adresse e-mail.";
$text['description-contact_email']['fr-ca'] = "Entrez l'adresse courriel.";
$text['description-contact_email']['fr-fr'] = "Entrez l'adresse courriel.";
$text['description-contact_email']['he-il'] = "";
$text['description-contact_email']['it-it'] = "Inserire l'indirizzo email.";
$text['description-contact_email']['nl-nl'] = "Voer E-mail adres in.";
@@ -5664,7 +5708,7 @@ $text['description-address_locality']['de-de'] = "Geben Sie die Stadt ein.";
$text['description-address_locality']['el-gr'] = "Εισάγετε την πόλη.";
$text['description-address_locality']['es-cl'] = "Ingrese la ciudad";
$text['description-address_locality']['es-mx'] = "Ingrese la ciudad"; //copied from es-cl
$text['description-address_locality']['fr-ca'] = "Entrez dans la ville."; //copied from fr-fr
$text['description-address_locality']['fr-ca'] = "Entrez la ville.";
$text['description-address_locality']['fr-fr'] = "Entrez dans la ville.";
$text['description-address_locality']['he-il'] = "";
$text['description-address_locality']['it-it'] = "Inserire la città.";
@@ -6021,7 +6065,7 @@ $text['button-save']['fr-fr'] = "Sauvegarder";
$text['button-save']['he-il'] = "שמור";
$text['button-save']['it-it'] = "Salva";
$text['button-save']['nl-nl'] = "Opslaan";
$text['button-save']['pl-pl'] = "Zachowaj";
$text['button-save']['pl-pl'] = "Zapisz";
$text['button-save']['pt-br'] = "Salvar";
$text['button-save']['pt-pt'] = "Guardar";
$text['button-save']['ro-ro'] = "";
@@ -6126,7 +6170,7 @@ $text['button-edit']['de-de'] = "Bearbeiten";
$text['button-edit']['el-gr'] = "Επεξεργασία";
$text['button-edit']['es-cl'] = "Editar";
$text['button-edit']['es-mx'] = "Editar"; //copied from es-cl
$text['button-edit']['fr-ca'] = "Editer"; //copied from fr-fr
$text['button-edit']['fr-ca'] = "Modifier";
$text['button-edit']['fr-fr'] = "Editer";
$text['button-edit']['he-il'] = "";
$text['button-edit']['it-it'] = "Modifica";
@@ -6380,8 +6424,8 @@ $text['label-properties']['de-ch'] = "Properties";
$text['label-properties']['de-de'] = "Properties";
$text['label-properties']['es-cl'] = "Properties";
$text['label-properties']['es-mx'] = "Properties";
$text['label-properties']['fr-ca'] = "Properties";
$text['label-properties']['fr-fr'] = "Properties";
$text['label-properties']['fr-ca'] = "Propriétés";
$text['label-properties']['fr-fr'] = "Propriétés";
$text['label-properties']['he-il'] = "Properties";
$text['label-properties']['it-it'] = "Properties";
$text['label-properties']['nl-nl'] = "Properties";
@@ -6412,4 +6456,25 @@ $text['label-contact']['ru-ru'] = "Контакт";
$text['label-contact']['sv-se'] = "Kontakt";
$text['label-contact']['uk-ua'] = "Контакт";
?>
$text['label-permissions']['en-us'] = "Permissions";
$text['label-permissions']['en-gb'] = "Permissions";
$text['label-permissions']['ar-eg'] = "";
$text['label-permissions']['de-at'] = "Berechtigungen"; //copied from de-de
$text['label-permissions']['de-ch'] = "Berechtigungen"; //copied from de-de
$text['label-permissions']['de-de'] = "Berechtigungen";
$text['label-permissions']['es-cl'] = "Permisos";
$text['label-permissions']['es-mx'] = "Permisos"; //copied from es-cl
$text['label-permissions']['fr-ca'] = "Permissions"; //copied from fr-fr
$text['label-permissions']['fr-fr'] = "Permissions";
$text['label-permissions']['he-il'] = "הרשאות";
$text['label-permissions']['it-it'] = "Permessi";
$text['label-permissions']['nl-nl'] = "";
$text['label-permissions']['pl-pl'] = "Uprawnienia";
$text['label-permissions']['pt-br'] = "Permissões"; //copied from pt-pt
$text['label-permissions']['pt-pt'] = "Permissões";
$text['label-permissions']['ro-ro'] = "";
$text['label-permissions']['ru-ru'] = "Права";
$text['label-permissions']['sv-se'] = "Rättigheter";
$text['label-permissions']['uk-ua'] = "Привілеї";
?>

File diff suppressed because it is too large Load Diff

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2020
Portions created by the Initial Developer are Copyright (C) 2008-2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -55,7 +55,7 @@
}
//set the max php execution time
ini_set('max_execution_time',7200);
ini_set('max_execution_time', 7200);
//get the http get values and set them as php variables
$action = $_POST["action"];
@@ -77,7 +77,6 @@
move_uploaded_file($_FILES['ulfile']['tmp_name'], $_SESSION['server']['temp']['dir'].'/'.$_FILES['ulfile']['name']);
$save_msg = "Uploaded file to ".$_SESSION['server']['temp']['dir']."/". htmlentities($_FILES['ulfile']['name']);
//system('chmod -R 744 '.$_SESSION['server']['temp']['dir'].'*');
unset($_POST['txtCommand']);
$file = $_SESSION['server']['temp']['dir'].'/'.$_FILES['ulfile']['name'];
$_SESSION['file'] = $file;
}
@@ -208,8 +207,8 @@
foreach($schema as $row) {
echo " <optgroup label='".$row['table']."'>\n";
foreach($row['fields'] as $field) {
if ($field == 'phone_label') { continue; }
if ($field == 'contact_url') { continue; } // can remove this after field is removed from the table
//if ($field == 'phone_label') { continue; }
//if ($field == 'contact_url') { continue; } // can remove this after field is removed from the table
$selected = '';
if ($field == $line_field) {
$selected = "selected='selected'";
@@ -221,9 +220,9 @@
echo " </optgroup>\n";
}
echo " </select>\n";
echo " <select class='formfld' style='display: none;' id='labels_$x' name='labels[$x]'>\n";
echo is_array($label_options) ? implode("\n", $label_options) : null;
echo " </select>\n";
//echo " <select class='formfld' style='display: none;' id='labels_$x' name='labels[$x]'>\n";
//echo is_array($label_options) ? implode("\n", $label_options) : null;
//echo " </select>\n";
echo " </td>\n";
echo "</tr>\n";
$x++;
@@ -310,7 +309,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];
@@ -318,15 +317,26 @@
//echo "value: $value<br />\n";
//echo "table_name: $table_name<br />\n";
//echo "field_name: $field_name<br />\n";
//get the parent table name
$parent = get_parent($schema, $table_name);
//count the field names
if (isset($field_count[$table_name][$field_name])) {
$field_count[$table_name][$field_name]++;
}
else {
$field_count[$table_name][$field_name] = 0;
}
//set the ordinal ID
$id = $field_count[$table_name][$field_name];
//remove formatting from the phone number
if ($field_name == "phone_number") {
$result[$key] = preg_replace('{(?!^\+)[\D]}', '', $result[$key]);
}
//build the data array
if (strlen($table_name) > 0) {
if (strlen($parent) == 0) {
@@ -335,42 +345,44 @@
}
else {
if ($field_name != "username" && $field_name != "group_name") {
$array[$parent][$row_id][$table_name][$y]['domain_uuid'] = $domain_uuid;
$array[$parent][$row_id][$table_name][$y][$field_name] = $result[$key];
if ($field_name == 'phone_number') {
$array[$parent][$row_id][$table_name][$y]['phone_label'] = $labels[$key];
}
$array[$parent][$row_id][$table_name][$id]['domain_uuid'] = $domain_uuid;
$array[$parent][$row_id][$table_name][$id][$field_name] = $result[$key];
//if ($field_name == 'phone_number') {
// $array[$parent][$row_id][$table_name][$id]['phone_label'] = $labels[$key];
//}
}
}
if ($field_name == "group_name") {
foreach ($groups as $field) {
if ($field['group_name'] == $result[$key]) {
//$array[$parent][$row_id]['contact_group_uuid'] = uuid();
$array[$parent][$row_id]['contact_groups'][$y]['domain_uuid'] = $domain_uuid;
$array[$parent][$row_id]['contact_groups'][$id]['domain_uuid'] = $domain_uuid;
//$array['contact_groups'][$x]['contact_uuid'] = $row['contact_uuid'];
$array[$parent][$row_id]['contact_groups'][$y]['group_uuid'] = $field['group_uuid'];
$array[$parent][$row_id]['contact_groups'][$id]['group_uuid'] = $field['group_uuid'];
}
}
}
if ($field_name == "username") {
foreach ($users as $field) {
if ($field['username'] == $result[$key]) {
//$array[$parent][$row_id]['contact_users'][$y]['contact_group_uuid'] = uuid();
$array[$parent][$row_id]['contact_users'][$y]['domain_uuid'] = $domain_uuid;
//$array[$parent][$row_id]['contact_users'][$id]['contact_group_uuid'] = uuid();
$array[$parent][$row_id]['contact_users'][$id]['domain_uuid'] = $domain_uuid;
//$array['contact_groups'][$x]['contact_uuid'] = $row['contact_uuid'];
$array[$parent][$row_id]['contact_users'][$y]['user_uuid'] = $field['user_uuid'];
$array[$parent][$row_id]['contact_users'][$id]['user_uuid'] = $field['user_uuid'];
}
}
}
}
if (is_array($array[$parent][$row_id])) { $y++; }
}
//debug information
//view_array($field_count);
//process a chunk of the array
if ($row_id === 1000) {
//save to the data
$database = new database;
$database->app_name = 'contacts';
@@ -383,14 +395,17 @@
//set the row id back to 0
$row_id = 0;
}
} //if ($from_row <= $row_number)
unset($field_count);
$row_number++;
$row_id++;
} //end while
fclose($handle);
//debug information
//view_array($array);
//save to the data
if (is_array($array)) {
$database = new database;

View File

@@ -59,13 +59,14 @@
//get http post variables and set them to php variables
if (is_array($_POST) && @sizeof($_POST) != 0) {
$phone_label = $_POST["phone_label"];
$phone_label_custom = $_POST["phone_label_custom"];
$phone_type_voice = $_POST["phone_type_voice"];
$phone_type_fax = $_POST["phone_type_fax"];
$phone_type_video = $_POST["phone_type_video"];
$phone_type_text = $_POST["phone_type_text"];
$phone_label = $_POST["phone_label"];
$phone_label_custom = $_POST["phone_label_custom"];
$phone_speed_dial = $_POST["phone_speed_dial"];
$phone_country_code = $_POST["phone_country_code"];
$phone_number = $_POST["phone_number"];
$phone_extension = $_POST["phone_extension"];
$phone_primary = $_POST["phone_primary"];
@@ -160,12 +161,13 @@
if (is_array($array) && @sizeof($array) != 0) {
$array['contact_phones'][0]['contact_uuid'] = $contact_uuid;
$array['contact_phones'][0]['domain_uuid'] = $domain_uuid;
$array['contact_phones'][0]['phone_label'] = $phone_label;
$array['contact_phones'][0]['phone_type_voice'] = $phone_type_voice ? 1 : null;
$array['contact_phones'][0]['phone_type_fax'] = $phone_type_fax ? 1 : null;
$array['contact_phones'][0]['phone_type_video'] = $phone_type_video ? 1 : null;
$array['contact_phones'][0]['phone_type_text'] = $phone_type_text ? 1 : null;
$array['contact_phones'][0]['phone_label'] = $phone_label;
$array['contact_phones'][0]['phone_speed_dial'] = $phone_speed_dial;
$array['contact_phones'][0]['phone_country_code'] = $phone_country_code;
$array['contact_phones'][0]['phone_number'] = $phone_number;
$array['contact_phones'][0]['phone_extension'] = $phone_extension;
$array['contact_phones'][0]['phone_primary'] = $phone_primary ? 1 : 0;
@@ -196,12 +198,13 @@
$database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && @sizeof($row) != 0) {
$phone_label = $row["phone_label"];
$phone_type_voice = $row["phone_type_voice"];
$phone_type_fax = $row["phone_type_fax"];
$phone_type_video = $row["phone_type_video"];
$phone_type_text = $row["phone_type_text"];
$phone_label = $row["phone_label"];
$phone_speed_dial = $row["phone_speed_dial"];
$phone_country_code = $row["phone_country_code"];
$phone_number = $row["phone_number"];
$phone_extension = $row["phone_extension"];
$phone_primary = $row["phone_primary"];
@@ -319,6 +322,17 @@
echo "</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-phone_country_code']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='phone_country_code' maxlength='6' min='0' step='1' value=\"".escape($phone_country_code)."\">\n";
echo "<br />\n";
echo $text['description-phone_country_code']."\n";
echo "</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-phone_number']."\n";
@@ -380,4 +394,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -74,13 +74,9 @@
$user_group_uuids[] = $_SESSION["user_uuid"];
//get contact settings - sync sources
$sql = "select ";
$sql .= "contact_uuid, ";
$sql .= "contact_setting_value ";
$sql .= "from ";
$sql .= "v_contact_settings ";
$sql .= "where ";
$sql .= "domain_uuid = :domain_uuid ";
$sql = "select contact_uuid, contact_setting_value ";
$sql .= "from v_contact_settings ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and contact_setting_category = 'sync' ";
$sql .= "and contact_setting_subcategory = 'source' ";
$sql .= "and contact_setting_name = 'array' ";
@@ -186,7 +182,11 @@
//build query for paging and list
$sql = "select count(*) ";
$sql .= "from v_contacts as c ";
$sql .= "where domain_uuid = :domain_uuid ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('contact_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (!permission_exists('contact_domain_view')) {
$sql .= "and ( "; //only contacts assigned to current user's group(s) and those not assigned to any group
$sql .= " contact_uuid in ( ";
@@ -216,13 +216,15 @@
$parameters['user_uuid'] = $_SESSION['user_uuid'];
}
$sql .= $sql_search;
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
$param = "&search=".$search;
$param = "&search=".urlencode($search);
if ($_GET['show'] == "all" && permission_exists('contact_all')) {
$param .= "&show=all";
}
$page = $_GET['page'];
if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; }
list($paging_controls, $rows_per_page) = paging($num_rows, $param, $rows_per_page); //bottom
@@ -230,7 +232,44 @@
$offset = $rows_per_page * $page;
//get the list
$sql = str_replace('count(*)', '*, (select a.contact_attachment_uuid from v_contact_attachments as a where a.contact_uuid = c.contact_uuid and a.attachment_primary = 1) as contact_attachment_uuid', $sql);
$sql = "select *, ";
$sql .= "(select a.contact_attachment_uuid from v_contact_attachments as a where a.contact_uuid = c.contact_uuid and a.attachment_primary = 1) as contact_attachment_uuid ";
$sql .= "from v_contacts as c ";
$sql .= "where true ";
if ($_GET['show'] != "all" || !permission_exists('contact_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (!permission_exists('contact_domain_view')) {
$sql .= "and ( "; //only contacts assigned to current user's group(s) and those not assigned to any group
$sql .= " contact_uuid in ( ";
$sql .= " select contact_uuid from v_contact_groups ";
$sql .= " where ";
if (is_array($user_group_uuids) && @sizeof($user_group_uuids) != 0) {
foreach ($user_group_uuids as $index => $user_group_uuid) {
if (is_uuid($user_group_uuid)) {
$sql_where_or[] = "group_uuid = :group_uuid_".$index;
$parameters['group_uuid_'.$index] = $user_group_uuid;
}
}
if (is_array($sql_where_or) && @sizeof($sql_where_or) != 0) {
$sql .= " ( ".implode(' or ', $sql_where_or)." ) ";
}
unset($sql_where_or, $index, $user_group_uuid);
}
$sql .= " and domain_uuid = :domain_uuid ";
$sql .= " ) ";
$sql .= " or contact_uuid in ( ";
$sql .= " select contact_uuid from v_contact_users ";
$sql .= " where user_uuid = :user_uuid ";
$sql .= " and domain_uuid = :domain_uuid ";
$sql .= "";
$sql .= " ) ";
$sql .= ") ";
$parameters['user_uuid'] = $_SESSION['user_uuid'];
}
$sql .= $sql_search;
$database = new database;
if ($order_by != '') {
$sql .= order_by($order_by, $order);
$sql .= ", contact_organization asc ";
@@ -283,12 +322,20 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','collapse'=>'hide-sm-dn','link'=>'contact_edit.php']);
}
if (permission_exists('contact_delete') && $contacts) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','collapse'=>'hide-sm-dn','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','collapse'=>'hide-sm-dn','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','collapse'=>'hide-sm-dn','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','collapse'=>'hide-sm-dn','link'=>'contacts.php','style'=>($search == '' ? 'display: none;' : null)]);
if (permission_exists('contact_all')) {
if ($_GET['show'] == 'all') {
echo " <input type='hidden' name='show' value='all'>";
}
else {
echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'?type=&show=all'.($search != '' ? "&search=".urlencode($search) : null)]);
}
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','collapse'=>'hide-sm-dn']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','collapse'=>'hide-sm-dn','link'=>'contacts.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -312,9 +359,12 @@
echo "<tr class='list-header'>\n";
if (permission_exists('contact_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($contacts ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($contacts ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('contact_all')) {
echo th_order_by('domain_name', $text['label-domain'], $order_by, $order, $param, "class='shrink'");
}
echo th_order_by('contact_type', $text['label-contact_type'], $order_by, $order);
echo th_order_by('contact_organization', $text['label-contact_organization'], $order_by, $order);
echo "<th class='shrink hide-xs'>&nbsp;</th>\n";
@@ -336,10 +386,19 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('contact_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='contacts[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='contacts[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='contacts[$x][uuid]' value='".escape($row['contact_uuid'])."' />\n";
echo " </td>\n";
}
if ($_GET['show'] == "all" && permission_exists('contact_all')) {
if (strlen($_SESSION['domains'][$row['domain_uuid']]['domain_name']) > 0) {
$domain = $_SESSION['domains'][$row['domain_uuid']]['domain_name'];
}
else {
$domain = $text['label-global'];
}
echo " <td>".escape($domain)."</td>\n";
}
echo " <td>".ucwords(escape($row['contact_type']))."&nbsp;</td>\n";
echo " <td class='overflow'><a href='".$list_row_url."'>".escape($row['contact_organization'])."</a>&nbsp;</td>\n";
echo " <td class='shrink no-link hide-xs center'>";

View File

@@ -24,91 +24,93 @@
Mark J Crane <markjcrane@fusionpbx.com>
*/
function google_get_contacts($token, $max_results = 50) {
//global $records;
global $groups;
if (!function_exists('google_get_contacts')) {
function google_get_contacts($token, $max_results = 50) {
//global $records;
global $groups;
//$url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results='.$max_results.'&oauth_token='.$_SESSION['contact_auth']['token']; // all contacts as xml
//$url = 'https://www.google.com/m8/feeds/contacts/default/full/78967d550d3fdd99?alt=json&v=3.0&oauth_token='.$_SESSION['contact_auth']['token']; // single contact
$url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results='.$max_results.'&alt=json&v=3.0&oauth_token='.$token; // all contacts as json
$xml_response = curl_file_get_contents($url);
$records = json_decode($xml_response, true);
//$url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results='.$max_results.'&oauth_token='.$_SESSION['contact_auth']['token']; // all contacts as xml
//$url = 'https://www.google.com/m8/feeds/contacts/default/full/78967d550d3fdd99?alt=json&v=3.0&oauth_token='.$_SESSION['contact_auth']['token']; // single contact
$url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results='.$max_results.'&alt=json&v=3.0&oauth_token='.$token; // all contacts as json
$xml_response = curl_file_get_contents($url);
$records = json_decode($xml_response, true);
//check for authentication errors (logged out of google account, or app access permission revoked, etc)
if ($records['error']['code']) {
header("Location: contact_auth.php?source=google&target=".substr($_SERVER["PHP_SELF"], strrpos($_SERVER["PHP_SELF"],'/')+1));
exit;
//check for authentication errors (logged out of google account, or app access permission revoked, etc)
if ($records['error']['code']) {
header("Location: contact_auth.php?source=google&target=".substr($_SERVER["PHP_SELF"], strrpos($_SERVER["PHP_SELF"],'/')+1));
exit;
}
//create new array of contacts
foreach($records['feed']['entry'] as $contact['number'] => $contact) {
$contact_id = substr($contact['id']['$t'], strrpos($contact['id']['$t'], "/")+1);
$contacts[$contact_id]['etag'] = $contact['gd$etag'];
$contacts[$contact_id]['updated'] = $contact['updated']['$t'];
$contacts[$contact_id]['name_prefix'] = $contact['gd$name']['gd$namePrefix']['$t'];
$contacts[$contact_id]['name_given'] = $contact['gd$name']['gd$givenName']['$t'];
$contacts[$contact_id]['name_middle'] = $contact['gd$name']['gd$additionalName']['$t'];
$contacts[$contact_id]['name_family'] = $contact['gd$name']['gd$familyName']['$t'];
$contacts[$contact_id]['name_suffix'] = $contact['gd$name']['gd$nameSuffix']['$t'];
$contacts[$contact_id]['nickname'] = $contact['gContact$nickname']['$t'];
$contacts[$contact_id]['title'] = $contact['gd$organization'][0]['gd$orgTitle']['$t'];
$contacts[$contact_id]['organization'] = $contact['gd$organization'][0]['gd$orgName']['$t'];
foreach ($contact['gd$email'] as $contact_email['number'] => $contact_email) {
if ($contact_email['label']) {
$contact_email_label = $contact_email['label'];
}
else {
$contact_email_label = substr($contact_email['rel'], strpos($contact_email['rel'], "#")+1);
$contact_email_label = ucwords(str_replace("_", " ", $contact_email_label));
}
$contacts[$contact_id]['emails'][$contact_email['number']]['label'] = $contact_email_label;
$contacts[$contact_id]['emails'][$contact_email['number']]['address'] = $contact_email['address'];
$contacts[$contact_id]['emails'][$contact_email['number']]['primary'] = ($contact_email['primary']) ? 1 : 0;
}
foreach ($contact['gd$phoneNumber'] as $contact_phone['number'] => $contact_phone) {
if ($contact_phone['label']) {
$contact_phone_label = $contact_phone['label'];
}
else {
$contact_phone_label = substr($contact_phone['rel'], strpos($contact_phone['rel'], "#")+1);
$contact_phone_label = ucwords(str_replace("_", " ", $contact_phone_label));
}
$contacts[$contact_id]['numbers'][$contact_phone['number']]['label'] = $contact_phone_label;
$contacts[$contact_id]['numbers'][$contact_phone['number']]['number'] = preg_replace('{\D}', '', $contact_phone['$t']);
}
foreach ($contact['gContact$website'] as $contact_website['number'] => $contact_website) {
$contact_website_label = ($contact_website['label']) ? $contact_website['label'] : ucwords(str_replace("_", " ", $contact_website['rel']));
$contacts[$contact_id]['urls'][$contact_website['number']]['label'] = $contact_website_label;
$contacts[$contact_id]['urls'][$contact_website['number']]['url'] = $contact_website['href'];
}
foreach ($contact['gd$structuredPostalAddress'] as $contact_address['number'] => $contact_address) {
if ($contact_address['label']) {
$contact_address_label = $contact_address['label'];
}
else {
$contact_address_label = substr($contact_address['rel'], strpos($contact_address['rel'], "#")+1);
$contact_address_label = ucwords(str_replace("_", " ", $contact_address_label));
}
$contacts[$contact_id]['addresses'][$contact_address['number']]['label'] = $contact_address_label;
$contacts[$contact_id]['addresses'][$contact_address['number']]['street'] = $contact_address['gd$street']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['extended'] = $contact_address['gd$pobox']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['community'] = $contact_address['gd$neighborhood']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['locality'] = $contact_address['gd$city']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['region'] = $contact_address['gd$region']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['postal_code'] = $contact_address['gd$postcode']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['country'] = $contact_address['gd$country']['$t'];
}
foreach ($contact['gContact$groupMembershipInfo'] as $contact_group['number'] => $contact_group) {
$contact_group_id = substr($contact_group['href'], strrpos($contact_group['href'], "/")+1);
$contacts[$contact_id]['groups'][$contact_group_id] = $groups[$contact_group_id]['name'];
}
$contacts[$contact_id]['notes'] = $contact['content']['$t'];
}
//set account holder info
$_SESSION['contact_auth']['name'] = $records['feed']['author'][0]['name']['$t'];
$_SESSION['contact_auth']['email'] = $records['feed']['author'][0]['email']['$t'];
return $contacts;
}
//create new array of contacts
foreach($records['feed']['entry'] as $contact['number'] => $contact) {
$contact_id = substr($contact['id']['$t'], strrpos($contact['id']['$t'], "/")+1);
$contacts[$contact_id]['etag'] = $contact['gd$etag'];
$contacts[$contact_id]['updated'] = $contact['updated']['$t'];
$contacts[$contact_id]['name_prefix'] = $contact['gd$name']['gd$namePrefix']['$t'];
$contacts[$contact_id]['name_given'] = $contact['gd$name']['gd$givenName']['$t'];
$contacts[$contact_id]['name_middle'] = $contact['gd$name']['gd$additionalName']['$t'];
$contacts[$contact_id]['name_family'] = $contact['gd$name']['gd$familyName']['$t'];
$contacts[$contact_id]['name_suffix'] = $contact['gd$name']['gd$nameSuffix']['$t'];
$contacts[$contact_id]['nickname'] = $contact['gContact$nickname']['$t'];
$contacts[$contact_id]['title'] = $contact['gd$organization'][0]['gd$orgTitle']['$t'];
$contacts[$contact_id]['organization'] = $contact['gd$organization'][0]['gd$orgName']['$t'];
foreach ($contact['gd$email'] as $contact_email['number'] => $contact_email) {
if ($contact_email['label']) {
$contact_email_label = $contact_email['label'];
}
else {
$contact_email_label = substr($contact_email['rel'], strpos($contact_email['rel'], "#")+1);
$contact_email_label = ucwords(str_replace("_", " ", $contact_email_label));
}
$contacts[$contact_id]['emails'][$contact_email['number']]['label'] = $contact_email_label;
$contacts[$contact_id]['emails'][$contact_email['number']]['address'] = $contact_email['address'];
$contacts[$contact_id]['emails'][$contact_email['number']]['primary'] = ($contact_email['primary']) ? 1 : 0;
}
foreach ($contact['gd$phoneNumber'] as $contact_phone['number'] => $contact_phone) {
if ($contact_phone['label']) {
$contact_phone_label = $contact_phone['label'];
}
else {
$contact_phone_label = substr($contact_phone['rel'], strpos($contact_phone['rel'], "#")+1);
$contact_phone_label = ucwords(str_replace("_", " ", $contact_phone_label));
}
$contacts[$contact_id]['numbers'][$contact_phone['number']]['label'] = $contact_phone_label;
$contacts[$contact_id]['numbers'][$contact_phone['number']]['number'] = preg_replace('{\D}', '', $contact_phone['$t']);
}
foreach ($contact['gContact$website'] as $contact_website['number'] => $contact_website) {
$contact_website_label = ($contact_website['label']) ? $contact_website['label'] : ucwords(str_replace("_", " ", $contact_website['rel']));
$contacts[$contact_id]['urls'][$contact_website['number']]['label'] = $contact_website_label;
$contacts[$contact_id]['urls'][$contact_website['number']]['url'] = $contact_website['href'];
}
foreach ($contact['gd$structuredPostalAddress'] as $contact_address['number'] => $contact_address) {
if ($contact_address['label']) {
$contact_address_label = $contact_address['label'];
}
else {
$contact_address_label = substr($contact_address['rel'], strpos($contact_address['rel'], "#")+1);
$contact_address_label = ucwords(str_replace("_", " ", $contact_address_label));
}
$contacts[$contact_id]['addresses'][$contact_address['number']]['label'] = $contact_address_label;
$contacts[$contact_id]['addresses'][$contact_address['number']]['street'] = $contact_address['gd$street']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['extended'] = $contact_address['gd$pobox']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['community'] = $contact_address['gd$neighborhood']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['locality'] = $contact_address['gd$city']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['region'] = $contact_address['gd$region']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['postal_code'] = $contact_address['gd$postcode']['$t'];
$contacts[$contact_id]['addresses'][$contact_address['number']]['country'] = $contact_address['gd$country']['$t'];
}
foreach ($contact['gContact$groupMembershipInfo'] as $contact_group['number'] => $contact_group) {
$contact_group_id = substr($contact_group['href'], strrpos($contact_group['href'], "/")+1);
$contacts[$contact_id]['groups'][$contact_group_id] = $groups[$contact_group_id]['name'];
}
$contacts[$contact_id]['notes'] = $contact['content']['$t'];
}
//set account holder info
$_SESSION['contact_auth']['name'] = $records['feed']['author'][0]['name']['$t'];
$_SESSION['contact_auth']['email'] = $records['feed']['author'][0]['email']['$t'];
return $contacts;
}
?>
?>

View File

@@ -112,12 +112,14 @@
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = "longtext";
$apps[$x]['db'][$y]['fields'][$z]['search'] = 'true';
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Before the transaction.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "transaction_new";
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = "longtext";
$apps[$x]['db'][$y]['fields'][$z]['search'] = 'true';
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "After the transaction.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "transaction_result";

View File

@@ -14,7 +14,7 @@ $text['title-database_transactions']['fr-fr'] = "Transactions de base de donnée
$text['title-database_transactions']['he-il'] = "";
$text['title-database_transactions']['it-it'] = "";
$text['title-database_transactions']['nl-nl'] = "Database transacties";
$text['title-database_transactions']['pl-pl'] = "";
$text['title-database_transactions']['pl-pl'] = "Transakcje Bazy Danych";
$text['title-database_transactions']['pt-br'] = "";
$text['title-database_transactions']['pt-pt'] = "";
$text['title-database_transactions']['ro-ro'] = "";
@@ -35,7 +35,7 @@ $text['title-database_transaction']['fr-fr'] = "Transactions de base de données
$text['title-database_transaction']['he-il'] = "";
$text['title-database_transaction']['it-it'] = "";
$text['title-database_transaction']['nl-nl'] = "Database transactie";
$text['title-database_transaction']['pl-pl'] = "";
$text['title-database_transaction']['pl-pl'] = "Transakcja Bazy Danych";
$text['title-database_transaction']['pt-br'] = "";
$text['title-database_transaction']['pt-pt'] = "";
$text['title-database_transaction']['ro-ro'] = "";
@@ -56,7 +56,7 @@ $text['description-database_transactions']['fr-fr'] = "Transactions de base de d
$text['description-database_transactions']['he-il'] = "";
$text['description-database_transactions']['it-it'] = "";
$text['description-database_transactions']['nl-nl'] = "Database transacties";
$text['description-database_transactions']['pl-pl'] = "";
$text['description-database_transactions']['pl-pl'] = "Śledź zmiany w bazie danych. Śledź, kiedy zmiany zostały wprowadzone, użytkownika i adres użytkownika, który dokonał zmian. Zapewnia opcję cofnięcia, usunięcia i aktualizacji transakcji.";
$text['description-database_transactions']['pt-br'] = "";
$text['description-database_transactions']['pt-pt'] = "";
$text['description-database_transactions']['ro-ro'] = "";
@@ -77,7 +77,7 @@ $text['label-user']['fr-fr'] = "Utilisateur";
$text['label-user']['he-il'] = "";
$text['label-user']['it-it'] = "";
$text['label-user']['nl-nl'] = "Gebruiker";
$text['label-user']['pl-pl'] = "";
$text['label-user']['pl-pl'] = "Użytkownik";
$text['label-user']['pt-br'] = "";
$text['label-user']['pt-pt'] = "";
$text['label-user']['ro-ro'] = "";
@@ -98,7 +98,7 @@ $text['label-user_uuid']['fr-fr'] = "Utilisateur";
$text['label-user_uuid']['he-il'] = "";
$text['label-user_uuid']['it-it'] = "";
$text['label-user_uuid']['nl-nl'] = "Gebruiker";
$text['label-user_uuid']['pl-pl'] = "";
$text['label-user_uuid']['pl-pl'] = "Użytkownik";
$text['label-user_uuid']['pt-br'] = "";
$text['label-user_uuid']['pt-pt'] = "";
$text['label-user_uuid']['ro-ro'] = "";
@@ -119,7 +119,7 @@ $text['description-user_uuid']['fr-fr'] = "Transaction d'utilisateur";
$text['description-user_uuid']['he-il'] = "";
$text['description-user_uuid']['it-it'] = "";
$text['description-user_uuid']['nl-nl'] = "Gebruiker transactie.";
$text['description-user_uuid']['pl-pl'] = "";
$text['description-user_uuid']['pl-pl'] = "Transakcje użytkownika";
$text['description-user_uuid']['pt-br'] = "";
$text['description-user_uuid']['pt-pt'] = "";
$text['description-user_uuid']['ro-ro'] = "";
@@ -140,7 +140,7 @@ $text['label-app_name']['fr-fr'] = "Application";
$text['label-app_name']['he-il'] = "";
$text['label-app_name']['it-it'] = "";
$text['label-app_name']['nl-nl'] = "Applicatie";
$text['label-app_name']['pl-pl'] = "";
$text['label-app_name']['pl-pl'] = "Aplikacja";
$text['label-app_name']['pt-br'] = "";
$text['label-app_name']['pt-pt'] = "";
$text['label-app_name']['ro-ro'] = "";
@@ -161,7 +161,7 @@ $text['description-app_name']['fr-fr'] = "Nom de l'application";
$text['description-app_name']['he-il'] = "";
$text['description-app_name']['it-it'] = "";
$text['description-app_name']['nl-nl'] = "Applicatie naam.";
$text['description-app_name']['pl-pl'] = "";
$text['description-app_name']['pl-pl'] = "Nazwa aplikacji";
$text['description-app_name']['pt-br'] = "";
$text['description-app_name']['pt-pt'] = "";
$text['description-app_name']['ro-ro'] = "";
@@ -182,7 +182,7 @@ $text['label-app_uuid']['fr-fr'] = "ID d'application";
$text['label-app_uuid']['he-il'] = "";
$text['label-app_uuid']['it-it'] = "";
$text['label-app_uuid']['nl-nl'] = "Applicatie ID.";
$text['label-app_uuid']['pl-pl'] = "";
$text['label-app_uuid']['pl-pl'] = "ID aplikacji";
$text['label-app_uuid']['pt-br'] = "";
$text['label-app_uuid']['pt-pt'] = "";
$text['label-app_uuid']['ro-ro'] = "";
@@ -203,7 +203,7 @@ $text['description-app_uuid']['fr-fr'] = "Nom de l'application";
$text['description-app_uuid']['he-il'] = "";
$text['description-app_uuid']['it-it'] = "";
$text['description-app_uuid']['nl-nl'] = "Applicatie naam.";
$text['description-app_uuid']['pl-pl'] = "";
$text['description-app_uuid']['pl-pl'] = "Nazwa aplikacji";
$text['description-app_uuid']['pt-br'] = "";
$text['description-app_uuid']['pt-pt'] = "";
$text['description-app_uuid']['ro-ro'] = "";
@@ -224,7 +224,7 @@ $text['label-transaction_code']['fr-fr'] = "Code";
$text['label-transaction_code']['he-il'] = "";
$text['label-transaction_code']['it-it'] = "";
$text['label-transaction_code']['nl-nl'] = "Code";
$text['label-transaction_code']['pl-pl'] = "";
$text['label-transaction_code']['pl-pl'] = "Kod";
$text['label-transaction_code']['pt-br'] = "";
$text['label-transaction_code']['pt-pt'] = "";
$text['label-transaction_code']['ro-ro'] = "";
@@ -245,7 +245,7 @@ $text['description-transaction_code']['fr-fr'] = "Code de transaction";
$text['description-transaction_code']['he-il'] = "";
$text['description-transaction_code']['it-it'] = "";
$text['description-transaction_code']['nl-nl'] = "Transactie code.";
$text['description-transaction_code']['pl-pl'] = "";
$text['description-transaction_code']['pl-pl'] = "Kod transakcji.";
$text['description-transaction_code']['pt-br'] = "";
$text['description-transaction_code']['pt-pt'] = "";
$text['description-transaction_code']['ro-ro'] = "";
@@ -266,7 +266,7 @@ $text['label-transaction_address']['fr-fr'] = "adresse IP";
$text['label-transaction_address']['he-il'] = "";
$text['label-transaction_address']['it-it'] = "";
$text['label-transaction_address']['nl-nl'] = "IP Adres";
$text['label-transaction_address']['pl-pl'] = "";
$text['label-transaction_address']['pl-pl'] = "Adres IP";
$text['label-transaction_address']['pt-br'] = "";
$text['label-transaction_address']['pt-pt'] = "";
$text['label-transaction_address']['ro-ro'] = "";
@@ -287,7 +287,7 @@ $text['description-transaction_address']['fr-fr'] = "Adresse IP de l'utilisateur
$text['description-transaction_address']['he-il'] = "";
$text['description-transaction_address']['it-it'] = "";
$text['description-transaction_address']['nl-nl'] = "IP Adres van de gebruiker.";
$text['description-transaction_address']['pl-pl'] = "";
$text['description-transaction_address']['pl-pl'] = "Adres IP użytkownika.";
$text['description-transaction_address']['pt-br'] = "";
$text['description-transaction_address']['pt-pt'] = "";
$text['description-transaction_address']['ro-ro'] = "";
@@ -308,7 +308,7 @@ $text['label-transaction_type']['fr-fr'] = "Type";
$text['label-transaction_type']['he-il'] = "";
$text['label-transaction_type']['it-it'] = "";
$text['label-transaction_type']['nl-nl'] = "Type";
$text['label-transaction_type']['pl-pl'] = "";
$text['label-transaction_type']['pl-pl'] = "Typ";
$text['label-transaction_type']['pt-br'] = "";
$text['label-transaction_type']['pt-pt'] = "";
$text['label-transaction_type']['ro-ro'] = "";
@@ -329,7 +329,7 @@ $text['description-transaction_type']['fr-fr'] = "Type: ajouter, mettre à jour,
$text['description-transaction_type']['he-il'] = "";
$text['description-transaction_type']['it-it'] = "";
$text['description-transaction_type']['nl-nl'] = "Type: toevoegen, bijwerken, verwijderen";
$text['description-transaction_type']['pl-pl'] = "";
$text['description-transaction_type']['pl-pl'] = "Typ: dodaj, zaktualizuj, usuń";
$text['description-transaction_type']['pt-br'] = "";
$text['description-transaction_type']['pt-pt'] = "";
$text['description-transaction_type']['ro-ro'] = "";
@@ -350,7 +350,7 @@ $text['label-transaction_date']['fr-fr'] = "Date";
$text['label-transaction_date']['he-il'] = "";
$text['label-transaction_date']['it-it'] = "";
$text['label-transaction_date']['nl-nl'] = "Datum";
$text['label-transaction_date']['pl-pl'] = "";
$text['label-transaction_date']['pl-pl'] = "Data";
$text['label-transaction_date']['pt-br'] = "";
$text['label-transaction_date']['pt-pt'] = "";
$text['label-transaction_date']['ro-ro'] = "";
@@ -371,7 +371,7 @@ $text['description-transaction_date']['fr-fr'] = "Date de la transaction.";
$text['description-transaction_date']['he-il'] = "";
$text['description-transaction_date']['it-it'] = "";
$text['description-transaction_date']['nl-nl'] = "Transactie datum.";
$text['description-transaction_date']['pl-pl'] = "";
$text['description-transaction_date']['pl-pl'] = "Data transakcji.";
$text['description-transaction_date']['pt-br'] = "";
$text['description-transaction_date']['pt-pt'] = "";
$text['description-transaction_date']['ro-ro'] = "";
@@ -392,7 +392,7 @@ $text['label-transaction_old']['fr-fr'] = "Avant";
$text['label-transaction_old']['he-il'] = "";
$text['label-transaction_old']['it-it'] = "";
$text['label-transaction_old']['nl-nl'] = "Voor";
$text['label-transaction_old']['pl-pl'] = "";
$text['label-transaction_old']['pl-pl'] = "Przed";
$text['label-transaction_old']['pt-br'] = "";
$text['label-transaction_old']['pt-pt'] = "";
$text['label-transaction_old']['ro-ro'] = "";
@@ -413,7 +413,7 @@ $text['description-transaction_old']['fr-fr'] = "Tableau avant la transaction";
$text['description-transaction_old']['he-il'] = "";
$text['description-transaction_old']['it-it'] = "";
$text['description-transaction_old']['nl-nl'] = "Tabel voor de transactie.";
$text['description-transaction_old']['pl-pl'] = "";
$text['description-transaction_old']['pl-pl'] = "Tablica przed transakcją.";
$text['description-transaction_old']['pt-br'] = "";
$text['description-transaction_old']['pt-pt'] = "";
$text['description-transaction_old']['ro-ro'] = "";
@@ -434,7 +434,7 @@ $text['label-transaction_new']['fr-fr'] = "Après";
$text['label-transaction_new']['he-il'] = "";
$text['label-transaction_new']['it-it'] = "";
$text['label-transaction_new']['nl-nl'] = "Na";
$text['label-transaction_new']['pl-pl'] = "";
$text['label-transaction_new']['pl-pl'] = "Po";
$text['label-transaction_new']['pt-br'] = "";
$text['label-transaction_new']['pt-pt'] = "";
$text['label-transaction_new']['ro-ro'] = "";
@@ -455,7 +455,7 @@ $text['description-transaction_new']['fr-fr'] = "Tableau après la transaction";
$text['description-transaction_new']['he-il'] = "";
$text['description-transaction_new']['it-it'] = "";
$text['description-transaction_new']['nl-nl'] = "Tabel na de transactie.";
$text['description-transaction_new']['pl-pl'] = "";
$text['description-transaction_new']['pl-pl'] = "Tablica po transakcji.";
$text['description-transaction_new']['pt-br'] = "";
$text['description-transaction_new']['pt-pt'] = "";
$text['description-transaction_new']['ro-ro'] = "";
@@ -476,7 +476,7 @@ $text['label-transaction_result']['fr-fr'] = "Résultat";
$text['label-transaction_result']['he-il'] = "";
$text['label-transaction_result']['it-it'] = "";
$text['label-transaction_result']['nl-nl'] = "Resultaat";
$text['label-transaction_result']['pl-pl'] = "";
$text['label-transaction_result']['pl-pl'] = "Rezultat";
$text['label-transaction_result']['pt-br'] = "";
$text['label-transaction_result']['pt-pt'] = "";
$text['label-transaction_result']['ro-ro'] = "";
@@ -497,7 +497,7 @@ $text['description-transaction_result']['fr-fr'] = "Résultat de la transaction"
$text['description-transaction_result']['he-il'] = "";
$text['description-transaction_result']['it-it'] = "";
$text['description-transaction_result']['nl-nl'] = "Resultaat van de transactie.";
$text['description-transaction_result']['pl-pl'] = "";
$text['description-transaction_result']['pl-pl'] = "Rezultat transakcji.";
$text['description-transaction_result']['pt-br'] = "";
$text['description-transaction_result']['pt-pt'] = "";
$text['description-transaction_result']['ro-ro'] = "";
@@ -518,7 +518,7 @@ $text['label-true']['fr-fr'] = "Vrai";
$text['label-true']['he-il'] = "";
$text['label-true']['it-it'] = "";
$text['label-true']['nl-nl'] = "waar";
$text['label-true']['pl-pl'] = "";
$text['label-true']['pl-pl'] = "Tak";
$text['label-true']['pt-br'] = "";
$text['label-true']['pt-pt'] = "";
$text['label-true']['ro-ro'] = "";
@@ -539,7 +539,7 @@ $text['label-false']['fr-fr'] = "Faux";
$text['label-false']['he-il'] = "";
$text['label-false']['it-it'] = "";
$text['label-false']['nl-nl'] = "onwaar";
$text['label-false']['pl-pl'] = "";
$text['label-false']['pl-pl'] = "Nie";
$text['label-false']['pt-br'] = "falso"; //copied from pt-pt
$text['label-false']['pt-pt'] = "falso";
$text['label-false']['ro-ro'] = "";
@@ -560,7 +560,7 @@ $text['button-add']['fr-fr'] = "Ajouter";
$text['button-add']['he-il'] = "";
$text['button-add']['it-it'] = "";
$text['button-add']['nl-nl'] = "Toevoegen";
$text['button-add']['pl-pl'] = "";
$text['button-add']['pl-pl'] = "Dodaj";
$text['button-add']['pt-br'] = "";
$text['button-add']['pt-pt'] = "";
$text['button-add']['ro-ro'] = "";
@@ -581,7 +581,7 @@ $text['button-edit']['fr-fr'] = "Modifier";
$text['button-edit']['he-il'] = "";
$text['button-edit']['it-it'] = "";
$text['button-edit']['nl-nl'] = "Bewerken";
$text['button-edit']['pl-pl'] = "";
$text['button-edit']['pl-pl'] = "Edytuj";
$text['button-edit']['pt-br'] = "";
$text['button-edit']['pt-pt'] = "";
$text['button-edit']['ro-ro'] = "";
@@ -602,7 +602,7 @@ $text['button-delete']['fr-fr'] = "Supprimer";
$text['button-delete']['he-il'] = "";
$text['button-delete']['it-it'] = "";
$text['button-delete']['nl-nl'] = "Verwijderen";
$text['button-delete']['pl-pl'] = "";
$text['button-delete']['pl-pl'] = "Usuń";
$text['button-delete']['pt-br'] = "";
$text['button-delete']['pt-pt'] = "";
$text['button-delete']['ro-ro'] = "";
@@ -623,7 +623,7 @@ $text['button-save']['fr-fr'] = "Enregistrer";
$text['button-save']['he-il'] = "";
$text['button-save']['it-it'] = "";
$text['button-save']['nl-nl'] = "Opslaan";
$text['button-save']['pl-pl'] = "";
$text['button-save']['pl-pl'] = "Zapisz";
$text['button-save']['pt-br'] = "Guardar"; //copied from pt-pt
$text['button-save']['pt-pt'] = "Guardar";
$text['button-save']['ro-ro'] = "";
@@ -644,7 +644,7 @@ $text['button-view']['fr-fr'] = "Vue";
$text['button-view']['he-il'] = "";
$text['button-view']['it-it'] = "";
$text['button-view']['nl-nl'] = "Tonen";
$text['button-view']['pl-pl'] = "";
$text['button-view']['pl-pl'] = "Podgląd";
$text['button-view']['pt-br'] = "";
$text['button-view']['pt-pt'] = "";
$text['button-view']['ro-ro'] = "";
@@ -665,7 +665,7 @@ $text['button-back']['fr-fr'] = "Retour";
$text['button-back']['he-il'] = "";
$text['button-back']['it-it'] = "";
$text['button-back']['nl-nl'] = "Terug";
$text['button-back']['pl-pl'] = "";
$text['button-back']['pl-pl'] = "Cofnij";
$text['button-back']['pt-br'] = "Voltar"; //copied from pt-pt
$text['button-back']['pt-pt'] = "Voltar";
$text['button-back']['ro-ro'] = "";
@@ -686,7 +686,7 @@ $text['confirm-delete']['fr-fr'] = "Voulez-vous vraiment supprimer ca";
$text['confirm-delete']['he-il'] = "";
$text['confirm-delete']['it-it'] = "";
$text['confirm-delete']['nl-nl'] = "Wil je dit werkelijk uitvoeren?";
$text['confirm-delete']['pl-pl'] = "";
$text['confirm-delete']['pl-pl'] = "Czy napewno chcesz to usunąć?";
$text['confirm-delete']['pt-br'] = "";
$text['confirm-delete']['pt-pt'] = "";
$text['confirm-delete']['ro-ro'] = "";
@@ -707,7 +707,7 @@ $text['message-add']['fr-fr'] = "Ajouter terminé";
$text['message-add']['he-il'] = "";
$text['message-add']['it-it'] = "";
$text['message-add']['nl-nl'] = "Toevoegen gereed";
$text['message-add']['pl-pl'] = "";
$text['message-add']['pl-pl'] = "Dodano pomyślnie";
$text['message-add']['pt-br'] = "";
$text['message-add']['pt-pt'] = "";
$text['message-add']['ro-ro'] = "";
@@ -728,7 +728,7 @@ $text['message-update']['fr-fr'] = "Mise à jour terminée";
$text['message-update']['he-il'] = "";
$text['message-update']['it-it'] = "";
$text['message-update']['nl-nl'] = "Bijwerken gereed";
$text['message-update']['pl-pl'] = "";
$text['message-update']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['message-update']['pt-br'] = "";
$text['message-update']['pt-pt'] = "";
$text['message-update']['ro-ro'] = "";
@@ -749,7 +749,7 @@ $text['message-delete']['fr-fr'] = "Supprimer terminé";
$text['message-delete']['he-il'] = "";
$text['message-delete']['it-it'] = "";
$text['message-delete']['nl-nl'] = "Verwijderen gereed";
$text['message-delete']['pl-pl'] = "";
$text['message-delete']['pl-pl'] = "Usunięto pomyślnie";
$text['message-delete']['pt-br'] = "";
$text['message-delete']['pt-pt'] = "";
$text['message-delete']['ro-ro'] = "";
@@ -770,7 +770,7 @@ $text['message-required']['fr-fr'] = "Veuillez fournir";
$text['message-required']['he-il'] = "";
$text['message-required']['it-it'] = "";
$text['message-required']['nl-nl'] = "Aub. geef: ";
$text['message-required']['pl-pl'] = "";
$text['message-required']['pl-pl'] = "Proszę podać: ";
$text['message-required']['pt-br'] = "";
$text['message-required']['pt-pt'] = "";
$text['message-required']['ro-ro'] = "";

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2016 - 2019
Portions created by the Initial Developer are Copyright (C) 2016 - 2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -57,6 +57,8 @@
$sql_search .= " or lower(t.transaction_address) like :search ";
$sql_search .= " or lower(t.transaction_type) like :search ";
$sql_search .= " or cast(t.transaction_date as text) like :search ";
$sql_search .= " or lower(t.transaction_old) like :search ";
$sql_search .= " or lower(t.transaction_new) like :search ";
$sql_search .= " or lower(u.username) like :search ";
$sql_search .= ") ";
$parameters['search'] = '%'.$search.'%';
@@ -126,9 +128,9 @@
}
echo " </select>";
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','onclick'=>"document.getElementById('search').value = ''; document.getElementById('form_search').submit();",'style'=>(!$search ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','onclick'=>"document.getElementById('search').value = ''; document.getElementById('form_search').submit();",'style'=>(!$search ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}

View File

@@ -102,9 +102,6 @@
$apps[$x]['permissions'][$y]['name'] = "destination_all";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_record";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_trunk_prefix";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_area_code";
@@ -123,6 +120,16 @@
$apps[$x]['permissions'][$y]['name'] = "destination_context";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_record";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_hold_music";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_distinctive_ring";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "destination_accountcode";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
@@ -236,6 +243,14 @@
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = "v_users";
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = "user_uuid";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "group_uuid";
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = "uuid";
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = "char(36)";
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = "foreign";
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = "v_groups";
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = "group_uuid";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name']['text'] = "destination_type";
$apps[$x]['db'][$y]['fields'][$z]['name']['deprecated'] = "destination_name";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
@@ -295,6 +310,10 @@
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Select whether to set music on hold.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "destination_distinctive_ring";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Select whether to set distinctive ring.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "destination_accountcode";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['search'] = 'true';

View File

@@ -603,7 +603,7 @@ $text['label-destination_enabled']['fr-fr'] = "Actif";
$text['label-destination_enabled']['he-il'] = "מופעל";
$text['label-destination_enabled']['it-it'] = "Abilitato";
$text['label-destination_enabled']['nl-nl'] = "Aktief";
$text['label-destination_enabled']['pl-pl'] = "Włączona";
$text['label-destination_enabled']['pl-pl'] = "Włączony";
$text['label-destination_enabled']['pt-br'] = "Ativado";
$text['label-destination_enabled']['pt-pt'] = "Activado";
$text['label-destination_enabled']['ro-ro'] = "";
@@ -758,6 +758,27 @@ $text['label-destination_hold_music']['ru-ru'] = "Музыка на Удержа
$text['label-destination_hold_music']['sv-se'] = "Vänt-musik";
$text['label-destination_hold_music']['uk-ua'] = "";
$text['label-destination_distinctive_ring']['en-us'] = "Distinctive Ring";
$text['label-destination_distinctive_ring']['en-gb'] = "Distinctive Ring";
$text['label-destination_distinctive_ring']['ar-eg'] = "";
$text['label-destination_distinctive_ring']['de-at'] = "Individueller Rufton"; //copied from de-de
$text['label-destination_distinctive_ring']['de-ch'] = "Individueller Rufton"; //copied from de-de
$text['label-destination_distinctive_ring']['de-de'] = "Individueller Rufton";
$text['label-destination_distinctive_ring']['es-cl'] = "";
$text['label-destination_distinctive_ring']['es-mx'] = "";
$text['label-destination_distinctive_ring']['fr-ca'] = "Sonnerie Distinctive"; //copied from fr-fr
$text['label-destination_distinctive_ring']['fr-fr'] = "Sonnerie Distinctive";
$text['label-destination_distinctive_ring']['he-il'] = "";
$text['label-destination_distinctive_ring']['it-it'] = "Squillo Personalizzato";
$text['label-destination_distinctive_ring']['nl-nl'] = "Alternatieve beltoon";
$text['label-destination_distinctive_ring']['pl-pl'] = "Charakterystyczny Sygnał";
$text['label-destination_distinctive_ring']['pt-br'] = "";
$text['label-destination_distinctive_ring']['pt-pt'] = "";
$text['label-destination_distinctive_ring']['ro-ro'] = "";
$text['label-destination_distinctive_ring']['ru-ru'] = "Отличительный вызов";
$text['label-destination_distinctive_ring']['sv-se'] = "Distinkt Ringning";
$text['label-destination_distinctive_ring']['uk-ua'] = "";
$text['label-destination_record']['en-us'] = "Record";
$text['label-destination_record']['en-gb'] = "Record";
$text['label-destination_record']['ar-eg'] = "";
@@ -813,7 +834,7 @@ $text['label-detail_action']['fr-fr'] = "Actions";
$text['label-detail_action']['he-il'] = "פעולות";
$text['label-detail_action']['it-it'] = "Azioni";
$text['label-detail_action']['nl-nl'] = "Akties";
$text['label-detail_action']['pl-pl'] = "Operacje (gdzie przesłać rozmowę).";
$text['label-detail_action']['pl-pl'] = "Akcje";
$text['label-detail_action']['pt-br'] = "Ações"; //copied from pt-pt
$text['label-detail_action']['pt-pt'] = "Ações";
$text['label-detail_action']['ro-ro'] = "";
@@ -1496,6 +1517,27 @@ $text['description-destination_hold_music']['ru-ru'] = "Выберите мел
$text['description-destination_hold_music']['sv-se'] = "Välj MOH Kategori här.";
$text['description-destination_hold_music']['uk-ua'] = "";
$text['description-destination_distinctive_ring']['en-us'] = "Select a sound for a distinctive ring.";
$text['description-destination_distinctive_ring']['en-gb'] = "Select a sound for a distinctive ring.";
$text['description-destination_distinctive_ring']['ar-eg'] = "";
$text['description-destination_distinctive_ring']['de-at'] = "Wählen Sie einen Ton für den individuellen Rufton."; //copied from de-de
$text['description-destination_distinctive_ring']['de-ch'] = "Wählen Sie einen Ton für den individuellen Rufton."; //copied from de-de
$text['description-destination_distinctive_ring']['de-de'] = "Wählen Sie einen Ton für den individuellen Rufton.";
$text['description-destination_distinctive_ring']['es-cl'] = "";
$text['description-destination_distinctive_ring']['es-mx'] = "";
$text['description-destination_distinctive_ring']['fr-ca'] = "Sélectionner un son pour une sonnerie distinctive"; //copied from fr-fr
$text['description-destination_distinctive_ring']['fr-fr'] = "Sélectionner un son pour une sonnerie distinctive";
$text['description-destination_distinctive_ring']['he-il'] = "";
$text['description-destination_distinctive_ring']['it-it'] = "Selezionare il tono per uno squillo personalizzato.";
$text['description-destination_distinctive_ring']['nl-nl'] = "Kies een geluid voor een afwijkende beltoon.";
$text['description-destination_distinctive_ring']['pl-pl'] = "Wybierz dźwięk dla funkcji charakterystycznego sygnału";
$text['description-destination_distinctive_ring']['pt-br'] = "";
$text['description-destination_distinctive_ring']['pt-pt'] = "";
$text['description-destination_distinctive_ring']['ro-ro'] = "";
$text['description-destination_distinctive_ring']['ru-ru'] = "Выберите параметры звука для отличительного вызова";
$text['description-destination_distinctive_ring']['sv-se'] = "Välj ett ljud för den distinkta ringningen.";
$text['description-destination_distinctive_ring']['uk-ua'] = "";
$text['description-destination_record']['en-us'] = "Save the recording.";
$text['description-destination_record']['en-gb'] = "Save the recording.";
$text['description-destination_record']['ar-eg'] = "";

View File

@@ -9,7 +9,7 @@
$apps[$x]['menu'][$y]['title']['de-de'] = "Ziele";
$apps[$x]['menu'][$y]['title']['es-cl'] = "Destinos";
$apps[$x]['menu'][$y]['title']['es-mx'] = "Destinos";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "Cibler";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "Destinations";
$apps[$x]['menu'][$y]['title']['fr-fr'] = "Destinations";
$apps[$x]['menu'][$y]['title']['he-il'] = "יעד";
$apps[$x]['menu'][$y]['title']['it-it'] = "Destinazioni";

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2021
Portions created by the Initial Developer are Copyright (C) 2008-2022
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -102,6 +102,7 @@
$fax_uuid = $_POST["fax_uuid"];
$provider_uuid = $_POST["provider_uuid"];
$user_uuid = $_POST["user_uuid"];
$group_uuid = $_POST["group_uuid"];
$destination_order= $_POST["destination_order"];
$destination_enabled = $_POST["destination_enabled"];
$destination_description = $_POST["destination_description"];
@@ -110,6 +111,7 @@
$destination_buy = check_float($_POST["destination_buy"]);
$currency_buy = $_POST["currency_buy"];
$destination_hold_music = $_POST["destination_hold_music"];
$destination_distinctive_ring = $_POST["destination_distinctive_ring"];
$destination_record = $_POST["destination_record"];
$destination_accountcode = $_POST["destination_accountcode"];
$destination_type_voice = $_POST["destination_type_voice"];
@@ -374,7 +376,7 @@
}
//build the xml dialplan
$dialplan["dialplan_xml"] = "<extension name=\"".$dialplan_name."\" continue=\"false\" uuid=\"".$dialplan_uuid."\">\n";
$dialplan["dialplan_xml"] = "<extension name=\"".$dialplan["dialplan_name"]."\" continue=\"false\" uuid=\"".$dialplan_uuid."\">\n";
$dialplan["dialplan_xml"] .= " <condition field=\"".$dialplan_detail_type."\" expression=\"".$destination_number_regex."\">\n";
$dialplan["dialplan_xml"] .= " <action application=\"export\" data=\"call_direction=inbound\" inline=\"true\"/>\n";
$dialplan["dialplan_xml"] .= " <action application=\"set\" data=\"domain_uuid=".$_SESSION['domain_uuid']."\" inline=\"true\"/>\n";
@@ -400,6 +402,9 @@
if (strlen($destination_hold_music) > 0) {
$dialplan["dialplan_xml"] .= " <action application=\"export\" data=\"hold_music=".$destination_hold_music."\" inline=\"true\"/>\n";
}
if (strlen($destination_distinctive_ring) > 0) {
$dialplan["dialplan_xml"] .= " <action application=\"export\" data=\"sip_h_Alert-Info=".$destination_distinctive_ring."\" inline=\"true\"/>\n";
}
if (strlen($destination_accountcode) > 0) {
$dialplan["dialplan_xml"] .= " <action application=\"export\" data=\"accountcode=".$destination_accountcode."\" inline=\"true\"/>\n";
}
@@ -526,6 +531,17 @@
$y++;
}
//set the distinctive ring
if (strlen($destination_distinctive_ring) > 0) {
$dialplan["dialplan_details"][$y]["domain_uuid"] = $domain_uuid;
$dialplan["dialplan_details"][$y]["dialplan_detail_tag"] = "action";
$dialplan["dialplan_details"][$y]["dialplan_detail_type"] = "export";
$dialplan["dialplan_details"][$y]["dialplan_detail_data"] = "sip_h_Alert-Info=".$destination_distinctive_ring;
$dialplan["dialplan_details"][$y]["dialplan_detail_inline"] = "true";
$dialplan["dialplan_details"][$y]["dialplan_detail_order"] = $dialplan_detail_order;
$y++;
}
//add fax detection
if (is_uuid($fax_uuid)) {
@@ -712,6 +728,9 @@
if (permission_exists('user_edit')) {
$array['destinations'][$x]["user_uuid"] = $user_uuid;
}
if (permission_exists('group_edit')) {
$array['destinations'][$x]["group_uuid"] = $group_uuid;
}
$array['destinations'][$x]["destination_type"] = $destination_type;
if (permission_exists('destination_condition_field')) {
$array['destinations'][$x]["destination_condition_field"] = $destination_condition_field;
@@ -731,7 +750,12 @@
$array['destinations'][$x]["destination_caller_id_number"] = $destination_caller_id_number;
$array['destinations'][$x]["destination_cid_name_prefix"] = $destination_cid_name_prefix;
$array['destinations'][$x]["destination_context"] = $destination_context;
$array['destinations'][$x]["destination_hold_music"] = $destination_hold_music;
if (permission_exists("destination_hold_music")) {
$array['destinations'][$x]["destination_hold_music"] = $destination_hold_music;
}
if (permission_exists("destination_distinctive_ring")) {
$array['destinations'][$x]["destination_distinctive_ring"] = $destination_distinctive_ring;
}
$array['destinations'][$x]["destination_record"] = $destination_record;
$array['destinations'][$x]["destination_accountcode"] = $destination_accountcode;
$array['destinations'][$x]["destination_type_voice"] = $destination_type_voice ? 1 : null;
@@ -882,6 +906,7 @@
$destination_caller_id_number = $row["destination_caller_id_number"];
$destination_cid_name_prefix = $row["destination_cid_name_prefix"];
$destination_hold_music = $row["destination_hold_music"];
$destination_distinctive_ring = $row["destination_distinctive_ring"];
$destination_record = $row["destination_record"];
$destination_accountcode = $row["destination_accountcode"];
$destination_type_voice = $row["destination_type_voice"];
@@ -896,6 +921,7 @@
$fax_uuid = $row["fax_uuid"];
$provider_uuid = $row["provider_uuid"];
$user_uuid = $row["user_uuid"];
$group_uuid = $row["group_uuid"];
$currency = $row["currency"];
$destination_sell = $row["destination_sell"];
$destination_buy = $row["destination_buy"];
@@ -998,6 +1024,17 @@
unset($sql, $parameters);
}
//get the groups list
if (permission_exists('group_edit')) {
$sql = "select group_uuid, domain_uuid, group_name, group_description from v_groups ";
$sql .= "where (domain_uuid is null or domain_uuid = :domain_uuid) ";
$sql .= "order by group_name asc ";
$parameters['domain_uuid'] = $domain_uuid;
$database = new database;
$groups = $database->select($sql, $parameters, 'all');
unset($sql, $parameters);
}
//create token
$object = new token;
$token = $object->create($_SERVER['PHP_SELF']);
@@ -1306,6 +1343,28 @@
unset($users);
echo " <br>\n";
echo " ".$text['description-user']."\n";
echo "</td>\n";
echo "</tr>\n";
}
if (permission_exists('group_edit')) {
echo "<tr id='tr_group'>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-group']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <select name=\"group_uuid\" class='formfld' style='width: auto;'>\n";
echo " <option value=\"\"></option>\n";
foreach($groups as $field) {
if ($field['group_uuid'] == $group_uuid) { $selected = "selected='selected'"; } else { $selected = ''; }
echo " <option value='".escape($field['group_uuid'])."' $selected>".escape($field['group_name'])."</option>\n";
}
echo " </select>";
unset($groups);
echo " <br>\n";
echo " ".$text['description-group']."\n";
echo "</td>\n";
echo "</tr>\n";
}
echo "<tr id='tr_cid_name_prefix'>\n";
@@ -1343,7 +1402,7 @@
echo "</tr>\n";
}
if (is_dir($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH.'/app/music_on_hold')) {
if (permission_exists("destination_hold_music") && is_dir($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH.'/app/music_on_hold')) {
echo "<tr id='tr_hold_music'>\n";
echo "<td width=\"30%\" class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-destination_hold_music']."\n";
@@ -1358,6 +1417,19 @@
echo "</tr>\n";
}
if (permission_exists("destination_distinctive_ring")) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-destination_distinctive_ring']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='destination_distinctive_ring' maxlength='255' value='".escape($destination_distinctive_ring)."'>\n";
echo "<br />\n";
echo $text['description-destination_distinctive_ring']." \n";
echo "</td>\n";
echo "</tr>\n";
}
if (permission_exists("destination_accountcode")) {
echo "<tr id='tr_account_code'>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";

View File

@@ -205,7 +205,7 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','style'=>'margin-left: 15px;','link'=>'destination_edit.php']);
}
if (permission_exists('destination_delete') && $destinations) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
if (permission_exists('destination_all')) {
@@ -217,9 +217,9 @@
}
}
echo " <input type='hidden' name='type' value=\"".escape($destination_type)."\">\n";
echo " <input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'destinations.php','style'=>($search == '' ? 'display: none;' : null)]);
echo " <input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'destinations.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -244,7 +244,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('destination_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($destinations ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($destinations ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('destination_all')) {
@@ -285,7 +285,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('destination_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='destinations[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='destinations[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='destinations[$x][uuid]' value='".escape($row['destination_uuid'])."' />\n";
echo " </td>\n";
}

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2017 - 2020
Portions created by the Initial Developer are Copyright (C) 2017 - 2022
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -90,6 +90,11 @@ if (!class_exists('destinations')) {
$destination_regex .= "^".$array['destination_area_code'].$array['destination_number']."\$|";
$destination_regex .= "^".$array['destination_number']."\$)";
}
elseif (isset($array['destination_prefix']) && isset($array['destination_trunk_prefix']) && isset($array['destination_number'])) {
$destination_regex = "(\+?".$array['destination_prefix'].$array['destination_number']."\$|";
$destination_regex .= "^".$array['destination_trunk_prefix'].$array['destination_number']."\$|";
$destination_regex .= "^".$array['destination_number']."\$)";
}
elseif (isset($array['destination_prefix']) && isset($array['destination_area_code']) && isset($array['destination_number'])) {
$destination_regex = "(\+?".$array['destination_prefix'].$array['destination_area_code'].$array['destination_number']."\$|";
$destination_regex .= "^".$array['destination_area_code'].$array['destination_number']."\$|";
@@ -109,12 +114,13 @@ if (!class_exists('destinations')) {
//add prefix
if (strlen($destination_prefix) > 0) {
if (strlen($destination_prefix) > 0 && strlen($destination_prefix) < 4) {
$plus = (substr($destination_prefix, 0, 1) == "+") ? '' : '\+?';
$destination_prefix = str_replace("+", "", $destination_prefix);
$plus = '\+?';
if (strlen($destination_prefix) == 1) {
$destination_prefix = $plus.$destination_prefix.'?';
}
else {
$destination_prefix = '(?:'.$destination_prefix.')?';
$destination_prefix = $plus.'(?:'.$destination_prefix.')?';
}
}
@@ -953,7 +959,6 @@ if (!class_exists('destinations')) {
$i++;
}
$i = 0;
unset($text);
}
}
@@ -985,7 +990,15 @@ if (!class_exists('destinations')) {
* valid destination
*/
public function valid($destination, $type = 'dialplan') {
//allow an empty destination
if ($destination == ':') {
return true;
}
//get all of the $destinations
$destinations = $this->all($type);
//loop through destinations to validate them
foreach($destinations as $category => $array) {
if (is_array($array)) {
foreach ($array as $key => $value) {

View File

@@ -134,6 +134,7 @@
$y++;
$apps[$x]['permissions'][$y]['name'] = "device_key_line";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "device_key_extension";
//$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
@@ -206,6 +207,10 @@
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "device_location";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "device_model";
//$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
@@ -264,19 +269,19 @@
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_view';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_add';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_edit';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_delete';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_all';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
@@ -286,38 +291,38 @@
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_key_view';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_key_add';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_key_edit';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_key_delete';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_key_all';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_setting_view';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_setting_add';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_setting_edit';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_setting_delete';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_profile_setting_all';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
@@ -325,6 +330,8 @@
$apps[$x]['permissions'][$y]['name'] = 'device_export';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'device_key_icon';
$y++;
//default settings
$y = 0;
@@ -398,6 +405,11 @@
$apps[$x]['db'][$y]['fields'][$z]['search'] = 'true';
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "device_location";
$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'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name']['text'] = "device_model";
$apps[$x]['db'][$y]['fields'][$z]['name']['deprecated'] = "phone_model";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
@@ -536,6 +548,10 @@
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the outbound proxy.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "label";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the label.";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "display_name";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "Enter the display name.";
@@ -633,7 +649,7 @@
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = "v_device_profiles";
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = "device_profile_uuid";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$apps[$x]['db'][$y]['fields'][$z]['deprecated'] = "true";
$y++;
$apps[$x]['db'][$y]['table']['name'] = "v_device_keys";
$apps[$x]['db'][$y]['table']['parent'] = "v_devices";
@@ -668,6 +684,7 @@
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = "v_device_profiles";
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = "device_profile_uuid";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$apps[$x]['db'][$y]['fields'][$z]['deprecated'] = "true";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "device_key_id";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "numeric";

View File

@@ -16,7 +16,7 @@
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2016
Portions created by the Initial Developer are Copyright (C) 2008-2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -26,13 +26,34 @@
if ($domains_processed == 1) {
//set all lines to enabled (true) where null or empty string
$sql = "update v_device_lines set ";
$sql .= "enabled = 'true' ";
$sql .= "where enabled is null ";
$sql .= "or enabled = '' ";
$sql = "select device_line_uuid from v_device_lines ";
$sql .= "where enabled is null or enabled = '' ";
$database = new database;
$database->execute($sql);
unset($sql);
$device_lines = $database->select($sql, null, 'all');
if (is_array($device_lines) && @sizeof($device_lines) != 0) {
$sql = "update v_device_lines set ";
$sql .= "enabled = 'true' ";
$sql .= "where enabled is null ";
$sql .= "or enabled = '' ";
$database = new database;
$database->execute($sql);
unset($sql);
}
unset($sql, $device_lines);
//set label to user_id if the label is null
$sql = "select device_line_uuid from v_device_lines ";
$sql .= "where label is null ";
$database = new database;
$device_lines = $database->select($sql, null, 'all');
if (is_array($device_lines) && @sizeof($device_lines) != 0) {
foreach($device_lines as $row) {
$sql = "update v_device_lines ";
$sql .= "set label = user_id ";
$sql .= "where label is null ";
$database->execute($sql);
}
}
//set the device key vendor
$sql = "select * from v_device_keys as k, v_devices as d ";
@@ -231,7 +252,11 @@ if ($domains_processed == 1) {
}
unset($num_rows);
//where the device lines label is null set the value to the display name to maintain the original behavior
$sql = "update v_device_lines set label = display_name where label is null;\n";
$database->execute($sql);
unset($sql);
}
?>

View File

@@ -290,7 +290,7 @@ $text['message-command_sent']['fr-fr'] = "Command Sent";
$text['message-command_sent']['he-il'] = "Command Sent";
$text['message-command_sent']['it-it'] = "Command Sent";
$text['message-command_sent']['nl-nl'] = "Command Sent";
$text['message-command_sent']['pl-pl'] = "Command Sent";
$text['message-command_sent']['pl-pl'] = "Wysłano polecenie pomyślnie";
$text['message-command_sent']['pt-br'] = "Command Sent";
$text['message-command_sent']['pt-pt'] = "Command Sent";
$text['message-command_sent']['ro-ro'] = "Command Sent";
@@ -353,7 +353,7 @@ $text['label-xml_directory']['fr-fr'] = "Annuaire XML";
$text['label-xml_directory']['he-il'] = "מדריך";
$text['label-xml_directory']['it-it'] = "Elenco Num. XML";
$text['label-xml_directory']['nl-nl'] = "XML telefoonlijst";
$text['label-xml_directory']['pl-pl'] = "Ksiażka telefoniczna XML";
$text['label-xml_directory']['pl-pl'] = "Katalog XML";
$text['label-xml_directory']['pt-br'] = "Diretório XML"; //copied from pt-pt
$text['label-xml_directory']['pt-pt'] = "Diretório XML";
$text['label-xml_directory']['ro-ro'] = "";
@@ -458,7 +458,7 @@ $text['label-user']['fr-fr'] = "Utilisateur";
$text['label-user']['he-il'] = "";
$text['label-user']['it-it'] = "Utente";
$text['label-user']['nl-nl'] = "Gebruiker";
$text['label-user']['pl-pl'] = "Użytkownicy";
$text['label-user']['pl-pl'] = "Użytkownik";
$text['label-user']['pt-br'] = "Usuário";
$text['label-user']['pt-pt'] = "Utilizadore";
$text['label-user']['ro-ro'] = "";
@@ -605,7 +605,7 @@ $text['label-switch_account_down']['fr-fr'] = "Mettez compte vers le bas";
$text['label-switch_account_down']['he-il'] = "העבר חשבון למטה";
$text['label-switch_account_down']['it-it'] = "Sposta Account in basso";
$text['label-switch_account_down']['nl-nl'] = "Centrale Account omlaad";
$text['label-switch_account_down']['pl-pl'] = "Przenieś konto do dół";
$text['label-switch_account_down']['pl-pl'] = "Przenieś konto do dołu";
$text['label-switch_account_down']['pt-br'] = "Desabilitar conta"; //copied from pt-pt
$text['label-switch_account_down']['pt-pt'] = "Desabilitar conta";
$text['label-switch_account_down']['ro-ro'] = "";
@@ -688,7 +688,7 @@ $text['label-speed_dial']['fr-fr'] = "Numérotation abrégée";
$text['label-speed_dial']['he-il'] = "";
$text['label-speed_dial']['it-it'] = "Speed Dial";
$text['label-speed_dial']['nl-nl'] = "Snelkiezen";
$text['label-speed_dial']['pl-pl'] = "";
$text['label-speed_dial']['pl-pl'] = "Szybkie wybieranie";
$text['label-speed_dial']['pt-br'] = "Discagem Rápida";
$text['label-speed_dial']['pt-pt'] = "";
$text['label-speed_dial']['ro-ro'] = "";
@@ -709,7 +709,7 @@ $text['label-speed_dial_prefix']['fr-fr'] = "Préfixe du numérotation abrégée
$text['label-speed_dial_prefix']['he-il'] = "";
$text['label-speed_dial_prefix']['it-it'] = "Prefisso Speed Dial";
$text['label-speed_dial_prefix']['nl-nl'] = "Snelkies voorloop";
$text['label-speed_dial_prefix']['pl-pl'] = "";
$text['label-speed_dial_prefix']['pl-pl'] = "Prefiks szybkiego wybierania";
$text['label-speed_dial_prefix']['pt-br'] = "Prefixo de discagem rápida";
$text['label-speed_dial_prefix']['pt-pt'] = "";
$text['label-speed_dial_prefix']['ro-ro'] = "";
@@ -751,7 +751,7 @@ $text['label-sip_transport']['fr-fr'] = "Transport";
$text['label-sip_transport']['he-il'] = "";
$text['label-sip_transport']['it-it'] = "Trasporto";
$text['label-sip_transport']['nl-nl'] = "Transport";
$text['label-sip_transport']['pl-pl'] = "Transport ";
$text['label-sip_transport']['pl-pl'] = "Transport";
$text['label-sip_transport']['pt-br'] = "Transporte"; //copied from pt-pt
$text['label-sip_transport']['pt-pt'] = "Transporte";
$text['label-sip_transport']['ro-ro'] = "";
@@ -793,7 +793,7 @@ $text['label-shared_line']['fr-fr'] = "Ligne partagée";
$text['label-shared_line']['he-il'] = "קו משותף";
$text['label-shared_line']['it-it'] = "Linea Condivisa";
$text['label-shared_line']['nl-nl'] = "Gedeelde lijn";
$text['label-shared_line']['pl-pl'] = "Linia dzielona";
$text['label-shared_line']['pl-pl'] = "Linia współdzielona";
$text['label-shared_line']['pt-br'] = "Linha compartilhada ";
$text['label-shared_line']['pt-pt'] = "Linha partilhada";
$text['label-shared_line']['ro-ro'] = "";
@@ -835,7 +835,7 @@ $text['label-server_address']['fr-fr'] = "Adresse du Serveur";
$text['label-server_address']['he-il'] = "כתובת שרת";
$text['label-server_address']['it-it'] = "Indirizzo Server";
$text['label-server_address']['nl-nl'] = "Server adres";
$text['label-server_address']['pl-pl'] = "Adres serwera (registrar)";
$text['label-server_address']['pl-pl'] = "Adres serwera";
$text['label-server_address']['pt-br'] = "Endereço do servidor";
$text['label-server_address']['pt-pt'] = "Endereço do Servidor";
$text['label-server_address']['ro-ro'] = "";
@@ -856,7 +856,7 @@ $text['label-server_address_primary']['fr-fr'] = "Adresse principale";
$text['label-server_address_primary']['he-il'] = "כתובת שרת";
$text['label-server_address_primary']['it-it'] = "Indirizzo Server";
$text['label-server_address_primary']['nl-nl'] = "Primaire adres";
$text['label-server_address_primary']['pl-pl'] = "Adres serwera (registrar)";
$text['label-server_address_primary']['pl-pl'] = "Adres podstawowy";
$text['label-server_address_primary']['pt-br'] = "Endereço Primário";
$text['label-server_address_primary']['pt-pt'] = "Endereço do Servidor";
$text['label-server_address_primary']['ro-ro'] = "";
@@ -877,7 +877,7 @@ $text['label-server_address_secondary']['fr-fr'] = "Adresse secondaire";
$text['label-server_address_secondary']['he-il'] = "כתובת שרת";
$text['label-server_address_secondary']['it-it'] = "Indirizzo Server";
$text['label-server_address_secondary']['nl-nl'] = "Secondaire adres";
$text['label-server_address_secondary']['pl-pl'] = "Adres serwera (registrar)";
$text['label-server_address_secondary']['pl-pl'] = "Adres drugorzędny";
$text['label-server_address_secondary']['pt-br'] = "Endereço Secundário";
$text['label-server_address_secondary']['pt-pt'] = "Endereço do Servidor";
$text['label-server_address_secondary']['ro-ro'] = "";
@@ -1284,43 +1284,43 @@ $text['label-p2t']['ru-ru'] = "Push to Talk";
$text['label-p2t']['sv-se'] = "Push to Talk ";
$text['label-p2t']['uk-ua'] = "";
$text['label-outbound_proxy_primary']['en-us'] = "Outbound Proxy";
$text['label-outbound_proxy_primary']['en-gb'] = "Outbound Proxy";
$text['label-outbound_proxy_primary']['en-us'] = "Outbound Proxy Primary";
$text['label-outbound_proxy_primary']['en-gb'] = "Outbound Proxy Primary";
$text['label-outbound_proxy_primary']['ar-eg'] = "";
$text['label-outbound_proxy_primary']['de-at'] = "Outbound Proxy"; //copied from de-de
$text['label-outbound_proxy_primary']['de-ch'] = "Outbound Proxy"; //copied from de-de
$text['label-outbound_proxy_primary']['de-at'] = "Outbound Proxy Primary"; //copied from de-de
$text['label-outbound_proxy_primary']['de-ch'] = "Outbound Proxy Primary"; //copied from de-de
$text['label-outbound_proxy_primary']['de-de'] = "Outbound Proxy";
$text['label-outbound_proxy_primary']['es-cl'] = "Proxy de salida";
$text['label-outbound_proxy_primary']['es-mx'] = "Proxy de salida"; //copied from es-cl
$text['label-outbound_proxy_primary']['fr-ca'] = "Proxy Sortant"; //copied from fr-fr
$text['label-outbound_proxy_primary']['fr-fr'] = "Proxy Sortant";
$text['label-outbound_proxy_primary']['es-cl'] = "Proxy de salida Primaria";
$text['label-outbound_proxy_primary']['es-mx'] = "Proxy de salida Primaria"; //copied from es-cl
$text['label-outbound_proxy_primary']['fr-ca'] = "Proxy Sortant Primaire"; //copied from fr-fr
$text['label-outbound_proxy_primary']['fr-fr'] = "Proxy Sortant Primaire";
$text['label-outbound_proxy_primary']['he-il'] = "";
$text['label-outbound_proxy_primary']['it-it'] = "Outbound Proxy";
$text['label-outbound_proxy_primary']['nl-nl'] = "Uitgaande proxy";
$text['label-outbound_proxy_primary']['pl-pl'] = "Wychodzący serwer proxy";
$text['label-outbound_proxy_primary']['pt-br'] = "Proxy de Saída";
$text['label-outbound_proxy_primary']['pt-pt'] = "Outbound Proxy";
$text['label-outbound_proxy_primary']['pt-br'] = "Proxy de Saída Primária";
$text['label-outbound_proxy_primary']['pt-pt'] = "Proxy de Saída Primária";
$text['label-outbound_proxy_primary']['ro-ro'] = "";
$text['label-outbound_proxy_primary']['ru-ru'] = "Исходящий прокси-сервер";
$text['label-outbound_proxy_primary']['sv-se'] = "Utgående Proxy";
$text['label-outbound_proxy_primary']['uk-ua'] = "";
$text['label-outbound_proxy_secondary']['en-us'] = "Outbound Proxy";
$text['label-outbound_proxy_secondary']['en-gb'] = "Outbound Proxy";
$text['label-outbound_proxy_secondary']['en-us'] = "Outbound Proxy Secondary";
$text['label-outbound_proxy_secondary']['en-gb'] = "Outbound Proxy Secondary";
$text['label-outbound_proxy_secondary']['ar-eg'] = "";
$text['label-outbound_proxy_secondary']['de-at'] = "Outbound Proxy"; //copied from de-de
$text['label-outbound_proxy_secondary']['de-ch'] = "Outbound Proxy"; //copied from de-de
$text['label-outbound_proxy_secondary']['de-de'] = "Outbound Proxy";
$text['label-outbound_proxy_secondary']['es-cl'] = "Proxy de salida";
$text['label-outbound_proxy_secondary']['es-mx'] = "Proxy de salida"; //copied from es-cl
$text['label-outbound_proxy_secondary']['fr-ca'] = "Proxy Sortant"; //copied from fr-fr
$text['label-outbound_proxy_secondary']['fr-fr'] = "Proxy Sortant";
$text['label-outbound_proxy_secondary']['es-cl'] = "Proxy de salida Secundaria";
$text['label-outbound_proxy_secondary']['es-mx'] = "Proxy de salida Secundaria"; //copied from es-cl
$text['label-outbound_proxy_secondary']['fr-ca'] = "Proxy Sortant Secondaire"; //copied from fr-fr
$text['label-outbound_proxy_secondary']['fr-fr'] = "Proxy Sortant Secondaire";
$text['label-outbound_proxy_secondary']['he-il'] = "";
$text['label-outbound_proxy_secondary']['it-it'] = "Outbound Proxy";
$text['label-outbound_proxy_secondary']['nl-nl'] = "Uitgaande proxy";
$text['label-outbound_proxy_secondary']['pl-pl'] = "Wychodzący serwer proxy";
$text['label-outbound_proxy_secondary']['pt-br'] = "Proxy de Saída";
$text['label-outbound_proxy_secondary']['pt-pt'] = "Outbound Proxy";
$text['label-outbound_proxy_secondary']['pt-br'] = "Proxy de Saída Secundária";
$text['label-outbound_proxy_secondary']['pt-pt'] = "Proxy de Saída Secundária";
$text['label-outbound_proxy_secondary']['ro-ro'] = "";
$text['label-outbound_proxy_secondary']['ru-ru'] = "Исходящий прокси-сервер";
$text['label-outbound_proxy_secondary']['sv-se'] = "Utgående Proxy";
@@ -2523,6 +2523,27 @@ $text['label-device_vendor']['ru-ru'] = "Производитель";
$text['label-device_vendor']['sv-se'] = "Tillverkare";
$text['label-device_vendor']['uk-ua'] = "";
$text['label-device_location']['en-us'] = "Location";
$text['label-device_location']['en-gb'] = "Location";
$text['label-device_location']['ar-eg'] = "Location";
$text['label-device_location']['de-at'] = "Ort"; //copied from de-de
$text['label-device_location']['de-ch'] = "Ort"; //copied from de-de
$text['label-device_location']['de-de'] = "Ort";
$text['label-device_location']['es-cl'] = "Ubicación";
$text['label-device_location']['es-mx'] = "Ubicación"; //copied from es-cl
$text['label-device_location']['fr-ca'] = "Situation géographique";
$text['label-device_location']['fr-fr'] = "Emplacement";
$text['label-device_location']['he-il'] = "מקום";
$text['label-device_location']['it-it'] = "Ubicazione";
$text['label-device_location']['nl-nl'] = "Plaats";
$text['label-device_location']['pl-pl'] = "Wprowadź lokalizację urządzenia.";
$text['label-device_location']['pt-br'] = "Localização"; //copied from pt-pt
$text['label-device_location']['pt-pt'] = "Localização";
$text['label-device_location']['ro-ro'] = "Introduceți locația dispozitivului.";
$text['label-device_location']['ru-ru'] = "Местоположение";
$text['label-device_location']['sv-se'] = "Ange enhetens plats.";
$text['label-device_location']['uk-ua'] = "Введіть розташування пристрою.";
$text['label-device_key_vendor']['en-us'] = "Vendor";
$text['label-device_key_vendor']['en-gb'] = "Vendor";
$text['label-device_key_vendor']['ar-eg'] = "";
@@ -4469,7 +4490,7 @@ $text['label-next_tab']['fr-fr'] = "Onglet suivant";
$text['label-next_tab']['he-il'] = "";
$text['label-next_tab']['it-it'] = "";
$text['label-next_tab']['nl-nl'] = "Volgende tab";
$text['label-next_tab']['pl-pl'] = "";
$text['label-next_tab']['pl-pl'] = "Następna zakładka";
$text['label-next_tab']['pt-br'] = "Próxima Aba";
$text['label-next_tab']['pt-pt'] = "";
$text['label-next_tab']['ro-ro'] = "";
@@ -4490,7 +4511,7 @@ $text['label-message_status']['fr-fr'] = "Etat du message";
$text['label-message_status']['he-il'] = "";
$text['label-message_status']['it-it'] = "";
$text['label-message_status']['nl-nl'] = "Boodschap status";
$text['label-message_status']['pl-pl'] = "";
$text['label-message_status']['pl-pl'] = "Status Wiadomości";
$text['label-message_status']['pt-br'] = "Mensagem de Estado";
$text['label-message_status']['pt-pt'] = "";
$text['label-message_status']['ro-ro'] = "";
@@ -4595,7 +4616,7 @@ $text['label-add_to_conference']['fr-fr'] = "Ajouter à la conférence";
$text['label-add_to_conference']['he-il'] = "";
$text['label-add_to_conference']['it-it'] = "";
$text['label-add_to_conference']['nl-nl'] = "Voeg toe aan conferentie";
$text['label-add_to_conference']['pl-pl'] = "";
$text['label-add_to_conference']['pl-pl'] = "Dodaj do Konferencji";
$text['label-add_to_conference']['pt-br'] = "Adicionar à Conferência";
$text['label-add_to_conference']['pt-pt'] = "";
$text['label-add_to_conference']['ro-ro'] = "";
@@ -4616,7 +4637,7 @@ $text['label-custom']['fr-fr'] = "Custom";
$text['label-custom']['he-il'] = "";
$text['label-custom']['it-it'] = "";
$text['label-custom']['nl-nl'] = "Aangepast";
$text['label-custom']['pl-pl'] = "";
$text['label-custom']['pl-pl'] = "Własne";
$text['label-custom']['pt-br'] = "Personalizado";
$text['label-custom']['pt-pt'] = "";
$text['label-custom']['ro-ro'] = "";
@@ -4637,7 +4658,7 @@ $text['label-fields']['fr-fr'] = "Fields";
$text['label-fields']['he-il'] = "Fields";
$text['label-fields']['it-it'] = "Fields";
$text['label-fields']['nl-nl'] = "Fields";
$text['label-fields']['pl-pl'] = "Fields";
$text['label-fields']['pl-pl'] = "Pola";
$text['label-fields']['pt-br'] = "Fields";
$text['label-fields']['pt-pt'] = "Fields";
$text['label-fields']['ro-ro'] = "Fields";
@@ -4789,7 +4810,7 @@ $text['description-device_export']['fr-fr'] = "Select the fields you wish to inc
$text['description-device_export']['he-il'] = "Select the fields you wish to include in the export.";
$text['description-device_export']['it-it'] = "Select the fields you wish to include in the export.";
$text['description-device_export']['nl-nl'] = "Select the fields you wish to include in the export.";
$text['description-device_export']['pl-pl'] = "Select the fields you wish to include in the export.";
$text['description-device_export']['pl-pl'] = "Wybierz pola, które mają być uwzględnione w eksporcie.";
$text['description-device_export']['pt-br'] = "Select the fields you wish to include in the export.";
$text['description-device_export']['pt-pt'] = "Select the fields you wish to include in the export.";
$text['description-device_export']['ro-ro'] = "Select the fields you wish to include in the export.";
@@ -4895,7 +4916,7 @@ $text['description-server_address']['fr-fr'] = "Sélectionnez une adresse de ser
$text['description-server_address']['he-il'] = "בחר כתובת שרת";
$text['description-server_address']['it-it'] = "Selezionare indirizzo server.";
$text['description-server_address']['nl-nl'] = "Kies een server adres.";
$text['description-server_address']['pl-pl'] = "Wybierz adres serwera (registrar)";
$text['description-server_address']['pl-pl'] = "Wybierz adres serwera.";
$text['description-server_address']['pt-br'] = "Selecione um endereço de servidor";
$text['description-server_address']['pt-pt'] = "Seleccione um endereço de servidor.";
$text['description-server_address']['ro-ro'] = "";
@@ -5021,7 +5042,7 @@ $text['description-profile2']['fr-fr'] = "Sélectionnez un profil de touche et /
$text['description-profile2']['he-il'] = "";
$text['description-profile2']['it-it'] = "Seleziona un Profilo Tasti e/o definisci altri tasti sotto.";
$text['description-profile2']['nl-nl'] = "Kies een sleutel profiel en/of definieer aangepaste toetsen hieronder.";
$text['description-profile2']['pl-pl'] = "Wybierz Główny Profil i / lub zdefiniuj własne klucze poniżej";
$text['description-profile2']['pl-pl'] = "Wybierz Główny Profil i / lub zdefiniuj własne klucze poniżej";
$text['description-profile2']['pt-br'] = "Selecione uma tecla de perfil e/ou defina teclas personalizadas abaixo.";
$text['description-profile2']['pt-pt'] = "Selecione um perfil Key e / ou definir chaves personalizados abaixo.";
$text['description-profile2']['ro-ro'] = "";
@@ -5105,7 +5126,7 @@ $text['description-line_number']['fr-fr'] = "Sélectionnez un numéro de ligne."
$text['description-line_number']['he-il'] = "";
$text['description-line_number']['it-it'] = "Selezionare un numero di linea.";
$text['description-line_number']['nl-nl'] = "Kies een lijnnummer";
$text['description-line_number']['pl-pl'] = "Wybierz numer lini";
$text['description-line_number']['pl-pl'] = "Wybierz numer linii";
$text['description-line_number']['pt-br'] = "Selecione o número da linha.";
$text['description-line_number']['pt-pt'] = "Selecciona um número.";
$text['description-line_number']['ro-ro'] = "";
@@ -5126,7 +5147,7 @@ $text['description-extension']['fr-fr'] = "Assigner l'extension et les numéro d
$text['description-extension']['he-il'] = "";
$text['description-extension']['it-it'] = "Assegna l'interno e i numeri di linea al dispositivo.";
$text['description-extension']['nl-nl'] = "Wijs toestel en lijnnummers to aan het apparaat.";
$text['description-extension']['pl-pl'] = "Przypisz do urządzenia numer linii oraz numery wewnętrzne ";
$text['description-extension']['pl-pl'] = "Przypisz do urządzenia numer linii oraz numery wewnętrzne.";
$text['description-extension']['pt-br'] = "Atribua um ramal e números de linha ao dispositivo.";
$text['description-extension']['pt-pt'] = "Atribuir a extensão e números ao dispositivo.";
$text['description-extension']['ro-ro'] = "";
@@ -5197,6 +5218,27 @@ $text['description-device_vendor']['ru-ru'] = "Введите название
$text['description-device_vendor']['sv-se'] = "Fyll i tillverkar-namn.";
$text['description-device_vendor']['uk-ua'] = "";
$text['description-device_location']['en-us'] = "Enter the device location.";
$text['description-device_location']['en-gb'] = "Enter the device location.";
$text['description-device_location']['ar-eg'] = "Enter the device location.";
$text['description-device_location']['de-at'] = "Geben Sie den Gerätestandort ein."; //copied from de-de
$text['description-device_location']['de-ch'] = "Geben Sie den Gerätestandort ein."; //copied from de-de
$text['description-device_location']['de-de'] = "Geben Sie den Gerätestandort ein.";
$text['description-device_location']['es-cl'] = "Introduzca la ubicación del dispositivo.";
$text['description-device_location']['es-mx'] = "Introduzca la ubicación del dispositivo."; //copied from es-cl
$text['description-device_location']['fr-ca'] = "Entrez dans l'emplacement de l'appareil."; //copied from fr-fr
$text['description-device_location']['fr-fr'] = "Entrez l'emplacement de l'appareil.";
$text['description-device_location']['he-il'] = "הזן את מיקום ההתקן.";
$text['description-device_location']['it-it'] = "Inserisci la posizione del dispositivo.";
$text['description-device_location']['nl-nl'] = "Voer de locatie van het apparaat in.";
$text['description-device_location']['pl-pl'] = "Wprowadź lokalizację urządzenia.";
$text['description-device_location']['pt-br'] = "Digite a localização do dispositivo.";
$text['description-device_location']['pt-pt'] = "Introduza a localização do dispositivo.";
$text['description-device_location']['ro-ro'] = "Introduceți locația dispozitivului.";
$text['description-device_location']['ru-ru'] = "Введите расположение устройства.";
$text['description-device_location']['sv-se'] = "Ange enhetens plats.";
$text['description-device_location']['uk-ua'] = "Введіть розташування пристрою.";
$text['description-device_time_zone']['en-us'] = "Enter the time zone.";
$text['description-device_time_zone']['en-gb'] = "Enter the time zone.";
$text['description-device_time_zone']['ar-eg'] = "";
@@ -5252,7 +5294,7 @@ $text['description-device_enabled']['fr-fr'] = "Activer ou désactiver le provis
$text['description-device_enabled']['he-il'] = "";
$text['description-device_enabled']['it-it'] = "Abilita o disabilita il provisioning per questo dispositivo.";
$text['description-device_enabled']['nl-nl'] = "Zet beschikbaarstellen aan/uit voor dit apparaat.";
$text['description-device_enabled']['pl-pl'] = "Włącz lub wyłącz automatyczna konfiguracje tego urządzenia";
$text['description-device_enabled']['pl-pl'] = "Włącz lub wyłącz automatyczną konfigurację tego urządzenia";
$text['description-device_enabled']['pt-br'] = "Ative ou desative o provisionamento para este dispositivo.";
$text['description-device_enabled']['pt-pt'] = "Active ou Desactive o aprovisionamento para este dispositivo.";
$text['description-device_enabled']['ro-ro'] = "";
@@ -5378,7 +5420,7 @@ $text['description-device_key_line']['fr-fr'] = "Sélectionnez le numéro de la
$text['description-device_key_line']['he-il'] = "בחר את מספר הקו";
$text['description-device_key_line']['it-it'] = "Seleziona il numero di linea.";
$text['description-device_key_line']['nl-nl'] = "Kies een lijnnummer.";
$text['description-device_key_line']['pl-pl'] = "Wybierz numer lini";
$text['description-device_key_line']['pl-pl'] = "Wybierz numer linii.";
$text['description-device_key_line']['pt-br'] = "Selecione o número da linha.";
$text['description-device_key_line']['pt-pt'] = "Selecione o número da linha.";
$text['description-device_key_line']['ro-ro'] = "";
@@ -5609,7 +5651,7 @@ $text['button-files']['fr-fr'] = "Fichiers";
$text['button-files']['he-il'] = "קבצים";
$text['button-files']['it-it'] = "Files";
$text['button-files']['nl-nl'] = "Bestanden";
$text['button-files']['pl-pl'] = "";
$text['button-files']['pl-pl'] = "Pliki";
$text['button-files']['pt-br'] = "Arquivos"; //copied from pt-pt
$text['button-files']['pt-pt'] = "Arquivos";
$text['button-files']['ro-ro'] = "";
@@ -5651,7 +5693,7 @@ $text['description-device_vendors']['fr-fr'] = "Définit la liste des fournisseu
$text['description-device_vendors']['he-il'] = "";
$text['description-device_vendors']['it-it'] = "Definisce la lista dei produttori di telefoni auto configurabili.";
$text['description-device_vendors']['nl-nl'] = "Definieert de lijst van fabrikanten die met apparaat voorzieningen leiden.";
$text['description-device_vendors']['pl-pl'] = "";
$text['description-device_vendors']['pl-pl'] = "Definiuje listę producentów używanych w automatycznej konfiguracji urządzeń.";
$text['description-device_vendors']['pt-br'] = "Defina a lista de fabricantes usados com o provisionamento de dispositivos.";
$text['description-device_vendors']['pt-pt'] = "";
$text['description-device_vendors']['ro-ro'] = "";
@@ -5735,7 +5777,7 @@ $text['description-device_vendor']['fr-fr'] = "Définit la liste des fournisseur
$text['description-device_vendor']['he-il'] = "";
$text['description-device_vendor']['it-it'] = "Definisce la lista dei produttori di telefoni auto configurabili.";
$text['description-device_vendor']['nl-nl'] = "Definieert de lijst van fabrikanten die gebruikt worden met apparaat voorzieningen.";
$text['description-device_vendor']['pl-pl'] = "";
$text['description-device_vendor']['pl-pl'] = "Definiuje listę producentów używanych w automatycznej konfiguracji urządzeń.";
$text['description-device_vendor']['pt-br'] = "Defina a lista de fabricantes usados com o provisionamento de dispositivos.";
$text['description-device_vendor']['pt-pt'] = "";
$text['description-device_vendor']['ro-ro'] = "";
@@ -5756,7 +5798,7 @@ $text['button-vendors']['fr-fr'] = "Fabriquant";
$text['button-vendors']['he-il'] = "";
$text['button-vendors']['it-it'] = "Produttori";
$text['button-vendors']['nl-nl'] = "Fabrikanten";
$text['button-vendors']['pl-pl'] = "Producent";
$text['button-vendors']['pl-pl'] = "Producenci";
$text['button-vendors']['pt-br'] = "Fabricantes"; //copied from pt-pt
$text['button-vendors']['pt-pt'] = "Fabricante";
$text['button-vendors']['ro-ro'] = "";
@@ -5777,7 +5819,7 @@ $text['label-column_name']['fr-fr'] = "Nom de colonne";
$text['label-column_name']['he-il'] = "";
$text['label-column_name']['it-it'] = "";
$text['label-column_name']['nl-nl'] = "Kolomnaam";
$text['label-column_name']['pl-pl'] = "";
$text['label-column_name']['pl-pl'] = "Nazwa kolumny";
$text['label-column_name']['pt-br'] = "Nome da Coluna";
$text['label-column_name']['pt-pt'] = "";
$text['label-column_name']['ro-ro'] = "";

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2020
Portions created by the Initial Developer are Copyright (C) 2008-2022
the Initial Developer. All Rights Reserved.
*/
@@ -115,6 +115,7 @@
$device_username = $_POST["device_username"];
$device_password = $_POST["device_password"];
$device_vendor = $_POST["device_vendor"];
$device_location = $_POST["device_location"];
$device_uuid_alternate = $_POST["device_uuid_alternate"];
$device_model = $_POST["device_model"];
$device_firmware_version = $_POST["device_firmware_version"];
@@ -128,6 +129,7 @@
//$server_address = $_POST["server_address"];
//$outbound_proxy_primary = $_POST["outbound_proxy_primary"];
//$outbound_proxy_secondary = $_POST["outbound_proxy_secondary"];
//$label = $_POST["label"];
//$display_name = $_POST["display_name"];
//$user_id = $_POST["user_id"];
//$auth_id = $_POST["auth_id"];
@@ -256,6 +258,9 @@
if (permission_exists('device_vendor')) {
$array['devices'][0]['device_vendor'] = $device_vendor;
}
if (permission_exists('device_location')) {
$array['devices'][0]['device_location'] = $device_location;
}
if (permission_exists('device_alternate') && is_uuid($device_uuid_alternate)) {
$array['devices'][0]['device_uuid_alternate'] = $device_uuid_alternate;
}
@@ -316,6 +321,7 @@
} else if ($new_line && isset($_SESSION['provision']['server_address_secondary'])) {
$array['devices'][0]['device_lines'][$y]['server_address_secondary'] = $_SESSION['provision']['server_address_secondary']['text'];
}
$array['devices'][0]['device_lines'][$y]['label'] = $row["label"];
$array['devices'][0]['device_lines'][$y]['display_name'] = $row["display_name"];
$array['devices'][0]['device_lines'][$y]['user_id'] = $row["user_id"];
if (permission_exists('device_line_auth_id')) {
@@ -385,7 +391,9 @@
}
//$array['devices'][0]['device_keys'][$y]['device_key_protected'] = $row["device_key_protected"];
$array['devices'][0]['device_keys'][$y]['device_key_label'] = $row["device_key_label"];
$array['devices'][0]['device_keys'][$y]['device_key_icon'] = $row["device_key_icon"];
if (permission_exists('device_key_icon')) {
$array['devices'][0]['device_keys'][$y]['device_key_icon'] = $row["device_key_icon"];
}
$y++;
}
}
@@ -500,6 +508,7 @@
$device_username = $row["device_username"];
$device_password = $row["device_password"];
$device_vendor = $row["device_vendor"];
$device_location = $row["device_location"];
$device_uuid_alternate = $row["device_uuid_alternate"];
$device_model = $row["device_model"];
$device_firmware_version = $row["device_firmware_version"];
@@ -547,6 +556,7 @@
$device_lines[$x]['outbound_proxy_secondary'] = $_SESSION['provision']['outbound_proxy_secondary']['text'];
$device_lines[$x]['server_address_primary'] = $_SESSION['provision']['server_address_primary']['text'];
$device_lines[$x]['server_address_secondary'] = $_SESSION['provision']['server_address_secondary']['text'];
$device_lines[$x]['label'] = '';
$device_lines[$x]['display_name'] = '';
$device_lines[$x]['user_id'] = '';
$device_lines[$x]['auth_id'] = '';
@@ -1041,6 +1051,7 @@
if (permission_exists('device_line_outbound_proxy_secondary')) {
echo " <td class='vtable'>".$text['label-outbound_proxy_secondary']."</td>\n";
}
echo " <td class='vtable'>".$text['label-label']."</td>\n";
echo " <td class='vtable'>".$text['label-display_name']."</td>\n";
echo " <td class='vtable'>".$text['label-user_id']."</td>\n";
if (permission_exists('device_line_auth_id')) {
@@ -1181,6 +1192,10 @@
echo " </td>\n";
}
echo " <td align='left'>\n";
echo " <input class='formfld' style='min-width: 75px; width: 100%;' type='text' name='device_lines[".$x."][label]' maxlength='255' value=\"".escape($row['label'])."\"/>\n";
echo " </td>\n";
echo " <td align='left'>\n";
echo " <input class='formfld' style='min-width: 75px; width: 100%;' type='text' name='device_lines[".$x."][display_name]' maxlength='255' value=\"".escape($row['display_name'])."\"/>\n";
echo " </td>\n";
@@ -1322,7 +1337,9 @@
echo " <td class='vtable'>".$text['label-device_key_extension']."</td>\n";
}
echo " <td class='vtable'>".$text['label-device_key_label']."</td>\n";
echo " <td class='vtable'>".$text['label-device_key_icon']."</td>\n";
if (permission_exists('device_key_icon')) {
echo " <td class='vtable'>".$text['label-device_key_icon']."</td>\n";
}
if (is_array($device_keys) && @sizeof($device_keys) > 1 && permission_exists('device_key_delete')) {
echo " <td class='vtable edit_delete_checkbox_all' onmouseover=\"swap_display('delete_label_keys', 'delete_toggle_keys');\" onmouseout=\"swap_display('delete_label_keys', 'delete_toggle_keys');\">\n";
echo " <span id='delete_label_keys'>".$text['label-delete']."</span>\n";
@@ -1354,7 +1371,9 @@
echo " <td class='vtable'>".$text['label-device_key_extension']."</td>\n";
}
echo " <td class='vtable'>".$text['label-device_key_label']."</td>\n";
echo " <td class='vtable'>".$text['label-device_key_icon']."</td>\n";
if (permission_exists('device_key_icon')) {
echo " <td class='vtable'>".$text['label-device_key_icon']."</td>\n";
}
if (is_array($device_keys) && @sizeof($device_keys) > 1 && permission_exists('device_key_delete')) {
echo " <td class='vtable edit_delete_checkbox_all' onmouseover=\"swap_display('delete_label_keys', 'delete_toggle_keys');\" onmouseout=\"swap_display('delete_label_keys', 'delete_toggle_keys');\">\n";
echo " <span id='delete_label_keys'>".$text['label-delete']."</span>\n";
@@ -1566,10 +1585,12 @@
echo "<td align='left'>\n";
echo " <input class='formfld' type='text' name='device_keys[".$x."][device_key_label]' style='width: 75px;' maxlength='255' value=\"".escape($row['device_key_label'])."\"/>\n";
echo "</td>\n";
echo "<td align='left'>\n";
echo " <input class='formfld' type='text' name='device_keys[".$x."][device_key_icon]' style='width: 75px;' maxlength='255' value=\"".escape($row['device_key_icon'])."\"/>\n";
echo "</td>\n";
if (permission_exists('device_key_icon')) {
echo "<td align='left'>\n";
echo " <input class='formfld' type='text' name='device_keys[".$x."][device_key_icon]' style='width: 75px;' maxlength='255' value=\"".escape($row['device_key_icon'])."\"/>\n";
echo "</td>\n";
}
if (is_array($device_keys) && @sizeof($device_keys) > 1 && permission_exists('device_key_delete')) {
if (is_uuid($row['device_key_uuid'])) {
@@ -1746,6 +1767,19 @@
echo "</tr>\n";
}
if (permission_exists('device_location')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
echo " ".$text['label-device_location']."\n";
echo "</td>\n";
echo "<td class='vtable' align='left'>\n";
echo " <input class='formfld' type='text' name='device_location' maxlength='255' value=\"".escape($device_location)."\"/>\n";
echo "<br />\n";
echo $text['description-device_location']."\n";
echo "</td>\n";
echo "</tr>\n";
}
if (permission_exists('device_model')) {
echo "<tr>\n";
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";

View File

@@ -278,7 +278,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];
@@ -290,6 +290,17 @@
//get the parent table name
$parent = get_parent($schema, $table_name);
//count the field names
if (isset($field_count[$table_name][$field_name])) {
$field_count[$table_name][$field_name]++;
}
else {
$field_count[$table_name][$field_name] = 0;
}
//set the ordinal ID
$id = $field_count[$table_name][$field_name];
//remove formatting from the phone number
if ($field_name == "phone_number") {
$result[$key] = preg_replace('{\D}', '', $result[$key]);
@@ -310,14 +321,14 @@
}
}
else {
$array[$parent][$row_id][$table_name][$y]['domain_uuid'] = $domain_uuid;
$array[$parent][$row_id][$table_name][$y][$field_name] = $result[$key];
$array[$parent][$row_id][$table_name][$id]['domain_uuid'] = $domain_uuid;
$array[$parent][$row_id][$table_name][$id][$field_name] = $result[$key];
}
if ($field_name == "username") {
foreach ($users as $field) {
if ($field['username'] == $result[$key]) {
$array[$table_name][$row_id]['device_user_uuid'] = $field['user_uuid'];
$array[$parent][$table_name][$id]['device_user_uuid'] = $field['user_uuid'];
}
}
}
@@ -344,9 +355,41 @@
unset($sql, $parameters);
}
//debug information
//view_array($field_count);
//process a chunk of the array
if ($row_id === 1000) {
//remove sub table data if it doesn't have more details than domain_uuid an device_uuid
$x = 0;
foreach ($array['devices'] as $row) {
//remove empty device keys
if (isset($row['device_keys'])) {
$y = 0;
foreach ($row['device_keys'] as &$sub_row) {
if (count($sub_row) == 2) {
unset($array['devices'][$x]['device_keys']);
}
$y++;
}
}
//remove empty device lines
if (isset($row['device_lines'])) {
$y = 0;
foreach ($row['device_lines'] as &$sub_row) {
if (count($sub_row) == 2) {
unset($array['devices'][$x]['device_lines']);
}
$y++;
}
}
//increment device id
$x++;
}
//save to the data
$database->save($array);
//$message = $database->message;
@@ -359,21 +402,49 @@
}
} //if ($from_row <= $row_id)
unset($field_count);
$row_number++;
$row_id++;
} //end while
fclose($handle);
//remove sub table data if it doesn't have more details than domain_uuid an device_uuid
$x = 0;
foreach ($array['devices'] as $row) {
//remove empty device keys
if (isset($row['device_keys'])) {
$y = 0;
foreach ($row['device_keys'] as &$sub_row) {
if (count($sub_row) == 2) {
unset($array['devices'][$x]['device_keys']);
}
$y++;
}
}
//remove empty device lines
if (isset($row['device_lines'])) {
$y = 0;
foreach ($row['device_lines'] as &$sub_row) {
if (count($sub_row) == 2) {
unset($array['devices'][$x]['device_lines']);
}
$y++;
}
}
//increment device id
$x++;
}
//debug info
//echo "<pre>\n";
//print_r($array);
//echo "</pre>\n";
//exit;
//view_array($array);
//save to the data
if (is_array($array)) {
$database->save($array);
//$message = $database->message;
//view_array($message);
}
if (strlen($_SESSION['provision']['path']['text']) > 0) {

View File

@@ -134,10 +134,10 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'device_vendor_function_edit.php?device_vendor_uuid='.urlencode($_GET['id'])]);
}
if (permission_exists('device_vendor_function_edit') && $vendor_functions) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('device_vendor_function_delete') && $vendor_functions) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>\n";
@@ -157,7 +157,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('device_vendor_function_add') || permission_exists('device_vendor_function_edit') || permission_exists('device_vendor_function_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($vendor_functions ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($vendor_functions ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
echo th_order_by('name', $text['label-name'], $order_by, $order);
@@ -204,7 +204,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('device_vendor_function_add') || permission_exists('device_vendor_function_edit') || permission_exists('device_vendor_function_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='vendor_functions[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='vendor_functions[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='vendor_functions[$x][uuid]' value='".escape($row['device_vendor_function_uuid'])."' />\n";
echo " </td>\n";
}
@@ -263,4 +263,4 @@
echo "</script>\n";
?>
?>

View File

@@ -129,10 +129,10 @@
echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$_SESSION['theme']['button_icon_add'],'id'=>'btn_add','link'=>'device_vendor_edit.php']);
}
if (permission_exists('device_vendor_edit') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (permission_exists('device_vendor_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
echo "<form id='form_search' class='inline' method='get'>\n";
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
@@ -165,7 +165,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('device_vendor_edit') || permission_exists('device_vendor_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
echo th_order_by('name', $text['label-name'], $order_by, $order);
@@ -185,7 +185,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('device_vendor_edit') || permission_exists('device_vendor_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='vendors[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='vendors[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='vendors[$x][uuid]' value='".escape($row['device_vendor_uuid'])."' />\n";
echo " </td>\n";
}
@@ -221,4 +221,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -78,6 +78,14 @@
$order_by = $_GET["order_by"];
$order = $_GET["order"];
//set the time zone
if (isset($_SESSION['domain']['time_zone']['name'])) {
$time_zone = $_SESSION['domain']['time_zone']['name'];
}
else {
$time_zone = date_default_timezone_get();
}
//get total devices count from the database
$sql = "select count(*) from v_devices ";
$sql .= "where domain_uuid = :domain_uuid ";
@@ -173,7 +181,9 @@
$offset = $rows_per_page * $page;
//get the list
$sql = "select d.*, d2.device_label as alternate_label ";
$sql = "select d.*, d2.device_label as alternate_label, ";
$sql .= "to_char(timezone(:time_zone, d.device_provisioned_date), 'DD Mon YYYY') as provisioned_date_formatted, \n";
$sql .= "to_char(timezone(:time_zone, d.device_provisioned_date), 'HH12:MI:SS am') as provisioned_time_formatted \n";
$sql .= "from v_devices as d, v_devices as d2 ";
if (isset($_GET['show']) && $_GET['show'] == "all" && permission_exists('device_all')) {
$sql .= ", v_domains as d3 ";
@@ -244,6 +254,7 @@
$sql .= "order by $order_by $order ";
}
$sql .= limit_offset($rows_per_page, $offset);
$parameters['time_zone'] = $time_zone;
$database = new database;
$devices = $database->select($sql, $parameters, 'all');
unset($sql, $parameters);
@@ -289,11 +300,11 @@
unset($margin_left);
}
if (permission_exists('device_edit') && $devices) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','style'=>$margin_left,'onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none; '.$margin_left,'onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
unset($margin_left);
}
if (permission_exists('device_delete') && $devices) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','style'=>$margin_left,'onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none; '.$margin_left,'onclick'=>"modal_open('modal-delete','btn_delete');"]);
unset($margin_left);
}
echo "<form id='form_search' class='inline' method='get'>\n";
@@ -314,9 +325,9 @@
echo " <option value='settings' ".($fields == 'settings' ? " selected='selected'" : null).">".$text['label-settings']."</option>\n";
echo " <option value='all' ".($fields == 'all' ? " selected='selected'" : null).">".$text['label-all']."</option>\n";
echo " </select>";
echo "<input type='text' class='txt list-search' name='search' id='search' style='margin-left: 0 !important;' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'devices.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' style='margin-left: 0 !important;' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'devices.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -344,7 +355,7 @@
echo "<tr class='list-header'>\n";
if (permission_exists('device_edit') || permission_exists('device_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($devices ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($devices ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('device_all')) {
@@ -394,7 +405,7 @@
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('device_edit') || permission_exists('device_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='devices[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='devices[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='devices[$x][uuid]' value='".escape($row['device_uuid'])."' />\n";
echo " </td>\n";
}
@@ -427,7 +438,7 @@
echo $text['label-'.$row['device_enabled']];
}
echo " </td>\n";
echo " <td class='no-link'><a title='".escape($row['device_provisioned_agent'])."' href='javascript:void(0)'>".escape($row['device_provisioned_date'])."</a> &nbsp; ".escape($device_provisioned_method)." &nbsp; <a href='".escape($device_provisioned_method)."://".escape($row['device_provisioned_ip'])."' target='_blank'>".escape($row['device_provisioned_ip'])."</a>&nbsp;</td>\n";
echo " <td class='no-link'><a title='".escape($row['device_provisioned_agent'])."' href='javascript:void(0)'>".escape($row['provisioned_date_formatted'])." ".escape($row['provisioned_time_formatted'])."</a> &nbsp; ".escape($device_provisioned_method)." &nbsp; <a href='".escape($device_provisioned_method)."://".escape($row['device_provisioned_ip'])."' target='_blank'>".escape($row['device_provisioned_ip'])."</a>&nbsp;</td>\n";
echo " <td class='description overflow hide-sm-dn'>".escape($row['device_description'])."&nbsp;</td>\n";
if (permission_exists('device_edit') && $_SESSION['theme']['list_row_edit_button']['boolean'] == 'true') {
echo " <td class='action-button'>";

View File

@@ -120,6 +120,9 @@ include "root.php";
case "64167f":
$device_vendor = "polycom";
break;
case "482567":
$device_vendor = "polycom";
break;
case "000413":
$device_vendor = "snom";
break;

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2016-2021
Portions created by the Initial Developer are Copyright (C) 2016-2022
the Initial Developer. All Rights Reserved.
*/
@@ -231,7 +231,9 @@
$array['device_keys'][0]['device_key_line'] = $device_key_line;
$array['device_keys'][0]['device_key_value'] = $device_key_value;
$array['device_keys'][0]['device_key_label'] = $device_key_label;
$array['device_keys'][0]['device_key_icon'] = $device_key_icon;
if (permission_exists('device_key_icon')) {
$array['device_keys'][0]['device_key_icon'] = $device_key_icon;
}
$array['device_keys'][0]['device_key_category'] = $device_key_category;
$array['device_keys'][0]['device_key_vendor'] = $device_key_vendor;
@@ -252,7 +254,9 @@
$array['device_keys'][0]['device_key_type'] = $device_key_type;
$array['device_keys'][0]['device_key_value'] = $device_key_value;
$array['device_keys'][0]['device_key_label'] = $device_key_label;
$array['device_keys'][0]['device_key_icon'] = $device_key_icon;
if (permission_exists('device_key_icon')) {
$array['device_keys'][0]['device_key_icon'] = $device_key_icon;
}
}
if ($save) {
//add the temporary permissions
@@ -470,7 +474,9 @@
}
echo " <th>".$text['label-device_key_value']."</th>\n";
echo " <th>".$text['label-device_key_label']."</th>\n";
echo " <th class='shrink'>".$text['label-device_key_icon']."</th>\n";
if (permission_exists('device_key_icon')) {
echo " <th class='shrink'>".$text['label-device_key_icon']."</th>\n";
}
echo " </tr>\n";
}
@@ -610,11 +616,13 @@
echo " </td>\n";
echo " <td class='input'>\n";
echo " <input class='formfld' style='min-width: 50px; max-width: 100px;' type='text' name='device_keys[".$x."][device_key_label]' maxlength='255' value=\"".$row['device_key_label']."\">\n";
echo " </td>\n";
echo " <td class='input'>\n";
echo " <input class='formfld' style='min-width: 50px; max-width: 100px;' type='text' name='device_keys[".$x."][device_key_icon]' maxlength='255' value=\"".$row['device_key_icon']."\">\n";
echo " <input type='hidden' name='device_keys[".$x."][device_profile_uuid]' value=\"".$row['device_profile_uuid']."\">\n";
echo " </td>\n";
if (permission_exists('device_key_icon')) {
echo " <td class='input'>\n";
echo " <input class='formfld' style='min-width: 50px; max-width: 100px;' type='text' name='device_keys[".$x."][device_key_icon]' maxlength='255' value=\"".$row['device_key_icon']."\">\n";
echo " </td>\n";
}
echo " </tr>\n";
//set the previous vendor

View File

@@ -52,7 +52,9 @@
//if the public directory doesn't exist then create it
if ($domains_processed == 1) {
if (strlen($_SESSION['switch']['dialplan']['dir']) > 0) {
if (!is_dir($_SESSION['switch']['dialplan']['dir'].'/public')) { event_socket_mkdir($_SESSION['switch']['dialplan']['dir'].'/public'); }
if (!is_dir($_SESSION['switch']['dialplan']['dir'].'/public')) {
mkdir($_SESSION['switch']['dialplan']['dir'].'/public', 0770, false);
}
}
}
@@ -61,7 +63,7 @@
//make sure the public directory and xml file exist
if (strlen($_SESSION['switch']['dialplan']['dir']) > 0) {
if (!is_dir($_SESSION['switch']['dialplan']['dir'].'/public'.$_SESSION['domains'][$domain_uuid]['domain_name'])) {
event_socket_mkdir($_SESSION['switch']['dialplan']['dir'].'/public/'.$_SESSION['domains'][$domain_uuid]['domain_name']);
mkdir($_SESSION['switch']['dialplan']['dir'].'/public/'.$_SESSION['domains'][$domain_uuid]['domain_name'], 0770, false);
}
$file = $_SESSION['switch']['dialplan']['dir']."/public/".$_SESSION['domains'][$domain_uuid]['domain_name'].".xml";
if (!file_exists($file)) {
@@ -76,4 +78,4 @@
}
}
?>
?>

View File

@@ -728,7 +728,7 @@ $text['confirm-update-complete']['fr-fr'] = "Mis à jour";
$text['confirm-update-complete']['he-il'] = "";
$text['confirm-update-complete']['it-it'] = "Aggiornamento Completato.";
$text['confirm-update-complete']['nl-nl'] = "Bijwerken gereed";
$text['confirm-update-complete']['pl-pl'] = "Potwierdź";
$text['confirm-update-complete']['pl-pl'] = "Zaktualizowano pomyślnie";
$text['confirm-update-complete']['pt-br'] = "Atualização Completa"; //copied from pt-pt
$text['confirm-update-complete']['pt-pt'] = "Actualização Efectuada";
$text['confirm-update-complete']['ro-ro'] = "";

View File

@@ -235,9 +235,9 @@
$label = $text['label-11d'];
$abbrv = "11d";
break;
case "^(?:\+?1)?(\d{10})$":
case "^\+?1?([2-9]\d{2}[2-9]\d{2}\d{4})$":
$label = $text['label-north_america'];
$abbrv = "10-11d";
$abbrv = "10-11-NANP";
break;
case "^(011\d{9,17})$":
$label = $text['label-north_america_intl'];
@@ -438,6 +438,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'false';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
if (strlen($toll_allow) > 0) {
@@ -449,6 +450,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = $toll_allow;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
}
@@ -460,6 +462,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = $dialplan_expression;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
if ($gateway_type != "transfer") {
if (strlen($accountcode) > 0) {
@@ -472,6 +475,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'sip_h_X-accountcode='.$accountcode;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
else {
$y++;
@@ -483,6 +487,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'sip_h_X-accountcode=${accountcode}';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
}
@@ -495,6 +500,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'call_direction=outbound';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -505,6 +511,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'call_timeout';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
if ($gateway_type != "transfer") {
$y++;
@@ -516,6 +523,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'hangup_after_bridge=true';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -531,6 +539,7 @@
}
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -546,6 +555,20 @@
}
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
if ($dialplan_expression == '(^911$|^933$)') {
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
$array['dialplans'][$x]['dialplan_details'][$y]['domain_uuid'] = $_SESSION['domain_uuid'];
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_uuid'] = $dialplan_uuid;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_tag'] = 'action';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_type'] = 'lua';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = "email.lua \${email_to} \${email_from} '' 'Emergency Call' '\${sip_from_user}@\${domain_name} has called 911 emergency'";
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'false';
}
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -556,6 +579,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'inherit_codec=true';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -566,6 +590,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'ignore_display_updates=true';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -576,6 +601,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'callee_id_number=$1';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -586,6 +612,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'continue_on_fail=1,2,3,6,18,21,27,28,31,34,38,41,42,44,58,88,111,403,501,602,607';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if ($gateway_type == "enum" || $gateway_2_type == "enum") {
@@ -598,6 +625,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = $prefix_number."$1 e164.org";
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if (strlen($limit) > 0) {
@@ -610,6 +638,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = "hash \${domain_name} outbound ".$limit." !USER_BUSY";
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if (strlen($outbound_prefix) > 0) {
@@ -622,6 +651,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'outbound_prefix='.$outbound_prefix;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if ($pin_numbers_enable == "true") {
@@ -634,6 +664,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'pin_number=database';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
$y++;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_uuid'] = uuid();
@@ -644,6 +675,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'pin_number.lua';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if (strlen($prefix_number) > 2) {
@@ -656,6 +688,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = 'provider_prefix='.$prefix_number;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if ($gateway_type == "transfer") { $dialplan_detail_type = 'transfer'; } else { $dialplan_detail_type = 'bridge'; }
@@ -668,6 +701,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = $bridge_data;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
if (strlen($bridge_2_data) > 0) {
$y++;
@@ -679,6 +713,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = $bridge_2_data;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
if (strlen($bridge_3_data) > 0) {
@@ -691,6 +726,7 @@
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_data'] = $bridge_3_data;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_order'] = $y * 10;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_group'] = '0';
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_enabled'] = 'true';
}
unset($bridge_data);
@@ -1086,7 +1122,7 @@ function type_onchange(dialplan_detail_type) {
echo " <option value='^(\\d{9})\$'>".$text['label-9d']."</option>\n";
echo " <option value='^(\\d{10})\$'>".$text['label-10d']."</option>\n";
echo " <option value='^\+?(\\d{11})\$'>".$text['label-11d']."</option>\n";
echo " <option value='^\+?1?(\\d{10})\$'>".$text['label-north_america']."</option>\n";
echo " <option value='^\+?1?([2-9]\\d{2}[2-9]\\d{2}\\d{4})\$'>".$text['label-north_america']."</option>\n";
echo " <option value='^(011\\d{9,17})\$'>".$text['label-north_america_intl']."</option>\n";
echo " <option value='^\+?1?((?:264|268|242|246|441|284|345|767|809|829|849|473|658|876|664|787|939|869|758|784|721|868|649|340|684|671|670|808)\d{7})\$'>".$text['label-north_america_islands']."</option>\n";
echo " <option value='^(00\\d{9,17})\$'>".$text['label-europe_intl']."</option>\n";

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
Portions created by the Initial Developer are Copyright (C) 2008-2022
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -28,48 +28,49 @@
if ($domains_processed == 1) {
//get the list of domains
$sql = "select * from v_domains ";
$database = new database;
$domains = $database->select($sql, null, 'all');
unset($sql);
$sql = "select * from v_domains ";
$database = new database;
$domains = $database->select($sql, null, 'all');
unset($sql);
//dialplan class
$dialplan = new dialplan;
$dialplan->import($domains);
$dialplan = new dialplan;
$dialplan->import($domains);
//update the dialplan order
$database = new database;
$sql = "update v_dialplans set dialplan_order = '870' where dialplan_order = '980' and dialplan_name = 'cidlookup';\n";
$database->execute($sql);
$sql = "update v_dialplans set dialplan_order = '880' where dialplan_order = '990' and dialplan_name = 'call_screen';\n";
$database->execute($sql);
$sql = "update v_dialplans set dialplan_order = '890' where dialplan_order = '999' and dialplan_name = 'local_extension';\n";
$database->execute($sql);
unset($sql);
$database = new database;
$sql = "update v_dialplans set dialplan_order = '870' where dialplan_order = '980' and dialplan_name = 'cidlookup';\n";
$database->execute($sql);
$sql = "update v_dialplans set dialplan_order = '880' where dialplan_order = '990' and dialplan_name = 'call_screen';\n";
$database->execute($sql);
$sql = "update v_dialplans set dialplan_order = '890' where dialplan_order = '999' and dialplan_name = 'local_extension';\n";
$database->execute($sql);
unset($sql);
//set empty strings to null
$database = new database;
$sql = "update v_device_lines set outbound_proxy_primary = null where outbound_proxy_primary = '';\n";
$database->execute($sql);
$sql = "update v_device_lines set outbound_proxy_secondary = null where outbound_proxy_secondary = '';\n";
$database->execute($sql);
unset($sql);
$database = new database;
$sql = "update v_device_lines set outbound_proxy_primary = null where outbound_proxy_primary = '';\n";
$database->execute($sql);
$sql = "update v_device_lines set outbound_proxy_secondary = null where outbound_proxy_secondary = '';\n";
$database->execute($sql);
unset($sql);
//change recording_slots to recording_id
$database = new database;
$sql = "update v_dialplan_details set dialplan_detail_data = 'recording_id=true' ";
$sql .= "where dialplan_uuid in (select dialplan_uuid from v_dialplans where app_uuid = '430737df-5385-42d1-b933-22600d3fb79e') ";
$sql .= "and dialplan_detail_data = 'recording_slots=true'; \n";
$database->execute($sql);
$sql = "update v_dialplan_details set dialplan_detail_data = 'recording_id=false' ";
$sql .= "where dialplan_uuid in (select dialplan_uuid from v_dialplans where app_uuid = '430737df-5385-42d1-b933-22600d3fb79e') ";
$sql .= "and dialplan_detail_data = 'recording_slots=false'; \n";
$database->execute($sql);
unset($sql);
$database = new database;
$sql = "update v_dialplan_details set dialplan_detail_data = 'recording_id=true' ";
$sql .= "where dialplan_uuid in (select dialplan_uuid from v_dialplans where app_uuid = '430737df-5385-42d1-b933-22600d3fb79e') ";
$sql .= "and dialplan_detail_data = 'recording_slots=true'; \n";
$database->execute($sql);
$sql = "update v_dialplan_details set dialplan_detail_data = 'recording_id=false' ";
$sql .= "where dialplan_uuid in (select dialplan_uuid from v_dialplans where app_uuid = '430737df-5385-42d1-b933-22600d3fb79e') ";
$sql .= "and dialplan_detail_data = 'recording_slots=false'; \n";
$database->execute($sql);
unset($sql);
}
//add xml for each dialplan where the dialplan xml is empty
//additional dialplan upgrade commands
if ($domains_processed == 1) {
//add xml for each dialplan where the dialplan xml is empty
$sql = "select domain_name ";
$sql .= "from v_domains \n";
$database = new database;
@@ -90,16 +91,28 @@
$dialplans->destination = "database";
$dialplans->is_empty = "dialplan_xml";
$array = $dialplans->xml();
}
//delete the follow me bridge dialplan
if ($domains_processed == 1) {
//delete the follow me bridge dialplan
$database = new database;
$sql = "delete from v_dialplan_details where dialplan_uuid = '8ed73d1f-698f-466c-8a7a-1cf4cd229f7f' ";
$database->execute($sql);
$sql = "delete from v_dialplans where dialplan_uuid = '8ed73d1f-698f-466c-8a7a-1cf4cd229f7f' ";
$database->execute($sql);
unset($sql);
//change dialplan context ${domain_name} to global
$sql = "update v_dialplans set dialplan_context = 'global' ";
$sql .= "where dialplan_context = '\${domain_name}';\n";
$database->execute($sql);
unset($sql);
//update recordings dialplan change recording_id=true to recording_id
$sql = "update v_dialplans set dialplan_xml = replace(dialplan_xml, 'recording_id=true','recording_id=') where dialplan_xml like '%recording_id=true%'\n";
$database->execute($sql);
$sql = "update v_dialplan_details set dialplan_detail_data = 'recording_id=' where dialplan_detail_data = 'recording_id=true'\n";
$database->execute($sql);
unset($sql);
}
//add not found dialplan to inbound routes
@@ -140,7 +153,7 @@
$database = new database;
$database->app_name = 'dialplans';
$database->app_uuid = '742714e5-8cdf-32fd-462c-cbe7e3d655db';
$database->save($array);
$database->save($array, false);
unset($array);
$p->delete('dialplan_add', 'temp');

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2020
Portions created by the Initial Developer are Copyright (C) 2008-2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -86,10 +86,35 @@
$fp = event_socket_create($_SESSION['event_socket_ip_address'], $_SESSION['event_socket_port'], $_SESSION['event_socket_password']);
if ($fp) {
$result = event_socket_request($fp, 'api show application');
$_SESSION['switch']['applications'] = explode("\n\n", $result);
$_SESSION['switch']['applications'] = explode("\n", $_SESSION['switch']['applications'][0]);
$show_applications = explode("\n\n", $result);
$raw_applications = explode("\n", $show_applications[0]);
unset($result);
unset($fp);
$previous_application = null;
foreach($raw_applications as $row) {
if (strlen($row) > 0) {
$application_array = explode(",", $row);
$application = $application_array[0];
if (
$application != "name"
&& $application != "system"
&& $application != "bgsystem"
&& $application != "spawn"
&& $application != "bg_spawn"
&& $application != "spawn_stream"
&& stristr($application, "[") != true
) {
if ($application != $previous_application) {
$applications[] = $application;
}
}
$previous_application = $application;
}
}
$_SESSION['switch']['applications'] = $applications;
} else {
$_SESSION['switch']['applications'] = Array();
}
@@ -221,9 +246,15 @@
if (!preg_match("/system/i", $row["dialplan_detail_type"])) {
$dialplan_detail_type = $row["dialplan_detail_type"];
}
if (!preg_match("/spawn/i", $row["dialplan_detail_type"])) {
$dialplan_detail_type = $row["dialplan_detail_type"];
}
if (!preg_match("/system/i", $row["dialplan_detail_data"])) {
$dialplan_detail_data = $row["dialplan_detail_data"];
}
if (!preg_match("/spawn/i", $row["dialplan_detail_data"])) {
$dialplan_detail_data = $row["dialplan_detail_data"];
}
$array['dialplans'][$x]['dialplan_details'][$y]['domain_uuid'] = is_uuid($_POST["domain_uuid"]) ? $_POST["domain_uuid"] : null;
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_tag'] = $row["dialplan_detail_tag"];
$array['dialplans'][$x]['dialplan_details'][$y]['dialplan_detail_type'] = $dialplan_detail_type;
@@ -860,13 +891,8 @@
//if (strlen($dialplan_detail_tag) == 0 || $dialplan_detail_tag == "action" || $dialplan_detail_tag == "anti-action") {
echo " <optgroup label='".$text['optgroup-applications']."'>\n";
if (is_array($_SESSION['switch']['applications'])) {
foreach ($_SESSION['switch']['applications'] as $row) {
if (strlen($row) > 0) {
$application = explode(",", $row);
if ($application[0] != "name" && $application[0] != "system" && stristr($application[0], "[") != true) {
echo " <option value='".escape($application[0])."'>".escape($application[0])."</option>\n";
}
}
foreach ($_SESSION['switch']['applications'] as $application) {
echo " <option value='".escape($application)."'>".escape($application)."</option>\n";
}
}
echo " </optgroup>\n";

View File

@@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
Portions created by the Initial Developer are Copyright (C) 2008-2021
the Initial Developer. All Rights Reserved.
Contributor(s):
@@ -81,12 +81,30 @@
if (preg_match("/.*([\"\'])bgsystem([\"\']).*>/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*([\"\'])bg_spawn([\"\']).*>/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*([\"\'])spawn([\"\']).*>/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*([\"\'])spawn_stream([\"\']).*>/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*{system.*/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*{bgsystem.*/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*{bg_spawn.*/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*{spawn.*/i", $dialplan_xml)) {
$dialplan_valid = false;
}
if (preg_match("/.*{spawn_stream.*/i", $dialplan_xml)) {
$dialplan_valid = false;
}
//disable xml entities and load the xml object to test if the xml is valid
libxml_disable_entity_loader(true);

View File

@@ -241,7 +241,7 @@
($app_uuid == "4b821450-926b-175a-af93-a03c441818b1" && permission_exists('time_condition_add')) ||
permission_exists('dialplan_add')
) {
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'name'=>'btn_copy','onclick'=>"modal_open('modal-copy','btn_copy');"]);
echo button::create(['type'=>'button','label'=>$text['button-copy'],'icon'=>$_SESSION['theme']['button_icon_copy'],'id'=>'btn_copy','name'=>'btn_copy','style'=>'display: none;','onclick'=>"modal_open('modal-copy','btn_copy');"]);
}
if (
($app_uuid == "c03b422e-13a8-bd1b-e42b-b6b9b4d27ce4" && permission_exists('inbound_route_edit')) ||
@@ -250,7 +250,7 @@
($app_uuid == "4b821450-926b-175a-af93-a03c441818b1" && permission_exists('time_condition_edit')) ||
permission_exists('dialplan_edit')
) {
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'name'=>'btn_toggle','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
echo button::create(['type'=>'button','label'=>$text['button-toggle'],'icon'=>$_SESSION['theme']['button_icon_toggle'],'id'=>'btn_toggle','name'=>'btn_toggle','style'=>'display: none;','onclick'=>"modal_open('modal-toggle','btn_toggle');"]);
}
if (
($app_uuid == "c03b422e-13a8-bd1b-e42b-b6b9b4d27ce4" && permission_exists('inbound_route_delete')) ||
@@ -259,7 +259,7 @@
($app_uuid == "4b821450-926b-175a-af93-a03c441818b1" && permission_exists('time_condition_delete')) ||
permission_exists('dialplan_delete')
) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'id'=>'btn_delete','name'=>'btn_delete','style'=>'display: none;','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
}
echo "<form id='form_search' class='inline' method='get'>\n";
@@ -285,13 +285,13 @@
if ($order) {
echo "<input type='hidden' name='order' value='".escape($order)."'>";
}
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
$params[] = "app_uuid=".urlencode($app_uuid);
if ($order_by) { $params[] = "order_by=".urlencode($order_by); }
if ($order) { $params[] = "order=".urlencode($order); }
if ($_GET['show'] && permission_exists('dialplan_all')) { $params[] = "show=".urlencode($_GET['show']); }
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'dialplans.php'.($params ? '?'.implode('&', $params) : null),'style'=>($search == '' ? 'display: none;' : null)]);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'dialplans.php'.($params ? '?'.implode('&', $params) : null),'style'=>($search == '' ? 'display: none;' : null)]);
unset($params);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
@@ -357,7 +357,7 @@
permission_exists('dialplan_add') || permission_exists('dialplan_edit') || permission_exists('dialplan_delete')
) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($dialplans ?: "style='visibility: hidden;'").">\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle(); checkbox_on_change(this);' ".($dialplans ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
}
if ($_GET['show'] == "all" && permission_exists('dialplan_all')) {
@@ -414,7 +414,7 @@
($app_uuid == "4b821450-926b-175a-af93-a03c441818b1" && (permission_exists('time_condition_add') || permission_exists('time_condition_edit') || permission_exists('time_condition_delete')))
) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='dialplans[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='checkbox' name='dialplans[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"checkbox_on_change(this); if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='dialplans[$x][uuid]' value='".escape($row['dialplan_uuid'])."' />\n";
echo " </td>\n";
}

View File

@@ -1,4 +1,3 @@
<?php
/*
FusionPBX
@@ -280,9 +279,11 @@
//dialplan global
if (isset($dialplan['extension']['@attributes']['global']) && $dialplan['extension']['@attributes']['global'] == "true") {
$dialplan_global = true;
$dialplan_context = 'global';
}
else {
$dialplan_global = false;
$dialplan_context = $dialplan['@attributes']['name'];
}
//set the domain_uuid
@@ -301,7 +302,7 @@
$array['dialplans'][$x]['app_uuid'] = $dialplan['extension']['@attributes']['app_uuid'];
$array['dialplans'][$x]['dialplan_name'] = $dialplan['extension']['@attributes']['name'];
$array['dialplans'][$x]['dialplan_number'] = $dialplan['extension']['@attributes']['number'];
$array['dialplans'][$x]['dialplan_context'] = $dialplan['@attributes']['name'];
$array['dialplans'][$x]['dialplan_context'] = $dialplan_context;
if (strlen($dialplan['extension']['@attributes']['destination']) > 0) {
$array['dialplans'][$x]['dialplan_destination'] = $dialplan['extension']['@attributes']['destination'];
}

View File

@@ -1,7 +1,8 @@
<context name="{v_context}">
<extension name="domain-variables" number="" continue="true" app_uuid="9f356fe7-8cf8-4c14-8fe2-6daf89304458" order="20">
<condition>
<action application="export" data="origination_callee_id_name=${destination_number}"/>
<action application="export" data="origination_callee_id_name=${destination_number}" enabled="true"/>
<action application="set" data="operator=1000" inline="true" enabled="true"/>
</condition>
</extension>
</context>

View File

@@ -1,5 +1,5 @@
<context name="{v_context}">
<extension name="call-direction" number="" continue="true" app_uuid="3780f814-5543-4350-b65d-563512d1fe71" enabled="true" order="15">
<extension name="call-direction" number="" continue="true" app_uuid="3780f814-5543-4350-b65d-563512d1fe71" enabled="true" order="30">
<condition field="${call_direction}" expression="^(inbound|outbound|local)$" break="never">
<anti-action application="export" data="call_direction=local" inline="true"/>
</condition>

View File

@@ -43,15 +43,18 @@
</condition>
<condition field="${record_session}" expression="^true$"/>
<condition field="destination_number" expression="^(?:(?!\*).|\*59|\*\*|\*8|\*67|\*69)+$">
<action application="set" data="record_path=${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}" inline="true"/>
<action application="set" data="record_name=${uuid}.${record_ext}" inline="true"/>
<!--<action application="set" data="record_name=${destination_number}-${caller_id_number}_${strftime(%Y-%m-%d %H:%M)}.${record_ext}" inline="true"/>-->
<action application="set" data="recording_follow_transfer=true" inline="true"/>
<action application="bind_digit_action" data="local,*5,api:uuid_record,${uuid} mask ${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext},both,self"/>
<action application="bind_digit_action" data="local,*6,api:uuid_record,${uuid} unmask ${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext},both,self"/>
<action application="set" data="record_append=true" inline="true"/>
<action application="set" data="record_in_progress=true" inline="true"/>
<action application="set" data="api_on_answer=uuid_record ${uuid} start ${record_path}/${record_name}" inline="false"/>
<action application="set" data="record_path=${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}" inline="true" enabled="true"/>
<action application="set" data="record_name=${uuid}.${record_ext}" inline="true" enabled="true"/>
<!--<action application="set" data="record_name=${destination_number}-${caller_id_number}_${strftime(%Y-%m-%d %H:%M)}.${record_ext}" inline="true" enabled="true"/>-->
<action application="mkdir" data="${record_path}" enabled="true"/>
<action application="set" data="recording_follow_transfer=true" inline="true" enabled="true"/>
<action application="bind_digit_action" data="local,*5,api:uuid_record,${uuid} mask ${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext},both,self" enabled="true"/>
<action application="bind_digit_action" data="local,*6,api:uuid_record,${uuid} unmask ${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext},both,self" enabled="true"/>
<action application="set" data="record_append=true" inline="true" enabled="true"/>
<action application="set" data="record_in_progress=true" inline="true" enabled="true"/>
<action application="set" data="api_on_answer=uuid_record ${uuid} start ${record_path}/${record_name}" inline="false" enabled="false"/>
<action application="set" data="RECORD_ANSWER_REQ=true" enabled="true"/>
<action application="record_session" data="${record_path}/${record_name}" enabled="true"/>
</condition>
</extension>
</context>

View File

@@ -1,6 +1,7 @@
<context name="{v_context}">
<extension name="speed_dial" number="*0[ext]" continue="false" app_uuid="1a4a2611-01e3-4582-982b-4ada4d314ea3" enabled="true" order="70">
<condition field="destination_number" expression="^\*0(.*)$">
<action application="set" data="permissions=false"/>
<action application="lua" data="app.lua speed_dial $1"/>
</condition>
</extension>

View File

@@ -16,5 +16,10 @@
<!-- <action application="bind_digit_action" data="local,*0,exec:execute_extension,conf_xfer_from_dialplan XML conf-xfer@${domain_name},${bind_target},${bind_action_target}"/> -->
<action application="digit_action_set_realm" data="local"/>
</condition>
<condition field="${user_exists}" expression="true"/>
<condition field="${from_user_exists}" expression="true">
<action application="set" data="bridge_pre_execute_bleg_app=lua"/>
<action application="set" data="bridge_pre_execute_bleg_data=bind_digit_bleg.lua ${context}"/>
</condition>
</extension>
</context>

View File

@@ -1,10 +1,10 @@
<context name="{v_context}">
<extension name="agent_status" number="*22" continue="false" app_uuid="2eb032c5-c79d-4096-ac90-8a47fe40f411" order="200">
<condition field="destination_number" expression="^\*22$" break="never">
<condition field="destination_number" expression="^\*22$" break="on-true">
<action application="set" data="agent_id=${sip_from_user}"/>
<action application="lua" data="app.lua agent_status"/>
</condition>
<condition field="destination_number" expression="^agent\+(.*)$">
<condition field="destination_number" expression="^(?:agent\+|\*22)(.+)$">
<action application="set" data="agent_id=$1"/>
<action application="lua" data="app.lua agent_status"/>
</condition>

View File

@@ -17,7 +17,7 @@
<condition field="${park_in_use}" expression="true" break="never">
<action application="transfer" data="${referred_by_user} XML ${context}"/>
<anti-action application="set" data="effective_caller_id_name=${cond ${regex ${direction} | inbound} == true ? 'park#${caller_id_name}' : 'park#${callee_id_name}'}" inline="true"/>
<anti-action application="set" data="valet_parking_timeout=180"/>
<anti-action application="set" data="valet_parking_timeout=900"/>
<anti-action application="set" data="valet_hold_music=${hold_music}"/>
<anti-action application="set" data="valet_parking_orbit_exten=${referred_by_user}"/>
<anti-action application="answer" data=""/>

View File

@@ -5,7 +5,7 @@
<action application="set" data="valet_announce_slot=disable" enabled="false"/>
<action application="set" data="valet_hold_music=${hold_music}" enabled="true"/>
<action application="set" data="valet_parking_orbit_exten=${referred_by_user}" enabled="true"/>
<action application="set" data="valet_parking_timeout=180" enabled="true"/>
<action application="set" data="valet_parking_timeout=900" enabled="true"/>
<action application="valet_park" data="5900@${domain_name} auto in 5901 5999" enabled="true"/>
</condition>
</extension>

View File

@@ -1,11 +1,11 @@
<context name="{v_context}">
<extension name="operator" number="0" continue="false" app_uuid="0e1cd2d7-9d84-4959-8b6c-0cb23de4de59" order="480">
<extension name="operator" number="0" continue="false" app_uuid="0e1cd2d7-9d84-4959-8b6c-0cb23de4de59" enabled="false" order="480">
<condition field="destination_number" expression="^0$|^operator$">
<action application="export" data="transfer_context={v_context}" />
<action application="bind_meta_app" data="4 ab s execute_extension::att_xfer XML ${context}" />
<action application="bind_meta_app" data="5 ab s execute_extension::xfer_vm XML ${context}" />
<action application="set" data="domain_name={v_context}" />
<action application="transfer" data="1001 XML {v_context}"/>
<action application="export" data="transfer_context={v_context}" enabled="true"/>
<action application="bind_meta_app" data="4 ab s execute_extension::att_xfer XML ${context}" enabled="false"/>
<action application="bind_meta_app" data="5 ab s execute_extension::xfer_vm XML ${context}" enabled="false"/>
<action application="set" data="domain_name={v_context}" enabled="true"/>
<action application="transfer" data="${operator} XML {v_context}" enabled="true"/>
</condition>
</extension>
</context>

View File

@@ -1,22 +1,18 @@
<context name="{v_context}">
<extension name="do-not-disturb" number="*77,*78,*79" continue="false" app_uuid="df32d982-e39e-4ae5-a46d-aed1893873f2" enabled="true" order="490">
<condition field="destination_number" expression="^\*77$" break="on-true">
<action application="limit" data="hash dnd ${sip_from_uri} 1 !USER_BUSY"/>
<action application="set" data="enabled=toggle"/>
<action application="lua" data="do_not_disturb.lua"/>
</condition>
<condition field="destination_number" expression="^\*78$|\*363$" break="on-true">
<action application="limit" data="hash dnd ${sip_from_uri} 1 !USER_BUSY"/>
<action application="set" data="enabled=true"/>
<action application="lua" data="do_not_disturb.lua"/>
</condition>
<condition field="destination_number" expression="^\*79$" break="on-true">
<action application="limit" data="hash dnd ${sip_from_uri} 1 !USER_BUSY"/>
<action application="set" data="enabled=false"/>
<action application="lua" data="do_not_disturb.lua"/>
</condition>
<condition field="destination_number" expression="^dnd\+${caller_id_number}$" break="on-true">
<action application="limit" data="hash dnd ${sip_from_uri} 1 !USER_BUSY"/>
<action application="set" data="enabled=toggle"/>
<action application="lua" data="do_not_disturb.lua"/>
</condition>

View File

@@ -5,6 +5,11 @@
<action application="set" data="enabled=true"/>
<action application="lua" data="call_forward.lua $1"/>
</condition>
<condition field="destination_number" expression="^\*72$" break="on-true">
<action application="set" data="request_id=false"/>
<action application="set" data="enabled=true"/>
<action application="lua" data="call_forward.lua"/>
</condition>
<condition field="destination_number" expression="^\*73$" break="on-true">
<action application="set" data="request_id=false"/>
<action application="set" data="enabled=false"/>

View File

@@ -1,12 +1,20 @@
<context name="${domain_name}">
<extension name="call-forward-all" number="" app_uuid="57cf8f1f-9a2e-4996-bd80-d9300249b1ca" global="true" order="505">
<condition field="${user_exists}" expression="true"/>
<condition field="${forward_all_enabled}" expression="true">
<action application="export" data="sip_h_Diversion=&lt;sip:${caller_destination}@${external_sip_ip}:5060&gt;;reason=unconditional" inline="true" enabled="true"/>
<action application="set" data="outbound_caller_id_name=${user_data ${destination_number}@${domain_name} var outbound_caller_id_name}" inline="true" enabled="false"/>
<action application="set" data="outbound_caller_id_number=${user_data ${destination_number}@${domain_name} var outbound_caller_id_number}" inline="true" enabled="false"/>
<action application="set" data="accountcode=${user_data ${destination_number}@${domain_name} var accountcode}" inline="true" enabled="false"/>
<action application="transfer" data="${forward_all_destination} XML ${domain_name}"/>
</condition>
<condition field="${user_exists}" expression="true"/>
<condition field="${forward_all_enabled}" expression="true">
<action application="export" data="sip_h_Diversion=&lt;sip:${caller_destination}@${external_sip_ip}:5060&gt;;reason=unconditional" inline="true"/>
</condition>
<condition field="${call_direction}" expression="^local$" break="on-true">
<action application="set" data="outbound_caller_id_name=${user_data ${destination_number}@${domain_name} var outbound_caller_id_name}" inline="true"/>
<action application="set" data="outbound_caller_id_number=${user_data ${destination_number}@${domain_name} var outbound_caller_id_number}" inline="true"/>
<action application="set" data="accountcode=${user_data ${destination_number}@${domain_name} var accountcode}" inline="true"/>
<action application="transfer" data="${forward_all_destination} XML ${domain_name}"/>
</condition>
<condition field="${call_direction}" expression="inbound" break="on-true">
<action application="set" data="outbound_caller_id_name=${caller_id_name}" inline="true"/>
<action application="set" data="outbound_caller_id_number=${caller_id_number}" inline="true"/>
<action application="set" data="accountcode=${user_data ${destination_number}@${domain_name} var accountcode}" inline="true"/>
<action application="transfer" data="${forward_all_destination} XML ${domain_name}"/>
</condition>
</extension>
</context>

View File

@@ -15,6 +15,7 @@
<action application="set" data="called_party_call_group=${user_data(${dialed_extension}@${domain_name} var call_group)}"/>
<!--<action application="export" data="nolocal:sip_secure_media=${user_data(${dialed_extension}@${domain_name} var sip_secure_media)}"/>-->
<action application="hash" data="insert/${domain_name}-last_dial/${called_party_call_group}/${uuid}"/>
<action application="set" data="fail_on_single_reject=true"/>
<action application="set" data="api_hangup_hook=lua app.lua hangup"/>
<action application="export" data="domain_name=${domain_name}"/>
<!-- standard method -->

View File

@@ -19,9 +19,8 @@
$text = $language->get($_SESSION['domain']['language']['code'], 'core/user_settings');
//domain limits
echo "<div class='hud_box'>\n";
if (is_array($_SESSION['limit']) && sizeof($_SESSION['limit']) > 0) {
echo "<div class='hud_box'>\n";
$c = 0;
$row_style["0"] = "row_style0";
$row_style["1"] = "row_style1";
@@ -58,10 +57,10 @@
if ($show_stat) {
//add doughnut chart
?>
<div style='display: flex; flex-wrap: wrap; justify-content: center; padding-bottom: 20px;'>
<div style='display: flex; flex-wrap: wrap; justify-content: center; padding-bottom: 25px;'>
<div style='width: 175px; height: 175px;'>
<canvas id='domain_limits_chart'></canvas>
<span style='color: rgb(125,125,125);'><?php echo $hud_stat_title;?></span>
<div style='color: rgb(125,125,125); margin-top: 2px;'><?php echo $hud_stat_title;?></div>
</div>
</div>

View File

@@ -44,13 +44,6 @@
//process the http post data by action
if ($action != '' && is_array($emails) && @sizeof($emails) != 0) {
switch ($action) {
case 'download':
if (permission_exists('email_log_download')) {
$obj = new email_logs;
$obj->download($emails);
message::add($text['message-download_failed'],'negative',7000); //download failed, set message
}
break;
case 'resend':
if (permission_exists('email_log_resend')) {
$obj = new email_logs;
@@ -75,22 +68,23 @@
//add the search term
$search = strtolower($_GET["search"]);
if (strlen($search) > 0) {
$sql_search = "and (";
$sql_search .= "lower(type) like :search ";
$sql_search .= "or lower(email) like :search ";
$sql_search .= ") ";
$parameters['search'] = '%'.$search.'%';
}
//prepare to page the results
$sql = "select count(*) from v_email_logs ";
$sql .= "where true ";
if (permission_exists('email_log_all') && $_REQUEST['show'] != 'all') {
$sql .= "and domain_uuid = :domain_uuid ";
if ($_REQUEST['show'] == 'all' && permission_exists('email_log_all')) {
$sql .= "where true ";
}
else {
$sql .= "where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
}
$sql .= $sql_search;
if (strlen($search) > 0) {
$sql = "and (";
$sql .= "lower(type) like :search ";
$sql .= "or lower(email) like :search ";
$sql .= ") ";
$parameters['search'] = '%'.$search.'%';
}
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
@@ -107,7 +101,21 @@
$offset = $rows_per_page * $page;
//get the list
$sql = str_replace('count(*)', '*', $sql);
$sql = "select * from v_email_logs ";
if ($_REQUEST['show'] == 'all' && permission_exists('email_log_all')) {
$sql .= "where true ";
}
else {
$sql .= "where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
}
if (strlen($search) > 0) {
$sql = "and (";
$sql .= "lower(type) like :search ";
$sql .= "or lower(email) like :search ";
$sql .= ") ";
$parameters['search'] = '%'.$search.'%';
}
$sql .= order_by($order_by, $order, 'sent_date', 'desc');
$sql .= limit_offset($rows_per_page, $offset);
$database = new database;
@@ -199,9 +207,6 @@
if (permission_exists('email_log_resend') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-resend'],'icon'=>'paper-plane','onclick'=>"modal_open('modal-resend','btn_resend');"]);
}
if (permission_exists('email_log_download') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-download'],'icon'=>$_SESSION['theme']['button_icon_download'],'onclick'=>"list_action_set('download'); list_form_submit('form_list');"]);
}
if (permission_exists('email_log_delete') && $result) {
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'name'=>'btn_delete','onclick'=>"modal_open('modal-delete','btn_delete');"]);
}
@@ -215,9 +220,9 @@
}
}
echo button::create(['label'=>$text['button-refresh'],'icon'=>$_SESSION['theme']['button_icon_refresh'],'type'=>'button','onclick'=>'document.location.reload();']);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown='list_search_reset();'>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search','style'=>($search != '' ? 'display: none;' : null)]);
echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'email_logs.php','style'=>($search == '' ? 'display: none;' : null)]);
echo "<input type='text' class='txt list-search' name='search' id='search' value=\"".escape($search)."\" placeholder=\"".$text['label-search']."\" onkeydown=''>";
echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','id'=>'btn_search']);
//echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button','id'=>'btn_reset','link'=>'email_logs.php','style'=>($search == '' ? 'display: none;' : null)]);
if ($paging_controls_mini != '') {
echo "<span style='margin-left: 15px;'>".$paging_controls_mini."</span>";
}
@@ -271,7 +276,7 @@
echo "<table class='list'>\n";
echo "<tr class='list-header'>\n";
if (permission_exists('email_log_download') || permission_exists('email_log_resend') || permission_exists('email_log_delete')) {
if (permission_exists('email_log_resend') || permission_exists('email_log_delete')) {
echo " <th class='checkbox'>\n";
echo " <input type='checkbox' id='checkbox_all' name='checkbox_all' onclick='list_all_toggle();' ".($result ?: "style='visibility: hidden;'").">\n";
echo " </th>\n";
@@ -294,7 +299,7 @@
foreach($result as $row) {
$list_row_url = "email_log_view.php?id=".urlencode($row['email_log_uuid']);
echo "<tr class='list-row' href='".$list_row_url."'>\n";
if (permission_exists('email_log_download') || permission_exists('email_log_resend') || permission_exists('email_log_delete')) {
if (permission_exists('email_log_resend') || permission_exists('email_log_delete')) {
echo " <td class='checkbox'>\n";
echo " <input type='checkbox' name='emails[$x][checked]' id='checkbox_".$x."' value='true' onclick=\"if (!this.checked) { document.getElementById('checkbox_all').checked = false; }\">\n";
echo " <input type='hidden' name='emails[$x][uuid]' value='".escape($row['email_log_uuid'])."' />\n";
@@ -311,9 +316,6 @@
if (permission_exists('email_log_resend')) {
echo button::create(['type'=>'button','title'=>$text['button-resend'],'icon'=>'paper-plane','onclick'=>"list_self_check('checkbox_".$x."'); list_action_set('resend'); list_form_submit('form_list')"]);
}
if (permission_exists('email_log_download')) {
echo button::create(['type'=>'button','title'=>$text['button-download'],'icon'=>$_SESSION['theme']['button_icon_download'],'onclick'=>"list_self_check('checkbox_".$x."'); list_action_set('download'); list_form_submit('form_list')"]);
}
echo " </td>\n";
echo " <td class='description overflow hide-sm-dn no-link'>";
echo button::create(['type'=>'button','class'=>'link','label'=>$text['label-reference_cdr'],'link'=>PROJECT_PATH.'/app/xml_cdr/xml_cdr_details.php?id='.urlencode($row['call_uuid'])]);
@@ -368,4 +370,4 @@
//include the footer
require_once "resources/footer.php";
?>
?>

View File

@@ -1,23 +1,28 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
/*-
* Copyright (c) 2008-2022 Mark J Crane <markjcrane@fusionpbx.com>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
//includes
require_once "root.php";
@@ -34,23 +39,21 @@
$language = new text;
$text = $language->get();
//send email
//validate the token
$token = new token;
if (!$token->validate('/app/email_logs/email_logs.php')) {
//message::add($text['message-invalid_token'],'negative');
echo "<script>display_message('".$text['message-invalid_token']."', 'negative');</script>";
echo "<center>\n";
echo $text['message-invalid_token'];
echo " <br><br>\n";
echo " <input type='button' class='btn' style='margin-top: 15px;' value='".$text['button-close']."' onclick=\"$('#test_result_layer').fadeOut(200);\">\n";
echo "</center>\n";
exit;
}
//validate the token
$token = new token;
if (!$token->validate('/app/email_logs/email_logs.php')) {
//message::add($text['message-invalid_token'],'negative');
echo "<script>display_message('".$text['message-invalid_token']."', 'negative');</script>";
echo "<center>\n";
echo $text['message-invalid_token'];
echo " <br><br>\n";
echo " <input type='button' class='btn' style='margin-top: 15px;' value='".$text['button-close']."' onclick=\"$('#test_result_layer').fadeOut(200);\">\n";
echo "</center>\n";
exit;
}
$recipient = check_str($_POST['to']);
//show the content
echo "<b>".$text['header-settings']."</b>\n";
echo "<br><br>\n";
ksort($_SESSION['email']);
@@ -71,26 +74,48 @@
echo "<b>".$text['header-connection']."</b>\n";
echo "<br><br>\n";
$eml_body = "<b>Test Message</b><br /><br />\n";
$eml_body .= "This message is a test of the SMTP settings configured within your PBX.<br />\n";
$eml_body .= "If you received this message, your current SMTP settings are valid.<br /><br />\n";
//prepare the email
$email_recipient = check_str($_POST['to']);
ob_start();
$sent = !send_email($recipient, 'Test Message', $eml_body, $eml_error, null, null, 3, 3) ? false : true;
$response = ob_get_clean();
$email_body = "<b>Test Message</b><br /><br />\n";
$email_body .= "This message is a test of the SMTP settings configured within your PBX.<br />\n";
$email_body .= "If you received this message, your current SMTP settings are valid.<br /><br />\n";
echo $response;
//$email_attachments[0]['type'] = 'file';
//$email_attachments[0]['name'] = 'logo.png';
//$email_attachments[0]['value'] = $_SERVER["PROJECT_ROOT"]."/themes/default/images/logo.png";
$email_from_address = $_SESSION['email']['smtp_from']['text'];
$email_from_name = $_SESSION['email']['smtp_from_name']['text'];
//send email
//ob_start();
//$sent = !send_email($email_recipient, 'Test Message', $email_body, $email_error, null, null, 3, 3, $email_attachments) ? false : true;
//$email_response = ob_get_clean();
//send email
$email = new email;
$email->recipients = $email_recipient;
$email->subject = 'Test Message';
$email->body = $email_body;
$email->from_address = $email_from_address;
$email->from_name = $email_from_name;
$email->attachments = $email_attachments;
$email->debug_level = 3;
$email->method = 'direct';
$sent = $email->send();
//$email_error = $email->email_error;
//show additional information
echo "<br><br>\n";
echo "<b>".$text['header-result']."</b>\n";
echo "<br><br>\n";
echo $sent ? "Message Sent Successfully<br>Receipient: <a href='mailto:".$recipient."'>".$recipient."</a>" : "Message Failed...<br>".$eml_error;
echo $sent ? "Message Sent Successfully<br>Receipient: <a href='mailto:".$email_recipient."'>".$email_recipient."</a>" : "Message Failed...<br>".$email_error;
echo "<br>\n";
echo "<center>\n";
echo " <input type='button' class='btn' style='margin-top: 15px;' value='".$text['button-close']."' onclick=\"$('#test_result_layer').fadeOut(200);\">\n";
echo "</center>\n";
?>
?>

View File

@@ -147,42 +147,41 @@ if (!class_exists('email_logs')) {
$sql .= "where email_log_uuid = :email_log_uuid ";
$parameters['email_log_uuid'] = $uuid;
$database = new database;
$email = $database->select($sql, $parameters, 'column');
$found = $email != '' ? true : false;
$msg = $database->select($sql, $parameters, 'column');
$found = $msg != '' ? true : false;
unset($sql, $parameters, $row);
//resend email
if ($found) {
$msg = $email;
$resend = true;
require "secure/v_mailto.php";
if ($mailer_error == '') {
if ($sent) {
//build the delete array
$array[$this->table][$x][$this->uuid_prefix.'uuid'] = $uuid;
$array[$this->table][$x][$this->uuid_prefix.'uuid'] = $uuid;
//grant temporary permissions
$p = new permissions;
$p->add('email_log_delete', 'temp');
$p = new permissions;
$p->add('email_log_delete', 'temp');
//delete the email log
$database = new database;
$database->app_name = $this->app_name;
$database->app_uuid = $this->app_uuid;
$database->delete($array);
unset($array);
$database = new database;
$database->app_name = $this->app_name;
$database->app_uuid = $this->app_uuid;
$database->delete($array);
unset($array);
//revoke temporary permissions
$p->delete('email_log_delete', 'temp');
$p->delete('email_log_delete', 'temp');
//set message
message::add($text['message-message_resent']);
message::add($text['message-message_resent']);
}
else {
//set message
message::add($text['message-resend_failed'].": ".$mailer_error, 'negative', 4000);
message::add($text['message-resend_failed'].": ".$email->email_error, 'negative', 4000);
}
}
@@ -198,129 +197,7 @@ if (!class_exists('email_logs')) {
}
}
/**
* download records
*/
public function download($records) {
if (permission_exists($this->permission_prefix.'download')) {
//add multi-lingual support
$language = new text;
$text = $language->get();
//validate the token
$token = new token;
if (!$token->validate('/app/email_logs/email_logs.php')) {
message::add($text['message-invalid_token'],'negative');
header('Location: '.$this->list_page);
exit;
}
//download multiple records (eventually zip individual emails together)
if (is_array($records) && @sizeof($records) != 0) {
//retrieve checked records
foreach($records as $x => $record) {
if ($record['checked'] == 'true' && is_uuid($record['uuid'])) {
$uuids[] = $record['uuid'];
}
}
//download emails
if (is_array($uuids) && @sizeof($uuids) != 0) {
foreach ($uuids as $x => $uuid) {
//get email details
$sql = "select call_uuid, sent_date, type, email from v_email_logs ";
$sql .= "where email_log_uuid = :email_log_uuid ";
$parameters['email_log_uuid'] = $uuid;
$database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && @sizeof($row) != 0 && is_uuid($row['call_uuid'])) {
//santize filename components
$sent_date = str_replace('-','', $row['sent_date']);
$sent_date = str_replace(':','', $sent_date);
$sent_date = str_replace(' ','_', $sent_date);
$type = strtolower($row['type']);
$email_filename = $sent_date.'_'.$type.'_'.$row['call_uuid'].'.eml';
//single email
if (@sizeof($uuids) == 1) {
//set headers
header("Content-Type: message/rfc822");
header('Content-Disposition: attachment; filename="'.$email_filename.'"');
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header("Content-Length: ".strlen($row['email']));
//output content
echo $row['email'];
exit;
}
//multiple emails
else {
if (is_dir($_SESSION['server']['temp']['dir'])) {
if (file_put_contents($_SESSION['server']['temp']['dir'].'/'.$email_filename, $row['email'])) {
$email_files[] = $_SESSION['server']['temp']['dir'].'/'.$email_filename;
}
}
}
}
unset($sql, $parameters, $row);
}
//download compressed file
if (@sizeof($email_files) != 0) {
//define compressed file name
$compressed_filename = 'emails_'.date('Ymd_His').'.zip';
//compress email files
$command = 'zip -mj '.$_SESSION['server']['temp']['dir'].'/'.$compressed_filename.' '.implode(' ', $email_files).' 2>&1';
exec($command, $response, $restore_errlevel);
unset($command);
//push download
if (file_exists($_SESSION['server']['temp']['dir'].'/'.$compressed_filename)) {
//open file
session_cache_limiter('public');
$fd = fopen($_SESSION['server']['temp']['dir'].'/'.$compressed_filename, 'rb');
//set headers
header("Content-Type: application/zip");
header('Content-Disposition: attachment; filename="'.$compressed_filename.'"');
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header("Content-Length: ".filesize($_SESSION['server']['temp']['dir'].'/'.$compressed_filename));
//output file content
ob_clean();
fpassthru($fd);
fclose($fd);
//remove compressed file
@unlink($_SESSION['server']['temp']['dir'].'/'.$compressed_filename);
exit;
}
}
}
}
}
} //method
} //class
}
?>
?>

View File

@@ -0,0 +1,216 @@
<?php
//application details
$apps[$x]['name'] = 'Email Queue';
$apps[$x]['uuid'] = '5befdf60-a242-445f-91b3-2e9ee3e0ddf7';
$apps[$x]['category'] = 'system';
$apps[$x]['subcategory'] = 'email';
$apps[$x]['version'] = '2.10';
$apps[$x]['license'] = 'Member';
$apps[$x]['url'] = 'http://www.fusionpbx.com';
$apps[$x]['description']['en-us'] = '';
//default settings
$y=0;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "35c40afc-8b08-45f1-a96c-2f8a5352cd2d";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "email_queue";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "enabled";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$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'] = "Enable or disable the email queue.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "237efdc4-ba71-4c8f-8040-28d0e3a3d6bf";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "email_queue";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "limit";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "numeric";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "30";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Limit the records to process at one time.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "c4905655-2d67-4eda-9df0-029931c12c6f";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "email_queue";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "interval";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "numeric";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "120";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "How often to process the email queue. Default 120 seconds.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "d945ed66-39c1-44eb-b596-49c9399d8018";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "email_queue";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "retry_limit";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "numeric";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "3";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Number of tries to send an email before giving up.";
$y++;
//$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "a9eb5a16-e018-4a83-975e-eee2ed31f923";
//$apps[$x]['default_settings'][$y]['default_setting_category'] = "email_queue";
//$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "retry_interval";
//$apps[$x]['default_settings'][$y]['default_setting_name'] = "numeric";
//$apps[$x]['default_settings'][$y]['default_setting_value'] = "300";
//$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
//$apps[$x]['default_settings'][$y]['default_setting_description'] = "Time in seconds to wait before trying to email again. Default 300 seconds";
//permission details
$y = 0;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_view';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_add';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_edit';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_delete';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_all';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_attachment_view';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_attachment_add';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_attachment_edit';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_attachment_delete';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
//$apps[$x]['permissions'][$y]['groups'][] = 'admin';
$y++;
$apps[$x]['permissions'][$y]['name'] = 'email_queue_attachment_all';
$apps[$x]['permissions'][$y]['groups'][] = 'superadmin';
$y++;
//email queue
$y = 0;
$apps[$x]['db'][$y]['table']['name'] = 'v_email_queue';
$apps[$x]['db'][$y]['table']['parent'] = '';
$z = 0;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_queue_uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'char(36)';
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = 'primary';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'domain_uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'char(36)';
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = 'foreign';
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = 'v_domains';
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = 'domain_uuid';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'hostname';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_date';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'timestamptz';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'date';
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'date';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'false';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_from';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_to';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_subject';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_body';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_status';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_retry_count';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'numeric';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'false';
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = '';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_action_before';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_action_after';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'text';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_transcription';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name']['text'] = 'email_debug';
$apps[$x]['db'][$y]['fields'][$z]['name']['deprecated'] = 'email_substatus';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
//$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true';
$z++;
//attachments
$y = 6;
$apps[$x]['db'][$y]['table']['name'] = 'v_email_queue_attachments';
$apps[$x]['db'][$y]['table']['parent'] = 'v_email_queue';
$z = 0;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_queue_attachment_uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'char(36)';
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = 'primary';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'domain_uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'char(36)';
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = 'foreign';
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = 'v_domains';
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = 'domain_uuid';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_queue_uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = 'uuid';
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = 'char(36)';
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = 'foreign';
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['table'] = 'v_email_queue';
$apps[$x]['db'][$y]['fields'][$z]['key']['reference']['field'] = 'email_queue_uuid';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_attachment_type';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = '';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_attachment_path';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = '';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_attachment_name';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = '';
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = 'email_attachment_base64';
$apps[$x]['db'][$y]['fields'][$z]['type'] = 'text';
$apps[$x]['db'][$y]['fields'][$z]['search_by'] = '';
$z++;
?>

Some files were not shown because too many files have changed in this diff Show More