/*
*************************************************************
* *
* file articolo.php versione ASR aggiornato al 01/11/2013 *
* *
* *
* *
*************************************************************
*/
header("Content-type: application/voicexml+xml");
session_start();
require_once('/var/www/thewoice/woice/protected/config/system.php');
require_once(SYS_MODULES_INT_DIR.'polls/class/class.answer.php');
require_once(SYS_MODULES_INT_DIR.'office/class/class.office.php');
include(SYS_ROOT_INT_DIR_VXN.'inc/inc_functions.php');
include(SYS_ROOT_INT_DIR_VXN.'inc/inc_open_db.php');
include('asr_path.php');
require_once(SYS_GLOBAL_CLASS_DIR.'class.userareariservata.php');
global $conn;
$ln=$_REQUEST['ln'];
if(!isset($_REQUEST['ln'])) $ln=1;
$f = fopen("/tmp/articologotoitem.txt", "w"); fwrite($f, print_r($_REQUEST,true)); fwrite($f, print_r($_SESSION,true)); fclose($f);
switch($ln)
{
case 1:
require(SYS_LANG_DIR.'_IT.php');
include(SYS_ROOT_INT_DIR_VXN.'/inc/italiano.inc');
break;
case 2:
require(SYS_LANG_DIR.'_EN.php');
include(SYS_ROOT_INT_DIR_VXN.'/inc/inglese.inc');
break;
case 3:
require(SYS_LANG_DIR.'_DE.php');
include(SYS_ROOT_INT_DIR_VXN.'/inc/tedesco.inc');
break;
case 4:
require(SYS_LANG_DIR.'_ES.php');
include(SYS_ROOT_INT_DIR_VXN.'/inc/spagnolo.inc');
break;
case 5:
require(SYS_LANG_DIR.'_FR.php');
include(SYS_ROOT_INT_DIR_VXN.'/inc/francese.inc');
break;
}
function is_monitored($id)
{
global $conn;
$sql = "SELECT * FROM woice_monitor_item WHERE id_item = $id ;";
$res = mysqli_query($conn, $sql)or die(mysqli_error($conn).$sql);
$n = mysqli_num_rows($res);
return $n!=0;
}
function get_azione_item($id){
//questa funzione restituisce una azione legata all item che deve essere espletata prima della lettura dei figli o delle scelte associate all item
global $conn;
$sql = "SELECT * FROM articolo_voice_azioni WHERE id_item = $id ;";
$res = mysqli_query($conn, $sql)or die(mysqli_error($conn).$sql);
$n = mysqli_num_rows($res);
if($n!=0){
$r = mysqli_fetch_object($res);
return $r;
}
else{
return false;
}
}
$home = 'sites/'.basename(dirname($_SERVER['SCRIPT_FILENAME']))."/";
$settings = new customerSettings();
$settings->selectByIndex($home);
$id_cliente = $settings->get_id_woice_customer();
$codice_out = $settings->get_codice_out()."t";
$root=root($id_cliente);
if(isset($_REQUEST['azione_gotoitem']))
{
$risposta = new answer($_LANG);
$risposta->select($_REQUEST['out_val_0']);
$gotoitem = $risposta->get_target_transf();
}
$articolo = (isset($_REQUEST['articolo']) ? $_REQUEST['articolo'] : (isset($_REQUEST['azione_gotoitem']) ? $gotoitem : $_REQUEST['figli']));
//$articolo = (isset($_REQUEST['articolo']) ? $_REQUEST['articolo'] : $_REQUEST['figli']);
$n_allegati= count(get_allegati($articolo));
$n_allegati_send_sms = get_allegati_sendsms($articolo);
$azione = get_azione_item($articolo);
if(isset($_SESSION['id_utente']))
{//utente gia loggato
$utente = new userareariservata($_LANG);
$utente->set_customer($id_cliente);
$utente = $utente->select($_SESSION['id_utente']);
}
$now = date('H:i:s', strtotime('now'));
$query_figli=" SELECT a.id, t.titolo, t.titolo_letto,t.ck_audio_testo,t.ck_audio_titolo, t.testo_letto, a.da, a.a, a.ck_send_sms FROM `articolo_voice` AS a
LEFT JOIN `articolo_voice_multilanguage` AS t ON a.id = t.id_articolo_voice
JOIN `nodo` AS n ON a.id = n.figlio
WHERE n.padre =$articolo
AND a.id_sezione =$id_cliente
AND a.id_stato = 1
AND a.ck_benvenuto = '0'
AND a.id_tipo_articolo<>2
AND t.id_lingua =$ln
AND t.pubblicato=1
ORDER BY a.ordine
LIMIT 0 , 30";
/*AND ((ora_inizio < '$now' AND ora_fine > '$now') OR (ora_inizio = '00:00:00' AND ora_fine = '00:00:00'))*/
$query=" SELECT a.id ,t.titolo,t.titolo_letto,t.testo, t.testo_letto ,t.ck_audio_testo, a.id_items, a.id_tipo_articolo, a.ck_protected, a.ck_send_sms, t.id_oggetto
FROM `articolo_voice` as a LEFT JOIN `articolo_voice_multilanguage` AS t ON a.id = t.id_articolo_voice
WHERE a.id =$articolo AND t.id_lingua=$ln ";
$result = mysqli_query($conn, $query)or die(mysqli_error($conn).$query);
$figli = mysqli_query($conn, $query_figli)or die(mysqli_error($conn));
$office = new office();
$noOperator = true;
foreach($figli as $figlio) {
if($office->is_office($figlio['id'])) {
$noOperator = false;
}
}
$query_padre = "SELECT * FROM nodo WHERE figlio='$articolo' ";
$padre = mysqli_query($conn, $query_padre);
$p = mysqli_fetch_assoc($padre);
$id_padre = $p['padre'];
$num = mysqli_num_rows($result);
$num_figli = mysqli_num_rows($figli);
$res = mysqli_fetch_assoc($result);
$tipo_articolo = $res['id_tipo_articolo'];//1-Woice 2-Trasf
$item = $res['id_items'];//controllo se è un articolo con item(coiè se è un link)
$testo = trim_testo($res['testo_letto']);
$testo = str_replace("Woice","Vois",$testo);
$titolo = trim_testo($res['titolo_letto']);
$titolo = strip_tags(htmlspecialchars($res['titolo_letto']));
$_SESSION['from'] = ($root==$id_padre ? "root" : $id_padre );
$_SESSION['articolo'] = $articolo;//memorizza l'id dell articolo link che contiene l'evento
$ck_send_sms = $res['ck_send_sms'];
$query = "SELECT p.id, ml.label_inbound, ml.word_inbound
FROM woice_poll p LEFT JOIN woice_poll_ML as ml ON p.id = ml.id_woice_poll
WHERE ck_visible = 1 AND p.id_woice_customers= $id_cliente";
$resV = mysqli_query($conn, $query) or die(mysqli_error($conn).$query);
$numV = mysqli_num_rows($resV);
if( $numV )
$rV = mysqli_fetch_array($resV);
//le righe sotto inseriscono un log che specifica se c'è l utente e quale articolo e stato aperto, è da aggiungere il tipo di articolo e il padre
$data=date("Y-m-d");
$time=date("H:i:s");
$query_in_log = "INSERT INTO log SET event='ITEM',connectionid='".$_SESSION['idchiamata']."',value=".$articolo.",".(isset($_SESSION['id_utente']) ? "user=".$_SESSION['id_utente']."," : "")."data='".$data."',time='".$time."',item=".$item.",from_id='".$_SESSION['from']."',item_value=".$res['id_oggetto'];
$result_mess = mysqli_query($conn, $query_in_log)or die("Error in saving log".mysqli_error($conn)."
".$query_in_log) ;
//_____________________
print('
');
echo '';
?>
echo '
';
echo ' ';
break;
case 3:
$id_evento=$res['id_oggetto'];
echo 'Attendi ancora in linea, per favore
';
break;
case 5:
$_SESSION['from'] = ($root==$id_padre ? "root" : $id_padre );
echo '
';
break;
case 6:
$_SESSION['from'] = ($root==$id_padre ? "root" : $id_padre );
echo '
';
break;
default:
if($res['ck_audio_testo']==1 && file_exists('audio_record/testo_'.$articolo.'_'.$ln.'.wav'))
{
echo '
';
}
else{
echo ''.replace_tag($testo,$utente,$ln,$id_cliente).''.
(isset($n_allegati)&&$n_allegati!=0 && isset($_SESSION['id_utente'])
? ''
: ($ck_send_sms > 0
? ''
: ($num_figli==0 ? '' : ' ')
)
).
(!$azione ? "" : '');
echo '';
}
break;
}
if($item == 5)//ITEM TRASFERIMENTO
{
if( controllo_trasf_articolo( $articolo ) ) {
$attivo = true;
}
if($attivo)
{
echo'';
}
else
{
echo'';
}
}
echo ' ';
echo ' ';
$i=1;
mysqli_data_seek($figli,0);
$obj_figli = $figli;
$home = ($settings->get_value_option(2) ? true : false);
$ricerca = ($settings->get_value_option(1) ? true : false);
$label_inbound = ($numV ? $rV[1] : '');
$word_inbound = ($numV ? $rV[2] : '');
$customer_service = ($numV ? true : false );
if($num_figli)
{
$indietro = true; //il value per l'item indietro = 26;
if($num_figli < 9)
{
$val_indietro = $num_figli +1;
$item_dtmf= "- $val_indietroout=\"'26'\"
";
}
mysqli_data_seek($obj_figli, 0);
$j=1;
while($ar_figli=mysqli_fetch_assoc($obj_figli))
{
if(tempo($ar_figli['da'],$ar_figli['a']) && ora_validita($ar_figli['id']))
{
$id=$ar_figli['id'];
$item_figli .= "- ".$j."out=\"'".$id."'\"
";
$j++;
}
}
crea_gramm('articolo2_voice', $obj_figli, 'articolo_gramm', 'voice', $home, $ricerca, $ln,0, $customer_service,$label_inbound, $word_inbound,get_mess_trasf($id_cliente,$ln), $id_cliente, $indietro);
//FORM FIGLI
while ($figlio=mysqli_fetch_assoc($figli))
{
if(tempo($figlio['da'],$figlio['a']) && ora_validita($figlio['id']))
{
echo '
';
echo '
';
$i++;
}
}
//FINE FORM FIGLI
//FORM RICERCA
if($ricerca)
{
echo '';
echo ' ';
}
//FORM HOME
if($home)
{
echo '';
echo ' ';
}
//FORM NOOPERATOR
if($noOperator)
{
echo '';
echo ' ';
}
//FORM NUMV
if($numV)
{
echo '';
echo ' ';
}
//FORM INDIETRO
echo '';
echo ' ';
}
else
{
echo '';
}
echo ' ';
if(is_object($azione)){
echo ' ';
}
echo "
";
echo '';
/*
Esse emme esse inviato con successo
Mi dispiace si verificato un errore nell'invio dell'esse emme esse
*/
?>