function futuro($id_scheda, $id_futuro, $caratteristica, $obj)
{
// print("
id_scheda: $id_scheda, id_futuro: $id_futuro, caratteristica: $caratteristica, obj: $obj
");
$query_scheda = "SELECT * FROM `scheda` WHERE `ID` = '$id_scheda'";
$risultato_scheda = mysql_query($query_scheda);
$trovato_scheda = mysql_num_rows($risultato_scheda);
if ($trovato_scheda > 0)
{
$riga_scheda = mysql_fetch_array($risultato_scheda);
$id_pre = $riga_scheda[cod_scheda];
$obj_scheda = $riga_scheda[cod_obj];
$risorse = $riga_scheda[cod_risorse];
$livello = $riga_scheda[livello];
$query_obj = "SELECT * FROM `obj` WHERE `ID` = '$obj_scheda'";
$risultato_obj = mysql_query($query_obj);
$riga_obj = mysql_fetch_array($risultato_obj);
$caratteristica_scheda = $riga_obj[caratteristiche];
// print("caratteristica_scheda: $caratteristica_scheda, risorse: $risorse, id_pre: $id_pre, livello: $livello
");
if ($id_pre == '0')
{
if ($risorse == '0')
{
if ($caratteristica_scheda <> $caratteristica)
{
$query_risorse = "SELECT * FROM `risorse` WHERE `caratteristiche` = '$caratteristica' AND `vortal` = 'si'";
$risultato_risorse = mysql_query($query_risorse);
$riga_risorse = mysql_fetch_array($risultato_risorse);
$risorse = $riga_risorse['ID'];
$query_risorsa_scheda = "SELECT * FROM `risorse` WHERE `caratteristiche` = '$caratteristica_scheda' AND `vortal` = 'si'";
$risultato_risorsa_scheda = mysql_query($query_risorsa_scheda);
$riga_risorsa_scheda = mysql_fetch_array($risultato_risorsa_scheda);
$risorsa_scheda = $riga_risorsa_scheda['ID'];
$query_scheda_padre = "SELECT * FROM `scheda` WHERE `cod_obj` = '$obj_scheda' AND `cod_risorse` = '$risorsa_scheda'";
$risultato_scheda_padre = mysql_query($query_scheda_padre);
$riga_scheda_padre = mysql_fetch_array($risultato_scheda_padre);
$id_scheda_padre = $riga_scheda_padre[ID];
// print("risorsa_scheda: $risorsa_scheda, id_scheda_padre: $id_scheda_padre
");
if ($id_futuro == "")
{
$id_futuro = $obj."#".$risorse."#".$id_scheda_padre."#".$id_scheda;
}
else
{
$id_futuro = $obj."#".$risorse."#".$id_scheda_padre."#".$id_scheda."#".$id_futuro;
}
}
else
{
$query_risorse = "SELECT * FROM `risorse` WHERE `caratteristiche` = '$caratteristica' AND `schede` = 'si'";
$risultato_risorse = mysql_query($query_risorse);
$riga_risorse = mysql_fetch_array($risultato_risorse);
$risorse = $riga_risorse['ID'];
if ($id_futuro == "")
{
$id_futuro = $obj."#".$risorse."#".$id_scheda;
}
else
{
$id_futuro = $obj."#".$risorse."#".$id_scheda."#".$id_futuro;
}
}
}
else
{
if ($caratteristica_scheda <> $caratteristica)
{
$query_risorse = "SELECT * FROM `risorse` WHERE `caratteristiche` = '$caratteristica' AND `vortal` = 'si'";
$risultato_risorse = mysql_query($query_risorse);
$riga_risorse = mysql_fetch_array($risultato_risorse);
$risorse = $riga_risorse['ID'];
if ($id_futuro == "")
{
$id_futuro = $obj."#".$risorse."#".$id_scheda;
}
else
{
$id_futuro = $obj."#".$risorse."#".$id_scheda."#".$id_futuro;
}
}
else
{
if ($id_futuro == "")
{
$id_futuro = $obj."#".$risorse;
}
else
{
$id_futuro = $obj."#".$risorse."#".$id_futuro;
}
}
}
}
else
{
if ($id_futuro == "")
{
$id_futuro = $id_scheda;
$id_futuro = futuro($id_pre, $id_futuro, $caratteristica, $obj);
}
else
{
$id_futuro = $id_scheda."#".$id_futuro;
$id_futuro = futuro($id_pre, $id_futuro, $caratteristica, $obj);
}
}
}
return($id_futuro);
}
function visualizza_rientri ($testo)
{
$testo = str_replace("…", "...", $testo);
$testo = str_replace("–", "'", $testo);
$testo = str_replace("‘", "'", $testo);
$testo = str_replace("“", "'", $testo);
$testo = str_replace("”", "'", $testo);
$testo = str_replace("’", "'", $testo);
$separate = explode( "\r",$testo);
$riunite = implode("
",$separate);
return($riunite);
}
function segmenta ($pila)
{
$separate = explode("#",$pila);
return($separate);
}
function dividi ($pila)
{
$separate = explode(".",$pila);
return($separate);
}
function sconponi ($pila)
{
$separate = explode("@",$pila);
return($separate);
}
function tutti ($id,$start)
{
$ultimo = count($id) - 1;
$id_separati = explode("#",$id_tutta);
$id_tutti = $id[$start];
for ($num = ($start+1); $num <= $ultimo ; $num++)
{
$id_tutti = $id_tutti."#".$id[$num];
}
return($id_tutti);
}
function scheda($cod_scheda, $livello, $id_tutti, $id_futuro, $risorsa)
{
$sub = "";
$selezionati = segmenta ($id_tutti);
$ultimo = count($selezionati)-1;
$query_scheda = "SELECT * FROM `scheda` WHERE `cod_scheda` = '$cod_scheda' AND `cod_risorse` = '$risorsa' ORDER BY `titolo`";
$risultato_scheda = mysql_query($query_scheda);
$trovato_scheda = mysql_num_rows($risultato_scheda);
$id_futuro = $id_futuro."#".$selezionati[$livello];
$livello = $livello + 1;
if ($trovato_scheda > 0)
{
while ($riga_scheda = mysql_fetch_array($risultato_scheda))
{
if ($selezionati[$livello] == $riga_scheda['ID'])
{
$trovato_re = scheda($riga_scheda['ID'], $livello, $id_tutti, $id_futuro, $risorsa);
if ($selezionati[$ultimo] == $riga_scheda['ID'])
{
$sub .= "$riga_scheda[ID].$livello.0@";
if ($trovato_re != "nessuno")
{
$sub .= $trovato_re;
}
}
else
{
$id_out = $id_futuro."#".$riga_scheda[ID];
$sub .= "$riga_scheda[ID].$livello.$id_out@";
if ($trovato_re != "nessuno")
{
$sub .= $trovato_re;
}
}
}
else
{
$id_out = $id_futuro."#".$riga_scheda[ID];
$sub .= "$riga_scheda[ID].$livello.$id_out@";
}
}
return($sub);
}
else
{
return("nessuno");
}
}
function hyper($testo, $caratteristica, $obj, $id_scheda, $titolo_scheda)
{
// print("caratteristica: $caratteristica, obj: $obj, id_scheda: $id_scheda, titolo_scheda: $titolo_scheda");
$testo = str_replace("…", "...", $testo);
$testo = str_replace("–", "'", $testo);
$testo = str_replace("‘", "'", $testo);
$testo = str_replace("“", "'", $testo);
$testo = str_replace("”", "'", $testo);
$testo = str_replace("’", "'", $testo);
$titolo = str_replace("'", "\'", $titolo_scheda);
$testo_confronto = strtolower($testo);
$query = "SELECT * FROM `scheda` WHERE `ID` <> '$id_scheda' AND `titolo` <> '$titolo' ORDER BY `len` DESC";
$risultato = mysql_query($query);
while ($riga = mysql_fetch_array($risultato))
{
$titolo = " ".$riga[titolo]." ";
$titolo_confronto = " ".strtolower($riga[titolo])." ";
if (strstr($testo_confronto, $titolo_confronto))
{
$inserto = " #$riga[ID]# ";
$testo = str_replace($titolo, $inserto, $testo);
$testo_confronto = str_replace($titolo_confronto, $inserto, $testo_confronto);
}
$titolo = " ".$riga[titolo].".";
$titolo_confronto = " ".strtolower($riga[titolo]).".";
if (strstr($testo_confronto, $titolo_confronto))
{
$inserto = " #$riga[ID]#.";
$testo = str_replace($titolo, $inserto, $testo);
$testo_confronto = str_replace($titolo_confronto, $inserto, $testo_confronto);
}
$titolo = " ".$riga[titolo].",";
$titolo_confronto = " ".strtolower($riga[titolo]).",";
if (strstr($testo_confronto, $titolo_confronto))
{
$inserto = " #$riga[ID]#,";
$testo = str_replace($titolo, $inserto, $testo);
$testo_confronto = str_replace($titolo_confronto, $inserto, $testo_confronto);
}
}
$query = "SELECT * FROM `glossario`";
$risultato = mysql_query($query);
while ($riga = mysql_fetch_array($risultato))
{
$vocabolo = explode(", ",$riga[nome]);
for ($num = 0; $num <= (count($vocabolo)-1) ; $num++)
{
$titolo = " ".strtolower($vocabolo[$num])." ";
$titolo_confronto = " ".strtolower($vocabolo[$num])." ";
if (strstr($testo_confronto, $titolo_confronto))
{
$inserto = " @$riga[ID].$num@ ";
$testo = str_replace($titolo, $inserto, $testo);
$testo_confronto = str_replace($titolo_confronto, $inserto, $testo_confronto);
}
$titolo = " ".strtolower($vocabolo[$num]).".";
$titolo_confronto = " ".strtolower($vocabolo[$num]).".";
if (strstr($testo_confronto, $titolo_confronto))
{
$inserto = " @$riga[ID].$num@.";
$testo = str_replace($titolo, $inserto, $testo);
$testo_confronto = str_replace($titolo_confronto, $inserto, $testo_confronto);
}
$titolo = " ".strtolower($vocabolo[$num]).",";
$titolo_confronto = " ".strtolower($vocabolo[$num]).",";
if (strstr($testo_confronto, $titolo_confronto))
{
$inserto = " @$riga[ID].$num@,";
$testo = str_replace($titolo, $inserto, $testo);
$testo_confronto = str_replace($titolo_confronto, $inserto, $testo_confronto);
}
}
}
$spezzetta = explode("#",$testo);
for ($num = 1; $num <= (count($spezzetta)-1) ; $num++)
{
$id_futuro = futuro($spezzetta[$num], "", $caratteristica, $obj);
$query_scheda = "SELECT * FROM `scheda` WHERE `ID` = '".$spezzetta[$num]."'";
$risultato_scheda = mysql_query($query_scheda);
$riga_scheda = mysql_fetch_array($risultato_scheda);
$spezzetta[$num] = "$riga_scheda[titolo]";
$num++;
}
$testo = implode("",$spezzetta);
$spezzetta = explode("@",$testo);
for ($num = 1; $num <= (count($spezzetta)-1) ; $num++)
{
$valori = $spezzetta[$num];
$valori = explode(".",$valori);
$query_parola = "SELECT * FROM `glossario` WHERE `ID` = '".$valori[0]."'";
$risultato_parola = mysql_query($query_parola);
$riga_parola = mysql_fetch_array($risultato_parola);
$vocabolo = explode(", ",$riga_parola[nome]);
for ($posiz = 0; $posiz <= (count($vocabolo)-1) ; $posiz++)
{
if ($posiz == $valori[1])
{
$vocabolo = strtolower($vocabolo[$posiz]);
$spezzetta[$num] = "$vocabolo";
}
}
$num++;
}
$testo = implode("",$spezzetta);
$testo = "