diff --git a/www/vicidial/admin.php b/www/vicidial/admin.php
index 2a49b64d..f2323671 100644
--- a/www/vicidial/admin.php
+++ b/www/vicidial/admin.php
@@ -3943,12 +3943,13 @@ else
# 170220-1209 - Added switch_lead Agent API function
# 170220-1632 - Added In-group areacode_filter feature
# 170221-1542 - Added more DNC options for campaign setting 'manual dial filter', added counts to DNC add/delete page
+# 170223-0657 - Added warning for On Hold Message if too long, adjusted chooser placements
#
# make sure you have added a user to the vicidial_users MySQL table with at least user_level 9 to access this page the first time
-$admin_version = '2.14-592a';
-$build = '170221-1542';
+$admin_version = '2.14-593a';
+$build = '170223-0657';
$STARTtime = date("U");
$SQLdate = date("Y-m-d H:i:s");
@@ -5955,7 +5956,7 @@ if ($ADD==11)
echo ""._QXZ("All Admin User Groups")." \n";
echo "$NWB#campaigns-user_group$NWE\n";
echo "
"._QXZ("Active").": "._QXZ("Y")." "._QXZ("N")." $NWB#campaigns-active$NWE \n";
- echo ""._QXZ("Park Music-on-Hold").": "._QXZ("moh chooser")." $NWB#campaigns-park_ext$NWE \n";
+ echo ""._QXZ("Park Music-on-Hold").": "._QXZ("moh chooser")." $NWB#campaigns-park_ext$NWE \n";
echo ""._QXZ("Web Form").": $NWB#campaigns-web_form_address$NWE \n";
if ($SSoutbound_autodial_active > 0)
{
@@ -20660,7 +20661,7 @@ if ($ADD==31)
echo "$user_group \n";
echo "$NWB#campaigns-user_group$NWE\n";
- echo ""._QXZ("Park Music-on-Hold").": "._QXZ("moh chooser")." $NWB#campaigns-park_ext$NWE \n";
+ echo ""._QXZ("Park Music-on-Hold").": "._QXZ("moh chooser")." $NWB#campaigns-park_ext$NWE \n";
echo ""._QXZ("Web Form").": $NWB#campaigns-web_form_address$NWE \n";
if ($SSenable_second_webform > 0)
{
@@ -21214,7 +21215,7 @@ if ($ADD==31)
{$achHTML = ''._QXZ("CHAT").' ';}
echo ""._QXZ("Get Call Launch").": "._QXZ("NONE")." "._QXZ("SCRIPT")." "._QXZ("WEBFORM")." $eswHTML$cfwHTML$aemHTML$achHTML"._QXZ("$get_call_launch")." $NWB#campaigns-get_call_launch$NWE \n";
- echo ""._QXZ("Answering Machine Message").": "._QXZ("audio chooser")." $NWB#campaigns-am_message_exten$NWE\n";
+ echo ""._QXZ("Answering Machine Message").": "._QXZ("audio chooser")." $NWB#campaigns-am_message_exten$NWE\n";
$stmt="SELECT count(*) from vicidial_lists where campaign_id='$campaign_id' and am_message_exten_override != '' and active='Y' $LOGallowed_campaignsSQL;";
$rslt=mysql_to_mysqli($stmt, $link);
$rowx=mysqli_fetch_row($rslt);
@@ -21608,7 +21609,7 @@ if ($ADD==31)
echo ""._QXZ("Blind Monitor Notice").": $NWB#campaigns-blind_monitor_message$NWE \n";
- echo ""._QXZ("Blind Monitor Filename").": "._QXZ("audio chooser")." $NWB#campaigns-blind_monitor_filename$NWE \n";
+ echo ""._QXZ("Blind Monitor Filename").": "._QXZ("audio chooser")." $NWB#campaigns-blind_monitor_filename$NWE \n";
if ($campaign_allow_inbound == 'Y')
{
@@ -25652,7 +25653,7 @@ if ($ADD==3111)
echo ""._QXZ("Drop Exten").": $NWB#inbound_groups-drop_exten$NWE \n";
- echo ""._QXZ("Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-voicemail_ext$NWE \n";
+ echo ""._QXZ("Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-voicemail_ext$NWE \n";
echo ""._QXZ("Drop Transfer Group").": ";
echo "$Dgroups_menu";
@@ -25688,11 +25689,11 @@ if ($ADD==3111)
echo ""._QXZ("After Hours Lead Reset").": "._QXZ("Y")." "._QXZ("N")." "._QXZ("$after_hours_lead_reset")." $NWB#inbound_groups-after_hours_lead_reset$NWE \n";
- echo ""._QXZ("After Hours Message Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-after_hours_message_filename$NWE \n";
+ echo ""._QXZ("After Hours Message Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-after_hours_message_filename$NWE \n";
echo ""._QXZ("After Hours Extension").": $NWB#inbound_groups-after_hours_exten$NWE \n";
- echo ""._QXZ("After Hours Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-after_hours_voicemail$NWE \n";
+ echo ""._QXZ("After Hours Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-after_hours_voicemail$NWE \n";
echo ""._QXZ("After Hours Transfer Group").": ";
echo "$Agroups_menu";
@@ -25757,7 +25758,7 @@ if ($ADD==3111)
{
if (strlen($no_agent_action_value) < 3)
{$no_agent_action_value = 'nbdy-avail-to-take-call|vm-goodbye';}
- echo _QXZ("Audio File").": "._QXZ("audio chooser")." \n";
+ echo _QXZ("Audio File").": "._QXZ("audio chooser")." \n";
}
if ($no_agent_action=='EXTENSION')
{
@@ -25770,7 +25771,7 @@ if ($ADD==3111)
}
if ( ($no_agent_action=='VOICEMAIL') or ($no_agent_action=='VMAIL_NO_INST') )
{
- echo _QXZ("Voicemail Box").": "._QXZ("voicemail chooser")." \n";
+ echo _QXZ("Voicemail Box").": "._QXZ("voicemail chooser")." \n";
}
echo "
@@ -25838,7 +25839,7 @@ if ($ADD==3111)
{
if (strlen($areacode_filter_action_value) < 3)
{$areacode_filter_action_value = 'nbdy-avail-to-take-call|vm-goodbye';}
- echo _QXZ("Audio File").": "._QXZ("audio chooser")." \n";
+ echo _QXZ("Audio File").": "._QXZ("audio chooser")." \n";
}
if ($areacode_filter_action=='EXTENSION')
{
@@ -25851,7 +25852,7 @@ if ($ADD==3111)
}
if ( ($areacode_filter_action=='VOICEMAIL') or ($areacode_filter_action=='VMAIL_NO_INST') )
{
- echo _QXZ("Voicemail Box").": "._QXZ("voicemail chooser")." \n";
+ echo _QXZ("Voicemail Box").": "._QXZ("voicemail chooser")." \n";
}
echo "
@@ -25863,13 +25864,26 @@ if ($ADD==3111)
echo ""._QXZ("Max Calls Action").": "._QXZ("DROP")." "._QXZ("AFTERHOURS")." "._QXZ("NO_AGENT_NO_QUEUE")." "._QXZ("AREACODE_FILTER")." "._QXZ("$max_calls_action")." $NWB#inbound_groups-max_calls_action$NWE \n";
- echo ""._QXZ("Welcome Message Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-welcome_message_filename$NWE \n";
+ echo ""._QXZ("Welcome Message Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-welcome_message_filename$NWE \n";
echo ""._QXZ("Play Welcome Message").": "._QXZ("ALWAYS")." "._QXZ("NEVER")." "._QXZ("IF_WAIT_ONLY")." "._QXZ("YES_UNLESS_NODELAY")." "._QXZ("$play_welcome_message")." $NWB#inbound_groups-play_welcome_message$NWE \n";
- echo ""._QXZ("Music On Hold Context").": "._QXZ("moh chooser")." $NWB#inbound_groups-moh_context$NWE \n";
+ echo ""._QXZ("Music On Hold Context").": "._QXZ("moh chooser")." $NWB#inbound_groups-moh_context$NWE \n";
- echo ""._QXZ("On Hold Prompt Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-onhold_prompt_filename$NWE \n";
+ $wav='.wav';
+ $gsm='.gsm';
+ $ohpf_message='';
+ $stmt="SELECT audio_length from audio_store_details where audio_filename IN('$onhold_prompt_filename$wav','$onhold_prompt_filename$gsm') order by audio_length desc limit 1;";
+ $rslt=mysql_to_mysqli($stmt, $link);
+ $audio_to_print = mysqli_num_rows($rslt);
+ if ($audio_to_print > 0)
+ {
+ $rowx=mysqli_fetch_row($rslt);
+ $audio_length = $rowx[0];
+ if ($audio_length > 9) {$ohpf_message=""._QXZ("The On Hold Prompt Filename you have selected above is too long, please select one that is 9 seconds or less.")." ($audio_length "._QXZ("seconds").") \n";}
+ }
+
+ echo ""._QXZ("On Hold Prompt Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-onhold_prompt_filename$NWE \n$ohpf_message";
echo ""._QXZ("On Hold Prompt Interval").": $NWB#inbound_groups-prompt_interval$NWE \n";
@@ -25883,7 +25897,7 @@ if ($ADD==3111)
echo ""._QXZ("Calculate Estimated Hold Seconds").": $NWB#inbound_groups-calculate_estimated_hold_seconds$NWE \n";
- echo ""._QXZ("Estimated Hold Time Minimum Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-eht_minimum_prompt_filename$NWE \n";
+ echo ""._QXZ("Estimated Hold Time Minimum Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-eht_minimum_prompt_filename$NWE \n";
echo ""._QXZ("Estimated Hold Time Minimum Prompt No Block").": "._QXZ("N")." "._QXZ("Y")." "._QXZ("$eht_minimum_prompt_no_block")." $NWB#inbound_groups-eht_minimum_prompt_no_block$NWE \n";
@@ -25905,19 +25919,19 @@ if ($ADD==3111)
echo "$Wmenuslist";
echo " $NWB#inbound_groups-wait_time_option_callmenu$NWE \n";
- echo ""._QXZ("Wait Time Option Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-wait_time_option_voicemail$NWE \n";
+ echo ""._QXZ("Wait Time Option Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-wait_time_option_voicemail$NWE \n";
echo ""._QXZ("Wait Time Option Transfer In-Group").": ";
echo "$Wgroups_menu";
echo " $NWB#inbound_groups-wait_time_option_xfer_group$NWE \n";
- echo ""._QXZ("Wait Time Option Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-wait_time_option_press_filename$NWE \n";
+ echo ""._QXZ("Wait Time Option Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-wait_time_option_press_filename$NWE \n";
echo ""._QXZ("Wait Time Option Press No Block").": "._QXZ("N")." "._QXZ("Y")." "._QXZ("$wait_time_option_no_block")." $NWB#inbound_groups-wait_time_option_no_block$NWE \n";
echo ""._QXZ("Wait Time Option Press Filename Seconds").": $NWB#inbound_groups-wait_time_option_prompt_seconds$NWE \n";
- echo ""._QXZ("Wait Time Option After Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-wait_time_option_callback_filename$NWE \n";
+ echo ""._QXZ("Wait Time Option After Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-wait_time_option_callback_filename$NWE \n";
echo ""._QXZ("Wait Time Option Callback List ID").": $NWB#inbound_groups-wait_time_option_callback_list_id$NWE \n";
@@ -25941,23 +25955,23 @@ if ($ADD==3111)
echo "$Xmenuslist";
echo " $NWB#inbound_groups-hold_time_option_callmenu$NWE \n";
- echo ""._QXZ("Hold Time Option Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-hold_time_option_voicemail$NWE \n";
+ echo ""._QXZ("Hold Time Option Voicemail").": "._QXZ("voicemail chooser")." $NWB#inbound_groups-hold_time_option_voicemail$NWE \n";
echo ""._QXZ("Hold Time Option Transfer In-Group").": ";
echo "$Tgroups_menu";
echo " $NWB#inbound_groups-hold_time_option_xfer_group$NWE \n";
- echo ""._QXZ("Hold Time Option Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-hold_time_option_press_filename$NWE \n";
+ echo ""._QXZ("Hold Time Option Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-hold_time_option_press_filename$NWE \n";
echo ""._QXZ("Hold Time Option Press No Block").": "._QXZ("N")." "._QXZ("Y")." $hold_time_option_no_block $NWB#inbound_groups-hold_time_option_no_block$NWE \n";
echo ""._QXZ("Hold Time Option Press Filename Seconds").": $NWB#inbound_groups-hold_time_option_prompt_seconds$NWE \n";
- echo ""._QXZ("Hold Time Option After Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-hold_time_option_callback_filename$NWE \n";
+ echo ""._QXZ("Hold Time Option After Press Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-hold_time_option_callback_filename$NWE \n";
echo ""._QXZ("Hold Time Option Callback List ID").": $NWB#inbound_groups-hold_time_option_callback_list_id$NWE \n";
- echo ""._QXZ("Agent Alert Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-agent_alert_exten$NWE \n";
+ echo ""._QXZ("Agent Alert Filename").": "._QXZ("audio chooser")." $NWB#inbound_groups-agent_alert_exten$NWE \n";
echo ""._QXZ("Agent Alert Delay").": $NWB#inbound_groups-agent_alert_delay$NWE \n";
@@ -28343,7 +28357,7 @@ if ($ADD==3311)
echo ""._QXZ("Filter Extension").": $NWB#inbound_dids-extension$NWE \n";
echo ""._QXZ("Filter Extension Context").": $NWB#inbound_dids-exten_context$NWE \n";
- echo ""._QXZ("Filter Voicemail Box").": "._QXZ("voicemail chooser")." $NWB#inbound_dids-voicemail_ext$NWE \n";
+ echo ""._QXZ("Filter Voicemail Box").": "._QXZ("voicemail chooser")." $NWB#inbound_dids-voicemail_ext$NWE \n";
echo ""._QXZ("Filter Phone Extension").": $NWB#inbound_dids-phone$NWE \n";
echo ""._QXZ("Filter Server IP").": \n";
echo "$servers_list";
@@ -28956,7 +28970,7 @@ if ($ADD==3511)
$j=0;
while ($menus_to_print > $j)
{
- $choose_height = (($j * 80) + 550);
+ $choose_height = (($j * 100) + 550);
$option_value = $Aoption_value[$j];
$option_description = $Aoption_description[$j];
$option_route = $Aoption_route[$j];
@@ -29080,7 +29094,7 @@ if ($ADD==3511)
while ($j <= 20)
{
- $choose_height = (($j * 80) + 550);
+ $choose_height = (($j * 100) + 550);
$dtmf_list = " ";
$h=0;
while ($h <= 20)
@@ -31194,7 +31208,7 @@ if ($ADD==31111111111)
echo ""._QXZ("NVA Call URL").": $NWB#phones-nva_call_url$NWE \n";
echo ""._QXZ("NVA Search Method").": $NWB#phones-nva_search_method$NWE \n";
- echo ""._QXZ("NVA Error Filename").": "._QXZ("audio chooser")." $NWB#phones-nva_error_filename$NWE \n";
+ echo ""._QXZ("NVA Error Filename").": "._QXZ("audio chooser")." $NWB#phones-nva_error_filename$NWE \n";
echo ""._QXZ("NVA New List ID").": $NWB#phones-nva_new_list_id$NWE \n";
echo ""._QXZ("NVA New Phone Code").": $NWB#phones-nva_new_phone_code$NWE \n";
echo ""._QXZ("NVA New Status").": $NWB#phones-nva_new_status$NWE \n";
diff --git a/www/vicidial/help.php b/www/vicidial/help.php
index a08a29ac..bdabc4f2 100644
--- a/www/vicidial/help.php
+++ b/www/vicidial/help.php
@@ -2534,7 +2534,7 @@ if ($SSqc_features_active > 0)
- -
+ -
diff --git a/www/vicidial/non_agent_api.php b/www/vicidial/non_agent_api.php
index 29cafb3a..9c49cd0a 100644
--- a/www/vicidial/non_agent_api.php
+++ b/www/vicidial/non_agent_api.php
@@ -113,10 +113,11 @@
# 170205-2022 - Added phone_number_log function
# 170209-1149 - Added URL and IP logging
# 170219-1520 - Added 90-day duplicate check option
+# 170223-0743 - Added QXZ translation to admin web user functions text
#
-$version = '2.14-89';
-$build = '170219-1520';
+$version = '2.14-90';
+$build = '170223-0743';
$api_url_log = 0;
$startMS = microtime();
@@ -421,7 +422,7 @@ header ("Pragma: no-cache"); // HTTP/1.0
#############################################
##### START SYSTEM_SETTINGS LOOKUP #####
-$stmt = "SELECT use_non_latin,custom_fields_enabled,pass_hash_enabled,agent_whisper_enabled,active_modules,auto_dial_limit FROM system_settings;";
+$stmt = "SELECT use_non_latin,custom_fields_enabled,pass_hash_enabled,agent_whisper_enabled,active_modules,auto_dial_limit,enable_languages,language_method FROM system_settings;";
$rslt=mysql_to_mysqli($stmt, $link);
$qm_conf_ct = mysqli_num_rows($rslt);
if ($qm_conf_ct > 0)
@@ -435,6 +436,8 @@ if ($qm_conf_ct > 0)
$SSauto_dial_limit = $row[5];
# slightly increase limit value, because PHP somehow thinks 2.8 > 2.8
$SSauto_dial_limit = ($SSauto_dial_limit + 0.001);
+ $SSenable_languages = $row[6];
+ $SSlanguage_method = $row[7];
}
##### END SETTINGS LOOKUP #####
###########################################
@@ -716,13 +719,14 @@ if ($auth < 1)
exit;
}
-$stmt="SELECT api_list_restrict,api_allowed_functions,user_group from vicidial_users where user='$user' and active='Y';";
+$stmt="SELECT api_list_restrict,api_allowed_functions,user_group,selected_language from vicidial_users where user='$user' and active='Y';";
if ($DB>0) {echo "DEBUG: auth query - $stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
$api_list_restrict = $row[0];
$api_allowed_functions = $row[1];
$LOGuser_group = $row[2];
+$VUselected_language = $row[3];
if ( ($api_list_restrict > 0) and ( ($function == 'add_lead') or ($function == 'update_lead') or ($function == 'update_list') ) )
{
$stmt="SELECT allowed_campaigns from vicidial_user_groups where user_group='$LOGuser_group';";
@@ -912,14 +916,14 @@ if ($function == 'sounds_list')
echo "\n\n";
echo "\n";
- echo " close frame \n";
+ echo ""._QXZ("close frame")." \n";
echo "\n";
echo "
\n";
echo "# \n";
- echo "FILENAME \n";
- echo "DATE \n";
- echo "SIZE \n";
- echo "PLAY \n";
+ echo ""._QXZ("FILENAME")." \n";
+ echo ""._QXZ("DATE")." \n";
+ echo ""._QXZ("SIZE")." \n";
+ echo ""._QXZ("PLAY")." \n";
echo " \n";
}
$sf++;
@@ -927,7 +931,7 @@ if ($function == 'sounds_list')
echo "$file_names[$m] \n";
echo "$file_dates[$m] \n";
echo "$file_sizes[$m] \n";
- echo "PLAY \n";
+ echo ""._QXZ("PLAY")." \n";
}
}
$k++;
@@ -1050,13 +1054,13 @@ if ($function == 'moh_list')
echo "\n\n";
echo "\n";
- echo "close frame \n";
+ echo ""._QXZ("close frame")." \n";
echo "\n";
echo "
\n";
echo "# \n";
- echo "Music On Hold Class \n";
- echo "Name \n";
- echo "Random \n";
+ echo ""._QXZ("Music On Hold Class")." \n";
+ echo ""._QXZ("Name")." \n";
+ echo ""._QXZ("Random")." \n";
echo " \n";
$stmt="SELECT moh_id,moh_name,random from vicidial_music_on_hold where active='Y' $LOGadmin_viewable_groupsSQL order by moh_id";
@@ -1192,13 +1196,13 @@ if ($function == 'vm_list')
echo "\n\n";
echo "\n";
- echo "close frame \n";
+ echo ""._QXZ("close frame")." \n";
echo "\n";
echo "
\n";
echo "# \n";
- echo "Voicemail Boxes \n";
- echo "Name \n";
- echo "Email \n";
+ echo ""._QXZ("Voicemail Boxes")." \n";
+ echo ""._QXZ("Name")." \n";
+ echo ""._QXZ("Email")." \n";
echo " \n";
$stmt="SELECT voicemail_id,fullname,email from vicidial_voicemail where active='Y' $LOGadmin_viewable_groupsSQL order by voicemail_id";
@@ -1403,9 +1407,9 @@ if ($function == 'agent_ingroup_info')
{
$output = '';
$output .= "\n";
- $output .= "Agent: $agent_user - $full_name \n";
- $output .= " Campaign: $campaign_id \n";
- $output .= "Close \n";
+ $output .= ""._QXZ("Agent").": $agent_user - $full_name \n";
+ $output .= " "._QXZ("Campaign").": $campaign_id \n";
+ $output .= ""._QXZ("Close")." \n";
$stmt="SELECT closer_campaigns from vicidial_campaigns where campaign_id='$campaign_id';";
$rslt=mysql_to_mysqli($stmt, $link);
@@ -1444,9 +1448,9 @@ if ($function == 'agent_ingroup_info')
$output .= "\n";
@@ -1560,14 +1564,14 @@ if ($function == 'agent_ingroup_info')
}
if ($m_printed < 1)
- {$output .= " No In-Groups Allowed \n";}
+ {$output .= ""._QXZ("No In-Groups Allowed")." \n";}
$output .= "
\n";
- $output .= "SELECTED INGROUPS: $closer_campaigns \n";
- $output .= "OUTBOUND AUTODIAL: $blended \n";
- $output .= "MANAGER OVERRIDE: $manager_ingroup_set \n";
- $output .= "MANAGER: $external_igb_set_user \n";
+ $output .= ""._QXZ("SELECTED INGROUPS").": $closer_campaigns \n";
+ $output .= ""._QXZ("OUTBOUND AUTODIAL").": $blended \n";
+ $output .= ""._QXZ("MANAGER OVERRIDE").": $manager_ingroup_set \n";
+ $output .= ""._QXZ("MANAGER").": $external_igb_set_user \n";
$output .= "\n";
$output .= "
\n";
}