diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_db_query.php index ebfa9a6c..208fb89b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vicidial.php index fdcebbfa..2814f871 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_br/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Início\""; var DiaLControl_auto_HTML_ready = "\"\"Início\""; var DiaLControl_auto_HTML_OFF = "\"\"Início\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE ESTAR PAUSADO PARA VERIFICAR OS AGENDAMENTOS"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE ESTAR PAUSADO PARA DISCAR COM DISCAGEM MANUAL."); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO PARA DAR ENTRADA A um CÓDIGO Da PAUSA NaMODALIDADE De AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSA PARA GRAB APELA EM FILA"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Mostrar the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Mostrar the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
AGENDAMENTOS POR AGENTE :
Clique em um dos contatos abaixo para ligar. Se você clicar em um contatos abaixo o mesmo será removido da lista de Agendamentos. + height=>
AGENDAMENTOS POR AGENTE :
Clique em um dos contatos abaixo para ligar. Se você clicar em um contatos abaixo o mesmo será removido da lista de Agendamentos.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NOVA DISCAGEM MANUAL PARA :

Digite abaixo a informação do novo contato que você deseja ligar. + height=>
NOVA DISCAGEM MANUAL PARA :

Digite abaixo a informação do novo contato que você deseja ligar.
0) - height=500>
Não existe ninguem na sua sessão:
+ height=>
Não existe ninguem na sua sessão:
Voltar

Ligar novamente para o agente @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
O cliente desligou:
+ height=>
O cliente desligou:
Voltar

Finalize e coloque o status da ligação @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Chamada Wrapup: segundos restantes no wrapup

+ height=>
Chamada Wrapup: segundos restantes no wrapup



Revestimento Wrapup e movimento sobre @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Sua sessão foi incapacitada
SAIR

Voltar + height=>
Sua sessão foi incapacitada
SAIR

Voltar
- height=500>
Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema


Voltar + height=>
Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema


Voltar
- height=500>

SAIR
+ height=>

SAIR
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELEÇÃO DE STATUS :       Desligue novamente       minimizar
+ height=>
SELEÇÃO DE STATUS :       Desligue novamente       minimizar
Fim da seleção de status
PAUSAR DISCAGEM DO AGENTE
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECIONE Um CÓDIGO Da PAUSA :
+ height=>
SELECIONE Um CÓDIGO Da PAUSA :
Pausa Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Selecionar um grupo ALIÁS :
+ height=>
Selecionar um grupo ALIÁS :
Grupo Alias Selecção

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Selecione uma data para o retorno :
+ height=>
Selecione uma data para o retorno :
Selecione uma data abaixo   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECAO DO GRUPO DE ENTRADA DO CLOSER
+ height=>
SELECAO DO GRUPO DE ENTRADA DO CLOSER
Seleção do grupo de entrada do closer
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
REINICIAR | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_db_query.php index c3470ec4..e8b7ca2c 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pause Code has been updated to $status for $agent_log_id\n"; + echo ' Pause Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vicidial.php index c3756c36..fb7acd4b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_de/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"WiederAufnehmen\""; var DiaLControl_auto_HTML_ready = "\"\"WiederAufnehmen\""; var DiaLControl_auto_HTML_OFF = "\"\"WiederAufnehmen\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT SEIN, UM DIE WIEDERVORLAGEN IM AUTOMATISCHEM WÄHLMODUS EINZUSEHEN"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT SEIN, UM EINE NEUE ADRESSE IM AUTOMATISCHEM WÄHLMODUS MANUELL ZU WÄHLEN"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pause Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT WERDEN, UM Einen PAUSE CODE Im AUTO-DIAL MODUS EINZUGEBEN"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Sie müssen mit GRAB Anrufe in der Warteschlange pausiert"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Zeigen the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT SEIN UM DIE GRUPPE ZU WECHSELN"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Zeigen the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("SIE MÜSSEN PAUSIERT SEIN UM DIE GRUPPE ZU WECHSELN"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
WIEDERVORLAGEN FÜR AGENT :
Klicken Sie jetzt unten auf eine Wiedervorlage, um den Kunden zurückzurufen. Danach wird die Wiedervorlage aus der Liste gelöscht.. + height=>
WIEDERVORLAGEN FÜR AGENT :
Klicken Sie jetzt unten auf eine Wiedervorlage, um den Kunden zurückzurufen. Danach wird die Wiedervorlage aus der Liste gelöscht..

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NEUE MANUELLE ADRESSE FÜR :

Tragen Sie unten die Informationen zu der neuen Adresse ein, die SIE wählen möchten. + height=>
NEUE MANUELLE ADRESSE FÜR :

Tragen Sie unten die Informationen zu der neuen Adresse ein, die SIE wählen möchten.
0) - height=500>
Niemand ist in ihrer Konferenz.:
+ height=>
Niemand ist in ihrer Konferenz.:
Zurück

Agent wieder anrufen @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Kunde hat aufgelegt:
+ height=>
Kunde hat aufgelegt:
Zurück

Ende und Gesprächsergebniss @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Anruf Nachbereitung: Verbleibende Sekunden der Nachbereitung

+ height=>
Anruf Nachbereitung: Verbleibende Sekunden der Nachbereitung



Beende Nachbereitung und mache weiter @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Ihre Sitzung ist gesperrt worden
LOGOUT

Zurück + height=>
Ihre Sitzung ist gesperrt worden
LOGOUT

Zurück
- height=500>
Es ist eine Zeit-Synchronisation Problem mit Ihrem System haben, wenden Sie sich bitte sagen Sie sich an Ihren Systemadministrator


Zurück + height=>
Es ist eine Zeit-Synchronisation Problem mit Ihrem System haben, wenden Sie sich bitte sagen Sie sich an Ihren Systemadministrator


Zurück
- height=500>

LOGOUT
+ height=>

LOGOUT
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ANRUF ABSCHLIESSEN :       Wieder Auflegen       minimieren
+ height=>
ANRUF ABSCHLIESSEN :       Wieder Auflegen       minimieren
Gesprächsergebnis Auswahl
WÄHLPAUSE
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
WÄHLEN Sie Einen PAUSE CODE :
+ height=>
WÄHLEN Sie Einen PAUSE CODE :
Pause Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Wählen Sie eine Gruppe ALIAS :
+ height=>
Wählen Sie eine Gruppe ALIAS :
Gruppe Alias Auswahl

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Wählen Sie ein Rückrufdatum :
+ height=>
Wählen Sie ein Rückrufdatum :
Wählen Sie unten ein Datum   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SUPERVISOR INBOUND GRUPPENWAHL
+ height=>
SUPERVISOR INBOUND GRUPPENWAHL
Supervisor Inbound Gruppenwahl
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
ZURÜCKSETZEN | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_db_query.php index 8f81c8dc..6ead14d2 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Παύση Code has been updated to $status for $agent_log_id\n"; + echo ' Παύση Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vicidial.php index 22b347a0..d9b1248a 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_el/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Επανάληψη\""; var DiaLControl_auto_HTML_ready = "\"\"Επανάληψη\""; var DiaLControl_auto_HTML_OFF = "\"\"Επανάληψη\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΘΑ ΠΡΕΠΕΙ ΝΑ ΕΙΣΑΣΤΕ ΣΕ ΠΑΥΣΗ ΓΙΑ ΝΑ ΕΛΕΓΞΕΤΕ ΤΙΣ ΕΠΑΝΑΚΛΗΣΕΙΣ ΣΕ ΑΥΤΟΜΑΤΗ ΜΕΘΟΔΟ"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΘΑ ΠΡΕΠΕΙ ΝΑ ΕΙΣΑΣΤΕ ΣΕ ΠΑΥΣΗ ΓΙΑ ΧΕΙΡΟΚΙΝΗΤΗ ΚΛΗΣΗ ΣΕ ΑΥΤΟΜΑΤΗ ΜΕΘΟΔΟ"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Παύση Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΠΡΕΠΕΙ ΝΑ ΣΤΑΜΑΤΗΘΕΙΤΕ ΓΙΑ ΝΑ ΠΛΗΚΤΡΟΛΟΓΕΙΤΕ έναν ΚΩΔΙΚΟ ΜΙΚΡΗΣΔΙΑΚΟΠΉΣ στον ΤΡΟΠΟ αυτόματος-ΠΙΝΑΚΩΝ"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΠΡΕΠΕΙ να διακοπεί για να αρπάξει ΚΛΗΣΕΙΣ σε αναμονή"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Παρουσίαση the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Πρέπει να είστε Paused TO CHANGE ΟΜΑΔΕΣ"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Παρουσίαση the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Πρέπει να είστε Paused TO CHANGE ΟΜΑΔΕΣ"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
ΕΠΑΝΑΚΛΗΣΕΙΣ ΓΙΑ ΤΟΝ ΧΕΙΡΙΣΤΗ :
Επιλέξτε μία επανάκληση παρακάτω για να καλέσετε τον πελάτη τώρα. Εάν επιλέξετε μία εγγραφή παρακάτω, θα διαγραφεί από την λίστα. + height=>
ΕΠΑΝΑΚΛΗΣΕΙΣ ΓΙΑ ΤΟΝ ΧΕΙΡΙΣΤΗ :
Επιλέξτε μία επανάκληση παρακάτω για να καλέσετε τον πελάτη τώρα. Εάν επιλέξετε μία εγγραφή παρακάτω, θα διαγραφεί από την λίστα.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
ΝΕΑ ΧΕΙΡΟΚΙΝΗΤΗ ΚΛΗΣΗ ΟΔΗΓΟΥ ΓΙΑ :

Καταχωρήστε τις πληροφορίες παρακάτω για τον νέο οδηγό που επιθυμήτε να καλέσετε. + height=>
ΝΕΑ ΧΕΙΡΟΚΙΝΗΤΗ ΚΛΗΣΗ ΟΔΗΓΟΥ ΓΙΑ :

Καταχωρήστε τις πληροφορίες παρακάτω για τον νέο οδηγό που επιθυμήτε να καλέσετε.
0) - height=500>
Κανένας δεν είναι στη σύνοδό σας:
+ height=>
Κανένας δεν είναι στη σύνοδό σας:
Επιστροφή

Ξανακάλεσε τον Χειριστή @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Ο πελάτης έχει κλείσει το τηλέφωνο:
+ height=>
Ο πελάτης έχει κλείσει το τηλέφωνο:
Επιστροφή

Τελείωσε και Τερμάτισε την Κλήση @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Αναδίπλωση Κλήσης: απομύνοντα δευτερόλεπτα σε αναδίπλωση

+ height=>
Αναδίπλωση Κλήσης: απομύνοντα δευτερόλεπτα σε αναδίπλωση



Τελείωμα Αναδίπλωσης και Συνέχεια @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Η σύνοδός σας έχει τεθεί εκτός λειτουργίας
ΑΠΟΣΥΝΔΕΣΗ

Επιστροφή + height=>
Η σύνοδός σας έχει τεθεί εκτός λειτουργίας
ΑΠΟΣΥΝΔΕΣΗ

Επιστροφή
- height=500>
Υπάρχει ένα πρόβλημα συγχρονισμού με το χρόνο σας, παρακαλούμε ενημερώστε τον διαχειριστή του συστήματός σας


Επιστροφή + height=>
Υπάρχει ένα πρόβλημα συγχρονισμού με το χρόνο σας, παρακαλούμε ενημερώστε τον διαχειριστή του συστήματός σας


Επιστροφή
- height=500>

ΑΠΟΣΥΝΔΕΣΗ
+ height=>

ΑΠΟΣΥΝΔΕΣΗ
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Τερματισμός Κλήσης :       Ξανακλήσε       ελαχιστοποιήστε
+ height=>
Τερματισμός Κλήσης :       Ξανακλήσε       ελαχιστοποιήστε
Επιλογή τερματισμού της κλήσης
ΤΕΡΜΑΤΙΣΜΟΣ ΚΛΗΣΗΣ
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ΕΠΙΛΕΞΤΕ έναν ΚΩΔΙΚΑ ΜΙΚΡΗΣ ΔΙΑΚΟΠΉΣ :
+ height=>
ΕΠΙΛΕΞΤΕ έναν ΚΩΔΙΚΑ ΜΙΚΡΗΣ ΔΙΑΚΟΠΉΣ :
Παύση Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ΕΠΙΛΕΞΤΕ ΟΜΑΔΑ ALIAS :
+ height=>
ΕΠΙΛΕΞΤΕ ΟΜΑΔΑ ALIAS :
Γνωστός Ομάδα Επιλογής

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Επιλέξτε μια ημερομηνία CallBack :
+ height=>
Επιλέξτε μια ημερομηνία CallBack :
Επιλέξτε μια ημερομηνία κατωτέρω   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
CLOSER ΕΙΣΕΡΧΟΜΕΝΗ ΕΠΙΛΟΓΗ ΟΜΑΔΑΣ
+ height=>
CLOSER ΕΙΣΕΡΧΟΜΕΝΗ ΕΠΙΛΟΓΗ ΟΜΑΔΑΣ
Επιλογή Closer εισερχόμενης ομάδας
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
ΕΠΑΝΑΦΟΡΑ | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_db_query.php index 559f24ca..e2cbad25 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vicidial.php index 4b36d014..7eb768fe 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_es/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Comienzo\""; var DiaLControl_auto_HTML_ready = "\"\"Comienzo\""; var DiaLControl_auto_HTML_OFF = "\"\"Comienzo\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO BREVEMENTE PARA COMPROBAR SERVICIOS REPETIDOS EN MODO DE AUTO-DIAL"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO BREVEMENTE Al DIAL MANUAL Un NUEVO PLOMO EN MODO De AUTO-DIAL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO BREVEMENTE PARA INTRODUCIR Un CÓDIGO De la PAUSA EN AUTO-DIAL MODE"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO GRAB a las llamadas en cola"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Demostración the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE CAMBIAR pausa GRUPOS"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Demostración the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("USTED DEBE CAMBIAR pausa GRUPOS"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
SERVICIOS REPETIDOS PARA EL AGENTE :
Chasque encendido un servicio repetido abajo ahora para llamar la parte posteriora del cliente. Si usted chasca encendido un expediente abajo para llamarlo, será quitado de la lista. + height=>
SERVICIOS REPETIDOS PARA EL AGENTE :
Chasque encendido un servicio repetido abajo ahora para llamar la parte posteriora del cliente. Si usted chasca encendido un expediente abajo para llamarlo, será quitado de la lista.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NUEVO PLOMO MANUAL DEL DIAL PARA :

Incorpore la información abajo para el nuevo plomo que usted desea llamar. + height=>
NUEVO PLOMO MANUAL DEL DIAL PARA :

Incorpore la información abajo para el nuevo plomo que usted desea llamar.
0) - height=500>
Nadie está en su sesión:
+ height=>
Nadie está en su sesión:
Vaya Detrás

Agente De la Llamada Otra vez @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
El cliente ha colgado:
+ height=>
El cliente ha colgado:
Vaya Detrás

Final y llamada de la disposición @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Llamada Wrapup: segundos restantes en wrapup

+ height=>
Llamada Wrapup: segundos restantes en wrapup



Final Wrapup y movimiento encendido @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Se ha inhabilitado su sesión
SALIR

Vaya Detrás + height=>
Se ha inhabilitado su sesión
SALIR

Vaya Detrás
- height=500>
Hay un problema de sincronización de tiempo con su sistema, por favor, dígale a su administrador del sistema


Vaya Detrás + height=>
Hay un problema de sincronización de tiempo con su sistema, por favor, dígale a su administrador del sistema


Vaya Detrás
- height=500>

SALIR
+ height=>

SALIR
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
DISPOSITION LLAMADA :       Retraso Otra vez       reduzca al mínimo
+ height=>
DISPOSITION LLAMADA :       Retraso Otra vez       reduzca al mínimo
selección de la disposición del End-of-call
PARAR LA LLAMADA
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECCIONE Un CÓDIGO De la PAUSA :
+ height=>
SELECCIONE Un CÓDIGO De la PAUSA :
Pausa Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECCIONAR UN GRUPO DE ALIAS :
+ height=>
SELECCIONAR UN GRUPO DE ALIAS :
Grupo de Selección de Alias

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Seleccione una fecha del servicio repetido :
+ height=>
Seleccione una fecha del servicio repetido :
Seleccione una fecha abajo   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECCIÓN DEL GRUPO DE ENTRANTES CLOSER
+ height=>
SELECCIÓN DEL GRUPO DE ENTRANTES CLOSER
SELECCIÓN DEL GRUPO DE ENTRANTES CLOSER
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
REINICIAR | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_db_query.php index e562766b..03256627 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pause Code has been updated to $status for $agent_log_id\n"; + echo ' Pause Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vicidial.php index 1eb3b6de..5f7f4194 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_fr/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Résumé\""; var DiaLControl_auto_HTML_ready = "\"\"Résumé\""; var DiaLControl_auto_HTML_OFF = "\"\"Résumé\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE EN PAUSE POUR POUVOIR CONSULTER LA LISTE DES RAPPELS AUTOMATIQUES"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE EN PAUSE POUR COMPOSER UN APPEL MANUEL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pause Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE FAIT UNE PAUSE POUR ÉCRIRE Un CODE De PAUSE DANS LeMODE D'AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE PAUSED GRAB AUX APPELS EN QUEUE"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Visualiser the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE pause pour changer de groupe"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Visualiser the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("VOUS DEVEZ ÊTRE pause pour changer de groupe"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
RAPPELS PERSONNELS :
Selectionnez un rappel a éffectuer immédiatement. Une fois éffectué, ce rappel diparaitra de la liste. + height=>
RAPPELS PERSONNELS :
Selectionnez un rappel a éffectuer immédiatement. Une fois éffectué, ce rappel diparaitra de la liste.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NOUVEL APPEL MANUEL VERS :

Nouveau prospect: remplissez le formulaire ci dessous. + height=>
NOUVEL APPEL MANUEL VERS :

Nouveau prospect: remplissez le formulaire ci dessous.
0) - height=500>
Votre session est vide:
+ height=>
Votre session est vide:
Retour

Rappeler l'agent @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Le client a raccroché:
+ height=>
Le client a raccroché:
Retour

Terminer et Statuer l'Appel @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Traitement Post Appel : secondes restant pour le traitement post appel

+ height=>
Traitement Post Appel : secondes restant pour le traitement post appel



Terminer le traitement post appel et continuer @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Votre session a été neutralisée
DÉCONNEXION

Retour + height=>
Votre session a été neutralisée
DÉCONNEXION

Retour
- height=500>
Il ya un problème de synchronisation avec votre système, s'il vous plaît dites-le à votre administrateur système


Retour + height=>
Il ya un problème de synchronisation avec votre système, s'il vous plaît dites-le à votre administrateur système


Retour
- height=500>

DÉCONNEXION
+ height=>

DÉCONNEXION
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
STATUER L'APPEL :       Décrochement Encore       réduire
+ height=>
STATUER L'APPEL :       Décrochement Encore       réduire
Selection du status de fin d'appel
PAUSE DE LA NUMEROTATION
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
CHOISISSEZ Un CODE De PAUSE :
+ height=>
CHOISISSEZ Un CODE De PAUSE :
Pause Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
CHOISIR UN GROUPE ALIAS :
+ height=>
CHOISIR UN GROUPE ALIAS :
Groupe de sélection Alias

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Choisissez une date de Rappel :
+ height=>
Choisissez une date de Rappel :
Choisissez une date ci-dessous   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
UN CHOIX DE GROUPE D'ARRIVÉE PLUS ÉTROIT
+ height=>
UN CHOIX DE GROUPE D'ARRIVÉE PLUS ÉTROIT
Un Choix De Groupe D'arrivée Plus étroit
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
REINITIALISATION | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_db_query.php index f87c8711..aa0590eb 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vicidial.php index a6afe509..b8cb0510 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_it/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Riprendi\""; var DiaLControl_auto_HTML_ready = "\"\"Riprendi\""; var DiaLControl_auto_HTML_OFF = "\"\"Riprendi\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER CONTROLLARE LA CHIAMATABACK IN MODALITA AUTODIAL"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER EFFETTUARE UNA CHIAMATA MANUALE QUANDO SEI IN MODALITà AUTODIAL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER INSERIRE UN CODICE PAUSA IN MODALITà AUTODIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER RECUPERARE LE CHIAMATE IN CODA"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Mostra the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER CAMBIARE GRUPPO"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Mostra the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("DEVI ESSERE IN PAUSA PER CAMBIARE GRUPPO"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
RICHIAMI PER L`OPERATORE :
Selezionare un richiamo per chiamare il cliente ora. Una volta fatto click, il record sarà rimosso dalla lista. + height=>
RICHIAMI PER L`OPERATORE :
Selezionare un richiamo per chiamare il cliente ora. Una volta fatto click, il record sarà rimosso dalla lista.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NUOVA CHIAMATA MANUALE PER IL CONTATTO :

Inserisci le informazioni per il nuovo contatto da chiamare. + height=>
NUOVA CHIAMATA MANUALE PER IL CONTATTO :

Inserisci le informazioni per il nuovo contatto da chiamare.
0) - height=500>
Non c`è nessuno nella tua sessione:
+ height=>
Non c`è nessuno nella tua sessione:
Torna Indietro

Chiama l`operatore di nuovo @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Il cliente ha riagganciato:
+ height=>
Il cliente ha riagganciato:
Torna Indietro

Termina e definisci un Esito per la chiamata @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Riposo prima della prossima chiamata: secondi di riposo restanti

+ height=>
Riposo prima della prossima chiamata: secondi di riposo restanti



Termina riposo e continua @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
La tua sessione è stata disabilitata
LOGOUT

Torna Indietro + height=>
La tua sessione è stata disabilitata
LOGOUT

Torna Indietro
- height=500>
C`è un problema di sincronizzazione con il sistema, si prega di informare l`amministratore di sistema


Torna Indietro + height=>
C`è un problema di sincronizzazione con il sistema, si prega di informare l`amministratore di sistema


Torna Indietro
- height=500>

LOGOUT
+ height=>

LOGOUT
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ESITO CHIAMATA :       Aggancia di nuovo       riduci
+ height=>
ESITO CHIAMATA :       Aggancia di nuovo       riduci
Selezione Esito di fine chiamata
PAUSA OPERATORE
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELEZIONARE UN CODICE PAUSA:
+ height=>
SELEZIONARE UN CODICE PAUSA:
Pausa Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SCEGLI UN GRUPPO ALIAS :
+ height=>
SCEGLI UN GRUPPO ALIAS :
Selezione Gruppo Alias

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Selezionare una data di richiamo! :
+ height=>
Selezionare una data di richiamo! :
Seleziona una data qui sotto   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELEZIONE del CLOSER INBOUND GROUP
+ height=>
SELEZIONE del CLOSER INBOUND GROUP
Selezione del Closer Inbound Group
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
RESET | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_db_query.php index 87e8ca5a..9f922c44 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pauze Code has been updated to $status for $agent_log_id\n"; + echo ' Pauze Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vicidial.php index d5665725..2d321d50 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_nl/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Doorgaan\""; var DiaLControl_auto_HTML_ready = "\"\"Doorgaan\""; var DiaLControl_auto_HTML_OFF = "\"\"Doorgaan\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM TERUGBELLERS TE BEKIJKEN IN AUTO-DIAL MODUS"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM HANDMATIG EEN NIEUWE LEAD TE BELLEN IN AUTO-DIAL MODUS"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pauze Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM EEN PAUZE CODE IN TE VOEREN TIJDENS AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET worden onderbroken te grijpen ROEPT in de wachtrij"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Toon the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM VAN GROEP TE WISSELEN"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Toon the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("JE MOET GEPAUZEERD ZIJN OM VAN GROEP TE WISSELEN"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
TERUGBELLERS VOOR AGENT :
Klik op een terugbeller om de klant nu terug te bellen. Als je hierop klikt, wordt deze verwijderd uit de lijst. + height=>
TERUGBELLERS VOOR AGENT :
Klik op een terugbeller om de klant nu terug te bellen. Als je hierop klikt, wordt deze verwijderd uit de lijst.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NIEUWE HANDMATIGE LEAD VOOR :

Voer de informatie voor de nieuwe te bellen lead hieronder in. + height=>
NIEUWE HANDMATIGE LEAD VOOR :

Voer de informatie voor de nieuwe te bellen lead hieronder in.
0) - height=500>
Er is niemand in jouw sessie:
+ height=>
Er is niemand in jouw sessie:
Ga Terug

Bel Agent Opnieuw @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Klant heeft opgehangen:
+ height=>
Klant heeft opgehangen:
Ga Terug

Afsluiten en Dispositioneren Gesprek @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Gesprek Afronden: seconden over in afronden

+ height=>
Gesprek Afronden: seconden over in afronden



Afronden afmaken en doorgaan @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Jouw sessie is geblokkeerd
UITLOGGEN

Ga Terug + height=>
Jouw sessie is geblokkeerd
UITLOGGEN

Ga Terug
- height=500>
Er is een tijd synchronisatieprobleem met uw systeem, neem contact op met je systeem beheerder


Ga Terug + height=>
Er is een tijd synchronisatieprobleem met uw systeem, neem contact op met je systeem beheerder


Ga Terug
- height=500>

UITLOGGEN
+ height=>

UITLOGGEN
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
DISPOSITIONEER GESPREK :       Opnieuw Ophangen       minimaliseer
+ height=>
DISPOSITIONEER GESPREK :       Opnieuw Ophangen       minimaliseer
Einde Gesprek Dispositie Selectie
PAUZEER BELLEN
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECTEER EEN PAUZE CODE :
+ height=>
SELECTEER EEN PAUZE CODE :
Pauze Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
KIES EEN GROEP ALIAS :
+ height=>
KIES EEN GROEP ALIAS :
Groep Alias Selectie

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Selecteer een terugbel datum :
+ height=>
Selecteer een terugbel datum :
Selecteer een datum   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
CLOSER INKOMENDE GROEP SELECTIE
+ height=>
CLOSER INKOMENDE GROEP SELECTIE
Closer Inkomende Groep Selectie
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
RESET | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_db_query.php index db43e55b..3197c7ef 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Przerwa Code has been updated to $status for $agent_log_id\n"; + echo ' Przerwa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vicidial.php index 19c35aa9..3e80c2ca 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pl/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Ponów\""; var DiaLControl_auto_HTML_ready = "\"\"Ponów\""; var DiaLControl_auto_HTML_OFF = "\"\"Ponów\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("MUSISZ WSTRZYMAC AUTOMATYCZNE WYBIERANIE NUMERU BY SPRAWDZAĆ INNE TERMINY"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("MUSISZ WSTRZYMAC AUTOMATYCZNE WYBIERANIE NUMERU BY DOKONAĆ RĘCZNEGO WYBIERANIA"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Przerwa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("WY MUSICIE BYĆ PRZEDŁUŻANI WCHODZIĆ SZYFR PRZERWY W TRYBIE AUTOTARCZY"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musicie być wstrzymane do przechwycenia WZYWA w kolejce"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Pokaż the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musisz być Paused ZMIANA DO GRUPY"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Pokaż the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Musisz być Paused ZMIANA DO GRUPY"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
INNE TERMINY DLA AGENTA :
Kliknij poniżej na Inne terminy żeby teraz zadzwonić do klienta. Jeżeli klikniesz na rekordzie by zadzwonić, rekord zostanie usunięty z listy. + height=>
INNE TERMINY DLA AGENTA :
Kliknij poniżej na Inne terminy żeby teraz zadzwonić do klienta. Jeżeli klikniesz na rekordzie by zadzwonić, rekord zostanie usunięty z listy.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NOWE RĘCZNE WYBIERANIE NUMERU DLA :

Wpisz poniżej informacje o kontakcie do którego chcesz wykonać połączenie. + height=>
NOWE RĘCZNE WYBIERANIE NUMERU DLA :

Wpisz poniżej informacje o kontakcie do którego chcesz wykonać połączenie.
0) - height=500>
Nikt nie uczestniczy w Twojej sesji:
+ height=>
Nikt nie uczestniczy w Twojej sesji:
Wróć

Ponownie połącz się z telefonem @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Klient sie rozłączył:
+ height=>
Klient sie rozłączył:
Wróć

Zakończ i wprowadź rezultat rozmowy @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Call Wrapup sekundy remaining in wrapup

+ height=>
Call Wrapup sekundy remaining in wrapup



Finish Wrapup and Move On @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Wasza sesja była uszkadzana
WYLOGUJ

Wróć + height=>
Wasza sesja była uszkadzana
WYLOGUJ

Wróć
- height=500>
Istnieje problem synchronizacji czasu z systemem, należy powiadomić administratora systemu


Wróć + height=>
Istnieje problem synchronizacji czasu z systemem, należy powiadomić administratora systemu


Wróć
- height=500>

WYLOGUJ
+ height=>

WYLOGUJ
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
REZULTAT ROZMOWY :       Rozłącz się ponownie       minimalizuj
+ height=>
REZULTAT ROZMOWY :       Rozłącz się ponownie       minimalizuj
Koniec rozmowy, wybierz rezultat
ZATRZYMAJ DZWONIENIE
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
WYBÓR SZYFR PRZERWY :
+ height=>
WYBÓR SZYFR PRZERWY :
Przerwa Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Wybierz grupę Alias :
+ height=>
Wybierz grupę Alias :
Wybór grupy Alias

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Wybierz datę oddzwonienia :
+ height=>
Wybierz datę oddzwonienia :
Wybierz datę poniżej   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELEKCJA GRUPY ZAWNĘTRZNYCH FINALIZUJĄCYCH
+ height=>
SELEKCJA GRUPY ZAWNĘTRZNYCH FINALIZUJĄCYCH
Selekcja grupy zawnętrznych finalizujących
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
RESET | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_db_query.php index 9eb3ad47..9fe64b98 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vicidial.php index 6339d8e2..51f5c6a9 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_pt/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Resumo\""; var DiaLControl_auto_HTML_ready = "\"\"Resumo\""; var DiaLControl_auto_HTML_OFF = "\"\"Resumo\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO PARA VERIFICAR RECHAMADAS NA MODALIDADE DE AUTO-DIAL"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO Ao SELETOR MANUAL Uma LIGAÇÃO NOVA Na MODALIDADE De AUTO-DIAL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO PARA DAR ENTRADA A um CÓDIGO Da PAUSA NaMODALIDADE De AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSA PARA GRAB APELA EM FILA"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Mostra the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Mostra the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
RECHAMADAS PARA O AGENTE :
Estale sobre uma rechamada abaixo para chamar agora a parte traseira do cliente. Se você estalar sobre um registro abaixo para o chamar, estará removido da lista. + height=>
RECHAMADAS PARA O AGENTE :
Estale sobre uma rechamada abaixo para chamar agora a parte traseira do cliente. Se você estalar sobre um registro abaixo para o chamar, estará removido da lista.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
LIGAÇÃO MANUAL NOVA DO SELETOR PARA :

Incorpore a informação abaixo para a ligação que nova você deseja se chamar. + height=>
LIGAÇÃO MANUAL NOVA DO SELETOR PARA :

Incorpore a informação abaixo para a ligação que nova você deseja se chamar.
0) - height=500>
Noone está em sua sessão:
+ height=>
Noone está em sua sessão:
Vá Para trás

Agente Da Chamada Outra vez @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
O cliente pendurou acima:
+ height=>
O cliente pendurou acima:
Vá Para trás

Revestimento e chamada da disposição @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Chamada Wrapup: segundos restantes no wrapup

+ height=>
Chamada Wrapup: segundos restantes no wrapup



Revestimento Wrapup e movimento sobre @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Sua sessão foi incapacitada
LOGOUT

Vá Para trás + height=>
Sua sessão foi incapacitada
LOGOUT

Vá Para trás
- height=500>
Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema


Vá Para trás + height=>
Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema


Vá Para trás
- height=500>

LOGOUT
+ height=>

LOGOUT
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
CHAMADA DA DISPOSIÇÃO :       Hangup Outra vez       minimize
+ height=>
CHAMADA DA DISPOSIÇÃO :       Hangup Outra vez       minimize
Extremidade-$$$-CHAME A Seleção Da Disposição
PARE DE CHAMAR-SE
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELECIONE Um CÓDIGO Da PAUSA :
+ height=>
SELECIONE Um CÓDIGO Da PAUSA :
Pausa Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Selecionar um grupo ALIÁS :
+ height=>
Selecionar um grupo ALIÁS :
Grupo Alias Selecção

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Selecione uma data da rechamada :
+ height=>
Selecione uma data da rechamada :
Selecione uma data abaixo   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
SELEÇÃO DE GRUPO INBOUND MAIS PRÓXIMA
+ height=>
SELEÇÃO DE GRUPO INBOUND MAIS PRÓXIMA
Seleção De Grupo Inbound Mais próxima
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
RESTAURAÇÃO | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_db_query.php index 9d5d3e3a..ed2e55a1 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Пауза Code has been updated to $status for $agent_log_id\n"; + echo ' Пауза Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vicidial.php index 157673aa..b33fa884 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_ru/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Резюме\""; var DiaLControl_auto_HTML_ready = "\"\"Резюме\""; var DiaLControl_auto_HTML_OFF = "\"\"Резюме\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ СДЕЛАТЬ ПАУЗУ, ЧТОБЫ ПРОВЕРИТЬ ВЫЗОВЫ В РЕЖИМЕ АВТОМАТИЧЕСКОГО НАБОРА НОМЕРА"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ СДЕЛАТЬ ПАУЗУ РУЧНОГО НАБОРА НОМЕРА НОВЫЙ LEAD В РЕЖИМЕ АВТО НАБОРА НОМЕРА"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Пауза Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ АКТИВИРОВАТЬ ПАУЗУ, ЧТОБЫ ВВЕСТИ КОД ПАУЗЫ В РЕЖИМЕ АВТО-НАБОРА"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ быть приостановлена схватить Звонки в ОЧЕРЕДЬ"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Показать the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ТЫ ДОЛЖЕН БЫТЬ PAUSED сменить группу"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Показать the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("ТЫ ДОЛЖЕН БЫТЬ PAUSED сменить группу"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
ВЫЗОВBACK ДЛЯ ОПЕРАТОРА :
Чтобы позвонить клиенту сейчас, кликните на callback ниже. Если Вы нажмете на record ниже, чтобы позвонить, то это будет удалено из списка. + height=>
ВЫЗОВBACK ДЛЯ ОПЕРАТОРА :
Чтобы позвонить клиенту сейчас, кликните на callback ниже. Если Вы нажмете на record ниже, чтобы позвонить, то это будет удалено из списка.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
НОВЫЙ LEAD РУЧНОЙ НАБОР НОМЕРА ДЛЯ :

Ведите информацию ниже для нового lead который вы хотите вызвать. + height=>
НОВЫЙ LEAD РУЧНОЙ НАБОР НОМЕРА ДЛЯ :

Ведите информацию ниже для нового lead который вы хотите вызвать.
0) - height=500>
Никого нет в вашей сессии:
+ height=>
Никого нет в вашей сессии:
Вернуться

Вызов Оператора Снова @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Клиент разъединен:
+ height=>
Клиент разъединен:
Вернуться

Конец и Вызов Диспозиции @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Call Wrapup: секунд осталось в wrapup

+ height=>
Call Wrapup: секунд осталось в wrapup



Финиш Wrapup и Переход @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Ваша сессия отключена
ВЫХОД

Вернуться + height=>
Ваша сессия отключена
ВЫХОД

Вернуться
- height=500>
Существует проблема синхронизации времени с вашей системой, пожалуйста, сообщите об этом вашему системному администратору


Вернуться + height=>
Существует проблема синхронизации времени с вашей системой, пожалуйста, сообщите об этом вашему системному администратору


Вернуться
- height=500>

ВЫХОД
+ height=>

ВЫХОД
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
DISPOSITION ВЫЗОВ :       Разъединить Снова       минимизировать
+ height=>
DISPOSITION ВЫЗОВ :       Разъединить Снова       минимизировать
Выбор Диспозиции End-of-call
ПАУЗА ВЫЗОВА
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ВЫБЕРИТЕ КОД ПАУЗЫ :
+ height=>
ВЫБЕРИТЕ КОД ПАУЗЫ :
Пауза Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ВЫБОР ГРУППЫ ALIAS :
+ height=>
ВЫБОР ГРУППЫ ALIAS :
Группа Alias выбора

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Выберите дату для CallBack :
+ height=>
Выберите дату для CallBack :
Выберите Дату Ниже   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
ВЫБОР INBOUND ГРУППЫ CLOSER
+ height=>
ВЫБОР INBOUND ГРУППЫ CLOSER
Closer Inbound Group Selection
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
RESET | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_db_query.php index 122b6411..5ce9286c 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pauza Code has been updated to $status for $agent_log_id\n"; + echo ' Pauza Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vicidial.php index 9868cff1..59fb1619 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_sk/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"Pokračovať\""; var DiaLControl_auto_HTML_ready = "\"\"Pokračovať\""; var DiaLControl_auto_HTML_OFF = "\"\"Pokračovať\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť pozastavený na kontrolu preplánovaných hovorov v móde AUTOMATICKÉHO volania"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť pozastavený do manuálneho vytáčania v novom zozname kontaktov v móde AUTOMATICKÉHO vytáčania"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pauza Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("MUSÍTE BYŤ V PAUZE NA VLOŽENIE KÓDU PAUZY V MÓDE AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť sa odmlčal, aby GRAB VOLANIA do fronty"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Prezrieť the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť pozastavené NA ZMENU ZOSKUPENIA"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Prezrieť the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Musíte byť pozastavené NA ZMENU ZOSKUPENIA"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
PREPLÁNOVANÉ HOVORY PRE AGENTA :
Kliknite na preplánovanie hovoru na volanie zákaznikovi znova. Ak kliknete na záznam nižšie budete ho volať a bude odstránený zo zoznamu. + height=>
PREPLÁNOVANÉ HOVORY PRE AGENTA :
Kliknite na preplánovanie hovoru na volanie zákaznikovi znova. Ak kliknete na záznam nižšie budete ho volať a bude odstránený zo zoznamu.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
NOVÉ manuálne vytáčanie pre zoznam kontaktov :

Zadajte nižšie uvedené informácie pre nový zoznam kontaktov, ktorý chcete volať. + height=>
NOVÉ manuálne vytáčanie pre zoznam kontaktov :

Zadajte nižšie uvedené informácie pre nový zoznam kontaktov, ktorý chcete volať.
0) - height=500>
Nikto nie je vo Vašej relácii:
+ height=>
Nikto nie je vo Vašej relácii:
Vrátiť späť

Volať agenta znova @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
Zákazník položil:
+ height=>
Zákazník položil:
Vrátiť späť

Ukončenie a umiestnenie hovoru @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
Volanie Wrapup: sekúnd zostávajúcich na wrapup

+ height=>
Volanie Wrapup: sekúnd zostávajúcich na wrapup



Dokončiť Wrapup a presunúť na @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Vaša relácia bola ukončená
ODHLÁSIŤ

Vrátiť späť + height=>
Vaša relácia bola ukončená
ODHLÁSIŤ

Vrátiť späť
- height=500>
Je synchronizácia času problém s vašim systémom, povedzte to, prosím, správcu systému


Vrátiť späť + height=>
Je synchronizácia času problém s vašim systémom, povedzte to, prosím, správcu systému


Vrátiť späť
- height=500>

ODHLÁSIŤ
+ height=>

ODHLÁSIŤ
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
VYKONANIE HOVORU :       Položte znova       minimalizovať
+ height=>
VYKONANIE HOVORU :       Položte znova       minimalizovať
Ukončenie hovoru vybranej dispozície
PAUZA VOLAJUCEHO AGENTA
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
VYBRAŤ KÓD PAUZY :
+ height=>
VYBRAŤ KÓD PAUZY :
Pauza Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
VYBER GROUP ALIAS :
+ height=>
VYBER GROUP ALIAS :
Skupina Alias Výber

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Vyberte dátum preplánovania hovoru :
+ height=>
Vyberte dátum preplánovania hovoru :
Vyberte dátum nižšie   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
Užší výber prichádzajúce skupiny
+ height=>
Užší výber prichádzajúce skupiny
Užší výber prichádzajúce skupiny
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
ZNOVU INCIALIZOVAŤ | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_db_query.php index 0f7dde3c..778141a2 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " 暫停 Code has been updated to $status for $agent_log_id\n"; + echo ' 暫停 Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_script_display.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_script_display.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vicidial.php b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vicidial.php index cc576a53..b882720c 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/agc_tw/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "\"\"恢復\""; var DiaLControl_auto_HTML_ready = "\"\"恢復\""; var DiaLControl_auto_HTML_OFF = "\"\"恢復\""; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("在自動外撥模式下您必須暫停才可以檢查回撥"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("在自動外撥模式下您必須暫停才可以人工外撥一個新的紀錄"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the 暫停 Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("在自動撥號模式下您必須入暫停原因代碼才能暫停"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("您必須暫停籲請搶占隊列"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // 展現 the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("您必須暫停才能變更群組"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // 展現 the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("您必須暫停才能變更群組"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "\n"; - height=460>
值機員的回撥電話 :
點選以下回撥紀錄進行客戶回撥,如果點選紀錄進行撥號,該筆紀錄將會從名單內移除. + height=>
值機員的回撥電話 :
點選以下回撥紀錄進行客戶回撥,如果點選紀錄進行撥號,該筆紀錄將會從名單內移除.

  @@ -10626,7 +10636,7 @@ echo "\n"; - height=460>
新的人工撥號紀錄給 :

請輸入下面的資訊給您想要外撥的新紀錄. + height=>
新的人工撥號紀錄給 :

請輸入下面的資訊給您想要外撥的新紀錄.
0) - height=500>
無人在你主持的會議中:
+ height=>
無人在你主持的會議中:
回上一頁

再次呼叫值機員 @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) - height=500>
客戶已掛斷電話:
+ height=>
客戶已掛斷電話:
回上一頁

結束通話並註記結束碼 @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) - height=550>
電話文書: 文書狀態尚餘秒數

+ height=>
電話文書: 文書狀態尚餘秒數



結束文書並繼續 @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) - height=500>
Your session has been disabled
登出

回上一頁 + height=>
Your session has been disabled
登出

回上一頁
- height=500>
系統中有時間同步問題,請洽系統管理者


回上一頁 + height=>
系統中有時間同步問題,請洽系統管理者


回上一頁
- height=500>

登出
+ height=>

登出
@@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
通話結束 :       再次掛斷       最小
+ height=>
通話結束 :       再次掛斷       最小
結束碼選擇
暫停值機員撥號
@@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
選擇暫停原因代碼 :
+ height=>
選擇暫停原因代碼 :
暫停 Code Selection

  @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
選擇群組代名 :
+ height=>
選擇群組代名 :
群組代名選擇

  @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
選擇回撥日期 :
+ height=>
選擇回撥日期 :
選擇日期小於   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) - height=460>
CLOSER INBOUND GROUP SELECTION
+ height=>
CLOSER INBOUND GROUP SELECTION
Closer Inbound Group Selection
0) - height=460>
TERRITORY SELECTION
+ height=>
TERRITORY SELECTION
Territory Selection
重置 | diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSER_service_level.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSER_service_level.php index beba62c5..d0b906a6 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSER_service_level.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "
\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERstats.php index 3eb3a41d..6e9eceee 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Zeitraum:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Inbound Gruppen: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_IVRstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_IVRstats.php index 9a398631..c4bcbe7d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_IVRstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Termine:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo "
Termine:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Termine:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo "
Termine:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       Verberge User Group"; + echo "       Verberge User Group"; } else { - echo "       VIEW User Group"; - } -if ($UidORname>0) - { - echo "       Zeige MITTELID"; - } -else - { - echo "       Zeige MITTELNAME"; + echo "       VIEW User Group"; } if ($SERVdisplay>0) { - echo "       Verberge BEDIENERINFO"; + echo "       Verberge BEDIENERINFO"; } else { - echo "       Zeige BEDIENERINFO"; + echo "       Zeige BEDIENERINFO"; } if ($CALLSdisplay>0) { - echo "       Verberge WAITING CALLS"; + echo "       Verberge WAITING CALLS"; } else { - echo "       Zeige WAITING CALLS"; + echo "       Zeige WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       Verberge IN-GROUP STATS"; + } +else + { + echo "       Zeige IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       Verberge PHONES"; + echo "       Verberge PHONES"; } else { - echo "       Zeige PHONES"; + echo "       Zeige PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       Verberge CUSTPHONES"; + echo "       Verberge CUSTPHONES"; } else { - echo "       Zeige CUSTPHONES"; + echo "       Zeige CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Kampagnen:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       ÄNDERN Sie | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_ANTWORTagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_ANTWORTagent_non_pause_sec = round($AVG_ANTWORTagent_non_pause_sec, 2); + $AVG_ANTWORTagent_non_pause_sec = sprintf("%01.2f", $AVG_ANTWORTagent_non_pause_sec); + } + else + {$AVG_ANTWORTagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_ANTWORTagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ANTWORTS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/ANTWORTS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_ANTWORTagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_ANTWORTagent_non_pause_sec = round($AVG_ANTWORTagent_non_pause_sec, 2); - $AVG_ANTWORTagent_non_pause_sec = sprintf("%01.2f", $AVG_ANTWORTagent_non_pause_sec); - } - else - {$AVG_ANTWORTagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_ANTWORTagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ANTWORTS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Kampagnen with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "Zeige ID "; + } +else + { + $HTuser .= "Zeige NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " User Group |"; +$HTusergroup = " User Group |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " BEDIENERIP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL BEDIENERIP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/admin.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/admin.php index 853103d6..2c1bc590 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/admin.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
KAMPAGNE STATUS NICHT ADDIERT - es gibt bereits einen Kampagne-Statusim System mit diesem Namen\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
KAMPAGNE STATUS NICHT ADDIERT - es gibt bereits einen Globalstatus imSystem mit diesem Namen\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
KAMPAGNE STATUS NICHT ADDIERT - gehen Sie bitte zurück und betrachtenSie die Daten, die Sie eingaben\n"; echo "
Status muß zwischen 1 und 8 Buchstaben lang sein\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
KAMPAGNE STATUS ADDIERT: $campaign_id - $status\n"; + echo "
KAMPAGNE STATUS ADDIERT: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADDIEREN SIE KAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Status:$status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADDIEREN SIE KAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Status:$status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
SYSTEMSTATUS NICHT ADDIERT - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
SYSTEMSTATUS NICHT ADDIERT - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
SYSTEMSTATUS NICHT ADDIERT - Gehen Sie bitte zurück und betrachten Sie die Daten, die Sieeingaben\n"; echo "
Status muß zwischen 1 und 8 Buchstaben lang sein\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
SYSTEMSTATUS ADDIERT: $status_name - $status\n"; + echo "
SYSTEMSTATUS ADDIERT: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
ADDIEREN SIE NEUEN KUNDENSPEZIFISCHEN KAMPAGNE STATUS
\n"; echo "\n"; echo "\n"; - echo "Status:   \n"; + echo "Status:   \n"; echo "Beschreibung:   \n"; echo "Auswählbar:  
\n"; echo "Human Antwort:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
ADDIEREN SIE NEUEN SYSTEMSTATUS
\n"; echo "\n"; - echo "Status:   \n"; + echo "Status:   \n"; echo "Beschreibung:
\n"; echo "Auswählbar:   \n"; echo "Human Antwort:   \n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/calendar.css b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/calendar_db.js b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/call_report_export.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/call_report_export.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/fcstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/fcstats.php index 601b8e6c..eb88cb4c 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/fcstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/help.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/help.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/next_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/next_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/next_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/next_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/no_cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/no_cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/pixel.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/pixel.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/prev_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/prev_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/prev_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/prev_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_bl.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_bl.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_bm.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_bm.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_br.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_br.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_mr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_mr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_tr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/images/shade_tr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_report.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_report.php index b7811cd8..f44a4bc3 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_report.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UserTimeclock Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Zeitraum:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Benutzer-Gruppen:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_status.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_status.php index c0006b07..8970956d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_status.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Unzulässiges Username/Kennwort:|$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/user_stats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/user_stats.php index d20d325d..60f4f1ce 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/user_stats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_de/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: User-Statistiken <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSER_service_level.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSER_service_level.php index 3a0ca089..a98dae6d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSER_service_level.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERstats.php index 333d89eb..7e8887dd 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Χρονικό διάστημα:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Εισερχόμενες Ομάδες: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_IVRstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_IVRstats.php index 5abf350b..4e821dd0 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_IVRstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Ημερομηνίες:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo "
Ημερομηνίες:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Ημερομηνίες:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo "
Ημερομηνίες:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; + echo "       ΑΠΟΚΡΥΨΗ ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; } else { - echo "       VIEW ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; - } -if ($UidORname>0) - { - echo "       ΕΜΦΑΝΙΣΗ ΧΕΙΡΙΣΤΗΣID"; - } -else - { - echo "       ΕΜΦΑΝΙΣΗ ΧΕΙΡΙΣΤΗΣNAME"; + echo "       VIEW ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; } if ($SERVdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; + echo "       ΑΠΟΚΡΥΨΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; } else { - echo "       ΕΜΦΑΝΙΣΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; + echo "       ΕΜΦΑΝΙΣΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; } if ($CALLSdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ WAITING CALLS"; + echo "       ΑΠΟΚΡΥΨΗ WAITING CALLS"; } else { - echo "       ΕΜΦΑΝΙΣΗ WAITING CALLS"; + echo "       ΕΜΦΑΝΙΣΗ WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       ΑΠΟΚΡΥΨΗ IN-GROUP STATS"; + } +else + { + echo "       ΕΜΦΑΝΙΣΗ IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ PHONES"; + echo "       ΑΠΟΚΡΥΨΗ PHONES"; } else { - echo "       ΕΜΦΑΝΙΣΗ PHONES"; + echo "       ΕΜΦΑΝΙΣΗ PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ CUSTPHONES"; + echo "       ΑΠΟΚΡΥΨΗ CUSTPHONES"; } else { - echo "       ΕΜΦΑΝΙΣΗ CUSTPHONES"; + echo "       ΕΜΦΑΝΙΣΗ CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Εκστρατείες:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       ΤΡΟΠΟΠΟΙΗΣΗ | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = round($AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec, 2); + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = sprintf("%01.2f", $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec); + } + else + {$AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ΑΠΑΝΤΗΣΗS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/ΑΠΑΝΤΗΣΗS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = round($AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec, 2); - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = sprintf("%01.2f", $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec); - } - else - {$AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ΑΠΑΝΤΗΣΗS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Εκστρατείες with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "ΕΜΦΑΝΙΣΗ ID "; + } +else + { + $HTuser .= "ΕΜΦΑΝΙΣΗ NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " ΟΜΑΔΑ ΧΡΗΣΤΩΝ |"; +$HTusergroup = " ΟΜΑΔΑ ΧΡΗΣΤΩΝ |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " ΔΙΑΚΟΜΙΣΤΗΣ IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL ΔΙΑΚΟΜΙΣΤΗΣ IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/admin.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/admin.php index cd61ea68..f1134ef6 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/admin.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8704,21 +8706,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
Η ΚΑΤΑΣΤΑΣΗ ΤΗΣ ΕΚΣΤΡΑΤΕΙΑΣ ΔΕΝ ΠΡΟΣΤΕΘΗΚΕ - υπάρχει ήδη κατάσταση-εκστρατείας με αυτό το όνομα\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
Η ΚΑΤΑΣΤΑΣΗ ΤΗΣ ΕΚΣΤΡΑΤΕΙΑΣ ΔΕΝ ΠΡΟΣΤΕΘΗΚΕ - υπάρχει ήδη μία καθολική-κατάσταση με αυτό το όνομα\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
Η ΚΑΤΑΣΤΑΣΗ ΤΗΣ ΕΚΣΤΡΑΤΕΙΑΣ ΔΕΝ ΠΡΟΣΤΕΘΗΚΕ - Παρακαλώ ελέγξτε τα δεδομένα που καταχωρήσατε\n"; echo "
η κατάσταση πρέπει να είναι μεταξύ 1 και 8 χαρακτήρρες\n"; @@ -8726,16 +8728,16 @@ if ($ADD==22) } else { - echo "
ΚΑΤΑΣΤΑΣΗ ΕΚΣΤΡΑΤΕΙΑΣ ΠΡΟΣΤΕΘΗΚΕ: $campaign_id - $status\n"; + echo "
ΚΑΤΑΣΤΑΣΗ ΕΚΣΤΡΑΤΕΙΑΣ ΠΡΟΣΤΕΘΗΚΕ: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ΠΡΟΣΘΗΚΗ ΕΚΣΤΡΑΤΕΙΑΣ STATUS', event_sql=\"$SQL_log\", event_notes='Κατάσταση:$status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ΠΡΟΣΘΗΚΗ ΕΚΣΤΡΑΤΕΙΑΣ STATUS', event_sql=\"$SQL_log\", event_notes='Κατάσταση:$status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10298,21 +10300,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ - Παρακαλώ επιστρέψτε πίσω και κάνετε έλεγχο των δεδομένων που καταχωρήσατε\n"; echo "
η κατάσταση πρέπει να είναι μεταξύ 1 και 8 χαρακτήρρες\n"; @@ -10320,16 +10322,16 @@ if ($ADD==221111111111111) } else { - echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ: $status_name - $status\n"; + echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17100,7 +17102,7 @@ if ($ADD==31) echo "
ΠΡΟΣΘΗΚΗ ΝΕΑΣ ΠΡΟΣΑΡΜΟΣΜΕΝΗΣ ΚΑΤΑΣΤΑΣΗΣ ΣΤΗΝ ΕΚΣΤΡΑΤΕΙΑ
\n"; echo "\n"; echo "\n"; - echo "Κατάσταση:   \n"; + echo "Κατάσταση:   \n"; echo "Περιγραφή:   \n"; echo "Επιλέξιμο:  
\n"; echo "Ανθρώπινα Απάντηση:   \n"; @@ -22613,7 +22615,7 @@ if ($ADD==321111111111111) echo "
ΠΡΟΣΘΕΣΤΕ ΤΗ ΝΕΑ ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ
\n"; echo "\n"; - echo "Κατάσταση:   \n"; + echo "Κατάσταση:   \n"; echo "Περιγραφή:
\n"; echo "Επιλέξιμο:   \n"; echo "Ανθρώπινα Απάντηση:   \n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/calendar.css b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/calendar_db.js b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/call_report_export.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/call_report_export.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/fcstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/fcstats.php index c7f53d6f..d1b7f7fd 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/fcstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/help.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/help.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/next_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/next_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/next_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/next_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/no_cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/no_cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/pixel.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/pixel.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/prev_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/prev_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/prev_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/prev_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_bl.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_bl.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_bm.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_bm.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_br.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_br.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_mr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_mr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_tr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/images/shade_tr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_report.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_report.php index 1e3696ba..ff542974 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_report.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + ΧρήστηςΏρα ρολόι Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Χρονικό διάστημα:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Ομάδες Χρήστη:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_status.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_status.php index 9dec411e..d12c5cd6 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_status.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Ακυρο Ονομα Χρήστη/Κωδικός Πρόσβασης: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/user_stats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/user_stats.php index a5cef2d4..dda21b03 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/user_stats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_el/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Στατιστικά Χρήστη <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSER_service_level.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSER_service_level.php index ac7d0a52..143cb246 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSER_service_level.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERstats.php index 64c0b395..cc6790f8 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Rango de Fecha:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Grupos De entrada: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_IVRstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_IVRstats.php index 3dd35881..1aa2f3ec 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_IVRstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Fechas:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo "
Fechas:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Fechas:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo "
Fechas:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       PIEL GRUPO DE USUARIOS"; + echo "       PIEL GRUPO DE USUARIOS"; } else { - echo "       VIEW GRUPO DE USUARIOS"; - } -if ($UidORname>0) - { - echo "       DEMOSTRACIÓN AGENTE ID"; - } -else - { - echo "       DEMOSTRACIÓN AGENTE NAME"; + echo "       VIEW GRUPO DE USUARIOS"; } if ($SERVdisplay>0) { - echo "       PIEL SERVIDOR INFO"; + echo "       PIEL SERVIDOR INFO"; } else { - echo "       DEMOSTRACIÓN SERVIDOR INFO"; + echo "       DEMOSTRACIÓN SERVIDOR INFO"; } if ($CALLSdisplay>0) { - echo "       PIEL WAITING CALLS"; + echo "       PIEL WAITING CALLS"; } else { - echo "       DEMOSTRACIÓN WAITING CALLS"; + echo "       DEMOSTRACIÓN WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       PIEL IN-GROUP STATS"; + } +else + { + echo "       DEMOSTRACIÓN IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       PIEL PHONES"; + echo "       PIEL PHONES"; } else { - echo "       DEMOSTRACIÓN PHONES"; + echo "       DEMOSTRACIÓN PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       PIEL CUSTPHONES"; + echo "       PIEL CUSTPHONES"; } else { - echo "       DEMOSTRACIÓN CUSTPHONES"; + echo "       DEMOSTRACIÓN CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Tiempo Real Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Tiempo Real Report                                                                               \n"; echo "\n"; echo "
Select Campañas:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       MODIFICAR | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_RESPUESTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_RESPUESTAagent_non_pause_sec = round($AVG_RESPUESTAagent_non_pause_sec, 2); + $AVG_RESPUESTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RESPUESTAagent_non_pause_sec); + } + else + {$AVG_RESPUESTAagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_RESPUESTAagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RESPUESTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/RESPUESTAS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_RESPUESTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_RESPUESTAagent_non_pause_sec = round($AVG_RESPUESTAagent_non_pause_sec, 2); - $AVG_RESPUESTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RESPUESTAagent_non_pause_sec); - } - else - {$AVG_RESPUESTAagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_RESPUESTAagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RESPUESTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Campañas with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "DEMOSTRACIÓN ID "; + } +else + { + $HTuser .= "DEMOSTRACIÓN NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " GRUPO DE USUARIOS |"; +$HTusergroup = " GRUPO DE USUARIOS |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " SERVIDOR IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL SERVIDOR IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/admin.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/admin.php index e9d1f0ff..0d099554 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/admin.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO de la CAMPAÚA - hay ya una campaña - estado NO AGREGADO en el sistema con este nombre\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO de la CAMPAÚA NO AGREGADO - hay ya un global-estado en el sistema con este nombre\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESTADO de la CAMPAÚA NO AGREGADO - vaya por favor detrás y mire los datos que usted incorporó\n"; echo "
el estado debe estar entre 1 y 8 caracteres en longitud\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
ESTADO DE LA CAMPAÑA AÑADIDA: $campaign_id - $status\n"; + echo "
ESTADO DE LA CAMPAÑA AÑADIDA: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN NUEVA CAMPAÑA STATUS', event_sql=\"$SQL_log\", event_notes='Estado: $status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN NUEVA CAMPAÑA STATUS', event_sql=\"$SQL_log\", event_notes='Estado: $status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO DE SISTEMA NO AGREGADO - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO DE SISTEMA NO AGREGADO - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESTADO DE SISTEMA NO AGREGADO - Vaya por favor detrás y mire los datos que usted incorporó\n"; echo "
el estado debe estar entre 1 y 8 caracteres en longitud\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
EL ESTADO DE SISTEMA AGREGÓ: $status_name - $status\n"; + echo "
EL ESTADO DE SISTEMA AGREGÓ: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
AGREGAR ESTADO PERSONALIZADO A LA CAMPAÑA
\n"; echo "\n"; echo "\n"; - echo "Estado:   \n"; + echo "Estado:   \n"; echo "Descripción:   \n"; echo "Seleccionable:  
\n"; echo "Respuesta humana:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
AGREGUE EL NUEVO ESTADO DE SISTEMA
\n"; echo "\n"; - echo "Estado:   \n"; + echo "Estado:   \n"; echo "Descripción:
\n"; echo "Seleccionable:   \n"; echo "Respuesta humana:   \n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/calendar.css b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/calendar_db.js b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/call_report_export.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/call_report_export.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/fcstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/fcstats.php index d5b9a178..e94d3b0a 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/fcstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/help.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/help.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/next_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/next_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/next_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/next_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/no_cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/no_cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/pixel.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/pixel.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/prev_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/prev_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/prev_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/prev_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_bl.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_bl.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_bm.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_bm.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_br.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_br.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_mr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_mr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_tr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/images/shade_tr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_report.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_report.php index c2416ffd..2b1198bd 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_report.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UsuarioReloj de tiempo Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Rango de Fecha:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Grupos De Usuario:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_status.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_status.php index 6e4b5c14..21bf28c5 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_status.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Nombre y contraseña inválidos del usuario: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/user_stats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/user_stats.php index 32ebf789..f62c2a3f 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/user_stats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_es/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Estadísticas de usuario <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSER_service_level.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSER_service_level.php index 9538136d..d581bc60 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSER_service_level.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERstats.php index 40c808d6..d5b7a593 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Date Range:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Groupes entrants: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_IVRstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_IVRstats.php index 8e9daeee..93c903e5 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_IVRstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Dates:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       CACHER GROUPE D'UTILISATEURS"; + echo "       CACHER GROUPE D'UTILISATEURS"; } else { - echo "       VIEW GROUPE D'UTILISATEURS"; - } -if ($UidORname>0) - { - echo "       MONTRER AGENT ID"; - } -else - { - echo "       MONTRER AGENT NAME"; + echo "       VIEW GROUPE D'UTILISATEURS"; } if ($SERVdisplay>0) { - echo "       CACHER SERVEUR INFO"; + echo "       CACHER SERVEUR INFO"; } else { - echo "       MONTRER SERVEUR INFO"; + echo "       MONTRER SERVEUR INFO"; } if ($CALLSdisplay>0) { - echo "       CACHER WAITING CALLS"; + echo "       CACHER WAITING CALLS"; } else { - echo "       MONTRER WAITING CALLS"; + echo "       MONTRER WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       CACHER IN-GROUP STATS"; + } +else + { + echo "       MONTRER IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       CACHER PHONES"; + echo "       CACHER PHONES"; } else { - echo "       MONTRER PHONES"; + echo "       MONTRER PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       CACHER CUSTPHONES"; + echo "       CACHER CUSTPHONES"; } else { - echo "       MONTRER CUSTPHONES"; + echo "       MONTRER CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Campagnes:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       MODIFIER | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_REPONSEagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_REPONSEagent_non_pause_sec = round($AVG_REPONSEagent_non_pause_sec, 2); + $AVG_REPONSEagent_non_pause_sec = sprintf("%01.2f", $AVG_REPONSEagent_non_pause_sec); + } + else + {$AVG_REPONSEagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_REPONSEagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
REPONSES TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/REPONSES:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_REPONSEagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_REPONSEagent_non_pause_sec = round($AVG_REPONSEagent_non_pause_sec, 2); - $AVG_REPONSEagent_non_pause_sec = sprintf("%01.2f", $AVG_REPONSEagent_non_pause_sec); - } - else - {$AVG_REPONSEagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_REPONSEagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
REPONSES TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Campagnes with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "MONTRER ID "; + } +else + { + $HTuser .= "MONTRER NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " GROUPE D'UTILISATEURS |"; +$HTusergroup = " GROUPE D'UTILISATEURS |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " SERVEUR IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL SERVEUR IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/admin.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/admin.php index 7871196d..8548dd1a 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/admin.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE LA CAMPAGNE NON AJOUTE - il y a déjà un statut de campagne dans le système avec ce nom\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE LA CAMPAGNE NON AJOUTE - il y a déjà un statut global dans le système avec ce nom\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
STATUT DE LA CAMPAGNE NON AJOUTE - Veuillez revenir en arrière et vérifier les données que vous avez saisies\n"; echo "
le statut doit contenir entre 1 et 8 caractères\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
STATUT DE LA CAMPAGNE AJOUTE: $campaign_id - $status\n"; + echo "
STATUT DE LA CAMPAGNE AJOUTE: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AJOUTER UNE CAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Etat: $status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AJOUTER UNE CAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Etat: $status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE SYSTÈME NON SUPPLÉMENTAIRE - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE SYSTÈME NON SUPPLÉMENTAIRE - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
STATUT DE SYSTÈME NON SUPPLÉMENTAIRE - Veuillez retourner en arrière et vérifier les données que vous avez saisies\n"; echo "
le statut doit contenir entre 1 et 8 caractères\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
STATUT DE SYSTÈME SUPPLÉMENTAIRE: $status_name - $status\n"; + echo "
STATUT DE SYSTÈME SUPPLÉMENTAIRE: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
AJOUTER UN NOUVEAU STATUT DE CAMPAGNE PERSONNALISE
\n"; echo "\n"; echo "\n"; - echo "Etat:   \n"; + echo "Etat:   \n"; echo "Description:   \n"; echo "Selectionnable:  
\n"; echo "Réponse de l'homme:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
AJOUTEZ LE NOUVEAU STATUT DE SYSTÈME
\n"; echo "\n"; - echo "Etat:   \n"; + echo "Etat:   \n"; echo "Description:
\n"; echo "Selectionnable:   \n"; echo "Réponse de l'homme:   \n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/calendar.css b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/calendar_db.js b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/call_report_export.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/call_report_export.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/fcstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/fcstats.php index 8130a61d..bea37962 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/fcstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/help.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/help.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/next_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/next_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/next_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/next_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/no_cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/no_cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/pixel.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/pixel.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/prev_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/prev_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/prev_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/prev_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_bl.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_bl.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_bm.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_bm.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_br.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_br.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_mr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_mr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_tr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/images/shade_tr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_report.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_report.php index 3b457dcb..8c020fc4 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_report.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UtilisateurHorloge en temps Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE BORDER=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Groupes d'utilisateurs:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_status.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_status.php index fd7b798e..953a0f9f 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_status.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Login ou mot de passe invalide: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/user_stats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/user_stats.php index d32923d3..b679f54a 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/user_stats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_fr/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Statistiques utilisateur <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSER_service_level.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSER_service_level.php index ba3aeda0..4bc7a60d 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSER_service_level.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERstats.php index 717f5748..7bde74e4 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Date:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Gruppi Inbound: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_IVRstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_IVRstats.php index 87899322..14745814 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_IVRstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Date:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo "
Date:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Date:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo "
Date:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       NASCONDI GRUPPI UTENTI"; + echo "       NASCONDI GRUPPI UTENTI"; } else { - echo "       MOSTRA GRUPPI UTENTI"; - } -if ($UidORname>0) - { - echo "       MOSTRA ID OPERATORE"; - } -else - { - echo "       MOSTRA NOME OPERATORE"; + echo "       MOSTRA GRUPPI UTENTI"; } if ($SERVdisplay>0) { - echo "       NASCONDI INFO SERVER"; + echo "       NASCONDI INFO SERVER"; } else { - echo "       MOSTRA INFO SERVER"; + echo "       MOSTRA INFO SERVER"; } if ($CALLSdisplay>0) { - echo "       NASCONDI WAITING CALLS"; + echo "       NASCONDI WAITING CALLS"; } else { - echo "       MOSTRA WAITING CALLS"; + echo "       MOSTRA WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       NASCONDI IN-GROUP STATS"; + } +else + { + echo "       MOSTRA IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       NASCONDI PHONES"; + echo "       NASCONDI PHONES"; } else { - echo "       MOSTRA PHONES"; + echo "       MOSTRA PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       NASCONDI CUSTPHONES"; + echo "       NASCONDI CUSTPHONES"; } else { - echo "       MOSTRA CUSTPHONES"; + echo "       MOSTRA CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Campagnas:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "PIU LENTO | "; -echo "INIZIA"; +echo "STOP | "; +echo "PIU LENTO | "; +echo "INIZIA"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       MODIFICA | \n"; @@ -718,7 +756,8 @@ echo "
per favore seleziona una campagna dal menu qui in alto\n"; exit;} +if (!$group) + {echo "

per favore seleziona una campagna dal menu qui in alto\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_RISPOSTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_RISPOSTAagent_non_pause_sec = round($AVG_RISPOSTAagent_non_pause_sec, 2); + $AVG_RISPOSTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RISPOSTAagent_non_pause_sec); + } + else + {$AVG_RISPOSTAagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_RISPOSTAagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CHIAMATE OGGI:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RISPOSTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/RISPOSTAS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_RISPOSTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_RISPOSTAagent_non_pause_sec = round($AVG_RISPOSTAagent_non_pause_sec, 2); - $AVG_RISPOSTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RISPOSTAagent_non_pause_sec); - } - else - {$AVG_RISPOSTAagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_RISPOSTAagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CHIAMATE OGGI:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RISPOSTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDINE:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Campagnas with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " UTENTE INFO |"; + + +$HTuser = " UTENTE "; +if ($UidORname>0) + { + $HTuser .= "MOSTRA ID "; + } +else + { + $HTuser .= "MOSTRA NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " Utente Group |"; +$HTusergroup = " Utente Group |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " SERVER IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL SERVER IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAGNA |"; +$HTcampaign = " CAMPAGNA |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/admin.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/admin.php index e32f1cb2..9cf6dcee 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/admin.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO CAMPAGNA NON AGGIUNTO - Esiste gia` un esito campagna con questo nome\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO CAMPAGNA NON AGGIUNTO - esiste gia` un esito globale con questo nome\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESITO CAMPAGNA NON AGGIUNTO - Per favore torna indietro e ricontrolla i dati inseriti\n"; echo "
l`esito deve essere lungo tra 1 e 8 caratteri\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
STATO PERSONALIZZATO PER CAMPAGNA AGGIUNTO: $campaign_id - $status\n"; + echo "
STATO PERSONALIZZATO PER CAMPAGNA AGGIUNTO: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AGGIUNGI CAMPAGNA STATUS', event_sql=\"$SQL_log\", event_notes='Esito: $status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AGGIUNGI CAMPAGNA STATUS', event_sql=\"$SQL_log\", event_notes='Esito: $status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO DI DEFAULT NON AGGIUNTO - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO DI DEFAULT NON AGGIUNTO - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESITO DI DEFAULT NON AGGIUNTO - Per favore torna indietro e ricontrolla i dati inseriti\n"; echo "
l`esito deve essere lungo tra 1 e 8 caratteri\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
ESITO DI DEFAULT AGGIUNTO: $status_name - $status\n"; + echo "
ESITO DI DEFAULT AGGIUNTO: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
AGGIUNGI NUOVO ESITO PERSONALIZZATO PER CAMPAGNA
\n"; echo "\n"; echo "\n"; - echo "Esito:   \n"; + echo "Esito:   \n"; echo "Descrizione:   \n"; echo "Selezionabile:  
\n"; echo "Risposta Umana:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
AGGIUNGI UN NUOVO ESITO DI DEFAULT
\n"; echo "\n"; - echo "Esito:   \n"; + echo "Esito:   \n"; echo "Descrizione:
\n"; echo "Selezionabile:   \n"; echo "Risposta Umana:   \n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/calendar.css b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/calendar_db.js b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/call_report_export.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/call_report_export.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/fcstats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/fcstats.php index e5da03e7..a4b3c14e 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/fcstats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/help.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/help.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/next_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/next_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/next_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/next_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/no_cal.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/no_cal.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/pixel.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/pixel.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/prev_mon.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/prev_mon.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/prev_year.gif b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/prev_year.gif differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_bl.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_bl.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_bm.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_bm.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_br.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_br.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_mr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_mr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_tr.png b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/images/shade_tr.png differ diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_report.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_report.php index 261f7a9f..78443177 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_report.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UtenteOrologio Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Date:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Gruppi Utenti:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_status.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_status.php index c633c320..c1be37e9 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_status.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Utentename/Password non validi: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/user_stats.php b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/user_stats.php index e23daa53..c5b9a825 100644 --- a/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/user_stats.php +++ b/agc_2-X/branches/agc_2.2.0/LANG_www/vicidial_it/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Statistiche utente <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/branches/agc_2.2.0/UPGRADE b/agc_2-X/branches/agc_2.2.0/UPGRADE index 6f3e7a77..70d8cdb4 100644 --- a/agc_2-X/branches/agc_2.2.0/UPGRADE +++ b/agc_2-X/branches/agc_2.2.0/UPGRADE @@ -367,6 +367,7 @@ NOTE: Upgrading from 1.1.12-3 to 2.0.1 is at the bottom 88. Added Traditional Chinese (zt_tw) language translation of the agent screen which can be found in the LANG_www/agc_tw directory +89. Added popup calendars to many of the reports for easier date selection diff --git a/agc_2-X/branches/agc_2.2.0/extras/MySQL_AST_CREATE_tables.sql b/agc_2-X/branches/agc_2.2.0/extras/MySQL_AST_CREATE_tables.sql index db3a6b26..ce19fd03 100644 --- a/agc_2-X/branches/agc_2.2.0/extras/MySQL_AST_CREATE_tables.sql +++ b/agc_2-X/branches/agc_2.2.0/extras/MySQL_AST_CREATE_tables.sql @@ -1913,7 +1913,7 @@ INSERT INTO vicidial_inbound_groups(group_id,group_name,group_color,active,queue INSERT INTO vicidial_lists SET list_id='999',list_name='Default inbound list',campaign_id='TESTCAMP',active='N'; INSERT INTO vicidial_lists SET list_id='998',list_name='Default Manual list',campaign_id='TESTCAMP',active='N'; -INSERT INTO system_settings (version,install_date) values('2.2.0rc4', CURDATE()); +INSERT INTO system_settings (version,install_date) values('2.2.0rc5', CURDATE()); INSERT INTO vicidial_status_categories (vsc_id,vsc_name) values('UNDEFINED','Default Category'); diff --git a/agc_2-X/branches/agc_2.2.0/extras/upgrade_2.2.0.sql b/agc_2-X/branches/agc_2.2.0/extras/upgrade_2.2.0.sql index 04171e6b..40dab3b6 100644 --- a/agc_2-X/branches/agc_2.2.0/extras/upgrade_2.2.0.sql +++ b/agc_2-X/branches/agc_2.2.0/extras/upgrade_2.2.0.sql @@ -734,4 +734,4 @@ CREATE TABLE vicidial_carrier_log_archive LIKE vicidial_carrier_log; UPDATE system_settings SET db_schema_version='1193',db_schema_update_date=NOW(); -UPDATE system_settings SET version='2.2.0rc4',db_schema_update_date=NOW(); +UPDATE system_settings SET version='2.2.0rc5',db_schema_update_date=NOW(); diff --git a/agc_2-X/branches/agc_2.2.0/version b/agc_2-X/branches/agc_2.2.0/version index 6b8c1c16..ce478c58 100644 --- a/agc_2-X/branches/agc_2.2.0/version +++ b/agc_2-X/branches/agc_2.2.0/version @@ -1 +1 @@ -2.2.0rc4 +2.2.0rc5 diff --git a/agc_2-X/trunk/LANG_www/agc_br/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_br/vdc_db_query.php index ebfa9a6c..208fb89b 100644 --- a/agc_2-X/trunk/LANG_www/agc_br/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_br/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_br/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_br/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_br/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_br/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_br/vicidial.php b/agc_2-X/trunk/LANG_www/agc_br/vicidial.php index fdcebbfa..2814f871 100644 --- a/agc_2-X/trunk/LANG_www/agc_br/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_br/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_ptbr.gif\" border=0 alt=\" Pausa \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume_ptbr.gif\" border=0 alt=\"Início\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause_ptbr.gif\" border=0 alt=\" Pausa \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_ptbr.gif\" border=0 alt=\"Início\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_ptbr.gif\" border=0 alt=\" Pausa \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_ptbr.gif\" border=0 alt=\"Início\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE ESTAR PAUSADO PARA VERIFICAR OS AGENDAMENTOS"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE ESTAR PAUSADO PARA DISCAR COM DISCAGEM MANUAL."); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO PARA DAR ENTRADA A um CÓDIGO Da PAUSA NaMODALIDADE De AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSA PARA GRAB APELA EM FILA"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Mostrar the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Mostrar the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> AGENDAMENTOS POR AGENTE <?php echo $VD_login ?>:<BR>Clique em um dos contatos abaixo para ligar. Se você clicar em um contatos abaixo o mesmo será removido da lista de Agendamentos. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> AGENDAMENTOS POR AGENTE <?php echo $VD_login ?>:<BR>Clique em um dos contatos abaixo para ligar. Se você clicar em um contatos abaixo o mesmo será removido da lista de Agendamentos. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NOVA DISCAGEM MANUAL PARA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Digite abaixo a informação do novo contato que você deseja ligar. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NOVA DISCAGEM MANUAL PARA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Digite abaixo a informação do novo contato que você deseja ligar. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Não existe ninguem na sua sessão: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Não existe ninguem na sua sessão: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Voltar</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Ligar novamente para o agente</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> O cliente desligou: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> O cliente desligou: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Voltar</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Finalize e coloque o status da ligação</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Chamada Wrapup: <span id="WrapupTimer"></span> segundos restantes no wrapup<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Chamada Wrapup: <span id="WrapupTimer"></span> segundos restantes no wrapup<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Revestimento Wrapup e movimento sobre</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Sua sessão foi incapacitada<BR><a href="#" onclick="LogouT('DISABLED');return false;">SAIR</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Voltar</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Sua sessão foi incapacitada<BR><a href="#" onclick="LogouT('DISABLED');return false;">SAIR</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Voltar</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Voltar</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Voltar</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">SAIR</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">SAIR</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELEÇÃO DE STATUS :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Desligue novamente</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimizar </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELEÇÃO DE STATUS :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Desligue novamente</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimizar </a></span><BR> <span id="DispoSelectContent"> Fim da seleção de status </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PAUSAR DISCAGEM DO AGENTE <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECIONE Um CÓDIGO Da PAUSA :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECIONE Um CÓDIGO Da PAUSA :<BR> <span id="PauseCodeSelectContent"> Pausa Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Selecionar um grupo ALIÁS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Selecionar um grupo ALIÁS :<BR> <span id="GroupAliasSelectContent"> Grupo Alias Selecção </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Selecione uma data para o retorno :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Selecione uma data para o retorno :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Selecione uma data abaixo</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECAO DO GRUPO DE ENTRADA DO CLOSER <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECAO DO GRUPO DE ENTRADA DO CLOSER <BR> <span id="CloserSelectContent"> Seleção do grupo de entrada do closer </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> REINICIAR </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_de/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_de/vdc_db_query.php index c3470ec4..e8b7ca2c 100644 --- a/agc_2-X/trunk/LANG_www/agc_de/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_de/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pause Code has been updated to $status for $agent_log_id\n"; + echo ' Pause Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_de/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_de/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_de/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_de/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_de/vicidial.php b/agc_2-X/trunk/LANG_www/agc_de/vicidial.php index c3756c36..fb7acd4b 100644 --- a/agc_2-X/trunk/LANG_www/agc_de/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_de/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pause \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume_de.gif\" border=0 alt=\"WiederAufnehmen\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Pause \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_de.gif\" border=0 alt=\"WiederAufnehmen\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pause \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_de.gif\" border=0 alt=\"WiederAufnehmen\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT SEIN, UM DIE WIEDERVORLAGEN IM AUTOMATISCHEM WÄHLMODUS EINZUSEHEN"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT SEIN, UM EINE NEUE ADRESSE IM AUTOMATISCHEM WÄHLMODUS MANUELL ZU WÄHLEN"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pause Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT WERDEN, UM Einen PAUSE CODE Im AUTO-DIAL MODUS EINZUGEBEN"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Sie müssen mit GRAB Anrufe in der Warteschlange pausiert"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Zeigen the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("SIE MÜSSEN PAUSIERT SEIN UM DIE GRUPPE ZU WECHSELN"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Zeigen the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("SIE MÜSSEN PAUSIERT SEIN UM DIE GRUPPE ZU WECHSELN"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> WIEDERVORLAGEN FÜR AGENT <?php echo $VD_login ?>:<BR>Klicken Sie jetzt unten auf eine Wiedervorlage, um den Kunden zurückzurufen. Danach wird die Wiedervorlage aus der Liste gelöscht.. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> WIEDERVORLAGEN FÜR AGENT <?php echo $VD_login ?>:<BR>Klicken Sie jetzt unten auf eine Wiedervorlage, um den Kunden zurückzurufen. Danach wird die Wiedervorlage aus der Liste gelöscht.. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NEUE MANUELLE ADRESSE FÜR <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Tragen Sie unten die Informationen zu der neuen Adresse ein, die SIE wählen möchten. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NEUE MANUELLE ADRESSE FÜR <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Tragen Sie unten die Informationen zu der neuen Adresse ein, die SIE wählen möchten. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Niemand ist in ihrer Konferenz.: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Niemand ist in ihrer Konferenz.: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Zurück</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Agent wieder anrufen</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Kunde hat aufgelegt: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Kunde hat aufgelegt: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Zurück</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Ende und Gesprächsergebniss</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Anruf Nachbereitung: <span id="WrapupTimer"></span> Verbleibende Sekunden der Nachbereitung<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Anruf Nachbereitung: <span id="WrapupTimer"></span> Verbleibende Sekunden der Nachbereitung<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Beende Nachbereitung und mache weiter</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Ihre Sitzung ist gesperrt worden<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Zurück</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Ihre Sitzung ist gesperrt worden<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Zurück</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Es ist eine Zeit-Synchronisation Problem mit Ihrem System haben, wenden Sie sich bitte sagen Sie sich an Ihren Systemadministrator<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Zurück</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Es ist eine Zeit-Synchronisation Problem mit Ihrem System haben, wenden Sie sich bitte sagen Sie sich an Ihren Systemadministrator<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Zurück</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ANRUF ABSCHLIESSEN :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Wieder Auflegen</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimieren </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ANRUF ABSCHLIESSEN :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Wieder Auflegen</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimieren </a></span><BR> <span id="DispoSelectContent"> Gesprächsergebnis Auswahl </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> WÄHLPAUSE <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> WÄHLEN Sie Einen PAUSE CODE :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> WÄHLEN Sie Einen PAUSE CODE :<BR> <span id="PauseCodeSelectContent"> Pause Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Wählen Sie eine Gruppe ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Wählen Sie eine Gruppe ALIAS :<BR> <span id="GroupAliasSelectContent"> Gruppe Alias Auswahl </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Wählen Sie ein Rückrufdatum :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Wählen Sie ein Rückrufdatum :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Wählen Sie unten ein Datum</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SUPERVISOR INBOUND GRUPPENWAHL <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SUPERVISOR INBOUND GRUPPENWAHL <BR> <span id="CloserSelectContent"> Supervisor Inbound Gruppenwahl </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> ZURÜCKSETZEN </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_el/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_el/vdc_db_query.php index 8f81c8dc..6ead14d2 100644 --- a/agc_2-X/trunk/LANG_www/agc_el/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_el/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Παύση Code has been updated to $status for $agent_log_id\n"; + echo ' Παύση Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_el/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_el/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_el/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_el/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_el/vicidial.php b/agc_2-X/trunk/LANG_www/agc_el/vicidial.php index 22b347a0..d9b1248a 100644 --- a/agc_2-X/trunk/LANG_www/agc_el/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_el/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_el.gif\" border=0 alt=\" Παύση \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume_el.gif\" border=0 alt=\"Επανάληψη\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause_el.gif\" border=0 alt=\" Παύση \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_el.gif\" border=0 alt=\"Επανάληψη\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_el.gif\" border=0 alt=\" Παύση \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_el.gif\" border=0 alt=\"Επανάληψη\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΘΑ ΠΡΕΠΕΙ ΝΑ ΕΙΣΑΣΤΕ ΣΕ ΠΑΥΣΗ ΓΙΑ ΝΑ ΕΛΕΓΞΕΤΕ ΤΙΣ ΕΠΑΝΑΚΛΗΣΕΙΣ ΣΕ ΑΥΤΟΜΑΤΗ ΜΕΘΟΔΟ"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΘΑ ΠΡΕΠΕΙ ΝΑ ΕΙΣΑΣΤΕ ΣΕ ΠΑΥΣΗ ΓΙΑ ΧΕΙΡΟΚΙΝΗΤΗ ΚΛΗΣΗ ΣΕ ΑΥΤΟΜΑΤΗ ΜΕΘΟΔΟ"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Παύση Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΠΡΕΠΕΙ ΝΑ ΣΤΑΜΑΤΗΘΕΙΤΕ ΓΙΑ ΝΑ ΠΛΗΚΤΡΟΛΟΓΕΙΤΕ έναν ΚΩΔΙΚΟ ΜΙΚΡΗΣΔΙΑΚΟΠΉΣ στον ΤΡΟΠΟ αυτόματος-ΠΙΝΑΚΩΝ"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ΠΡΕΠΕΙ να διακοπεί για να αρπάξει ΚΛΗΣΕΙΣ σε αναμονή"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Παρουσίαση the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Πρέπει να είστε Paused TO CHANGE ΟΜΑΔΕΣ"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Παρουσίαση the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Πρέπει να είστε Paused TO CHANGE ΟΜΑΔΕΣ"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ΕΠΑΝΑΚΛΗΣΕΙΣ ΓΙΑ ΤΟΝ ΧΕΙΡΙΣΤΗ <?php echo $VD_login ?>:<BR>Επιλέξτε μία επανάκληση παρακάτω για να καλέσετε τον πελάτη τώρα. Εάν επιλέξετε μία εγγραφή παρακάτω, θα διαγραφεί από την λίστα. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ΕΠΑΝΑΚΛΗΣΕΙΣ ΓΙΑ ΤΟΝ ΧΕΙΡΙΣΤΗ <?php echo $VD_login ?>:<BR>Επιλέξτε μία επανάκληση παρακάτω για να καλέσετε τον πελάτη τώρα. Εάν επιλέξετε μία εγγραφή παρακάτω, θα διαγραφεί από την λίστα. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ΝΕΑ ΧΕΙΡΟΚΙΝΗΤΗ ΚΛΗΣΗ ΟΔΗΓΟΥ ΓΙΑ <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Καταχωρήστε τις πληροφορίες παρακάτω για τον νέο οδηγό που επιθυμήτε να καλέσετε. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ΝΕΑ ΧΕΙΡΟΚΙΝΗΤΗ ΚΛΗΣΗ ΟΔΗΓΟΥ ΓΙΑ <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Καταχωρήστε τις πληροφορίες παρακάτω για τον νέο οδηγό που επιθυμήτε να καλέσετε. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Κανένας δεν είναι στη σύνοδό σας: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Κανένας δεν είναι στη σύνοδό σας: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Επιστροφή</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Ξανακάλεσε τον Χειριστή</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Ο πελάτης έχει κλείσει το τηλέφωνο: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Ο πελάτης έχει κλείσει το τηλέφωνο: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Επιστροφή</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Τελείωσε και Τερμάτισε την Κλήση</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Αναδίπλωση Κλήσης: <span id="WrapupTimer"></span> απομύνοντα δευτερόλεπτα σε αναδίπλωση<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Αναδίπλωση Κλήσης: <span id="WrapupTimer"></span> απομύνοντα δευτερόλεπτα σε αναδίπλωση<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Τελείωμα Αναδίπλωσης και Συνέχεια</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Η σύνοδός σας έχει τεθεί εκτός λειτουργίας<BR><a href="#" onclick="LogouT('DISABLED');return false;">ΑΠΟΣΥΝΔΕΣΗ</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Επιστροφή</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Η σύνοδός σας έχει τεθεί εκτός λειτουργίας<BR><a href="#" onclick="LogouT('DISABLED');return false;">ΑΠΟΣΥΝΔΕΣΗ</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Επιστροφή</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Υπάρχει ένα πρόβλημα συγχρονισμού με το χρόνο σας, παρακαλούμε ενημερώστε τον διαχειριστή του συστήματός σας<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Επιστροφή</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Υπάρχει ένα πρόβλημα συγχρονισμού με το χρόνο σας, παρακαλούμε ενημερώστε τον διαχειριστή του συστήματός σας<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Επιστροφή</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">ΑΠΟΣΥΝΔΕΣΗ</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">ΑΠΟΣΥΝΔΕΣΗ</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Τερματισμός Κλήσης :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Ξανακλήσε</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> ελαχιστοποιήστε </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Τερματισμός Κλήσης :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Ξανακλήσε</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> ελαχιστοποιήστε </a></span><BR> <span id="DispoSelectContent"> Επιλογή τερματισμού της κλήσης </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> ΤΕΡΜΑΤΙΣΜΟΣ ΚΛΗΣΗΣ <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ΕΠΙΛΕΞΤΕ έναν ΚΩΔΙΚΑ ΜΙΚΡΗΣ ΔΙΑΚΟΠΉΣ :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ΕΠΙΛΕΞΤΕ έναν ΚΩΔΙΚΑ ΜΙΚΡΗΣ ΔΙΑΚΟΠΉΣ :<BR> <span id="PauseCodeSelectContent"> Παύση Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ΕΠΙΛΕΞΤΕ ΟΜΑΔΑ ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ΕΠΙΛΕΞΤΕ ΟΜΑΔΑ ALIAS :<BR> <span id="GroupAliasSelectContent"> Γνωστός Ομάδα Επιλογής </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Επιλέξτε μια ημερομηνία CallBack :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Επιλέξτε μια ημερομηνία CallBack :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Επιλέξτε μια ημερομηνία κατωτέρω</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CLOSER ΕΙΣΕΡΧΟΜΕΝΗ ΕΠΙΛΟΓΗ ΟΜΑΔΑΣ <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> CLOSER ΕΙΣΕΡΧΟΜΕΝΗ ΕΠΙΛΟΓΗ ΟΜΑΔΑΣ <BR> <span id="CloserSelectContent"> Επιλογή Closer εισερχόμενης ομάδας </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> ΕΠΑΝΑΦΟΡΑ </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_es/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_es/vdc_db_query.php index 559f24ca..e2cbad25 100644 --- a/agc_2-X/trunk/LANG_www/agc_es/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_es/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_es/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_es/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_es/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_es/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_es/vicidial.php b/agc_2-X/trunk/LANG_www/agc_es/vicidial.php index 4b36d014..7eb768fe 100644 --- a/agc_2-X/trunk/LANG_www/agc_es/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_es/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_es.gif\" border=0 alt=\" Pausa \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume_es.gif\" border=0 alt=\"Comienzo\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause_es.gif\" border=0 alt=\" Pausa \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_es.gif\" border=0 alt=\"Comienzo\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_es.gif\" border=0 alt=\" Pausa \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_es.gif\" border=0 alt=\"Comienzo\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO BREVEMENTE PARA COMPROBAR SERVICIOS REPETIDOS EN MODO DE AUTO-DIAL"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO BREVEMENTE Al DIAL MANUAL Un NUEVO PLOMO EN MODO De AUTO-DIAL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO BREVEMENTE PARA INTRODUCIR Un CÓDIGO De la PAUSA EN AUTO-DIAL MODE"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE SER DETENIDO GRAB a las llamadas en cola"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Demostración the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("USTED DEBE CAMBIAR pausa GRUPOS"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Demostración the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("USTED DEBE CAMBIAR pausa GRUPOS"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SERVICIOS REPETIDOS PARA EL AGENTE <?php echo $VD_login ?>:<BR>Chasque encendido un servicio repetido abajo ahora para llamar la parte posteriora del cliente. Si usted chasca encendido un expediente abajo para llamarlo, será quitado de la lista. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SERVICIOS REPETIDOS PARA EL AGENTE <?php echo $VD_login ?>:<BR>Chasque encendido un servicio repetido abajo ahora para llamar la parte posteriora del cliente. Si usted chasca encendido un expediente abajo para llamarlo, será quitado de la lista. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NUEVO PLOMO MANUAL DEL DIAL PARA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Incorpore la información abajo para el nuevo plomo que usted desea llamar. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NUEVO PLOMO MANUAL DEL DIAL PARA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Incorpore la información abajo para el nuevo plomo que usted desea llamar. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Nadie está en su sesión: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Nadie está en su sesión: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Vaya Detrás</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Agente De la Llamada Otra vez</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> El cliente ha colgado: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> El cliente ha colgado: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Vaya Detrás</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Final y llamada de la disposición</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Llamada Wrapup: <span id="WrapupTimer"></span> segundos restantes en wrapup<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Llamada Wrapup: <span id="WrapupTimer"></span> segundos restantes en wrapup<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Final Wrapup y movimiento encendido</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Se ha inhabilitado su sesión<BR><a href="#" onclick="LogouT('DISABLED');return false;">SALIR</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Vaya Detrás</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Se ha inhabilitado su sesión<BR><a href="#" onclick="LogouT('DISABLED');return false;">SALIR</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Vaya Detrás</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Hay un problema de sincronización de tiempo con su sistema, por favor, dígale a su administrador del sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Vaya Detrás</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Hay un problema de sincronización de tiempo con su sistema, por favor, dígale a su administrador del sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Vaya Detrás</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">SALIR</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">SALIR</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> DISPOSITION LLAMADA :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Retraso Otra vez</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> reduzca al mínimo </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> DISPOSITION LLAMADA :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Retraso Otra vez</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> reduzca al mínimo </a></span><BR> <span id="DispoSelectContent"> selección de la disposición del End-of-call </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PARAR LA LLAMADA <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECCIONE Un CÓDIGO De la PAUSA :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECCIONE Un CÓDIGO De la PAUSA :<BR> <span id="PauseCodeSelectContent"> Pausa Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECCIONAR UN GRUPO DE ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECCIONAR UN GRUPO DE ALIAS :<BR> <span id="GroupAliasSelectContent"> Grupo de Selección de Alias </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Seleccione una fecha del servicio repetido :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Seleccione una fecha del servicio repetido :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Seleccione una fecha abajo</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECCIÓN DEL GRUPO DE ENTRANTES CLOSER <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECCIÓN DEL GRUPO DE ENTRANTES CLOSER <BR> <span id="CloserSelectContent"> SELECCIÓN DEL GRUPO DE ENTRANTES CLOSER </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> REINICIAR </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_fr/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_fr/vdc_db_query.php index e562766b..03256627 100644 --- a/agc_2-X/trunk/LANG_www/agc_fr/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_fr/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pause Code has been updated to $status for $agent_log_id\n"; + echo ' Pause Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_fr/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_fr/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_fr/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_fr/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_fr/vicidial.php b/agc_2-X/trunk/LANG_www/agc_fr/vicidial.php index 1eb3b6de..5f7f4194 100644 --- a/agc_2-X/trunk/LANG_www/agc_fr/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_fr/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pause \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume.gif\" border=0 alt=\"Résumé\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Pause \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Résumé\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pause \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Résumé\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE EN PAUSE POUR POUVOIR CONSULTER LA LISTE DES RAPPELS AUTOMATIQUES"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE EN PAUSE POUR COMPOSER UN APPEL MANUEL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pause Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE FAIT UNE PAUSE POUR ÉCRIRE Un CODE De PAUSE DANS LeMODE D'AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE PAUSED GRAB AUX APPELS EN QUEUE"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Visualiser the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOUS DEVEZ ÊTRE pause pour changer de groupe"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Visualiser the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("VOUS DEVEZ ÊTRE pause pour changer de groupe"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> RAPPELS PERSONNELS <?php echo $VD_login ?>:<BR>Selectionnez un rappel a éffectuer immédiatement. Une fois éffectué, ce rappel diparaitra de la liste. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> RAPPELS PERSONNELS <?php echo $VD_login ?>:<BR>Selectionnez un rappel a éffectuer immédiatement. Une fois éffectué, ce rappel diparaitra de la liste. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NOUVEL APPEL MANUEL VERS <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Nouveau prospect: remplissez le formulaire ci dessous. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NOUVEL APPEL MANUEL VERS <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Nouveau prospect: remplissez le formulaire ci dessous. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Votre session est vide: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Votre session est vide: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Retour</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Rappeler l'agent</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Le client a raccroché: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Le client a raccroché: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Retour</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Terminer et Statuer l'Appel</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Traitement Post Appel : <span id="WrapupTimer"></span> secondes restant pour le traitement post appel<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Traitement Post Appel : <span id="WrapupTimer"></span> secondes restant pour le traitement post appel<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Terminer le traitement post appel et continuer</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Votre session a été neutralisée<BR><a href="#" onclick="LogouT('DISABLED');return false;">DÉCONNEXION</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Retour</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Votre session a été neutralisée<BR><a href="#" onclick="LogouT('DISABLED');return false;">DÉCONNEXION</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Retour</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Il ya un problème de synchronisation avec votre système, s'il vous plaît dites-le à votre administrateur système<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Retour</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Il ya un problème de synchronisation avec votre système, s'il vous plaît dites-le à votre administrateur système<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Retour</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">DÉCONNEXION</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">DÉCONNEXION</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> STATUER L'APPEL :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Décrochement Encore</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> réduire </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> STATUER L'APPEL :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Décrochement Encore</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> réduire </a></span><BR> <span id="DispoSelectContent"> Selection du status de fin d'appel </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PAUSE DE LA NUMEROTATION <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CHOISISSEZ Un CODE De PAUSE :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> CHOISISSEZ Un CODE De PAUSE :<BR> <span id="PauseCodeSelectContent"> Pause Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CHOISIR UN GROUPE ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> CHOISIR UN GROUPE ALIAS :<BR> <span id="GroupAliasSelectContent"> Groupe de sélection Alias </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Choisissez une date de Rappel :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Choisissez une date de Rappel :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Choisissez une date ci-dessous</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> UN CHOIX DE GROUPE D'ARRIVÉE PLUS ÉTROIT <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> UN CHOIX DE GROUPE D'ARRIVÉE PLUS ÉTROIT <BR> <span id="CloserSelectContent"> Un Choix De Groupe D'arrivée Plus étroit </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> REINITIALISATION </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_it/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_it/vdc_db_query.php index f87c8711..aa0590eb 100644 --- a/agc_2-X/trunk/LANG_www/agc_it/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_it/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_it/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_it/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_it/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_it/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_it/vicidial.php b/agc_2-X/trunk/LANG_www/agc_it/vicidial.php index a6afe509..b8cb0510 100644 --- a/agc_2-X/trunk/LANG_www/agc_it/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_it/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pausa \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume.gif\" border=0 alt=\"Riprendi\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Pausa \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Riprendi\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pausa \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Riprendi\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER CONTROLLARE LA CHIAMATABACK IN MODALITA AUTODIAL"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER EFFETTUARE UNA CHIAMATA MANUALE QUANDO SEI IN MODALITà AUTODIAL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER INSERIRE UN CODICE PAUSA IN MODALITà AUTODIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER RECUPERARE LE CHIAMATE IN CODA"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Mostra the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("DEVI ESSERE IN PAUSA PER CAMBIARE GRUPPO"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Mostra the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("DEVI ESSERE IN PAUSA PER CAMBIARE GRUPPO"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> RICHIAMI PER L`OPERATORE <?php echo $VD_login ?>:<BR>Selezionare un richiamo per chiamare il cliente ora. Una volta fatto click, il record sarà rimosso dalla lista. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> RICHIAMI PER L`OPERATORE <?php echo $VD_login ?>:<BR>Selezionare un richiamo per chiamare il cliente ora. Una volta fatto click, il record sarà rimosso dalla lista. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NUOVA CHIAMATA MANUALE PER IL CONTATTO <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Inserisci le informazioni per il nuovo contatto da chiamare. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NUOVA CHIAMATA MANUALE PER IL CONTATTO <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Inserisci le informazioni per il nuovo contatto da chiamare. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Non c`è nessuno nella tua sessione: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Non c`è nessuno nella tua sessione: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Torna Indietro</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Chiama l`operatore di nuovo</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Il cliente ha riagganciato: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Il cliente ha riagganciato: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Torna Indietro</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Termina e definisci un Esito per la chiamata</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Riposo prima della prossima chiamata: <span id="WrapupTimer"></span> secondi di riposo restanti<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Riposo prima della prossima chiamata: <span id="WrapupTimer"></span> secondi di riposo restanti<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Termina riposo e continua</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>La tua sessione è stata disabilitata<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Torna Indietro</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>La tua sessione è stata disabilitata<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Torna Indietro</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>C`è un problema di sincronizzazione con il sistema, si prega di informare l`amministratore di sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Torna Indietro</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>C`è un problema di sincronizzazione con il sistema, si prega di informare l`amministratore di sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Torna Indietro</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ESITO CHIAMATA :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Aggancia di nuovo</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> riduci </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ESITO CHIAMATA :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Aggancia di nuovo</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> riduci </a></span><BR> <span id="DispoSelectContent"> Selezione Esito di fine chiamata </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PAUSA OPERATORE <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELEZIONARE UN CODICE PAUSA:<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELEZIONARE UN CODICE PAUSA:<BR> <span id="PauseCodeSelectContent"> Pausa Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SCEGLI UN GRUPPO ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SCEGLI UN GRUPPO ALIAS :<BR> <span id="GroupAliasSelectContent"> Selezione Gruppo Alias </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Selezionare una data di richiamo! :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Selezionare una data di richiamo! :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Seleziona una data qui sotto</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELEZIONE del CLOSER INBOUND GROUP <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELEZIONE del CLOSER INBOUND GROUP <BR> <span id="CloserSelectContent"> Selezione del Closer Inbound Group </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> RESET </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_nl/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_nl/vdc_db_query.php index 87e8ca5a..9f922c44 100644 --- a/agc_2-X/trunk/LANG_www/agc_nl/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_nl/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pauze Code has been updated to $status for $agent_log_id\n"; + echo ' Pauze Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_nl/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_nl/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_nl/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_nl/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_nl/vicidial.php b/agc_2-X/trunk/LANG_www/agc_nl/vicidial.php index d5665725..2d321d50 100644 --- a/agc_2-X/trunk/LANG_www/agc_nl/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_nl/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pauze \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume.gif\" border=0 alt=\"Doorgaan\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Pauze \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Doorgaan\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pauze \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Doorgaan\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM TERUGBELLERS TE BEKIJKEN IN AUTO-DIAL MODUS"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM HANDMATIG EEN NIEUWE LEAD TE BELLEN IN AUTO-DIAL MODUS"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pauze Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM EEN PAUZE CODE IN TE VOEREN TIJDENS AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET worden onderbroken te grijpen ROEPT in de wachtrij"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Toon the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("JE MOET GEPAUZEERD ZIJN OM VAN GROEP TE WISSELEN"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Toon the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("JE MOET GEPAUZEERD ZIJN OM VAN GROEP TE WISSELEN"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERUGBELLERS VOOR AGENT <?php echo $VD_login ?>:<BR>Klik op een terugbeller om de klant nu terug te bellen. Als je hierop klikt, wordt deze verwijderd uit de lijst. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERUGBELLERS VOOR AGENT <?php echo $VD_login ?>:<BR>Klik op een terugbeller om de klant nu terug te bellen. Als je hierop klikt, wordt deze verwijderd uit de lijst. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NIEUWE HANDMATIGE LEAD VOOR <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Voer de informatie voor de nieuwe te bellen lead hieronder in. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NIEUWE HANDMATIGE LEAD VOOR <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Voer de informatie voor de nieuwe te bellen lead hieronder in. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Er is niemand in jouw sessie: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Er is niemand in jouw sessie: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Ga Terug</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Bel Agent Opnieuw</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Klant heeft opgehangen: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Klant heeft opgehangen: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Ga Terug</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Afsluiten en Dispositioneren Gesprek</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Gesprek Afronden: <span id="WrapupTimer"></span> seconden over in afronden<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Gesprek Afronden: <span id="WrapupTimer"></span> seconden over in afronden<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Afronden afmaken en doorgaan</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Jouw sessie is geblokkeerd<BR><a href="#" onclick="LogouT('DISABLED');return false;">UITLOGGEN</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Ga Terug</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Jouw sessie is geblokkeerd<BR><a href="#" onclick="LogouT('DISABLED');return false;">UITLOGGEN</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Ga Terug</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Er is een tijd synchronisatieprobleem met uw systeem, neem contact op met je systeem beheerder<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Ga Terug</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Er is een tijd synchronisatieprobleem met uw systeem, neem contact op met je systeem beheerder<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Ga Terug</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">UITLOGGEN</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">UITLOGGEN</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> DISPOSITIONEER GESPREK :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Opnieuw Ophangen</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimaliseer </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> DISPOSITIONEER GESPREK :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Opnieuw Ophangen</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimaliseer </a></span><BR> <span id="DispoSelectContent"> Einde Gesprek Dispositie Selectie </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PAUZEER BELLEN <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECTEER EEN PAUZE CODE :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECTEER EEN PAUZE CODE :<BR> <span id="PauseCodeSelectContent"> Pauze Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> KIES EEN GROEP ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> KIES EEN GROEP ALIAS :<BR> <span id="GroupAliasSelectContent"> Groep Alias Selectie </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Selecteer een terugbel datum :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Selecteer een terugbel datum :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Selecteer een datum</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CLOSER INKOMENDE GROEP SELECTIE <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> CLOSER INKOMENDE GROEP SELECTIE <BR> <span id="CloserSelectContent"> Closer Inkomende Groep Selectie </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> RESET </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_pl/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_pl/vdc_db_query.php index db43e55b..3197c7ef 100644 --- a/agc_2-X/trunk/LANG_www/agc_pl/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_pl/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Przerwa Code has been updated to $status for $agent_log_id\n"; + echo ' Przerwa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_pl/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_pl/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_pl/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_pl/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_pl/vicidial.php b/agc_2-X/trunk/LANG_www/agc_pl/vicidial.php index 19c35aa9..3e80c2ca 100644 --- a/agc_2-X/trunk/LANG_www/agc_pl/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_pl/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_pl.gif\" border=0 alt=\" Przerwa \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume_pl.gif\" border=0 alt=\"Ponów\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause_pl.gif\" border=0 alt=\" Przerwa \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_pl.gif\" border=0 alt=\"Ponów\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_pl.gif\" border=0 alt=\" Przerwa \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_pl.gif\" border=0 alt=\"Ponów\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("MUSISZ WSTRZYMAC AUTOMATYCZNE WYBIERANIE NUMERU BY SPRAWDZAĆ INNE TERMINY"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("MUSISZ WSTRZYMAC AUTOMATYCZNE WYBIERANIE NUMERU BY DOKONAĆ RĘCZNEGO WYBIERANIA"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Przerwa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("WY MUSICIE BYĆ PRZEDŁUŻANI WCHODZIĆ SZYFR PRZERWY W TRYBIE AUTOTARCZY"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musicie być wstrzymane do przechwycenia WZYWA w kolejce"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Pokaż the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musisz być Paused ZMIANA DO GRUPY"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Pokaż the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Musisz być Paused ZMIANA DO GRUPY"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> INNE TERMINY DLA AGENTA <?php echo $VD_login ?>:<BR>Kliknij poniżej na Inne terminy żeby teraz zadzwonić do klienta. Jeżeli klikniesz na rekordzie by zadzwonić, rekord zostanie usunięty z listy. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> INNE TERMINY DLA AGENTA <?php echo $VD_login ?>:<BR>Kliknij poniżej na Inne terminy żeby teraz zadzwonić do klienta. Jeżeli klikniesz na rekordzie by zadzwonić, rekord zostanie usunięty z listy. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NOWE RĘCZNE WYBIERANIE NUMERU DLA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Wpisz poniżej informacje o kontakcie do którego chcesz wykonać połączenie. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NOWE RĘCZNE WYBIERANIE NUMERU DLA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Wpisz poniżej informacje o kontakcie do którego chcesz wykonać połączenie. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Nikt nie uczestniczy w Twojej sesji: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Nikt nie uczestniczy w Twojej sesji: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Wróć</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Ponownie połącz się z telefonem</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Klient sie rozłączył: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Klient sie rozłączył: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Wróć</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Zakończ i wprowadź rezultat rozmowy</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Call Wrapup <span id="WrapupTimer"></span> sekundy remaining in wrapup<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Call Wrapup <span id="WrapupTimer"></span> sekundy remaining in wrapup<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Finish Wrapup and Move On</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Wasza sesja była uszkadzana<BR><a href="#" onclick="LogouT('DISABLED');return false;">WYLOGUJ</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Wróć</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Wasza sesja była uszkadzana<BR><a href="#" onclick="LogouT('DISABLED');return false;">WYLOGUJ</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Wróć</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Istnieje problem synchronizacji czasu z systemem, należy powiadomić administratora systemu<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Wróć</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Istnieje problem synchronizacji czasu z systemem, należy powiadomić administratora systemu<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Wróć</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">WYLOGUJ</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">WYLOGUJ</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> REZULTAT ROZMOWY :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Rozłącz się ponownie</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimalizuj </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> REZULTAT ROZMOWY :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Rozłącz się ponownie</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimalizuj </a></span><BR> <span id="DispoSelectContent"> Koniec rozmowy, wybierz rezultat </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> ZATRZYMAJ DZWONIENIE <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> WYBÓR SZYFR PRZERWY :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> WYBÓR SZYFR PRZERWY :<BR> <span id="PauseCodeSelectContent"> Przerwa Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Wybierz grupę Alias :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Wybierz grupę Alias :<BR> <span id="GroupAliasSelectContent"> Wybór grupy Alias </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Wybierz datę oddzwonienia :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Wybierz datę oddzwonienia :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Wybierz datę poniżej</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELEKCJA GRUPY ZAWNĘTRZNYCH FINALIZUJĄCYCH <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELEKCJA GRUPY ZAWNĘTRZNYCH FINALIZUJĄCYCH <BR> <span id="CloserSelectContent"> Selekcja grupy zawnętrznych finalizujących </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> RESET </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_pt/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_pt/vdc_db_query.php index 9eb3ad47..9fe64b98 100644 --- a/agc_2-X/trunk/LANG_www/agc_pt/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_pt/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pausa Code has been updated to $status for $agent_log_id\n"; + echo ' Pausa Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_pt/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_pt/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_pt/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_pt/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_pt/vicidial.php b/agc_2-X/trunk/LANG_www/agc_pt/vicidial.php index 6339d8e2..51f5c6a9 100644 --- a/agc_2-X/trunk/LANG_www/agc_pt/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_pt/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pausa \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume.gif\" border=0 alt=\"Resumo\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Pausa \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Resumo\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pausa \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Resumo\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO PARA VERIFICAR RECHAMADAS NA MODALIDADE DE AUTO-DIAL"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO Ao SELETOR MANUAL Uma LIGAÇÃO NOVA Na MODALIDADE De AUTO-DIAL"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pausa Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSADO PARA DAR ENTRADA A um CÓDIGO Da PAUSA NaMODALIDADE De AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("VOCÊ DEVE SER PAUSA PARA GRAB APELA EM FILA"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Mostra the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Mostra the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Você deve estar PAUSED PARA ALTERAR GRUPOS"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> RECHAMADAS PARA O AGENTE <?php echo $VD_login ?>:<BR>Estale sobre uma rechamada abaixo para chamar agora a parte traseira do cliente. Se você estalar sobre um registro abaixo para o chamar, estará removido da lista. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> RECHAMADAS PARA O AGENTE <?php echo $VD_login ?>:<BR>Estale sobre uma rechamada abaixo para chamar agora a parte traseira do cliente. Se você estalar sobre um registro abaixo para o chamar, estará removido da lista. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> LIGAÇÃO MANUAL NOVA DO SELETOR PARA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Incorpore a informação abaixo para a ligação que nova você deseja se chamar. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> LIGAÇÃO MANUAL NOVA DO SELETOR PARA <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Incorpore a informação abaixo para a ligação que nova você deseja se chamar. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Noone está em sua sessão: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Noone está em sua sessão: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Vá Para trás</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Agente Da Chamada Outra vez</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> O cliente pendurou acima: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> O cliente pendurou acima: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Vá Para trás</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Revestimento e chamada da disposição</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Chamada Wrapup: <span id="WrapupTimer"></span> segundos restantes no wrapup<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Chamada Wrapup: <span id="WrapupTimer"></span> segundos restantes no wrapup<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Revestimento Wrapup e movimento sobre</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Sua sessão foi incapacitada<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Vá Para trás</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Sua sessão foi incapacitada<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Vá Para trás</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Vá Para trás</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Há um tempo sincronização problema com o seu sistema, por favor informe o seu administrador de sistema<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Vá Para trás</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CHAMADA DA DISPOSIÇÃO :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Hangup Outra vez</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimize </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> CHAMADA DA DISPOSIÇÃO :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Hangup Outra vez</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimize </a></span><BR> <span id="DispoSelectContent"> Extremidade-$$$-CHAME A Seleção Da Disposição </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PARE DE CHAMAR-SE <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECIONE Um CÓDIGO Da PAUSA :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELECIONE Um CÓDIGO Da PAUSA :<BR> <span id="PauseCodeSelectContent"> Pausa Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Selecionar um grupo ALIÁS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Selecionar um grupo ALIÁS :<BR> <span id="GroupAliasSelectContent"> Grupo Alias Selecção </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Selecione uma data da rechamada :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Selecione uma data da rechamada :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Selecione uma data abaixo</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELEÇÃO DE GRUPO INBOUND MAIS PRÓXIMA <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> SELEÇÃO DE GRUPO INBOUND MAIS PRÓXIMA <BR> <span id="CloserSelectContent"> Seleção De Grupo Inbound Mais próxima </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> RESTAURAÇÃO </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_ru/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_ru/vdc_db_query.php index 9d5d3e3a..ed2e55a1 100644 --- a/agc_2-X/trunk/LANG_www/agc_ru/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_ru/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Пауза Code has been updated to $status for $agent_log_id\n"; + echo ' Пауза Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_ru/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_ru/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_ru/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_ru/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_ru/vicidial.php b/agc_2-X/trunk/LANG_www/agc_ru/vicidial.php index 157673aa..b33fa884 100644 --- a/agc_2-X/trunk/LANG_www/agc_ru/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_ru/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Пауза \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume.gif\" border=0 alt=\"Резюме\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Пауза \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Резюме\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Пауза \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Резюме\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ СДЕЛАТЬ ПАУЗУ, ЧТОБЫ ПРОВЕРИТЬ ВЫЗОВЫ В РЕЖИМЕ АВТОМАТИЧЕСКОГО НАБОРА НОМЕРА"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ СДЕЛАТЬ ПАУЗУ РУЧНОГО НАБОРА НОМЕРА НОВЫЙ LEAD В РЕЖИМЕ АВТО НАБОРА НОМЕРА"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Пауза Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ АКТИВИРОВАТЬ ПАУЗУ, ЧТОБЫ ВВЕСТИ КОД ПАУЗЫ В РЕЖИМЕ АВТО-НАБОРА"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ВЫ ДОЛЖНЫ быть приостановлена схватить Звонки в ОЧЕРЕДЬ"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Показать the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("ТЫ ДОЛЖЕН БЫТЬ PAUSED сменить группу"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Показать the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("ТЫ ДОЛЖЕН БЫТЬ PAUSED сменить группу"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ВЫЗОВBACK ДЛЯ ОПЕРАТОРА <?php echo $VD_login ?>:<BR>Чтобы позвонить клиенту сейчас, кликните на callback ниже. Если Вы нажмете на record ниже, чтобы позвонить, то это будет удалено из списка. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ВЫЗОВBACK ДЛЯ ОПЕРАТОРА <?php echo $VD_login ?>:<BR>Чтобы позвонить клиенту сейчас, кликните на callback ниже. Если Вы нажмете на record ниже, чтобы позвонить, то это будет удалено из списка. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> НОВЫЙ LEAD РУЧНОЙ НАБОР НОМЕРА ДЛЯ <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Ведите информацию ниже для нового lead который вы хотите вызвать. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> НОВЫЙ LEAD РУЧНОЙ НАБОР НОМЕРА ДЛЯ <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Ведите информацию ниже для нового lead который вы хотите вызвать. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Никого нет в вашей сессии: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Никого нет в вашей сессии: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Вернуться</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Вызов Оператора Снова</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Клиент разъединен: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Клиент разъединен: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Вернуться</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Конец и Вызов Диспозиции</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Call Wrapup: <span id="WrapupTimer"></span> секунд осталось в wrapup<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Call Wrapup: <span id="WrapupTimer"></span> секунд осталось в wrapup<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Финиш Wrapup и Переход</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Ваша сессия отключена<BR><a href="#" onclick="LogouT('DISABLED');return false;">ВЫХОД</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Вернуться</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Ваша сессия отключена<BR><a href="#" onclick="LogouT('DISABLED');return false;">ВЫХОД</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Вернуться</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Существует проблема синхронизации времени с вашей системой, пожалуйста, сообщите об этом вашему системному администратору<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Вернуться</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Существует проблема синхронизации времени с вашей системой, пожалуйста, сообщите об этом вашему системному администратору<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Вернуться</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">ВЫХОД</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">ВЫХОД</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> DISPOSITION ВЫЗОВ :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Разъединить Снова</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> минимизировать </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> DISPOSITION ВЫЗОВ :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Разъединить Снова</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> минимизировать </a></span><BR> <span id="DispoSelectContent"> Выбор Диспозиции End-of-call </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> ПАУЗА ВЫЗОВА <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ВЫБЕРИТЕ КОД ПАУЗЫ :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ВЫБЕРИТЕ КОД ПАУЗЫ :<BR> <span id="PauseCodeSelectContent"> Пауза Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ВЫБОР ГРУППЫ ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ВЫБОР ГРУППЫ ALIAS :<BR> <span id="GroupAliasSelectContent"> Группа Alias выбора </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Выберите дату для CallBack :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Выберите дату для CallBack :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Выберите Дату Ниже</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> ВЫБОР INBOUND ГРУППЫ CLOSER <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> ВЫБОР INBOUND ГРУППЫ CLOSER <BR> <span id="CloserSelectContent"> Closer Inbound Group Selection </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> RESET </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_sk/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_sk/vdc_db_query.php index 122b6411..5ce9286c 100644 --- a/agc_2-X/trunk/LANG_www/agc_sk/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_sk/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " Pauza Code has been updated to $status for $agent_log_id\n"; + echo ' Pauza Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_sk/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_sk/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_sk/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_sk/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_sk/vicidial.php b/agc_2-X/trunk/LANG_www/agc_sk/vicidial.php index 9868cff1..59fb1619 100644 --- a/agc_2-X/trunk/LANG_www/agc_sk/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_sk/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pauza \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume.gif\" border=0 alt=\"Pokračovať\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause.gif\" border=0 alt=\" Pauza \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Pokračovať\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF.gif\" border=0 alt=\" Pauza \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF.gif\" border=0 alt=\"Pokračovať\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť pozastavený na kontrolu preplánovaných hovorov v móde AUTOMATICKÉHO volania"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť pozastavený do manuálneho vytáčania v novom zozname kontaktov v móde AUTOMATICKÉHO vytáčania"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the Pauza Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("MUSÍTE BYŤ V PAUZE NA VLOŽENIE KÓDU PAUZY V MÓDE AUTO-DIAL"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť sa odmlčal, aby GRAB VOLANIA do fronty"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // Prezrieť the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("Musíte byť pozastavené NA ZMENU ZOSKUPENIA"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // Prezrieť the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("Musíte byť pozastavené NA ZMENU ZOSKUPENIA"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> PREPLÁNOVANÉ HOVORY PRE AGENTA <?php echo $VD_login ?>:<BR>Kliknite na preplánovanie hovoru na volanie zákaznikovi znova. Ak kliknete na záznam nižšie budete ho volať a bude odstránený zo zoznamu. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> PREPLÁNOVANÉ HOVORY PRE AGENTA <?php echo $VD_login ?>:<BR>Kliknite na preplánovanie hovoru na volanie zákaznikovi znova. Ak kliknete na záznam nižšie budete ho volať a bude odstránený zo zoznamu. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NOVÉ manuálne vytáčanie pre zoznam kontaktov <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Zadajte nižšie uvedené informácie pre nový zoznam kontaktov, ktorý chcete volať. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> NOVÉ manuálne vytáčanie pre zoznam kontaktov <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Zadajte nižšie uvedené informácie pre nový zoznam kontaktov, ktorý chcete volať. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Nikto nie je vo Vašej relácii: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Nikto nie je vo Vašej relácii: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">Vrátiť späť</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">Volať agenta znova</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Zákazník položil: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Zákazník položil: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">Vrátiť späť</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">Ukončenie a umiestnenie hovoru</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Volanie Wrapup: <span id="WrapupTimer"></span> sekúnd zostávajúcich na wrapup<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> Volanie Wrapup: <span id="WrapupTimer"></span> sekúnd zostávajúcich na wrapup<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">Dokončiť Wrapup a presunúť na</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Vaša relácia bola ukončená<BR><a href="#" onclick="LogouT('DISABLED');return false;">ODHLÁSIŤ</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Vrátiť späť</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Vaša relácia bola ukončená<BR><a href="#" onclick="LogouT('DISABLED');return false;">ODHLÁSIŤ</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Vrátiť späť</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Je synchronizácia času problém s vašim systémom, povedzte to, prosím, správcu systému<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Vrátiť späť</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Je synchronizácia času problém s vašim systémom, povedzte to, prosím, správcu systému<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Vrátiť späť</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">ODHLÁSIŤ</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">ODHLÁSIŤ</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> VYKONANIE HOVORU :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Položte znova</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimalizovať </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> VYKONANIE HOVORU :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Položte znova</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimalizovať </a></span><BR> <span id="DispoSelectContent"> Ukončenie hovoru vybranej dispozície </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> PAUZA VOLAJUCEHO AGENTA <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> VYBRAŤ KÓD PAUZY :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> VYBRAŤ KÓD PAUZY :<BR> <span id="PauseCodeSelectContent"> Pauza Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> VYBER GROUP ALIAS :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> VYBER GROUP ALIAS :<BR> <span id="GroupAliasSelectContent"> Skupina Alias Výber </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Vyberte dátum preplánovania hovoru :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Vyberte dátum preplánovania hovoru :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">Vyberte dátum nižšie</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Užší výber prichádzajúce skupiny <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> Užší výber prichádzajúce skupiny <BR> <span id="CloserSelectContent"> Užší výber prichádzajúce skupiny </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> ZNOVU INCIALIZOVAŤ </a> | diff --git a/agc_2-X/trunk/LANG_www/agc_tw/vdc_db_query.php b/agc_2-X/trunk/LANG_www/agc_tw/vdc_db_query.php index 0f7dde3c..778141a2 100644 --- a/agc_2-X/trunk/LANG_www/agc_tw/vdc_db_query.php +++ b/agc_2-X/trunk/LANG_www/agc_tw/vdc_db_query.php @@ -232,12 +232,13 @@ # 100109-1336 - Fixed Manual dial live call detection # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method +# 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-140'; -$build = '100202-2306'; +$version = '2.2.0-141'; +$build = '100207-1110'; $mel=1; # Mysql Error Log enabled = 1 -$mysql_log_count=300; +$mysql_log_count=309; $one_mysql_log=0; require("dbconnect.php"); @@ -1864,7 +1865,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00301',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -1875,7 +1876,7 @@ if ($ACTION == 'manDiaLnextCaLL') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00302',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -2293,7 +2294,7 @@ if ($ACTION == 'manDiaLonly') $stmt = "select pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;"; if ($DB) {echo "$stmt\n";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00303',$user,$server_ip,$session_name,$one_mysql_log);} $VDpr_ct = mysql_num_rows($rslt); if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) ) { @@ -2304,7 +2305,7 @@ if ($ACTION == 'manDiaLonly') $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';"; if ($format=='debug') {echo "\n<!-- $stmt -->";} $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00XXX',$user,$server_ip,$session_name,$one_mysql_log);} + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00304',$user,$server_ip,$session_name,$one_mysql_log);} } } @@ -6139,11 +6140,61 @@ if ($ACTION == 'PauseCodeSubmit') } else { - $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; - if ($format=='debug') {echo "\n<!-- $stmt -->";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} - $affected_rows = mysql_affected_rows($link); + ### if this is the first pause code entry in a pause session, simply update and log to queue_log + if ($stage < 1) + { + $stmt="UPDATE vicidial_agent_log set sub_status=\"$status\" where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00175',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + } + ### this is not the first pause code entry, insert new vicidial_agent_log entry + else + { + $pause_sec=0; + $stmt = "select pause_epoch from vicidial_agent_log where agent_log_id='$agent_log_id';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00305',$user,$server_ip,$session_name,$one_mysql_log);} + $VDpr_ct = mysql_num_rows($rslt); + if ($VDpr_ct > 0) + { + $row=mysql_fetch_row($rslt); + $pause_sec = ($StarTtime - $row[0]); + } + $stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec' where agent_log_id='$agent_log_id';"; + if ($format=='debug') {echo "\n<!-- $stmt -->";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00306',$user,$server_ip,$session_name,$one_mysql_log);} + + $user_group=''; + $stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;"; + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00309',$user,$server_ip,$session_name,$one_mysql_log);} + if ($DB) {echo "$stmt\n";} + $ug_record_ct = mysql_num_rows($rslt); + if ($ug_record_ct > 0) + { + $row=mysql_fetch_row($rslt); + $user_group = trim("$row[0]"); + } + + $stmt="INSERT INTO vicidial_agent_log (user,server_ip,event_time,campaign_id,pause_epoch,pause_sec,wait_epoch,user_group,sub_status) values('$user','$server_ip','$NOW_TIME','$campaign','$StarTtime','0','$StarTtime','$user_group','$status');"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00307',$user,$server_ip,$session_name,$one_mysql_log);} + $affected_rows = mysql_affected_rows($link); + $agent_log_id = mysql_insert_id($link); + + $stmt="UPDATE vicidial_live_agents SET agent_log_id='$agent_log_id' where user='$user';"; + if ($DB) {echo "$stmt\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00308',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $VLAaffected_rows_update = mysql_affected_rows($link); + } + + ### if entry accepted, add a queue_log entry if QM integration is enabled if ($affected_rows > 0) { ############################################# @@ -6188,7 +6239,7 @@ if ($ACTION == 'PauseCodeSubmit') } } } - echo " 暫停 Code has been updated to $status for $agent_log_id\n"; + echo ' 暫停 Code ' . $status . " has been recorded\nNext agent_log_id:\n" . $agent_log_id . "\n"; } diff --git a/agc_2-X/trunk/LANG_www/agc_tw/vdc_script_display.php b/agc_2-X/trunk/LANG_www/agc_tw/vdc_script_display.php index 7814428e..8c9bb87d 100644 --- a/agc_2-X/trunk/LANG_www/agc_tw/vdc_script_display.php +++ b/agc_2-X/trunk/LANG_www/agc_tw/vdc_script_display.php @@ -178,6 +178,8 @@ $ENTRYdate = date("YmdHis"); $MT[0]=''; $agents='@agents'; +$script_height = ($script_height - 20); + $IFRAME=0; ############################################# diff --git a/agc_2-X/trunk/LANG_www/agc_tw/vicidial.php b/agc_2-X/trunk/LANG_www/agc_tw/vicidial.php index cc576a53..b882720c 100644 --- a/agc_2-X/trunk/LANG_www/agc_tw/vicidial.php +++ b/agc_2-X/trunk/LANG_www/agc_tw/vicidial.php @@ -273,10 +273,11 @@ # 100109-1338 - Fixed Manual dial live call detection # 100116-0709 - Added presets to script and web form variables # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method +# 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # -$version = '2.2.0-251'; -$build = '100203-0640'; +$version = '2.2.0-252'; +$build = '100207-1109'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -2238,6 +2239,7 @@ $HKwidth = ($MASTERwidth + 20); # 450 - Hotkeys button $HSwidth = ($MASTERwidth + 1); # 431 - Header spacer $CLwidth = ($MASTERwidth - 160); # 270 - Calls in queue link +$WRheight = ($MASTERheight + 160); # 460 - Warning boxes $CQheight = ($MASTERheight + 140); # 440 - Calls in queue section $SLheight = ($MASTERheight + 122); # 422 - SideBar link, Calls in queue link $HKheight = ($MASTERheight + 105); # 405 - HotKey active Button @@ -2744,6 +2746,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} var timer_action=''; var timer_action_message=''; var timer_action_seconds=''; + var pause_code_counter=1; var DiaLControl_auto_HTML = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_tw.gif\" border=0 alt=\" 暫停 \"><a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADready');\"><IMG SRC=\"../agc/images/vdc_LB_resume_tw.gif\" border=0 alt=\"恢復\"></a>"; var DiaLControl_auto_HTML_ready = "<a href=\"#\" onclick=\"AutoDial_ReSume_PauSe('VDADpause');\"><IMG SRC=\"../agc/images/vdc_LB_pause_tw.gif\" border=0 alt=\" 暫停 \"></a><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_tw.gif\" border=0 alt=\"恢復\">"; var DiaLControl_auto_HTML_OFF = "<IMG SRC=\"../agc/images/vdc_LB_pause_OFF_tw.gif\" border=0 alt=\" 暫停 \"><IMG SRC=\"../agc/images/vdc_LB_resume_OFF_tw.gif\" border=0 alt=\"恢復\">"; @@ -4301,7 +4304,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Request list of USERONLY callbacks for this agent function CalLBacKsLisTCheck() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("在自動外撥模式下您必須暫停才可以檢查回撥"); } @@ -4412,7 +4415,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Open page to enter details for a new manual dial lead function NeWManuaLDiaLCalL(TVfast) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("在自動外撥模式下您必須暫停才可以人工外撥一個新的紀錄"); } @@ -4922,7 +4925,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5017,7 +5020,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5338,7 +5341,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5433,7 +5436,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5550,7 +5553,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -5936,7 +5939,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (campaign_script.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6087,6 +6090,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} VDRP_stage = 'PAUSED'; AutoDialReady = 0; AutoDialWaiting = 0; + pause_code_counter = 0; if (dial_method == "INBOUND_MAN") { auto_dial_level=starting_dial_level; @@ -6668,7 +6672,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6763,7 +6767,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -6863,7 +6867,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (view_scripts == 1) && (CalL_ScripT_id.length > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7044,7 +7048,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} if ( (webvars_refresh > 0) || (force_webvars_refresh > 0) ) { web_form_vars = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7169,7 +7173,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} else { web_form_vars_two = - "lead_id=" + document.vicidial_form.lead_id.value + + "&lead_id=" + document.vicidial_form.lead_id.value + "&vendor_id=" + document.vicidial_form.vendor_lead_code.value + "&list_id=" + document.vicidial_form.list_id.value + "&gmt_offset_now=" + document.vicidial_form.gmt_offset_now.value + @@ -7810,7 +7814,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} // Generate the 暫停 Code Chooser panel function PauseCodeSelectContent_create() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("在自動撥號模式下您必須入暫停原因代碼才能暫停"); } @@ -8085,7 +8089,6 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } } } - } @@ -8119,7 +8122,8 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} } if (xmlhttp) { - VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages; + VMCpausecode_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&ACTION=PauseCodeSubmit&format=text&status=" + newpausecode + "&agent_log_id=" + agent_log_id + "&campaign=" + campaign + "&extension=" + extension + "&protocol=" + protocol + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&stage=" + pause_code_counter; + pause_code_counter++; xmlhttp.open('POST', 'vdc_db_query.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(VMCpausecode_query); @@ -8127,11 +8131,17 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); + var check_pause_code = null; + var check_pause_code = xmlhttp.responseText; + var check_PC_array=check_pause_code.split("\n"); + if (check_PC_array[1] == 'Next agent_log_id:') + {agent_log_id = check_PC_array[2];} + // alert(xmlhttp.responseText + "\n|" + check_PC_array[1] + "\n|" + check_PC_array[2] + "|" + agent_log_id + "|" + pause_code_counter); } } delete xmlhttp; } +// return agent_log_id; } @@ -9260,7 +9270,7 @@ function phone_number_format(formatphone) { { if (CQauto_call_id > 0) { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("您必須暫停籲請搶占隊列"); } @@ -9495,7 +9505,7 @@ function phone_number_format(formatphone) { // 展現 the groups selection span function OpeNGrouPSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { alert("您必須暫停才能變更群組"); } @@ -9518,9 +9528,9 @@ function phone_number_format(formatphone) { // 展現 the territories selection span function OpeNTerritorYSelectioN() { - if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) ) + if ( (AutoDialWaiting == 1) || (VD_live_customer_call==1) || (alt_dial_active==1) || (MD_channel_look==1) ) { - alert("您必須暫停才能變更群組"); + alert("YOU MUST BE PAUSED TO CHANGE TERRITORIES"); } else { @@ -10615,7 +10625,7 @@ echo "</head>\n"; </font></span> <span style="position:absolute;left:0px;top:0px;z-index:51;" id="CallBacKsLisTBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> 值機員的回撥電話 <?php echo $VD_login ?>:<BR>點選以下回撥紀錄進行客戶回撥,如果點選紀錄進行撥號,該筆紀錄將會從名單內移除. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> 值機員的回撥電話 <?php echo $VD_login ?>:<BR>點選以下回撥紀錄進行客戶回撥,如果點選紀錄進行撥號,該筆紀錄將會從名單內移除. <BR> <div class="scroll_callback" id="CallBacKsLisT"></div> <BR>   @@ -10626,7 +10636,7 @@ echo "</head>\n"; </span> <span style="position:absolute;left:0px;top:0px;z-index:52;" id="NeWManuaLDiaLBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> 新的人工撥號紀錄給 <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>請輸入下面的資訊給您想要外撥的新紀錄. + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> 新的人工撥號紀錄給 <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>請輸入下面的資訊給您想要外撥的新紀錄. <BR> <?php if (eregi("X",$dial_prefix)) @@ -10860,7 +10870,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:12px;z-index:39;" id="NoneInSessionBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> 無人在你主持的會議中: <span id="NoneInSessionID"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> 無人在你主持的會議中: <span id="NoneInSessionID"></span><BR> <a href="#" onclick="NoneInSessionOK();return false;">回上一頁</a> <BR><BR> <a href="#" onclick="NoneInSessionCalL();return false;">再次呼叫值機員</a> @@ -10868,7 +10878,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:40;" id="CustomerGoneBox"> - <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> 客戶已掛斷電話: <span id="CustomerGoneChanneL"></span><BR> + <table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> 客戶已掛斷電話: <span id="CustomerGoneChanneL"></span><BR> <a href="#" onclick="CustomerGoneOK();return false;">回上一頁</a> <BR><BR> <a href="#" onclick="CustomerGoneHangup();return false;">結束通話並註記結束碼</a> @@ -10876,7 +10886,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:41;" id="WrapupBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> 電話文書: <span id="WrapupTimer"></span> 文書狀態尚餘秒數<BR><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center> 電話文書: <span id="WrapupTimer"></span> 文書狀態尚餘秒數<BR><BR> <span id="WrapupMessage"><?php echo $wrapup_message ?></span> <BR><BR> <a href="#" onclick="WrapupFinish();return false;">結束文書並繼續</a> @@ -10891,17 +10901,17 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:43;" id="AgenTDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Your session has been disabled<BR><a href="#" onclick="LogouT('DISABLED');return false;">登出</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">回上一頁</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>Your session has been disabled<BR><a href="#" onclick="LogouT('DISABLED');return false;">登出</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">回上一頁</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:44;" id="SysteMDisablEBoX"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>系統中有時間同步問題,請洽系統管理者<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">回上一頁</a> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center>系統中有時間同步問題,請洽系統管理者<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">回上一頁</a> </TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:0px;z-index:45;" id="LogouTBox"> - <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">登出</span></TD></TR></TABLE> + <table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center><BR><span id="LogouTBoxLink">登出</span></TD></TR></TABLE> </span> <span style="position:absolute;left:0px;top:70px;z-index:46;" id="DispoButtonHideA"> @@ -10917,7 +10927,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:49;" id="DispoSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> 通話結束 :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">再次掛斷</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> 最小 </a></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> 通話結束 :<span id="DispoSelectPhonE"></span>       <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">再次掛斷</a></span>       <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> 最小 </a></span><BR> <span id="DispoSelectContent"> 結束碼選擇 </span> <input type=hidden name=DispoSelection><BR> <input type=checkbox name=DispoSelectStop size=1 value="0"> 暫停值機員撥號 <BR> @@ -10930,7 +10940,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:64;" id="PauseCodeSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> 選擇暫停原因代碼 :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> 選擇暫停原因代碼 :<BR> <span id="PauseCodeSelectContent"> 暫停 Code Selection </span> <input type=hidden name=PauseCodeSelection> <BR><BR>   @@ -10938,7 +10948,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:65;" id="GroupAliasSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> 選擇群組代名 :<BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> 選擇群組代名 :<BR> <span id="GroupAliasSelectContent"> 群組代名選擇 </span> <input type=hidden name=GroupAliasSelection> <BR><BR>   @@ -10949,7 +10959,7 @@ if ($agent_display_dialable_leads > 0) <span style="position:absolute;left:0px;top:0px;z-index:50;" id="CallBackSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> 選擇回撥日期 :<span id="CallBackDatE"></span><BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> 選擇回撥日期 :<span id="CallBackDatE"></span><BR> <input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN"> <input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN"> <span id="CallBackDatEPrinT">選擇日期小於</span>   @@ -11002,7 +11012,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:53;" id="CloserSelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CLOSER INBOUND GROUP SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> CLOSER INBOUND GROUP SELECTION <BR> <span id="CloserSelectContent"> Closer Inbound Group Selection </span> <input type=hidden name=CloserSelectList><BR> <?php @@ -11020,7 +11030,7 @@ if ($agent_display_dialable_leads > 0) </span> <span style="position:absolute;left:0px;top:0px;z-index:54;" id="TerritorySelectBox"> - <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> + <table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=<?php echo $WRheight ?>><TR><TD align=center VALIGN=top> TERRITORY SELECTION <BR> <span id="TerritorySelectContent"> Territory Selection </span> <input type=hidden name=TerritorySelectList><BR> <a href="#" onclick="TerritorySelectContent_create();return false;"> 重置 </a> | diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSER_service_level.php b/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSER_service_level.php index beba62c5..d0b906a6 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSER_service_level.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERstats.php b/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERstats.php index 3eb3a41d..6e9eceee 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Zeitraum:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Inbound Gruppen: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php b/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/AST_IVRstats.php b/agc_2-X/trunk/LANG_www/vicidial_de/AST_IVRstats.php index 9a398631..c4bcbe7d 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/AST_IVRstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php b/agc_2-X/trunk/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Termine:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo "
Termine:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Termine:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo "
Termine:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Kampagnen:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       Verberge User Group"; + echo "       Verberge User Group"; } else { - echo "       VIEW User Group"; - } -if ($UidORname>0) - { - echo "       Zeige MITTELID"; - } -else - { - echo "       Zeige MITTELNAME"; + echo "       VIEW User Group"; } if ($SERVdisplay>0) { - echo "       Verberge BEDIENERINFO"; + echo "       Verberge BEDIENERINFO"; } else { - echo "       Zeige BEDIENERINFO"; + echo "       Zeige BEDIENERINFO"; } if ($CALLSdisplay>0) { - echo "       Verberge WAITING CALLS"; + echo "       Verberge WAITING CALLS"; } else { - echo "       Zeige WAITING CALLS"; + echo "       Zeige WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       Verberge IN-GROUP STATS"; + } +else + { + echo "       Zeige IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       Verberge PHONES"; + echo "       Verberge PHONES"; } else { - echo "       Zeige PHONES"; + echo "       Zeige PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       Verberge CUSTPHONES"; + echo "       Verberge CUSTPHONES"; } else { - echo "       Zeige CUSTPHONES"; + echo "       Zeige CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Kampagnen:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       ÄNDERN Sie | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_ANTWORTagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_ANTWORTagent_non_pause_sec = round($AVG_ANTWORTagent_non_pause_sec, 2); + $AVG_ANTWORTagent_non_pause_sec = sprintf("%01.2f", $AVG_ANTWORTagent_non_pause_sec); + } + else + {$AVG_ANTWORTagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_ANTWORTagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ANTWORTS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/ANTWORTS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_ANTWORTagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_ANTWORTagent_non_pause_sec = round($AVG_ANTWORTagent_non_pause_sec, 2); - $AVG_ANTWORTagent_non_pause_sec = sprintf("%01.2f", $AVG_ANTWORTagent_non_pause_sec); - } - else - {$AVG_ANTWORTagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_ANTWORTagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ANTWORTS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Kampagnen with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "Zeige ID "; + } +else + { + $HTuser .= "Zeige NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " User Group |"; +$HTusergroup = " User Group |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " BEDIENERIP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL BEDIENERIP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/admin.php b/agc_2-X/trunk/LANG_www/vicidial_de/admin.php index 853103d6..2c1bc590 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/admin.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
KAMPAGNE STATUS NICHT ADDIERT - es gibt bereits einen Kampagne-Statusim System mit diesem Namen\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
KAMPAGNE STATUS NICHT ADDIERT - es gibt bereits einen Globalstatus imSystem mit diesem Namen\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
KAMPAGNE STATUS NICHT ADDIERT - gehen Sie bitte zurück und betrachtenSie die Daten, die Sie eingaben\n"; echo "
Status muß zwischen 1 und 8 Buchstaben lang sein\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
KAMPAGNE STATUS ADDIERT: $campaign_id - $status\n"; + echo "
KAMPAGNE STATUS ADDIERT: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADDIEREN SIE KAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Status:$status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADDIEREN SIE KAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Status:$status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
SYSTEMSTATUS NICHT ADDIERT - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
SYSTEMSTATUS NICHT ADDIERT - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
SYSTEMSTATUS NICHT ADDIERT - Gehen Sie bitte zurück und betrachten Sie die Daten, die Sieeingaben\n"; echo "
Status muß zwischen 1 und 8 Buchstaben lang sein\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
SYSTEMSTATUS ADDIERT: $status_name - $status\n"; + echo "
SYSTEMSTATUS ADDIERT: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
ADDIEREN SIE NEUEN KUNDENSPEZIFISCHEN KAMPAGNE STATUS
\n"; echo "\n"; echo "\n"; - echo "Status:   \n"; + echo "Status:   \n"; echo "Beschreibung:   \n"; echo "Auswählbar:  
\n"; echo "Human Antwort:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
ADDIEREN SIE NEUEN SYSTEMSTATUS
\n"; echo "\n"; - echo "Status:   \n"; + echo "Status:   \n"; echo "Beschreibung:
\n"; echo "Auswählbar:   \n"; echo "Human Antwort:   \n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/calendar.css b/agc_2-X/trunk/LANG_www/vicidial_de/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_de/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/calendar_db.js b/agc_2-X/trunk/LANG_www/vicidial_de/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_de/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/call_report_export.php b/agc_2-X/trunk/LANG_www/vicidial_de/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/call_report_export.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/fcstats.php b/agc_2-X/trunk/LANG_www/vicidial_de/fcstats.php index 601b8e6c..eb88cb4c 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/fcstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/cal.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/help.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/help.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/next_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/next_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/next_year.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/next_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/no_cal.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/no_cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/pixel.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/pixel.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/prev_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/prev_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/prev_year.gif b/agc_2-X/trunk/LANG_www/vicidial_de/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/prev_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_bl.png b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_bl.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_bm.png b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_bm.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_br.png b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_br.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_mr.png b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_mr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_tr.png b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_de/images/shade_tr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_report.php b/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_report.php index b7811cd8..f44a4bc3 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_report.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UserTimeclock Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Zeitraum:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Benutzer-Gruppen:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_status.php b/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_status.php index c0006b07..8970956d 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_status.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Unzulässiges Username/Kennwort:|$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_de/user_stats.php b/agc_2-X/trunk/LANG_www/vicidial_de/user_stats.php index d20d325d..60f4f1ce 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_de/user_stats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_de/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: User-Statistiken <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Montag week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSER_service_level.php b/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSER_service_level.php index 3a0ca089..a98dae6d 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSER_service_level.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERstats.php b/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERstats.php index 333d89eb..7e8887dd 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Χρονικό διάστημα:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Εισερχόμενες Ομάδες: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php b/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/AST_IVRstats.php b/agc_2-X/trunk/LANG_www/vicidial_el/AST_IVRstats.php index 5abf350b..4e821dd0 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/AST_IVRstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php b/agc_2-X/trunk/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Ημερομηνίες:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo "
Ημερομηνίες:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Ημερομηνίες:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo "
Ημερομηνίες:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Εκστρατείες:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; + echo "       ΑΠΟΚΡΥΨΗ ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; } else { - echo "       VIEW ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; - } -if ($UidORname>0) - { - echo "       ΕΜΦΑΝΙΣΗ ΧΕΙΡΙΣΤΗΣID"; - } -else - { - echo "       ΕΜΦΑΝΙΣΗ ΧΕΙΡΙΣΤΗΣNAME"; + echo "       VIEW ΟΜΑΔΑ ΧΡΗΣΤΩΝ"; } if ($SERVdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; + echo "       ΑΠΟΚΡΥΨΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; } else { - echo "       ΕΜΦΑΝΙΣΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; + echo "       ΕΜΦΑΝΙΣΗ ΔΙΑΚΟΜΙΣΤΗΣ INFO"; } if ($CALLSdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ WAITING CALLS"; + echo "       ΑΠΟΚΡΥΨΗ WAITING CALLS"; } else { - echo "       ΕΜΦΑΝΙΣΗ WAITING CALLS"; + echo "       ΕΜΦΑΝΙΣΗ WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       ΑΠΟΚΡΥΨΗ IN-GROUP STATS"; + } +else + { + echo "       ΕΜΦΑΝΙΣΗ IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ PHONES"; + echo "       ΑΠΟΚΡΥΨΗ PHONES"; } else { - echo "       ΕΜΦΑΝΙΣΗ PHONES"; + echo "       ΕΜΦΑΝΙΣΗ PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       ΑΠΟΚΡΥΨΗ CUSTPHONES"; + echo "       ΑΠΟΚΡΥΨΗ CUSTPHONES"; } else { - echo "       ΕΜΦΑΝΙΣΗ CUSTPHONES"; + echo "       ΕΜΦΑΝΙΣΗ CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Εκστρατείες:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       ΤΡΟΠΟΠΟΙΗΣΗ | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = round($AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec, 2); + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = sprintf("%01.2f", $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec); + } + else + {$AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ΑΠΑΝΤΗΣΗS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/ΑΠΑΝΤΗΣΗS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = round($AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec, 2); - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec = sprintf("%01.2f", $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec); - } - else - {$AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_ΑΠΑΝΤΗΣΗagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
ΑΠΑΝΤΗΣΗS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Εκστρατείες with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "ΕΜΦΑΝΙΣΗ ID "; + } +else + { + $HTuser .= "ΕΜΦΑΝΙΣΗ NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " ΟΜΑΔΑ ΧΡΗΣΤΩΝ |"; +$HTusergroup = " ΟΜΑΔΑ ΧΡΗΣΤΩΝ |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " ΔΙΑΚΟΜΙΣΤΗΣ IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL ΔΙΑΚΟΜΙΣΤΗΣ IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/admin.php b/agc_2-X/trunk/LANG_www/vicidial_el/admin.php index cd61ea68..f1134ef6 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/admin.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8704,21 +8706,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
Η ΚΑΤΑΣΤΑΣΗ ΤΗΣ ΕΚΣΤΡΑΤΕΙΑΣ ΔΕΝ ΠΡΟΣΤΕΘΗΚΕ - υπάρχει ήδη κατάσταση-εκστρατείας με αυτό το όνομα\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
Η ΚΑΤΑΣΤΑΣΗ ΤΗΣ ΕΚΣΤΡΑΤΕΙΑΣ ΔΕΝ ΠΡΟΣΤΕΘΗΚΕ - υπάρχει ήδη μία καθολική-κατάσταση με αυτό το όνομα\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
Η ΚΑΤΑΣΤΑΣΗ ΤΗΣ ΕΚΣΤΡΑΤΕΙΑΣ ΔΕΝ ΠΡΟΣΤΕΘΗΚΕ - Παρακαλώ ελέγξτε τα δεδομένα που καταχωρήσατε\n"; echo "
η κατάσταση πρέπει να είναι μεταξύ 1 και 8 χαρακτήρρες\n"; @@ -8726,16 +8728,16 @@ if ($ADD==22) } else { - echo "
ΚΑΤΑΣΤΑΣΗ ΕΚΣΤΡΑΤΕΙΑΣ ΠΡΟΣΤΕΘΗΚΕ: $campaign_id - $status\n"; + echo "
ΚΑΤΑΣΤΑΣΗ ΕΚΣΤΡΑΤΕΙΑΣ ΠΡΟΣΤΕΘΗΚΕ: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ΠΡΟΣΘΗΚΗ ΕΚΣΤΡΑΤΕΙΑΣ STATUS', event_sql=\"$SQL_log\", event_notes='Κατάσταση:$status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ΠΡΟΣΘΗΚΗ ΕΚΣΤΡΑΤΕΙΑΣ STATUS', event_sql=\"$SQL_log\", event_notes='Κατάσταση:$status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10298,21 +10300,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ - Παρακαλώ επιστρέψτε πίσω και κάνετε έλεγχο των δεδομένων που καταχωρήσατε\n"; echo "
η κατάσταση πρέπει να είναι μεταξύ 1 και 8 χαρακτήρρες\n"; @@ -10320,16 +10322,16 @@ if ($ADD==221111111111111) } else { - echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ: $status_name - $status\n"; + echo "
ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΣΤΙΘΕΜΕΝΗ: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17100,7 +17102,7 @@ if ($ADD==31) echo "
ΠΡΟΣΘΗΚΗ ΝΕΑΣ ΠΡΟΣΑΡΜΟΣΜΕΝΗΣ ΚΑΤΑΣΤΑΣΗΣ ΣΤΗΝ ΕΚΣΤΡΑΤΕΙΑ
\n"; echo "\n"; echo "\n"; - echo "Κατάσταση:   \n"; + echo "Κατάσταση:   \n"; echo "Περιγραφή:   \n"; echo "Επιλέξιμο:  
\n"; echo "Ανθρώπινα Απάντηση:   \n"; @@ -22613,7 +22615,7 @@ if ($ADD==321111111111111) echo "
ΠΡΟΣΘΕΣΤΕ ΤΗ ΝΕΑ ΘΕΣΗ ΣΥΣΤΗΜΑΤΩΝ
\n"; echo "\n"; - echo "Κατάσταση:   \n"; + echo "Κατάσταση:   \n"; echo "Περιγραφή:
\n"; echo "Επιλέξιμο:   \n"; echo "Ανθρώπινα Απάντηση:   \n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/calendar.css b/agc_2-X/trunk/LANG_www/vicidial_el/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_el/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/calendar_db.js b/agc_2-X/trunk/LANG_www/vicidial_el/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_el/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/call_report_export.php b/agc_2-X/trunk/LANG_www/vicidial_el/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/call_report_export.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/fcstats.php b/agc_2-X/trunk/LANG_www/vicidial_el/fcstats.php index c7f53d6f..d1b7f7fd 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/fcstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/cal.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/help.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/help.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/next_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/next_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/next_year.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/next_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/no_cal.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/no_cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/pixel.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/pixel.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/prev_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/prev_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/prev_year.gif b/agc_2-X/trunk/LANG_www/vicidial_el/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/prev_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_bl.png b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_bl.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_bm.png b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_bm.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_br.png b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_br.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_mr.png b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_mr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_tr.png b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_el/images/shade_tr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_report.php b/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_report.php index 1e3696ba..ff542974 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_report.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + ΧρήστηςΏρα ρολόι Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Χρονικό διάστημα:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Ομάδες Χρήστη:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_status.php b/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_status.php index 9dec411e..d12c5cd6 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_status.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Ακυρο Ονομα Χρήστη/Κωδικός Πρόσβασης: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_el/user_stats.php b/agc_2-X/trunk/LANG_www/vicidial_el/user_stats.php index a5cef2d4..dda21b03 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_el/user_stats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_el/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Στατιστικά Χρήστη <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Δευτέρα week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSER_service_level.php b/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSER_service_level.php index ac7d0a52..143cb246 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSER_service_level.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERstats.php b/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERstats.php index 64c0b395..cc6790f8 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Rango de Fecha:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Grupos De entrada: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php b/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/AST_IVRstats.php b/agc_2-X/trunk/LANG_www/vicidial_es/AST_IVRstats.php index 3dd35881..1aa2f3ec 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/AST_IVRstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php b/agc_2-X/trunk/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Fechas:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo "
Fechas:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Fechas:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo "
Fechas:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campañas:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       PIEL GRUPO DE USUARIOS"; + echo "       PIEL GRUPO DE USUARIOS"; } else { - echo "       VIEW GRUPO DE USUARIOS"; - } -if ($UidORname>0) - { - echo "       DEMOSTRACIÓN AGENTE ID"; - } -else - { - echo "       DEMOSTRACIÓN AGENTE NAME"; + echo "       VIEW GRUPO DE USUARIOS"; } if ($SERVdisplay>0) { - echo "       PIEL SERVIDOR INFO"; + echo "       PIEL SERVIDOR INFO"; } else { - echo "       DEMOSTRACIÓN SERVIDOR INFO"; + echo "       DEMOSTRACIÓN SERVIDOR INFO"; } if ($CALLSdisplay>0) { - echo "       PIEL WAITING CALLS"; + echo "       PIEL WAITING CALLS"; } else { - echo "       DEMOSTRACIÓN WAITING CALLS"; + echo "       DEMOSTRACIÓN WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       PIEL IN-GROUP STATS"; + } +else + { + echo "       DEMOSTRACIÓN IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       PIEL PHONES"; + echo "       PIEL PHONES"; } else { - echo "       DEMOSTRACIÓN PHONES"; + echo "       DEMOSTRACIÓN PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       PIEL CUSTPHONES"; + echo "       PIEL CUSTPHONES"; } else { - echo "       DEMOSTRACIÓN CUSTPHONES"; + echo "       DEMOSTRACIÓN CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Tiempo Real Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Tiempo Real Report                                                                               \n"; echo "\n"; echo "
Select Campañas:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       MODIFICAR | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_RESPUESTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_RESPUESTAagent_non_pause_sec = round($AVG_RESPUESTAagent_non_pause_sec, 2); + $AVG_RESPUESTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RESPUESTAagent_non_pause_sec); + } + else + {$AVG_RESPUESTAagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_RESPUESTAagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RESPUESTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/RESPUESTAS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_RESPUESTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_RESPUESTAagent_non_pause_sec = round($AVG_RESPUESTAagent_non_pause_sec, 2); - $AVG_RESPUESTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RESPUESTAagent_non_pause_sec); - } - else - {$AVG_RESPUESTAagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_RESPUESTAagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RESPUESTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Campañas with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "DEMOSTRACIÓN ID "; + } +else + { + $HTuser .= "DEMOSTRACIÓN NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " GRUPO DE USUARIOS |"; +$HTusergroup = " GRUPO DE USUARIOS |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " SERVIDOR IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL SERVIDOR IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/admin.php b/agc_2-X/trunk/LANG_www/vicidial_es/admin.php index e9d1f0ff..0d099554 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/admin.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO de la CAMPAÚA - hay ya una campaña - estado NO AGREGADO en el sistema con este nombre\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO de la CAMPAÚA NO AGREGADO - hay ya un global-estado en el sistema con este nombre\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESTADO de la CAMPAÚA NO AGREGADO - vaya por favor detrás y mire los datos que usted incorporó\n"; echo "
el estado debe estar entre 1 y 8 caracteres en longitud\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
ESTADO DE LA CAMPAÑA AÑADIDA: $campaign_id - $status\n"; + echo "
ESTADO DE LA CAMPAÑA AÑADIDA: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN NUEVA CAMPAÑA STATUS', event_sql=\"$SQL_log\", event_notes='Estado: $status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN NUEVA CAMPAÑA STATUS', event_sql=\"$SQL_log\", event_notes='Estado: $status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO DE SISTEMA NO AGREGADO - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESTADO DE SISTEMA NO AGREGADO - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESTADO DE SISTEMA NO AGREGADO - Vaya por favor detrás y mire los datos que usted incorporó\n"; echo "
el estado debe estar entre 1 y 8 caracteres en longitud\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
EL ESTADO DE SISTEMA AGREGÓ: $status_name - $status\n"; + echo "
EL ESTADO DE SISTEMA AGREGÓ: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
AGREGAR ESTADO PERSONALIZADO A LA CAMPAÑA
\n"; echo "\n"; echo "\n"; - echo "Estado:   \n"; + echo "Estado:   \n"; echo "Descripción:   \n"; echo "Seleccionable:  
\n"; echo "Respuesta humana:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
AGREGUE EL NUEVO ESTADO DE SISTEMA
\n"; echo "\n"; - echo "Estado:   \n"; + echo "Estado:   \n"; echo "Descripción:
\n"; echo "Seleccionable:   \n"; echo "Respuesta humana:   \n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/calendar.css b/agc_2-X/trunk/LANG_www/vicidial_es/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_es/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/calendar_db.js b/agc_2-X/trunk/LANG_www/vicidial_es/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_es/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/call_report_export.php b/agc_2-X/trunk/LANG_www/vicidial_es/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/call_report_export.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/fcstats.php b/agc_2-X/trunk/LANG_www/vicidial_es/fcstats.php index d5b9a178..e94d3b0a 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/fcstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/cal.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/help.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/help.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/next_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/next_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/next_year.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/next_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/no_cal.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/no_cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/pixel.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/pixel.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/prev_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/prev_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/prev_year.gif b/agc_2-X/trunk/LANG_www/vicidial_es/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/prev_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_bl.png b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_bl.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_bm.png b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_bm.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_br.png b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_br.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_mr.png b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_mr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_tr.png b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_es/images/shade_tr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_report.php b/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_report.php index c2416ffd..2b1198bd 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_report.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UsuarioReloj de tiempo Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Rango de Fecha:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Grupos De Usuario:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_status.php b/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_status.php index 6e4b5c14..21bf28c5 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_status.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Nombre y contraseña inválidos del usuario: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_es/user_stats.php b/agc_2-X/trunk/LANG_www/vicidial_es/user_stats.php index 32ebf789..f62c2a3f 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_es/user_stats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_es/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Estadísticas de usuario <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunes week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSER_service_level.php b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSER_service_level.php index 9538136d..d581bc60 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSER_service_level.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERstats.php b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERstats.php index 40c808d6..d5b7a593 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Date Range:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Groupes entrants: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_IVRstats.php b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_IVRstats.php index 8e9daeee..93c903e5 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_IVRstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Dates:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnes:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       CACHER GROUPE D'UTILISATEURS"; + echo "       CACHER GROUPE D'UTILISATEURS"; } else { - echo "       VIEW GROUPE D'UTILISATEURS"; - } -if ($UidORname>0) - { - echo "       MONTRER AGENT ID"; - } -else - { - echo "       MONTRER AGENT NAME"; + echo "       VIEW GROUPE D'UTILISATEURS"; } if ($SERVdisplay>0) { - echo "       CACHER SERVEUR INFO"; + echo "       CACHER SERVEUR INFO"; } else { - echo "       MONTRER SERVEUR INFO"; + echo "       MONTRER SERVEUR INFO"; } if ($CALLSdisplay>0) { - echo "       CACHER WAITING CALLS"; + echo "       CACHER WAITING CALLS"; } else { - echo "       MONTRER WAITING CALLS"; + echo "       MONTRER WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       CACHER IN-GROUP STATS"; + } +else + { + echo "       MONTRER IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       CACHER PHONES"; + echo "       CACHER PHONES"; } else { - echo "       MONTRER PHONES"; + echo "       MONTRER PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       CACHER CUSTPHONES"; + echo "       CACHER CUSTPHONES"; } else { - echo "       MONTRER CUSTPHONES"; + echo "       MONTRER CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Campagnes:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "SLOW | "; -echo "GO"; +echo "STOP | "; +echo "SLOW | "; +echo "GO"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       MODIFIER | \n"; @@ -718,7 +756,8 @@ echo "
please select a campaign from the pulldown above\n"; exit;} +if (!$group) + {echo "

please select a campaign from the pulldown above\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_REPONSEagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_REPONSEagent_non_pause_sec = round($AVG_REPONSEagent_non_pause_sec, 2); + $AVG_REPONSEagent_non_pause_sec = sprintf("%01.2f", $AVG_REPONSEagent_non_pause_sec); + } + else + {$AVG_REPONSEagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_REPONSEagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
REPONSES TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/REPONSES:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_REPONSEagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_REPONSEagent_non_pause_sec = round($AVG_REPONSEagent_non_pause_sec, 2); - $AVG_REPONSEagent_non_pause_sec = sprintf("%01.2f", $AVG_REPONSEagent_non_pause_sec); - } - else - {$AVG_REPONSEagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_REPONSEagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CALLS TODAY:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
REPONSES TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDER:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Campagnes with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " USER INFO |"; + + +$HTuser = " USER "; +if ($UidORname>0) + { + $HTuser .= "MONTRER ID "; + } +else + { + $HTuser .= "MONTRER NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " GROUPE D'UTILISATEURS |"; +$HTusergroup = " GROUPE D'UTILISATEURS |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " SERVEUR IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL SERVEUR IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAIGN |"; +$HTcampaign = " CAMPAIGN |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/admin.php b/agc_2-X/trunk/LANG_www/vicidial_fr/admin.php index 7871196d..8548dd1a 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/admin.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE LA CAMPAGNE NON AJOUTE - il y a déjà un statut de campagne dans le système avec ce nom\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE LA CAMPAGNE NON AJOUTE - il y a déjà un statut global dans le système avec ce nom\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
STATUT DE LA CAMPAGNE NON AJOUTE - Veuillez revenir en arrière et vérifier les données que vous avez saisies\n"; echo "
le statut doit contenir entre 1 et 8 caractères\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
STATUT DE LA CAMPAGNE AJOUTE: $campaign_id - $status\n"; + echo "
STATUT DE LA CAMPAGNE AJOUTE: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AJOUTER UNE CAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Etat: $status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AJOUTER UNE CAMPAGNE STATUS', event_sql=\"$SQL_log\", event_notes='Etat: $status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE SYSTÈME NON SUPPLÉMENTAIRE - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
STATUT DE SYSTÈME NON SUPPLÉMENTAIRE - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
STATUT DE SYSTÈME NON SUPPLÉMENTAIRE - Veuillez retourner en arrière et vérifier les données que vous avez saisies\n"; echo "
le statut doit contenir entre 1 et 8 caractères\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
STATUT DE SYSTÈME SUPPLÉMENTAIRE: $status_name - $status\n"; + echo "
STATUT DE SYSTÈME SUPPLÉMENTAIRE: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
AJOUTER UN NOUVEAU STATUT DE CAMPAGNE PERSONNALISE
\n"; echo "\n"; echo "\n"; - echo "Etat:   \n"; + echo "Etat:   \n"; echo "Description:   \n"; echo "Selectionnable:  
\n"; echo "Réponse de l'homme:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
AJOUTEZ LE NOUVEAU STATUT DE SYSTÈME
\n"; echo "\n"; - echo "Etat:   \n"; + echo "Etat:   \n"; echo "Description:
\n"; echo "Selectionnable:   \n"; echo "Réponse de l'homme:   \n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/calendar.css b/agc_2-X/trunk/LANG_www/vicidial_fr/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/calendar_db.js b/agc_2-X/trunk/LANG_www/vicidial_fr/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/call_report_export.php b/agc_2-X/trunk/LANG_www/vicidial_fr/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/call_report_export.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/fcstats.php b/agc_2-X/trunk/LANG_www/vicidial_fr/fcstats.php index 8130a61d..bea37962 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/fcstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/cal.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/help.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/help.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/next_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/next_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/next_year.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/next_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/no_cal.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/no_cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/pixel.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/pixel.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/prev_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/prev_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/prev_year.gif b/agc_2-X/trunk/LANG_www/vicidial_fr/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/prev_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_bl.png b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_bl.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_bm.png b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_bm.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_br.png b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_br.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_mr.png b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_mr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_tr.png b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_fr/images/shade_tr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_report.php b/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_report.php index 3b457dcb..8c020fc4 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_report.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UtilisateurHorloge en temps Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE BORDER=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Groupes d'utilisateurs:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_status.php b/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_status.php index fd7b798e..953a0f9f 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_status.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Login ou mot de passe invalide: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_fr/user_stats.php b/agc_2-X/trunk/LANG_www/vicidial_fr/user_stats.php index d32923d3..b679f54a 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_fr/user_stats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_fr/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Statistiques utilisateur <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lundi week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSER_service_level.php b/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSER_service_level.php index ba3aeda0..4bc7a60d 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSER_service_level.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSER_service_level.php @@ -1,7 +1,7 @@ <?php # AST_CLOSER_service_level.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 90310-2117 - Added admin header # 90508-0644 - Changed to PHP long tags # 90801-0923 - Added in-group name to pulldown +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -43,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -76,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -101,6 +101,10 @@ while ($i < $groups_to_print) </STYLE> <?php + +echo "<script language=\"JavaScript\" src=\"calendar_db.js\"></script>\n"; +echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n"; + echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>Inbound Service Level Report\n"; @@ -110,9 +114,37 @@ require("admin_header.php"); echo "
"; -echo "\n"; -echo "\n"; -echo " to \n"; +echo "\n"; +echo ""; + +?> + +"; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERstats.php b/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERstats.php index 717f5748..7bde74e4 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -24,6 +24,9 @@ # 90524-2231 - Changed to use functions.php for seconds to HH:MM:SS conversion # 90801-0921 - Added in-group name to pulldown # 91214-0955 - Added INITIAL QUEUE POSITION BREAKDOWN +# 100206-1454 - Fixed TMR(service level) calculation +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -59,12 +62,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -89,7 +90,7 @@ $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -104,14 +105,14 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); $i=0; - $LISTgroups[$i]='---NONE---'; - $i++; - $groups_to_print++; +$LISTgroups[$i]='---NONE---'; +$i++; +$groups_to_print++; while ($i < $groups_to_print) { $row=mysql_fetch_row($rslt); @@ -169,6 +170,10 @@ while ($i < $statcats_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Stats\n"; @@ -187,12 +192,40 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Date:
\n"; -echo "\n"; -echo " to \n"; +echo ""; + +?> + +"; + +?> + +
\n"; echo "Gruppi Inbound: \n"; echo "\n"; @@ -336,7 +369,7 @@ $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); -$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE');"; +$stmt="select count(*),sum(queue_seconds) from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $rowy=mysql_fetch_row($rslt); @@ -432,13 +465,13 @@ if (strlen($group_SQL)>3) $Sanswer_sec_pct_rt_stat_one = $row[0]; $Sanswer_sec_pct_rt_stat_two = $row[1]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_one and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $answer_sec_pct_rt_stat_one = $row[0]; - $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two;"; + $stmt = "SELECT count(*) from vicidial_closer_log where campaign_id IN($group_SQL) and call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and queue_seconds <= $Sanswer_sec_pct_rt_stat_two and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND');"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); @@ -680,7 +713,7 @@ echo " +--------------------------------------------------------------- echo " | 0 5 10 15 20 25 30 35 40 45 50 55 60 90 +90 | TOTAL |\n"; echo "----------+-------------------------------------------------------------------------------------------+------------+\n"; -$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE') group by queue_seconds;"; +$stmt="select count(*),queue_seconds from vicidial_closer_log where call_date >= '$query_date_BEGIN' and call_date <= '$query_date_END' and campaign_id IN($group_SQL) and status NOT IN('DROP','XDROP','HXFER','QVMAIL','HOLDTO','LIVE','QUEUE','TIMEOT','AFTHRS','NANQUE','INBND') group by queue_seconds;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $reasons_to_print = mysql_num_rows($rslt); @@ -1222,7 +1255,7 @@ while ($j < $calls_to_print) { $Ftotal[$i]++; if (ereg("DROP",$Cstatus[$j])) {$Fdrop[$i]++;} - if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE",$Cstatus[$j])) + if (!ereg("DROP|XDROP|HXFER|QVMAIL|HOLDTO|LIVE|QUEUE|TIMEOT|AFTHRS|NANQUE|INBND",$Cstatus[$j])) { $BDansweredCALLS++; $Fanswer[$i]++; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php b/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php index 14010001..2c5f60dc 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/AST_CLOSERsummary_hourly.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 90801-0910 - First build # 90809-0216 - Added Exclude Outbound Drop Group option +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -56,12 +58,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -103,7 +103,7 @@ if (!isset($end_date)) {$end_date = $NOW_DATE;} $exclude_rolloverSQL=''; if (eregi("YES",$exclude_rollover)) {$exclude_rolloverSQL = " where group_id NOT IN(SELECT drop_inbound_group from vicidial_campaigns)";} -$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL;"; +$stmt="select group_id,group_name from vicidial_inbound_groups $exclude_rolloverSQL order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -182,6 +182,10 @@ while ($i < $times_to_print) \n"; +echo "\n"; + echo "\n"; echo "Inbound Summary Hourly Report\n"; @@ -202,7 +206,7 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; @@ -210,8 +214,36 @@ if ($bareformat < 1) echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
  \n"; echo "\n"; echo "Inbound Groups:
\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/AST_IVRstats.php b/agc_2-X/trunk/LANG_www/vicidial_it/AST_IVRstats.php index 87899322..14745814 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/AST_IVRstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/AST_IVRstats.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 81026-2026 - First build @@ -11,6 +11,7 @@ # 90310-2056 - Admin header # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list +# 100214-1421 - Sort menu alphabetically # require("dbconnect.php"); @@ -44,12 +45,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -77,7 +76,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = "$NOW_DATE 00:00:00";} if (!isset($end_date)) {$end_date = "$NOW_DATE 23:23:59";} -$stmt="select group_id,group_name from vicidial_inbound_groups;"; +$stmt="select group_id,group_name from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php b/agc_2-X/trunk/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php index c4989c46..4ce1906b 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/AST_OUTBOUNDsummary_interval.php @@ -1,12 +1,14 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # # 091128-0311 - First build # 091129-0017 - Added Sales-type and DNC-type tallies +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -54,12 +56,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -140,7 +140,7 @@ while($i < $group_ct) $i++; } -$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL;"; +$stmt="select campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -155,7 +155,7 @@ while ($i < $campaigns_to_print) $i++; } - if ($DB) {echo "$group_string|$i\n";} +if ($DB) {echo "$group_string|$i\n";} $rollover_groups_count=0; $i=0; @@ -224,7 +224,7 @@ while ($i < $statcats_to_print) $i++; } -$stmt="select call_time_id,call_time_name from vicidial_call_times;"; +$stmt="select call_time_id,call_time_name from vicidial_call_times order by call_time_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $times_to_print = mysql_num_rows($rslt); @@ -331,6 +331,10 @@ while ($i < $statdnc_to_print) \n"; +echo "\n"; + echo "\n"; echo "Outbound Summary Interval Report\n"; @@ -351,14 +355,42 @@ if ($bareformat < 1) echo "
\n"; } - echo "\n"; + echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "Date Range:
\n"; - echo "\n"; - echo " to \n"; + echo ""; + + ?> + + "; + + ?> + +
Campaigns:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Date:
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo "
Date:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo "
"; -echo "\n"; +echo "\n"; echo "
Date:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo "
Date:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campagnas:
"; echo ""; echo ""; echo ""; + + echo "$DROPINGROUPstatsHTML\n"; } echo ""; @@ -1204,66 +1290,99 @@ echo "$ingroup_detail"; if ($adastats<2) { - echo "+ VIEW MORE"; + echo "+ VIEW MORE"; } else { - echo "+ VIEW LESS"; + echo "+ VIEW LESS"; } if ($UGdisplay>0) { - echo "       NASCONDI GRUPPI UTENTI"; + echo "       NASCONDI GRUPPI UTENTI"; } else { - echo "       MOSTRA GRUPPI UTENTI"; - } -if ($UidORname>0) - { - echo "       MOSTRA ID OPERATORE"; - } -else - { - echo "       MOSTRA NOME OPERATORE"; + echo "       MOSTRA GRUPPI UTENTI"; } if ($SERVdisplay>0) { - echo "       NASCONDI INFO SERVER"; + echo "       NASCONDI INFO SERVER"; } else { - echo "       MOSTRA INFO SERVER"; + echo "       MOSTRA INFO SERVER"; } if ($CALLSdisplay>0) { - echo "       NASCONDI WAITING CALLS"; + echo "       NASCONDI WAITING CALLS"; } else { - echo "       MOSTRA WAITING CALLS"; + echo "       MOSTRA WAITING CALLS"; + } + +if ($ALLINGROUPstats>0) + { + echo "       NASCONDI IN-GROUP STATS"; + } +else + { + echo "       MOSTRA IN-GROUP STATS"; } if ($PHONEdisplay>0) { - echo "       NASCONDI PHONES"; + echo "       NASCONDI PHONES"; } else { - echo "       MOSTRA PHONES"; + echo "       MOSTRA PHONES"; } if ($CUSTPHONEdisplay>0) { - echo "       NASCONDI CUSTPHONES"; + echo "       NASCONDI CUSTPHONES"; } else { - echo "       MOSTRA CUSTPHONES"; + echo "       MOSTRA CUSTPHONES"; } echo ""; echo ""; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo ""; + +?> + + to
"; + +?> + +
Campaigns:
"; echo ""; @@ -422,10 +452,16 @@ var pass = ''; function openDiv(divvar) { document.getElementById(divvar).innerHTML = select_list; + document.getElementById(divvar).style.left = 0; } function closeDiv(divvar) { document.getElementById(divvar).innerHTML = open_list; + document.getElementById(divvar).style.left = 160; + } +function closeAlert(divvar) + { + document.getElementById(divvar).innerHTML = ''; } // function to launch monitoring calls @@ -669,7 +705,7 @@ $rslt=mysql_query($stmt, $link); $campaign_allow_inbound = $row[0]; echo "\n"; -echo"\n"; +echo"\n"; echo "Real-Time Report: $group\n"; $short_header=1; @@ -694,6 +730,8 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; +echo "\n"; +echo "\n"; echo "Real-Time Report                                                                               \n"; echo "\n"; echo "
Select Campagnas:
"; -$select_list .= ""; $o=0; while ($groups_to_print > $o) { @@ -337,7 +349,7 @@ if ($UGdisplay > 0) while ($usergroups_to_print > $o) { if ($usergroups[$o] == $usergroup) {$select_list .= "";} - else {$select_list .= "";} + else {$select_list .= "";} $o++; } $select_list .= "

"; @@ -374,6 +386,24 @@ $select_list .= "Phone: "; $select_list .= ""; $select_list .= "

"; +$select_list .= "   Dialable Leads Alert:
"; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + $DROPINGROUPstatsHTML .= ""; + } + + ##### INBOUND ONLY ### if (ereg('O',$with_inbound)) { $multi_drop++; - if ($adastats>1) - { - $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; - - if ($DB > 0) {echo "\n|$stmtB|\n";} - - $r=0; - $rslt=mysql_query($stmtB, $link); - $ingroups_to_print = mysql_num_rows($rslt); - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
\n"; @@ -703,9 +741,9 @@ echo "\n"; echo "\n"; echo "   "; echo "\n"; -echo "STOP | "; -echo "PIU LENTO | "; -echo "INIZIA"; +echo "STOP | "; +echo "PIU LENTO | "; +echo "INIZIA"; if (eregi('ALL-ACTIVE',$group_string)) { echo "       MODIFICA | \n"; @@ -718,7 +756,8 @@ echo "
per favore seleziona una campagna dal menu qui in alto\n"; exit;} +if (!$group) + {echo "

per favore seleziona una campagna dal menu qui in alto\n"; exit;} else { $multi_drop=0; @@ -764,124 +803,169 @@ else if ($DB > 0) {echo "\n|$closer_campaigns|$closer_campaignsSQL|$stmt|\n";} +##### SHOW IN-GROUP STATS OR INBOUND ONLY WITH VIEW-MORE ### +if ( ($ALLINGROUPstats > 0) or ( (ereg('O',$with_inbound)) and ($adastats > 1) ) ) + { + $stmtB="select calls_today,drops_today,answers_today,status_category_1,status_category_count_1,status_category_2,status_category_count_2,status_category_3,status_category_count_3,status_category_4,status_category_count_4,hold_sec_stat_one,hold_sec_stat_two,hold_sec_answer_calls,hold_sec_drop_calls,hold_sec_queue_calls,campaign_id from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL) order by campaign_id;"; + + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $r=0; + $rslt=mysql_query($stmtB, $link); + $ingroups_to_print = mysql_num_rows($rslt); + if ($ingroups_to_print > 0) + {$ingroup_detail .= "";} + while ($ingroups_to_print > $r) + { + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + $VSCcat1 = $row[3]; + $VSCcat1tally = $row[4]; + $VSCcat2 = $row[5]; + $VSCcat2tally = $row[6]; + $VSCcat3 = $row[7]; + $VSCcat3tally = $row[8]; + $VSCcat4 = $row[9]; + $VSCcat4tally = $row[10]; + $hold_sec_stat_one = $row[11]; + $hold_sec_stat_two = $row[12]; + $hold_sec_answer_calls = $row[13]; + $hold_sec_drop_calls = $row[14]; + $hold_sec_queue_calls = $row[15]; + $ingroupdetail = $row[16]; + if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + if ($callsTODAY > 0) + { + $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); + $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); + } + else + {$AVGhold_sec_queue_calls=0;} + + if ($dropsTODAY > 0) + { + $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); + $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); + } + else + {$AVGhold_sec_drop_calls=0;} + + if ($answersTODAY > 0) + { + $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); + $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); + $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); + $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); + $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); + $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); + $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); + $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); + if ($agent_non_pause_sec > 0) + { + $AVG_RISPOSTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); + $AVG_RISPOSTAagent_non_pause_sec = round($AVG_RISPOSTAagent_non_pause_sec, 2); + $AVG_RISPOSTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RISPOSTAagent_non_pause_sec); + } + else + {$AVG_RISPOSTAagent_non_pause_sec=0;} + } + else + { + $PCThold_sec_stat_one=0; + $PCThold_sec_stat_two=0; + $AVGhold_sec_answer_calls=0; + $AVG_RISPOSTAagent_non_pause_sec=0; + } + + if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} + else {$bgcolor='white';} + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + $ingroup_detail .= ""; + + $r++; + } + + if ($ingroups_to_print > 0) + {$ingroup_detail .= "
        $ingroupdetail   CHIAMATE OGGI:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RISPOSTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} + } + + +##### DROP IN-GROUP ONLY TOTALS ROW ### +$DROPINGROUPstatsHTML=''; +if ( ($DROPINGROUPstats > 0) and (!preg_match("/ALL-ACTIVE/",$group_string)) ) + { + $DIGcampaigns=''; + $stmtB="select drop_inbound_group from vicidial_campaigns where campaign_id IN($group_SQL) and drop_inbound_group NOT IN('---NONE---','');"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $dig_to_print = mysql_num_rows($rslt); + $dtp=0; + while ($dig_to_print > $dtp) + { + $row=mysql_fetch_row($rslt); + $DIGcampaigns .= "'$row[0]',"; + $dtp++; + } + $DIGcampaigns = preg_replace("/,$/",'',$DIGcampaigns); + + $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today) from vicidial_campaign_stats where campaign_id IN($DIGcampaigns);"; + if ($DB > 0) {echo "\n|$stmtB|\n";} + + $rslt=mysql_query($stmtB, $link); + $row=mysql_fetch_row($rslt); + $callsTODAY = $row[0]; + $dropsTODAY = $row[1]; + $answersTODAY = $row[2]; + if ( ($dropsTODAY > 0) and ($callsTODAY > 0) ) + { + $drpctTODAY = ( ($dropsTODAY / $callsTODAY) * 100); + $drpctTODAY = round($drpctTODAY, 2); + $drpctTODAY = sprintf("%01.2f", $drpctTODAY); + } + else + {$drpctTODAY=0;} + + $DROPINGROUPstatsHTML .= "
DROP IN-GROUP STATS -DROP PERCENT:  $drpctTODAY%     CALLS:  $callsTODAY     DROPS/RISPOSTAS:  $dropsTODAY / $answersTODAY    
";} - while ($ingroups_to_print > $r) - { - $row=mysql_fetch_row($rslt); - $callsTODAY = $row[0]; - $dropsTODAY = $row[1]; - $answersTODAY = $row[2]; - $VSCcat1 = $row[3]; - $VSCcat1tally = $row[4]; - $VSCcat2 = $row[5]; - $VSCcat2tally = $row[6]; - $VSCcat3 = $row[7]; - $VSCcat3tally = $row[8]; - $VSCcat4 = $row[9]; - $VSCcat4tally = $row[10]; - $hold_sec_stat_one = $row[11]; - $hold_sec_stat_two = $row[12]; - $hold_sec_answer_calls = $row[13]; - $hold_sec_drop_calls = $row[14]; - $hold_sec_queue_calls = $row[15]; - $ingroupdetail = $row[16]; - if ( ($dropsTODAY > 0) and ($answersTODAY > 0) ) - { - $drpctTODAY = ( ($dropsTODAY / $answersTODAY) * 100); - $drpctTODAY = round($drpctTODAY, 2); - $drpctTODAY = sprintf("%01.2f", $drpctTODAY); - } - else - {$drpctTODAY=0;} - - if ($callsTODAY > 0) - { - $AVGhold_sec_queue_calls = ($hold_sec_queue_calls / $callsTODAY); - $AVGhold_sec_queue_calls = round($AVGhold_sec_queue_calls, 0); - } - else - {$AVGhold_sec_queue_calls=0;} - - if ($dropsTODAY > 0) - { - $AVGhold_sec_drop_calls = ($hold_sec_drop_calls / $dropsTODAY); - $AVGhold_sec_drop_calls = round($AVGhold_sec_drop_calls, 0); - } - else - {$AVGhold_sec_drop_calls=0;} - - if ($answersTODAY > 0) - { - $PCThold_sec_stat_one = ( ($hold_sec_stat_one / $answersTODAY) * 100); - $PCThold_sec_stat_one = round($PCThold_sec_stat_one, 2); - $PCThold_sec_stat_one = sprintf("%01.2f", $PCThold_sec_stat_one); - $PCThold_sec_stat_two = ( ($hold_sec_stat_two / $answersTODAY) * 100); - $PCThold_sec_stat_two = round($PCThold_sec_stat_two, 2); - $PCThold_sec_stat_two = sprintf("%01.2f", $PCThold_sec_stat_two); - $AVGhold_sec_answer_calls = ($hold_sec_answer_calls / $answersTODAY); - $AVGhold_sec_answer_calls = round($AVGhold_sec_answer_calls, 0); - if ($agent_non_pause_sec > 0) - { - $AVG_RISPOSTAagent_non_pause_sec = (($answersTODAY / $agent_non_pause_sec) * 60); - $AVG_RISPOSTAagent_non_pause_sec = round($AVG_RISPOSTAagent_non_pause_sec, 2); - $AVG_RISPOSTAagent_non_pause_sec = sprintf("%01.2f", $AVG_RISPOSTAagent_non_pause_sec); - } - else - {$AVG_RISPOSTAagent_non_pause_sec=0;} - } - else - { - $PCThold_sec_stat_one=0; - $PCThold_sec_stat_two=0; - $AVGhold_sec_answer_calls=0; - $AVG_RISPOSTAagent_non_pause_sec=0; - } - - if (ereg("0$|2$|4$|6$|8$",$r)) {$bgcolor='#E6E6E6';} - else {$bgcolor='white';} - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - $ingroup_detail .= ""; - - $r++; - } - - if ($ingroups_to_print > 0) - {$ingroup_detail .= "
        $ingroupdetail   CHIAMATE OGGI:  $callsTODAY    TMA 1:  $PCThold_sec_stat_one%     Average Hold time for Answered Calls:  $AVGhold_sec_answer_calls  
DROPS TODAY:  $dropsTODAY    TMA 2:  $PCThold_sec_stat_two%     Average Hold time for Dropped Calls:  $AVGhold_sec_drop_calls  
RISPOSTAS TODAY:  $answersTODAY    DROP PERCENT:  $drpctTODAY%    Average Hold time for All Calls:  $AVGhold_sec_queue_calls  
";} - - } - $stmt="select agent_pause_codes_active from vicidial_campaigns $group_SQLwhere;"; $stmtB="select sum(calls_today),sum(drops_today),sum(answers_today),max(status_category_1),sum(status_category_count_1),max(status_category_2),sum(status_category_count_2),max(status_category_3),sum(status_category_count_3),max(status_category_4),sum(status_category_count_4),sum(hold_sec_stat_one),sum(hold_sec_stat_two),sum(hold_sec_answer_calls),sum(hold_sec_drop_calls),sum(hold_sec_queue_calls) from vicidial_campaign_stats where campaign_id IN ($closer_campaignsSQL);"; @@ -1184,6 +1268,8 @@ else echo "
DIFF:  $diffpctONEMIN%     ORDINE:  $DIALorder    
"; echo "\n\n"; + +##### check for campaigns with no dialable leads if enabled ##### +if ( ($with_inbound != 'O') and ($NOLEADSalert == 'YES') ) + { + $NDLcampaigns=''; + $stmtB="select campaign_id from vicidial_campaign_stats where campaign_id IN($group_SQL) and dialable_leads < 1 order by campaign_id;"; + if ($DB > 0) {echo "\n|$stmt|$stmtB|\n";} + $rslt=mysql_query($stmtB, $link); + $campaigns_to_print = mysql_num_rows($rslt); + $ctp=0; + while ($campaigns_to_print > $ctp) + { + $row=mysql_fetch_row($rslt); + $NDLcampaigns .= " $row[0]   "; + $ctp++; + if (preg_match("/0$|5$/",$ctp)) + {$NDLcampaigns .= "
";} + } + if ($ctp > 0) + { + echo "\n"; + echo "
\n"; + echo "



Close Alert"; + echo "




Campagnas with no dialable leads:

$NDLcampaigns
"; + echo "










  "; + echo "
\n"; + echo "
\n"; + } + } } + + + ################################################################################### ###### INBOUND/OUTBOUND CALLS ################################################################################### @@ -1468,11 +1587,25 @@ $HTbegin = "|"; $HDstation = "----------------+"; $HTstation = " STATION |"; $HDphone = "-------------+"; -$HTphone = " PHONE |"; +$HTphone = " PHONE |"; $HDuser = "------------------------+"; -$HTuser = " UTENTE INFO |"; + + +$HTuser = " UTENTE "; +if ($UidORname>0) + { + $HTuser .= "MOSTRA ID "; + } +else + { + $HTuser .= "MOSTRA NAME"; + } + +$HTuser .= " INFO |"; + + $HDusergroup = "--------------+"; -$HTusergroup = " Utente Group |"; +$HTusergroup = " Utente Group |"; $HDsessionid = "------------------+"; $HTsessionid = " SESSIONID |"; $HDbarge = "-------+"; @@ -1486,9 +1619,9 @@ $HTserver_ip = " SERVER IP |"; $HDcall_server_ip = "-----------------+"; $HTcall_server_ip = " CALL SERVER IP |"; $HDtime = "---------+"; -$HTtime = " MM:SS |"; +$HTtime = " MM:SS |"; $HDcampaign = "------------+"; -$HTcampaign = " CAMPAGNA |"; +$HTcampaign = " CAMPAGNA |"; $HDcalls = "-------+"; $HTcalls = " CALLS |"; $HDpause = ''; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/admin.php b/agc_2-X/trunk/LANG_www/vicidial_it/admin.php index e32f1cb2..9cf6dcee 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/admin.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/admin.php @@ -481,6 +481,8 @@ if (isset($_GET["state_rule"])) {$state_rule=$_GET["state_rule"];} elseif (isset($_POST["state_rule"])) {$state_rule=$_POST["state_rule"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} +if (isset($_GET["status_id"])) {$status_id=$_GET["status_id"];} + elseif (isset($_POST["status_id"])) {$status_id=$_POST["status_id"];} if (isset($_GET["status_name"])) {$status_name=$_GET["status_name"];} elseif (isset($_POST["status_name"])) {$status_name=$_POST["status_name"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} @@ -1307,7 +1309,6 @@ if ($non_latin < 1) $voicemail_dump_exten = ereg_replace("[^0-9]","",$voicemail_dump_exten); $voicemail_ext = ereg_replace("[^0-9]","",$voicemail_ext); $voicemail_exten = ereg_replace("[^0-9]","",$voicemail_exten); - $voicemail_id = ereg_replace("[^0-9]","",$voicemail_id); $wrapup_seconds = ereg_replace("[^0-9]","",$wrapup_seconds); $use_non_latin = ereg_replace("[^0-9]","",$use_non_latin); $webroot_writable = ereg_replace("[^0-9]","",$webroot_writable); @@ -1477,6 +1478,8 @@ if ($non_latin < 1) $pause_after_each_call = ereg_replace("[^0-9a-zA-Z]","",$pause_after_each_call); $use_internal_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_internal_dnc); $use_campaign_dnc = ereg_replace("[^0-9a-zA-Z]","",$use_campaign_dnc); + $voicemail_id = ereg_replace("[^0-9a-zA-Z]","",$voicemail_id); + $status_id = ereg_replace("[^0-9a-zA-Z]","",$status_id); ### DIGITS and Dots $server_ip = ereg_replace("[^\.0-9]","",$server_ip); @@ -1551,7 +1554,6 @@ if ($non_latin < 1) $server_id = ereg_replace("[^-_0-9a-zA-Z]","",$server_id); $stage = ereg_replace("[^-_0-9a-zA-Z]","",$stage); $state_rule = ereg_replace("[^-_0-9a-zA-Z]","",$state_rule); - $status = ereg_replace("[^-_0-9a-zA-Z]","",$status); $trunk_restriction = ereg_replace("[^-_0-9a-zA-Z]","",$trunk_restriction); $user = ereg_replace("[^-_0-9a-zA-Z]","",$user); $user_group = ereg_replace("[^-_0-9a-zA-Z]","",$user_group); @@ -8700,21 +8702,21 @@ if ($ADD==20) if ($ADD==22) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO CAMPAGNA NON AGGIUNTO - Esiste gia` un esito campagna con questo nome\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO CAMPAGNA NON AGGIUNTO - esiste gia` un esito globale con questo nome\n";} else { - if ( (strlen($campaign_id) < 2) or (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($campaign_id) < 2) or (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESITO CAMPAGNA NON AGGIUNTO - Per favore torna indietro e ricontrolla i dati inseriti\n"; echo "
l`esito deve essere lungo tra 1 e 8 caratteri\n"; @@ -8722,16 +8724,16 @@ if ($ADD==22) } else { - echo "
STATO PERSONALIZZATO PER CAMPAGNA AGGIUNTO: $campaign_id - $status\n"; + echo "
STATO PERSONALIZZATO PER CAMPAGNA AGGIUNTO: $campaign_id - $status_id\n"; - $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AGGIUNGI CAMPAGNA STATUS', event_sql=\"$SQL_log\", event_notes='Esito: $status';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN AGGIUNGI CAMPAGNA STATUS', event_sql=\"$SQL_log\", event_notes='Esito: $status_id';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -10294,21 +10296,21 @@ if ($ADD==21111111111111) if ($ADD==221111111111111) { echo ""; - $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_campaign_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO DI DEFAULT NON AGGIUNTO - there is already a campaign-status in the system with this name: $row[0]\n";} else { - $stmt="SELECT count(*) from vicidial_statuses where status='$status';"; + $stmt="SELECT count(*) from vicidial_statuses where status='$status_id';"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if ($row[0] > 0) {echo "
ESITO DI DEFAULT NON AGGIUNTO - there is already a global-status in the system with this name\n";} else { - if ( (strlen($status) < 1) or (strlen($status_name) < 2) ) + if ( (strlen($status_id) < 1) or (strlen($status_name) < 2) ) { echo "
ESITO DI DEFAULT NON AGGIUNTO - Per favore torna indietro e ricontrolla i dati inseriti\n"; echo "
l`esito deve essere lungo tra 1 e 8 caratteri\n"; @@ -10316,16 +10318,16 @@ if ($ADD==221111111111111) } else { - echo "
ESITO DI DEFAULT AGGIUNTO: $status_name - $status\n"; + echo "
ESITO DI DEFAULT AGGIUNTO: $status_name - $status_id\n"; - $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; + $stmt="INSERT INTO vicidial_statuses (status,status_name,selectable,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable) values('$status_id','$status_name','$selectable','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable');"; $rslt=mysql_query($stmt, $link); ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); - $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; + $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='SYSTEMSTATUSES', event_type='ADD', record_id='$status_id', event_code='ADMIN ADD SYSTEM STATUS', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } @@ -17087,7 +17089,7 @@ if ($ADD==31) echo "
AGGIUNGI NUOVO ESITO PERSONALIZZATO PER CAMPAGNA
\n"; echo "\n"; echo "\n"; - echo "Esito:   \n"; + echo "Esito:   \n"; echo "Descrizione:   \n"; echo "Selezionabile:  
\n"; echo "Risposta Umana:   \n"; @@ -22595,7 +22597,7 @@ if ($ADD==321111111111111) echo "
AGGIUNGI UN NUOVO ESITO DI DEFAULT
\n"; echo "\n"; - echo "Esito:   \n"; + echo "Esito:   \n"; echo "Descrizione:
\n"; echo "Selezionabile:   \n"; echo "Risposta Umana:   \n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/calendar.css b/agc_2-X/trunk/LANG_www/vicidial_it/calendar.css new file mode 100644 index 00000000..a3ddcae5 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_it/calendar.css @@ -0,0 +1,95 @@ +/* calendar icon */ +img.tcalIcon { + cursor: pointer; + margin-left: 1px; + vertical-align: middle; +} +/* calendar container element */ +div#tcal { + position: absolute; + visibility: hidden; + z-index: 100; + width: 158px; + padding: 2px 0 0 0; +} +/* all tables in calendar */ +div#tcal table { + width: 100%; + border: 1px solid silver; + border-collapse: collapse; + background-color: white; +} +/* navigation table */ +div#tcal table.ctrl { + border-bottom: 0; +} +/* navigation buttons */ +div#tcal table.ctrl td { + width: 15px; + height: 20px; +} +/* month year header */ +div#tcal table.ctrl th { + background-color: white; + color: black; + border: 0; +} +/* week days header */ +div#tcal th { + border: 1px solid silver; + border-collapse: collapse; + text-align: center; + padding: 3px 0; + font-family: tahoma, verdana, arial; + font-size: 10px; + background-color: gray; + color: white; +} +/* date cells */ +div#tcal td { + border: 0; + border-collapse: collapse; + text-align: center; + padding: 2px 0; + font-family: tahoma, verdana, arial; + font-size: 11px; + width: 22px; + cursor: pointer; +} +/* date highlight + in case of conflicting settings order here determines the priority from least to most important */ +div#tcal td.othermonth { + color: silver; +} +div#tcal td.weekend { + background-color: #ACD6F5; +} +div#tcal td.today { + border: 1px solid red; +} +div#tcal td.selected { + background-color: #FFB3BE; +} +/* iframe element used to suppress windowed controls in IE5/6 */ +iframe#tcalIF { + position: absolute; + visibility: hidden; + z-index: 98; + border: 0; +} +/* transparent shadow */ +div#tcalShade { + position: absolute; + visibility: hidden; + z-index: 99; +} +div#tcalShade table { + border: 0; + border-collapse: collapse; + width: 100%; +} +div#tcalShade table td { + border: 0; + border-collapse: collapse; + padding: 0; +} diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/calendar_db.js b/agc_2-X/trunk/LANG_www/vicidial_it/calendar_db.js new file mode 100644 index 00000000..ee6c8dd3 --- /dev/null +++ b/agc_2-X/trunk/LANG_www/vicidial_it/calendar_db.js @@ -0,0 +1,335 @@ +// Tigra Calendar v4.0.2 (2009-01-12) Database (yyyy-mm-dd) +// http://www.softcomplex.com/products/tigra_calendar/ +// Public Domain Software... You're welcome. + +// default settins +var A_TCALDEF = { + 'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + 'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + 'yearscroll': true, // show year scroller + 'weekstart': 0, // first day of week: 0-Su or 1-Mo + 'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx, othewise in 19xx. + 'imgpath' : 'images/' // directory with calendar images +} +// date parsing function +function f_tcalParseDate (s_date) { + + var re_date = /^\s*(\d{2,4})\-(\d{1,2})\-(\d{1,2})\s*$/; + if (!re_date.exec(s_date)) + return alert ("Invalid date: '" + s_date + "'.\nAccepted format is yyyy-mm-dd.") + var n_day = Number(RegExp.$3), + n_month = Number(RegExp.$2), + n_year = Number(RegExp.$1); + + if (n_year < 100) + n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900); + if (n_month < 1 || n_month > 12) + return alert ("Invalid month value: '" + n_month + "'.\nAllowed range is 01-12."); + var d_numdays = new Date(n_year, n_month, 0); + if (n_day > d_numdays.getDate()) + return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + "."); + + return new Date (n_year, n_month - 1, n_day); +} +// date generating function +function f_tcalGenerDate (d_date) { + return ( + d_date.getFullYear() + "-" + + (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth() + 1) + "-" + + (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() + ); +} + +// implementation +function tcal (a_cfg, a_tpl) { + + // apply default template if not specified + if (!a_tpl) + a_tpl = A_TCALDEF; + + // register in global collections + if (!window.A_TCALS) + window.A_TCALS = []; + if (!window.A_TCALSIDX) + window.A_TCALSIDX = []; + + this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length; + window.A_TCALS[this.s_id] = this; + window.A_TCALSIDX[window.A_TCALSIDX.length] = this; + + // assign methods + this.f_show = f_tcalShow; + this.f_hide = f_tcalHide; + this.f_toggle = f_tcalToggle; + this.f_update = f_tcalUpdate; + this.f_relDate = f_tcalRelDate; + this.f_parseDate = f_tcalParseDate; + this.f_generDate = f_tcalGenerDate; + + // create calendar icon + this.s_iconId = 'tcalico_' + this.s_id; + this.e_icon = f_getElement(this.s_iconId); + if (!this.e_icon) { + document.write('Open Calendar'); + this.e_icon = f_getElement(this.s_iconId); + } + // save received parameters + this.a_cfg = a_cfg; + this.a_tpl = a_tpl; +} + +function f_tcalShow (d_date) { + + // find input field + if (!this.a_cfg.controlname) + throw("TC: control name is not specified"); + if (this.a_cfg.formname) { + var e_form = document.forms[this.a_cfg.formname]; + if (!e_form) + throw("TC: form '" + this.a_cfg.formname + "' can not be found"); + this.e_input = e_form.elements[this.a_cfg.controlname]; + } + else + this.e_input = f_getElement(this.a_cfg.controlname); + + if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT') + throw("TC: element '" + this.a_cfg.controlname + "' does not exist in " + + (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document')); + + // dynamically create HTML elements if needed + this.e_div = f_getElement('tcal'); + if (!this.e_div) { + this.e_div = document.createElement("DIV"); + this.e_div.id = 'tcal'; + document.body.appendChild(this.e_div); + } + this.e_shade = f_getElement('tcalShade'); + if (!this.e_shade) { + this.e_shade = document.createElement("DIV"); + this.e_shade.id = 'tcalShade'; + document.body.appendChild(this.e_shade); + } + this.e_iframe = f_getElement('tcalIF') + if (b_ieFix && !this.e_iframe) { + this.e_iframe = document.createElement("IFRAME"); + this.e_iframe.style.filter = 'alpha(opacity=0)'; + this.e_iframe.id = 'tcalIF'; + this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif'; + document.body.appendChild(this.e_iframe); + } + + // hide all calendars + f_tcalHideAll(); + + // generate HTML and show calendar + this.e_icon = f_getElement(this.s_iconId); + if (!this.f_update()) + return; + + this.e_div.style.visibility = 'visible'; + this.e_shade.style.visibility = 'visible'; + if (this.e_iframe) + this.e_iframe.style.visibility = 'visible'; + + // change icon and status + this.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif'; + this.e_icon.title = 'Close Calendar'; + this.b_visible = true; +} + +function f_tcalHide (n_date) { + if (n_date) + this.e_input.value = this.f_generDate(new Date(n_date)); + + // no action if not visible + if (!this.b_visible) + return; + + // hide elements + if (this.e_iframe) + this.e_iframe.style.visibility = 'hidden'; + if (this.e_shade) + this.e_shade.style.visibility = 'hidden'; + this.e_div.style.visibility = 'hidden'; + + // change icon and status + this.e_icon = f_getElement(this.s_iconId); + this.e_icon.src = this.a_tpl.imgpath + 'cal.gif'; + this.e_icon.title = 'Open Calendar'; + this.b_visible = false; +} + +function f_tcalToggle () { + return this.b_visible ? this.f_hide() : this.f_show(); +} + +function f_tcalUpdate (d_date) { + + var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date()); + var d_selected = this.e_input.value == '' + ? (this.a_cfg.selected ? this.f_parseDate(this.a_cfg.selected) : d_today) + : this.f_parseDate(this.e_input.value); + + // figure out date to display + if (!d_date) + // selected by default + d_date = d_selected; + else if (typeof(d_date) == 'number') + // get from number + d_date = f_tcalResetTime(new Date(d_date)); + else if (typeof(d_date) == 'string') + // parse from string + this.f_parseDate(d_date); + + if (!d_date) return false; + + // first date to display + var d_firstday = new Date(d_date); + d_firstday.setDate(1); + d_firstday.setDate(1 - (7 + d_firstday.getDay() - this.a_tpl.weekstart) % 7); + + var a_class, s_html = '' + + (this.a_tpl.yearscroll ? '' : '') + + '' + + (this.a_tpl.yearscroll ? '' : '') + + '
' + + this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear() + + '
'; + + // print weekdays titles + for (var i = 0; i < 7; i++) + s_html += ''; + s_html += '' ; + + // print calendar table + var n_date, n_month, d_current = new Date(d_firstday); + while (d_current.getMonth() == d_date.getMonth() || + d_current.getMonth() == d_firstday.getMonth()) { + + // print row heder + s_html +=''; + for (var n_wday = 0; n_wday < 7; n_wday++) { + + a_class = []; + n_date = d_current.getDate(); + n_month = d_current.getMonth(); + + // other month + if (d_current.getMonth() != d_date.getMonth()) + a_class[a_class.length] = 'othermonth'; + // weekend + if (d_current.getDay() == 0 || d_current.getDay() == 6) + a_class[a_class.length] = 'weekend'; + // today + if (d_current.valueOf() == d_today.valueOf()) + a_class[a_class.length] = 'today'; + // selected + if (d_current.valueOf() == d_selected.valueOf()) + a_class[a_class.length] = 'selected'; + + s_html += '' + + d_current.setDate(++n_date); + while (d_current.getDate() != n_date && d_current.getMonth() == n_month) { + d_current.setHours(d_current.getHours + 1); + d_current = f_tcalResetTime(d_current); + } + } + // print row footer + s_html +=''; + } + s_html +='
' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '
' : '>') + n_date + '
'; + + // update HTML, positions and sizes + this.e_div.innerHTML = s_html; + + var n_width = this.e_div.offsetWidth; + var n_height = this.e_div.offsetHeight; + var n_top = f_getPosition (this.e_icon, 'Top') + this.e_icon.offsetHeight; + var n_left = f_getPosition (this.e_icon, 'Left') - n_width + this.e_icon.offsetWidth; + if (n_left < 0) n_left = 0; + + this.e_div.style.left = n_left + 'px'; + this.e_div.style.top = n_top + 'px'; + + this.e_shade.style.width = (n_width + 8) + 'px'; + this.e_shade.style.left = (n_left - 1) + 'px'; + this.e_shade.style.top = (n_top - 1) + 'px'; + this.e_shade.innerHTML = b_ieFix + ? '
' + : '
'; + + if (this.e_iframe) { + this.e_iframe.style.left = n_left + 'px'; + this.e_iframe.style.top = n_top + 'px'; + this.e_iframe.style.width = (n_width + 6) + 'px'; + this.e_iframe.style.height = (n_height + 6) +'px'; + } + return true; +} + +function f_getPosition (e_elemRef, s_coord) { + var n_pos = 0, n_offset, + e_elem = e_elemRef; + + while (e_elem) { + n_offset = e_elem["offset" + s_coord]; + n_pos += n_offset; + e_elem = e_elem.offsetParent; + } + // margin correction in some browsers + if (b_ieMac) + n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']); + else if (b_safari) + n_pos -= n_offset; + + e_elem = e_elemRef; + while (e_elem != document.body) { + n_offset = e_elem["scroll" + s_coord]; + if (n_offset && e_elem.style.overflow == 'scroll') + n_pos -= n_offset; + e_elem = e_elem.parentNode; + } + return n_pos; +} + +function f_tcalRelDate (d_date, d_diff, s_units) { + var s_units = (s_units == 'y' ? 'FullYear' : 'Month'); + var d_result = new Date(d_date); + d_result['set' + s_units](d_date['get' + s_units]() + d_diff); + if (d_result.getDate() != d_date.getDate()) + d_result.setDate(0); + return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' + d_result.valueOf() + ')"'; +} + +function f_tcalHideAll () { + for (var i = 0; i < window.A_TCALSIDX.length; i++) + window.A_TCALSIDX[i].f_hide(); +} + +function f_tcalResetTime (d_date) { + d_date.setHours(0); + d_date.setMinutes(0); + d_date.setSeconds(0); + d_date.setMilliseconds(0); + return d_date; +} + +f_getElement = document.all ? + function (s_id) { return document.all[s_id] } : + function (s_id) { return document.getElementById(s_id) }; + +if (document.addEventListener) + window.addEventListener('scroll', f_tcalHideAll, false); +if (window.attachEvent) + window.attachEvent('onscroll', f_tcalHideAll); + +// global variables +var s_userAgent = navigator.userAgent.toLowerCase(), + re_webkit = /WebKit\/(\d+)/i; +var b_mac = s_userAgent.indexOf('mac') != -1, + b_ie5 = s_userAgent.indexOf('msie 5') != -1, + b_ie6 = s_userAgent.indexOf('msie 6') != -1 && s_userAgent.indexOf('opera') == -1; +var b_ieFix = b_ie5 || b_ie6, + b_ieMac = b_mac && b_ie5, + b_safari = b_mac && re_webkit.exec(s_userAgent) && Number(RegExp.$1) < 500; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/call_report_export.php b/agc_2-X/trunk/LANG_www/vicidial_it/call_report_export.php index 3b032c1d..f4599238 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/call_report_export.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/call_report_export.php @@ -15,6 +15,8 @@ # 90721-1137 - Added rank and owner as vicidial_list fields # 91121-0253 - Added list name, list description and status name # 100119-1039 - Filtered comments for \n newlines +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -358,7 +360,7 @@ else if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} - $stmt="select campaign_id from vicidial_campaigns;"; + $stmt="select campaign_id from vicidial_campaigns order by campaign_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $campaigns_to_print = mysql_num_rows($rslt); @@ -373,7 +375,7 @@ else $i++; } - $stmt="select group_id from vicidial_inbound_groups;"; + $stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -388,7 +390,7 @@ else $i++; } - $stmt="select user_group from vicidial_user_groups;"; + $stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -403,7 +405,7 @@ else $i++; } - $stmt="select list_id from vicidial_lists;"; + $stmt="select list_id from vicidial_lists order by list_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $lists_to_print = mysql_num_rows($rslt); @@ -418,7 +420,7 @@ else $i++; } - $stmt="select status from vicidial_statuses;"; + $stmt="select status from vicidial_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $statuses_to_print = mysql_num_rows($rslt); @@ -433,7 +435,7 @@ else $i++; } - $stmt="select distinct status from vicidial_campaign_statuses;"; + $stmt="select distinct status from vicidial_campaign_statuses order by status;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $Cstatuses_to_print = mysql_num_rows($rslt); @@ -449,6 +451,8 @@ else echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "ADMINISTRATION: Export Calls Report"; @@ -477,15 +481,42 @@ else echo "<CENTER><BR>\n"; echo "<FONT SIZE=3 FACE=\"Arial,Helvetica\"><B>Export Calls Report</B></FONT><BR><BR>\n"; - echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; + echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<INPUT TYPE=HIDDEN NAME=run_export VALUE=\"1\">"; echo "<TABLE BORDER=0 CELLSPACING=8><TR><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=3>\n"; echo "<font class=\"select_bold\"><B>Date Range:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php + echo "<BR>to<BR>\n"; - echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; + echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + + ?> + <script language="JavaScript"> + var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' + }); + o_cal.a_tpl.yearscroll = false; + // o_cal.a_tpl.weekstart = 1; // Monday week start + </script> + <?php echo "</TD><TD ALIGN=LEFT VALIGN=TOP ROWSPAN=2>\n"; echo "<font class=\"select_bold\"><B>Campaigns:</B></font><BR><CENTER>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/fcstats.php b/agc_2-X/trunk/LANG_www/vicidial_it/fcstats.php index e5da03e7..a4b3c14e 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/fcstats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/fcstats.php @@ -1,7 +1,7 @@ <?php # fcstats.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -12,6 +12,8 @@ # 80328-1139 - adapted for basic fronter/closer stats # 90310-2132 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -37,13 +39,13 @@ $PHP_AUTH_PW = ereg_replace("[^0-9a-zA-Z]","",$PHP_AUTH_PW); if (strlen($shift)<2) {$shift='ALL';} - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 6 and view_reports='1';"; +if ($DB) {echo "|$stmt|\n";} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -57,7 +59,7 @@ $STARTtime = date("U"); if (!isset($group)) {$group = 'CL_TEST_L';} if (!isset($query_date)) {$query_date = $NOW_DATE;} -$stmt="select group_id from vicidial_inbound_groups;"; +$stmt="select group_id from vicidial_inbound_groups order by group_id;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $groups_to_print = mysql_num_rows($rslt); @@ -81,6 +83,9 @@ while ($i < $groups_to_print) --> </STYLE> +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <?php echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n"; echo "<TITLE>In-Group Fronter-Closer Stats Report\n"; @@ -91,8 +96,22 @@ echo "In-Group Fronter-Closer Stats Report
"; -echo "\n"; -echo "\n"; +echo "\n"; +echo ""; + +?> + +\n"; $o=0; while ($groups_to_print > $o) diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/cal.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/help.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/help.gif new file mode 100644 index 00000000..5575d7c8 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/help.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/next_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/next_mon.gif new file mode 100644 index 00000000..14c622f9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/next_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/next_year.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/next_year.gif new file mode 100644 index 00000000..b66f2888 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/next_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/no_cal.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/no_cal.gif new file mode 100644 index 00000000..adc58e2a Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/no_cal.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/pixel.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/pixel.gif new file mode 100644 index 00000000..46a2cf08 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/pixel.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/prev_mon.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/prev_mon.gif new file mode 100644 index 00000000..12ce7ff5 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/prev_mon.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/prev_year.gif b/agc_2-X/trunk/LANG_www/vicidial_it/images/prev_year.gif new file mode 100644 index 00000000..c726b0e4 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/prev_year.gif differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_bl.png b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_bl.png new file mode 100644 index 00000000..29bd5543 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_bl.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_bm.png b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_bm.png new file mode 100644 index 00000000..5c4e0af9 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_bm.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_br.png b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_br.png new file mode 100644 index 00000000..ce8a2fad Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_br.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_mr.png b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_mr.png new file mode 100644 index 00000000..4594bc4e Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_mr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_tr.png b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_tr.png new file mode 100644 index 00000000..2e598c95 Binary files /dev/null and b/agc_2-X/trunk/LANG_www/vicidial_it/images/shade_tr.png differ diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_report.php b/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_report.php index 261f7a9f..78443177 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_report.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_report.php @@ -1,7 +1,7 @@ LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # @@ -10,6 +10,8 @@ # 80707-0754 - Fixed groups bug, changed formatting # 90310-2059 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically +# 100216-0042 - Added popup date selector # require("dbconnect.php"); @@ -46,14 +48,12 @@ $stmt = "SELECT use_non_latin,webroot_writable,outbound_autodial_active FROM sys $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $SSoutbound_autodial_active = $row[2]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -68,7 +68,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -83,7 +83,7 @@ if (!isset($group)) {$group = '';} if (!isset($query_date)) {$query_date = $NOW_DATE;} if (!isset($end_date)) {$end_date = $NOW_DATE;} -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); @@ -135,6 +135,9 @@ while ($i < $user_groups_to_print) --> + + + UtenteOrologio Report @@ -190,14 +193,42 @@ if ($DB > 0) } echo "<CENTER>\n"; -echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET>\n"; +echo "<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_report>\n"; echo "<INPUT TYPE=HIDDEN NAME=DB VALUE=\"$DB\">"; echo "<TABLE Border=0 CELLSPACING=6><TR><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Date:</B></font><BR><CENTER>\n"; echo "<INPUT TYPE=TEXT NAME=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'query_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + echo "<BR>to<BR>\n"; -echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">\n"; +echo "<INPUT TYPE=TEXT NAME=end_date SIZE=10 MAXLENGTH=10 VALUE=\"$end_date\">"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + echo "</TD><TD ALIGN=LEFT VALIGN=TOP>\n"; echo "<font class=\"select_bold\"><B>Gruppi Utenti:</B></font><BR><CENTER>\n"; echo "<SELECT SIZE=5 NAME=user_group[] multiple>\n"; diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_status.php b/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_status.php index c633c320..c1be37e9 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_status.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/timeclock_status.php @@ -1,7 +1,7 @@ <?php # timeclock_status.php # -# Copyright (C) 2009 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2 # # CHANGES # @@ -9,6 +9,7 @@ # 80603-1500 - formatting changes # 90310-2103 - Added admin header # 90508-0644 - Changed to PHP long tags +# 100214-1421 - Sort menu alphabetically # header ("Content-type: text/html; charset=utf-8"); @@ -40,16 +41,13 @@ $stmt = "SELECT use_non_latin,webroot_writable,timeclock_end_of_day,outbound_aut $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $webroot_writable = $row[1]; $timeclock_end_of_day = $row[2]; $SSoutbound_autodial_active = $row[3]; - - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -70,27 +68,26 @@ else $EoDdate = date("Y-m-d H:i:s", $EoD); - $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; - if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} - $rslt=mysql_query($stmt, $link); - $row=mysql_fetch_row($rslt); - $auth=$row[0]; +$stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and view_reports='1';"; +if ($non_latin > 0) { $rslt=mysql_query("SET NAMES 'UTF8'");} +$rslt=mysql_query($stmt, $link); +$row=mysql_fetch_row($rslt); +$auth=$row[0]; $fp = fopen ("./project_auth_entries.txt", "a"); $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Utentename/Password non validi: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } - else +else { - if($auth>0) { $stmt="SELECT full_name from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; @@ -115,7 +112,7 @@ $browser = getenv("HTTP_USER_AGENT"); } -$stmt="select user_group from vicidial_user_groups;"; +$stmt="select user_group from vicidial_user_groups order by user_group;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $user_groups_to_print = mysql_num_rows($rslt); diff --git a/agc_2-X/trunk/LANG_www/vicidial_it/user_stats.php b/agc_2-X/trunk/LANG_www/vicidial_it/user_stats.php index e23daa53..c5b9a825 100644 --- a/agc_2-X/trunk/LANG_www/vicidial_it/user_stats.php +++ b/agc_2-X/trunk/LANG_www/vicidial_it/user_stats.php @@ -21,6 +21,7 @@ # 90524-2009 - Changed time display to use functions.php # 91130-2037 - Added user closer log manager flag display # 100203-1008 - Added agent activity log section +# 100216-0042 - Added popup date selector # header ("Content-type: text/html; charset=utf-8"); @@ -122,6 +123,10 @@ else ?> <html> <head> + +<script language="JavaScript" src="calendar_db.js"></script> +<link rel="stylesheet" href="calendar.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <title>ADMINISTRATION: Statistiche utente <?php @@ -159,14 +164,42 @@ require("admin_header.php"); echo "<TR BGCOLOR=\"#F0F5FE\"><TD ALIGN=LEFT COLSPAN=2><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B>   \n"; -echo "<form action=$PHP_SELF method=POST>\n"; +echo "<form action=$PHP_SELF method=POST name=vicidial_report id=vicidial_report>\n"; echo "<input type=hidden name=DB value=\"$DB\">\n"; -echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10> to \n"; -echo "<input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>  \n"; +echo "<input type=text name=begin_date value=\"$begin_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'begin_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + +echo " to <input type=text name=end_date value=\"$end_date\" size=10 maxsize=10>"; + +?> +<script language="JavaScript"> +var o_cal = new tcal ({ + // form name + 'formname': 'vicidial_report', + // input name + 'controlname': 'end_date' +}); +o_cal.a_tpl.yearscroll = false; +// o_cal.a_tpl.weekstart = 1; // Lunedi week start +</script> +<?php + if (strlen($user)>1) - {echo "<input type=hidden name=user value=\"$user\">\n";} + {echo "  <input type=hidden name=user value=\"$user\">\n";} else - {echo "<input type=text name=user size=12 maxlength=10>\n";} + {echo "  <input type=text name=user size=12 maxlength=10>\n";} echo "<input type=submit name=submit value=submit>\n"; diff --git a/agc_2-X/trunk/UPGRADE b/agc_2-X/trunk/UPGRADE index 95f48512..6ac622c2 100644 --- a/agc_2-X/trunk/UPGRADE +++ b/agc_2-X/trunk/UPGRADE @@ -405,6 +405,8 @@ OTHER CHANGES: 88. Added Traditional Chinese (zt_tw) language translation of the agent screen which can be found in the LANG_www/agc_tw directory +89. Added popup calendars to many of the reports for easier date selection + diff --git a/agc_2-X/trunk/bin/AST_VDsales_export.pl b/agc_2-X/trunk/bin/AST_VDsales_export.pl index 22d1f9be..68e91d4d 100644 --- a/agc_2-X/trunk/bin/AST_VDsales_export.pl +++ b/agc_2-X/trunk/bin/AST_VDsales_export.pl @@ -547,7 +547,7 @@ else ########### CURRENT DAY SALES GATHERING outbound-only: vicidial_log ###### ########################################################################### $stmtA = "select vicidial_log.user,first_name,last_name,address1,address2,city,state,postal_code,vicidial_list.phone_number,vicidial_list.email,security_phrase,vicidial_list.comments,call_date,vicidial_list.lead_id,vicidial_users.full_name,vicidial_log.status,vicidial_list.vendor_lead_code,vicidial_list.source_id,vicidial_log.list_id,title,address3,last_local_call_time,uniqueid,length_in_sec,vicidial_list.list_id,vicidial_list.list_id,UNIX_TIMESTAMP(vicidial_log.call_date),vicidial_campaigns.campaign_name,vicidial_campaigns.campaign_cid from vicidial_list,vicidial_log,vicidial_users,vicidial_campaigns where $campaignSQL $sale_statusesSQL and call_date > '$shipdate 00:00:01' and call_date < '$shipdate 23:59:59' and vicidial_log.lead_id=vicidial_list.lead_id and vicidial_users.user=vicidial_log.user and vicidial_log.campaign_id=vicidial_campaigns.campaign_id order by call_date;"; -if ($output_format =~ /^tab-QMcustomUSA$/) +if ($output_format =~ /^tab-QMcustomUSA$|^tab-SCcustomUSA$/) { $stmtA = "select vicidial_log.user,8,8,8,8,8,8,8,vicidial_log.phone_number,8,8,8,call_date,vicidial_log.lead_id,vicidial_users.full_name,vicidial_log.status,8,8,vicidial_log.list_id,8,8,call_date,uniqueid,length_in_sec,vicidial_log.list_id,vicidial_log.list_id,UNIX_TIMESTAMP(vicidial_log.call_date),vicidial_campaigns.campaign_name,vicidial_campaigns.campaign_cid from vicidial_log,vicidial_users,vicidial_campaigns where $campaignSQL $sale_statusesSQL and call_date > '$shipdate 00:00:01' and call_date < '$shipdate 23:59:59' and vicidial_users.user=vicidial_log.user and vicidial_log.campaign_id=vicidial_campaigns.campaign_id order by call_date;"; } @@ -607,7 +607,7 @@ if (length($with_inboundSQL)>3) ########### CURRENT DAY SALES GATHERING inbound-only: vicidial_closer_log ###### ########################################################################### $stmtA = "select vicidial_closer_log.user,first_name,last_name,address1,address2,city,state,postal_code,vicidial_list.phone_number,vicidial_list.email,security_phrase,vicidial_list.comments,call_date,vicidial_list.lead_id,vicidial_users.full_name,vicidial_closer_log.status,vicidial_list.vendor_lead_code,vicidial_list.source_id,vicidial_closer_log.list_id,campaign_id,title,address3,last_local_call_time,xfercallid,closecallid,uniqueid,length_in_sec,queue_seconds,vicidial_list.list_id,vicidial_list.list_id,UNIX_TIMESTAMP(vicidial_closer_log.call_date),agent_alert_delay from vicidial_list,vicidial_closer_log,vicidial_users,vicidial_inbound_groups where $with_inboundSQL $close_statusesSQL and call_date > '$shipdate 00:00:01' and call_date < '$shipdate 23:59:59' and vicidial_closer_log.lead_id=vicidial_list.lead_id and vicidial_users.user=vicidial_closer_log.user and vicidial_inbound_groups.group_id=vicidial_closer_log.campaign_id order by call_date;"; - if ($output_format =~ /^tab-QMcustomUSA$/) + if ($output_format =~ /^tab-QMcustomUSA$|^tab-SCcustomUSA$/) { $stmtA = "select vicidial_closer_log.user,8,8,8,8,8,8,8,vicidial_closer_log.phone_number,8,8,8,call_date,vicidial_closer_log.lead_id,vicidial_users.full_name,vicidial_closer_log.status,8,8,vicidial_closer_log.list_id,campaign_id,8,8,call_date,xfercallid,closecallid,uniqueid,length_in_sec,queue_seconds,vicidial_closer_log.list_id,vicidial_closer_log.list_id,UNIX_TIMESTAMP(vicidial_closer_log.call_date),agent_alert_delay from vicidial_closer_log,vicidial_users,vicidial_inbound_groups where $with_inboundSQL $close_statusesSQL and call_date > '$shipdate 00:00:01' and call_date < '$shipdate 23:59:59' and vicidial_users.user=vicidial_closer_log.user and vicidial_inbound_groups.group_id=vicidial_closer_log.campaign_id order by call_date;"; } @@ -749,7 +749,7 @@ if ($ftp_transfer > 0) $ftp->quit; } -if ( ( ($DB) || ($totals_only > 0) ) && ($output_format =~ /^tab-QMcustomUSA$/) ) +if ( ( ($DB) || ($totals_only > 0) ) && ($output_format =~ /^tab-QMcustomUSA$|^tab-SCcustomUSA$/) ) { if ($OUTtalk > 0) {$OUTtalkmin = ($OUTtalk / 60);} if ($INtalk > 0) {$INtalkmin = ($INtalk / 60);} @@ -1183,6 +1183,8 @@ sub select_format_loop # 11- application name, 4 characters # 12- order number (just a dash for now '-') # 13- call recording filenames + # 14- outbound/inbound + # 15- domestic or international $uniqueid =~ s/\.00000//gi; $uniqueid =~ s/\.0000//gi; @@ -1215,6 +1217,109 @@ sub select_format_loop } + if ($output_format =~ /^tab-SCcustomUSA$/) + { + # 1245328655100219 2009-06-18 05:37:35 937 9375551212 8185551223 8106 35 255 0 DSAW - q8187-20090618-053939-1245328655.100219.WAV|q8186-20090618-053735-1245328655.100219.WAV + + # 1- Call id: uniqueid padded + # 2- Date: call date in EST + # 3- Time: call time in EST. + # 4- Area Code: area code of the caller + # 5- CID: full 10-digit phone number of the caller + # 6- DID: inbound number that was dialed by the caller + # 7- Agent id: Who answered the call(user), leave blank is call was dropped / abondoned. + # 8- Hold: time in seconds for how long the call was holding before getting answered by an agent + # 9- Talk: time in seconds for how long the agent was talking with the customer + # 10- ACW: time in seconds for how long the agent spent wrapping up the call before answering the next call. + # 11- Campaign: Name of Campaign(application code, 4 characters) + # 12- Type of Call: status(disposition) + # 13- Work Order #: i.e. Cxxxxxxxxxxx + # 14- Call_Recording_Filenames: file name for recorded file name for the call.. Example: 1001.wav + # 15- Inbound/Outbound: Inbound or Outbound call designation + # 16- Appointment Set Date and Time: Time appt was set for in EST + # 17- Note Time Stamp: Time Stamp of Note + # 18- Note Text: Actual Note taken by agent + + # 1- unique number (digits only) + # 2- date + # 3- time + # 4- CID arecode + # 5- CID full + # 6- DID + # 7- user + # 8- hold time (seconds) + # 9- talk time (seconds) + # 10- after call work time (seconds) + # 11- application name, 4 characters + # 12- order number (just a dash for now '-') + # 13- call recording filenames + # 14- outbound/inbound + # 15- domestic or international + + $stmtB = "select call_date,order_id,appointment_date,appointment_time,call_notes from vicidial_call_notes where lead_id='$lead_id' and uniqueid='$uniqueid' and call_date > '$shipdate 00:00:01' and call_date < '$shipdate 23:59:59' order by call_date desc limit 1;"; + $sthB = $dbhB->prepare($stmtB) or die "preparing: ",$dbhB->errstr; + $sthB->execute or die "executing: $stmtB ", $dbhB->errstr; + $sthBrows=$sthB->rows; + $rec_countB=0; + while ($sthBrows > $rec_countB) + { + @aryB = $sthB->fetchrow_array; + $appointment_call_date = $aryB[0]; + $order_id = $aryB[1]; + $appointment_date = $aryB[2]; + $appointment_time = $aryB[3]; + $call_notes = $aryB[4]; + $rec_countB++; + } + $sthB->finish(); + + $dispo_time = 0; + $stmtB = "select dispo_sec from vicidial_agent_log where lead_id='$lead_id' and user='$user' and event_time > '$shipdate 00:00:01' and event_time < '$shipdate 23:59:59' order by event_time desc limit 1;"; + $sthB = $dbhB->prepare($stmtB) or die "preparing: ",$dbhB->errstr; + $sthB->execute or die "executing: $stmtB ", $dbhB->errstr; + $sthBrows=$sthB->rows; + $rec_countB=0; + while ($sthBrows > $rec_countB) + { + @aryB = $sthB->fetchrow_array; + $dispo_time = $aryB[0]; + $rec_countB++; + } + $sthB->finish(); + + $uniqueid =~ s/\.00000//gi; + $uniqueid =~ s/\.0000//gi; + $uniqueid =~ s/\.000//gi; + $uniqueid =~ s/\.00//gi; + $uniqueid =~ s/\.0//gi; + $uniqueid =~ s/\D//gi; + @call_date_array = split(/ /,$call_date); + while (length($phone_number)>10) {$phone_number =~ s/^.//gi;} + $phone_areacode = substr($phone_number, 0, 3); + if (length($closer) < 1) {$closer = $user;} + if ($closer =~ /VDCL|VDAD/) {$closer='-';} + $application = substr($did_name, 0, 4); + $queue_seconds = int($queue_seconds + .5); + $talk_seconds = ( ($length_in_sec - $queue_seconds) - $agent_alert_delay); + if ($talk_seconds < 0) {$talk_seconds=0;} + $call_notes =~ s/\r|\n|\t//gi; + if ($outbound =~ /Y/) {$in_out = "Outbound";} + else {$in_out = "Inbound";} + + if ($uniqueidLIST !~ /\|$uniqueid\|/) + { + $str = "103$uniqueid\t$call_date_array[0]\t$call_date_array[1]\t$phone_areacode\t$phone_number\t$did_pattern\t$closer\t$queue_seconds\t$talk_seconds\t$dispo_time\t$application\t$status\t$order_id\t$ivr_filename\t$in_out\t$appointment_date $appointment_time\t$appointment_call_date\t$call_notes\t\n"; + + $uniqueidLIST .= "$uniqueid|"; + if ($DBX > 0) {print "UNIQUE: -----$uniqueidLIST-----$uniqueid";} + # if ($DBX > 0) {print "$uniqueid|$talk_seconds|$outbound|$INcalls|$OUTcalls\n";} + + if ($outbound =~ /Y/) {$OUTtalk = ($OUTtalk + $talk_seconds); $OUTcalls++;} + else {$INtalk = ($INtalk + $talk_seconds); $INcalls++;} + } + + } + $Ealert .= "$str"; print out "$str"; diff --git a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql index 43661bc3..cb404bd2 100644 --- a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql +++ b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql @@ -1203,7 +1203,9 @@ db_schema_update_date DATETIME, enable_second_webform ENUM('0','1') default '1', default_webphone ENUM('1','0') default '0', default_external_server_ip ENUM('1','0') default '0', -webphone_url VARCHAR(255) default '' +webphone_url VARCHAR(255) default '', +static_agent_url VARCHAR(255) default '', +default_phone_code VARCHAR(8) default '1' ); CREATE TABLE vicidial_campaigns_list_mix ( @@ -1915,6 +1917,7 @@ call_notes TEXT ); ALTER TABLE vicidial_call_notes AUTO_INCREMENT = 100; +CREATE INDEX lead_id on vicidial_call_notes (lead_id); ALTER TABLE vicidial_campaign_server_stats ENGINE=HEAP; @@ -2053,7 +2056,7 @@ ALTER TABLE vicidial_agent_log_archive MODIFY agent_log_id INT(9) UNSIGNED NOT N CREATE TABLE vicidial_carrier_log_archive LIKE vicidial_carrier_log; -UPDATE system_settings SET db_schema_version='1199',db_schema_update_date=NOW(); +UPDATE system_settings SET db_schema_version='1200',db_schema_update_date=NOW(); GRANT RELOAD ON *.* TO cron@'%'; GRANT RELOAD ON *.* TO cron@localhost; diff --git a/agc_2-X/trunk/extras/upgrade_2.4.sql b/agc_2-X/trunk/extras/upgrade_2.4.sql index ce892c3e..5c4a249d 100644 --- a/agc_2-X/trunk/extras/upgrade_2.4.sql +++ b/agc_2-X/trunk/extras/upgrade_2.4.sql @@ -49,3 +49,10 @@ call_notes TEXT ALTER TABLE vicidial_call_notes AUTO_INCREMENT = 100; UPDATE system_settings SET db_schema_version='1199',db_schema_update_date=NOW(); + +CREATE INDEX lead_id on vicidial_call_notes (lead_id); + +ALTER TABLE system_settings ADD static_agent_url VARCHAR(255) default ''; +ALTER TABLE system_settings ADD default_phone_code VARCHAR(8) default '1'; + +UPDATE system_settings SET db_schema_version='1200',db_schema_update_date=NOW();