mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2025-12-30 00:53:50 +00:00
Add an option for extension language
This commit is contained in:
@@ -132,10 +132,14 @@
|
||||
$absolute_codec_string = $_POST["absolute_codec_string"];
|
||||
$force_ping = $_POST["force_ping"];
|
||||
$dial_string = $_POST["dial_string"];
|
||||
$extension_language = $_POST["extension_language"];
|
||||
$extension_type = $_POST["extension_type"];
|
||||
$enabled = $_POST["enabled"] ?? 'false';
|
||||
$description = $_POST["description"];
|
||||
|
||||
//set defaults
|
||||
$extension_language = $extension_language ?? '';
|
||||
|
||||
//outbound caller id number - only allow numeric and +
|
||||
if (!empty($outbound_caller_id_number)) {
|
||||
$outbound_caller_id_number = preg_replace('#[^\+0-9]#', '', $outbound_caller_id_number);
|
||||
@@ -157,7 +161,7 @@
|
||||
else{
|
||||
$subnet = 32;
|
||||
}
|
||||
|
||||
|
||||
if(($addr = inet_pton($ipaddr)) !== false){
|
||||
$ips[] = $ipaddr.'/'.$subnet;
|
||||
}
|
||||
@@ -425,6 +429,12 @@
|
||||
$password = generate_password($password_length, $password_strength);
|
||||
}
|
||||
|
||||
//seperate the language components into language, dialect and voice
|
||||
$language_array = explode("/",$ivr_menu_language);
|
||||
$ivr_menu_language = $language_array[0] ?? 'en';
|
||||
$ivr_menu_dialect = $language_array[1] ?? 'us';
|
||||
$ivr_menu_voice = $language_array[2] ?? 'callie';
|
||||
|
||||
//create the data array
|
||||
$array["extensions"][$i]["domain_uuid"] = $domain_uuid;
|
||||
$array["extensions"][$i]["extension_uuid"] = $extension_uuid;
|
||||
@@ -531,6 +541,11 @@
|
||||
$array["extensions"][$i]["dial_string"] = $dial_string;
|
||||
}
|
||||
}
|
||||
if (permission_exists('extension_language')) {
|
||||
$array['ivr_menus'][0]["extension_language"] = $extension_language;
|
||||
$array['ivr_menus'][0]["extension_dialect"] = $extension_dialect;
|
||||
$array['ivr_menus'][0]["extension_voice"] = $extension_voice;
|
||||
}
|
||||
if (permission_exists('extension_type')) {
|
||||
$array["extensions"][$i]["extension_type"] = $extension_type;
|
||||
}
|
||||
@@ -1273,7 +1288,7 @@
|
||||
echo " <br />\n";
|
||||
echo " ".$text['description-accountcode']."\n";
|
||||
echo "</td>\n";
|
||||
echo "</tr>\n";
|
||||
echo "</tr>\n";
|
||||
}
|
||||
|
||||
if (permission_exists('device_edit') && (empty($extension_type) || $extension_type != 'virtual')) {
|
||||
@@ -1974,6 +1989,35 @@
|
||||
echo "</tr>\n";
|
||||
}
|
||||
|
||||
if (permission_exists('extension_language')) {
|
||||
echo "<tr>\n";
|
||||
echo "<td class='vncell' valign='top' align='left' nowrap>\n";
|
||||
echo " ".$text['label-language']."\n";
|
||||
echo "</td>\n";
|
||||
echo "<td class='vtable' align='left'>\n";
|
||||
echo " <select class='formfld' type='text' name='extension_language'>\n";
|
||||
echo " <option></option>\n";
|
||||
if (!empty($extension_language) && !empty($extension_dialect) && !empty($extension_voice)) {
|
||||
$language_formatted = $extension_language."-".$extension_dialect." ".$extension_voice;
|
||||
echo " <option value='".escape($extension_language.'/'.$extension_dialect.'/'.$extension_voice)."' selected='selected'>".escape($language_formatted)."</option>\n";
|
||||
}
|
||||
if (!empty($language_paths)) {
|
||||
foreach ($language_paths as $key => $language_variables) {
|
||||
$language_variables = explode('/',$language_paths[$key]);
|
||||
$language = $language_variables[0];
|
||||
$dialect = $language_variables[1];
|
||||
$voice = $language_variables[2];
|
||||
if (empty($language_formatted) || $language_formatted != $language.'-'.$dialect.' '.$voice) {
|
||||
echo " <option value='".$language."/".$dialect."/".$voice."'>".$language."-".$dialect." ".$voice."</option>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
echo "<br />\n";
|
||||
//echo $text['description-language']."\n";
|
||||
echo "</td>\n";
|
||||
echo "</tr>\n";
|
||||
}
|
||||
|
||||
if (permission_exists('extension_type')) {
|
||||
echo "<tr>\n";
|
||||
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
|
||||
|
||||
Reference in New Issue
Block a user