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 "\n"; echo "$NWB#campaigns-user_group$NWE\n"; echo ""._QXZ("Active").": $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 "\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 = '';} echo ""._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").": $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").": "._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").": $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").": $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").": $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").": $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").": $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").": $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").": $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").": "; $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 "\n"; - echo "\n"; - echo "\n"; - echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; } $sf++; @@ -927,7 +931,7 @@ if ($function == 'sounds_list') echo "\n"; echo "\n"; echo "\n"; - echo "\n"; + echo "\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 "
#FILENAMEDATESIZEPLAY"._QXZ("FILENAME").""._QXZ("DATE").""._QXZ("SIZE").""._QXZ("PLAY")."
$file_names[$m]$file_dates[$m]$file_sizes[$m]PLAY
"._QXZ("PLAY")."
\n"; echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; + echo "\n"; + echo "\n"; + echo "\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 "
#Music On Hold ClassNameRandom"._QXZ("Music On Hold Class").""._QXZ("Name").""._QXZ("Random")."
\n"; echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; + echo "\n"; + echo "\n"; + echo "\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 .= "
#Voicemail BoxesNameEmail"._QXZ("Voicemail Boxes").""._QXZ("Name").""._QXZ("Email")."
\n";} + {$output .= "\n";} $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"; if ($on_hook_agent == 'Y') { - $output .= "\n"; + $output .= "\n"; } - $output .= "\n"; - $output .= "\n"; - $output .= "\n"; - $output .= "\n"; @@ -1522,14 +1526,14 @@ if ($function == 'agent_ingroup_info') $row=mysqli_fetch_row($rslt); $Mfull_name = $row[0]; - $output .= "\n"; } $output .= "\n"; $output .= "
This is a Phone On-Hook Agent   Maximum Ring Time: $on_hook_ring_time
"._QXZ("This is a Phone On-Hook Agent")."   "._QXZ("Maximum Ring Time").": $on_hook_ring_time
Selected In-Groups: \n"; + $output .= "
"._QXZ("Selected In-Groups").": \n"; $output .= "\n"; $output .= "
Change, Add, Remove:\n"; + $output .= "
"._QXZ("Change, Add, Remove").":\n"; $output .= "\n"; $output .= "\n"; $output .= "
Blended Outbound Autodial:\n"; + $output .= "
"._QXZ("Blended Outbound Autodial").":\n"; $output .= "\n"; $output .= "\n"; $output .= "
Set As User Default:\n"; + $output .= "
"._QXZ("Set As User Default").":\n"; $output .= "\n"; $output .= "\n"; $output .= "
Manager In-Group Override:\n"; + $output .= "
"._QXZ("Manager In-Group Override").":\n"; $output .= "\n"; $output .= "$manager_ingroup_set - $external_igb_set_user - $Mfull_name\n"; $output .= "
\n"; - $output .= "\n"; + $output .= "\n"; $output .= "
\n"; @@ -1560,14 +1564,14 @@ if ($function == 'agent_ingroup_info') } if ($m_printed < 1) - {$output .= "
No In-Groups Allowed
"._QXZ("No In-Groups Allowed")."

\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"; }