import_request_variables("GP");
mb_internal_encoding("UTF-8");
// redirect
//$debug = 1;
require_once('konfigurace.php');
include_once ($klokan."_include/debug.php");
running_time ("uplny zacatek begin");
require_once ($klokan."_include/classes/firewall.php");
require_once ($klokan."_include/classes/testurl.inc.php");
include_once($klokan."_include/cls_url_maker.php");
// časovač
require_once($klokan."_include/classes/timer.class.php");
// objekt myslq
require_once($klokan."_include/classes/mssql.class.php");
//kontrola zadané url
$oTestUrl = new testUrl();
running_time ("firewall begin");
if ($_SERVER["REMOTE_HOST"] != "193.19.176.69") {
/* firewall begin */
$oFirewall = new firewall();
//$oFirewall->fronta(); //fronta pozadavku s limitem a sleep
$oFirewall->logStatistika();
//povoleni procházení vypsanym ip adresam
$oFirewall->allowRobots();
if ($oFirewall->stop()) {
$oFirewall->log($klokan . "_db_log/log_firewall.txt");
sleep($oFirewall->timeSecont);
//echo "Připojoval jste se k serveru příliš často. Váš požadavek nemohl být dokončen.";
header("HTTP/1.1 503 Service Unavailable");
echo "
Service Unavailable
";
echo "You have been connecting too often. Your request couldn't be completed.
";
exit();
}
/* firewall end */
}
running_time ("firewall end");
//ob_clean();
running_time("zacátek unistart");
$CFG["url_is_virtual"] = ($d1<>"") ? True : False ;
$CFG["usecache"]= False;
//$CFG["usecache"]= True;
running_time("require funkce start");
require_once($klokan."_include/funkce.php");
running_time("require funkce end");
include_once($klokan."_include/disk_cache.php");
running_time("include_once disk_cache.php end");
$location = getNewDomain($_SERVER[SERVER_NAME]);
running_time("getNewDomain end");
if ($location != NULL){
header("HTTP/1.0 301 Moved Permanently");
header("Location: http://$location$_SERVER[HTTP_X_REWRITE_URL]");
exit();
}
running_time("if location, heeader 301 end");
session_start();
running_time("session start end");
running_time("před otevřením spojením k db");
otevri_spojeni();
$db = new Udb();
running_time("po otevřením spojením k db");
/* čítač stránke */
//$oCounter = new HtmlCouner();
/* čítač stránke */
require_once($klokan."_include/classes/cache.php");
if($oTestUrl->isValid()){
$oCache = new HtmlCache();
}
// tady uprava, u ktere si nejsem jisty...
// puvodne tady byla funkce jazyk()
// ale ta byla definovana v "_include/funkce/funkce.php" i "_include/funkce.php"
// coz se casem projevilo duplicitne definovanou funkci a bylo potreba
// duplicitu odstranit.
// Takze je tady ted jedna ze 2 voleb:
// jazyk() (26 jazyku)
// jazykRegistrace() (jen 3 jazyky - nemcina, anglictina a cestina)
jazyk();
$actual_url = new url_maker();
$actual_url->jaz=$jaz;
$actual_url->flag = $system_flag;
$actual_url->admin = 0;
if ($root=="/"){
// internet
$CFG["virtual_page"]= ($CFG["url_is_virtual"]) ? azod($d1,"/") : "" ;
$CFG["url_sparametrem"] = (Count($_REQUEST)==2) ? False : True ;
}
else{
// doma
$CFG["virtual_page"]= ($CFG["url_is_virtual"]) ? azod(azod($d1,"/"),"/") : "" ;
$CFG["url_sparametrem"] = (Count($_REQUEST)==3) ? False : True ;
}
//rozhodne o načtení z cache nebo pokračuje normálně v běhu
if ($CFG["url_is_virtual"]){
$actual_url->rozparsuj_na_slova($d1);
$kod = $actual_url->url_kodtypu;
$CFG["kodtypu"]=$kod;
//if ($kod=="z" or $kod=="k"){$CFG["usecache"]=True;}
if ($CFG["usecache"] and (!($CFG["url_sparametrem"])) and ($kod=="z" or $kod=="k")){
$result = disk_cache::load($jaz, $CFG["kodtypu"], $CFG["virtual_page"], 86400);
$cache_request=apc_fetch('cache_request');
$cache_request=1+$cache_request;
apc_store('cache_request', $cache_request);
if ($result<>""){
$cached=apc_fetch('cached'); $cached=1+$cached; apc_store('cached', $cached);
echo $result;
exit;}
}
}
require_once($klokan."_include/ssp.php");
$actual_url->Gspojm=$Gspojm;
$actual_url->nacti_zeme();
$actual_url->nacti_kontinenty();
urci_domeny();
$actual_url->url_server = $CFG["domain2"].".".$CFG["domain1"];
$virtual_path=$klokan.$dd;;
//Je to virtuální stránka
if($CFG["url_is_virtual"]){
//jsou to nějaká další čísla stránky...
ereg ("_page([0-9]{1,10}).html", $d1, $stranky);
$CFG["page"]=$stranky[1];
$CFG["virtual_path_natural"]=$d1;
if ($stranky[1]>0){$d1=Str_replace("_page".$CFG["page"],"",$d1);}
if ($root=="/pensionhotel/"){
$d1 = substr($d1, 13, strlen($d1)-13);
}
$CFG["virtual_path"] = $d1;
$prvnislovo =$actual_url->words[0];
$druheslovo =$actual_url->words[1];
$tretislovo =$actual_url->words[2];
$poslednislovo =$actual_url->words[Count($actual_url->words)-1];
$predposlednislovo =$actual_url->words[Count($actual_url->words)-2];
$kod =$actual_url->url_kodtypu;
$cislo =$actual_url->cislo;
$CFG["cislo"] = $cislo;
$CFG["prvnislovo"] = $prvnislovo;
$CFG["druheslovo"] = $druheslovo;
$CFG["tretislovo"] = $tretislovo;
$CFG["poslednislovo"] = $poslednislovo;
$CFG["predposlednislovo"] = $predposlednislovo;
$CFG["url_generation"] = 5;
//druh objektu se určí podle prvního slova
$koa="";
$CFG["kod_typu"] = $kod;
foreach($ssp_adresy[52] as $value){
if ($value == $prvnislovo) $koa = "pe";
}
foreach($ssp_adresy[54] as $value){
if ($value == $prvnislovo) $koa = "ch";
}
foreach($ssp_adresy[62] as $value){
if ($value == $prvnislovo) $koa = "ch";
}
foreach($ssp_adresy[56] as $value){
if ($value == $prvnislovo) $koa = "r";
}
foreach($ssp_adresy[58] as $value){
if ($value == $prvnislovo) $koa = "ke";
}
if ($prvnislovo=="nocni-zivot"){$koa="nl";}
if ($prvnislovo=="night-clubs"){$koa="nl";}
if ($prvnislovo=="nacht-klubs"){$koa="nl";}
if ($prvnislovo=="nnottambulismo"){$koa="nl";}
if ($prvnislovo=="ejszakai-elet"){$koa="nl";}
if ($prvnislovo=="nattliv"){$koa="nl";}
if($koa == 'nl') {
$destination = "http://" . $_SERVER['SERVER_NAME'];
if($_SERVER['SERVER_PORT'] != 80) {
$destination .= ":" . $_SERVER['SERVER_PORT'];
}
$destination .= "/";
header("Location: $destination" ,TRUE,301);
exit;
}
$CFG["koa_plus"] = $koa ;
if ($koa=="pe"){ $koa ="";}
$CFG["koa"] = $koa ;
$actual_url->koa = $CFG["koa_plus"];
//mapovaný kontinent
if ($kod=="n"){
$kontinent=$cislo; $who=""; Cint($zem);
$actual_url->url_kontinent = $druheslovo;
$actual_url->id_kontinent = $cislo;
$actual_url->nacti_kontinenty();
$CFG["kontinent_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["kontinent_path"]=$druheslovo;
$CFG["kontinent_id"]=$actual_url->id_kontinent;
$Udb->query("Update SYSTEM set hodnota=hodnota+1 where jmeno='cacheable'");
require_once($klokan.'_include/newindex3.php');
exit();
}
//mapovaná země
if ($kod=="z"){
$zem=$cislo;
$who="stat";
Cint($zem);
validId(($zem),"zeme"); //kontrola id
$actual_url->url_zem = $druheslovo;
$actual_url->id_zeme = $cislo+0;
$actual_url->nacti_kraje($actual_url->id_zeme);
$actual_url->nacti_mesta($actual_url->id_zeme);
$actual_url->nacti_touristreg($actual_url->id_zeme);
$actual_url->nacti_okresy($actual_url->id_zeme);
$CFG["zem_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["zem_path"]=$druheslovo;
$CFG["zem_id"]=$actual_url->id_zeme;
$Udb->query("Update SYSTEM set hodnota=hodnota+1 where jmeno='cacheable'");
}
//mapovaný kraj
if ($kod=="k"){
require_once $m_conf["server_path"].'_include/classes/kraj.php';
$zem=$cislo; $who="kraj"; Cint($zem);
$kraj = new Kraj(null, $zem, $jaz);
$kraj->GetKrajByUrl($druheslovo);
if ($kraj->id == null){
$kraj->getOldKrajByUrl($druheslovo);
$kraj = new Kraj($kraj->id, $zem, $jaz);
$kraj->GetKraj();
$presmeruj = 1;
}
$CFG["kraj_id"] = $kraj->id;
$okres= $kraj->id;
$CFG["kraj_name"]=$kraj->name;
$CFG["kraj_path"]=$kraj->path;
$actual_url->id_kraje = $CFG["kraj_id"];
$actual_url->url_kraj = $CFG["kraj_path"];
$actual_url->url_zem = $tretislovo;
$actual_url->id_zeme = $cislo+0;
validId(array($zem,$CFG["kraj_id"]),"kraj");
$actual_url->nacti_kraje($actual_url->id_zeme);
$actual_url->nacti_mesta($actual_url->id_zeme);
$actual_url->nacti_okresy($actual_url->id_zeme);
if($presmeruj){
$krajurl=$actual_url->make_kraj_url($actual_url->id_kraje);
moved_permanently($krajurl);
die();
}
$CFG["zem_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["zem_path"]=$actual_url->url_zem;
$CFG["zem_id"]=$actual_url->id_zeme;
$Udb->query("Update SYSTEM set hodnota=hodnota+1 where jmeno='cacheable'");
}
//mapovaný okres
if ($kod=="o"){
require_once $m_conf["server_path"].'_include/classes/ookres.php';
$zem=$cislo;
$who="okres";
Cint($zem);
$mypath=($CFG["url_generation"]==5) ? $tretislovo : $predposlednislovo ;
if ($predposlednislovo=="praha"){$druheslovo =str_replace("-","_",$druheslovo);}
$ObjOkres = new Okres(null, $zem, null, $jaz);
$ObjOkres->GetOkresByUrl($druheslovo);
$ObjOkres->getKraj();
/*
$vysledek1=$Udb->query("select id, oblast".$jaz." from okresy where path".$jaz."='$mypath'");
$row = $Udb->next_record($vysledek1);
$okres=$row["id"];
$CFG["kraj_id"] = $okres;
$CFG["kraj_path"] = $mypath;
$CFG["kraj_name"] = trim($row["oblast".$jaz]);
$vysledek2=$Udb->query("select id, oblast".$jaz." from podregiony where path".$jaz."='$druheslovo'");
$row2 = $Udb->next_record($vysledek2);
$podregiony=$row2["id"];
$CFG["okres_id"] = $podregiony;
$CFG["okres_path"] = $druheslovo;
$CFG["okres_name"] = trim($row2["oblast".$jaz]);
*/
//$vysledek1=$Udb->query("select id, oblast".$jaz." from okresy where path".$jaz."='$mypath'");
//$row = $Udb->next_record($vysledek1);
if ($ObjOkres->kraj->path != $mypath){
$ObjKraj = new Kraj(null, $zem, $jaz);
if($ObjKraj->getOldKrajByUrl($mypath)){
$presmeruj = 1;
}else{
// die();
}
}
$okres=$ObjOkres->kraj->id;
$CFG["kraj_id"] = $okres;
$CFG["kraj_path"] = $ObjOkres->kraj->path;
$CFG["kraj_name"] = $ObjOkres->kraj->name;
//$vysledek2=$Udb->query("select id, oblast".$jaz." from podregiony where path".$jaz."='$druheslovo'");
//$row2 = $Udb->next_record($vysledek2);
$podregiony=$ObjOkres->id;
$CFG["okres_id"] = $podregiony;
$CFG["okres_path"] = $druheslovo;
$CFG["okres_name"] = $ObjOkres->name;
validId(array($zem,$CFG["kraj_id"],$CFG["okres_id"]),"okres");
$actual_url->id_kraje = $CFG["kraj_id"];
$actual_url->url_kraj = $CFG["kraj_path"];
$actual_url->id_zeme = $cislo+0;
$actual_url->nacti_kraje($actual_url->id_zeme);
$actual_url->url_zem = $actual_url->info_zem_path[$actual_url->id_zeme][$actual_url->jaz];
$actual_url->id_kraje = $CFG["kraj_id"];
$actual_url->url_okres = $CFG["okres_path"];
$actual_url->id_okresu = $CFG["okres_id"];
$actual_url->nacti_okresy($actual_url->id_zeme,$actual_url->id_kraje);
if ($presmeruj){
$actual_url->make_okres_url($actual_url->id_okresu);
moved_permanently($actual_url->make_okres_url($actual_url->id_okresu));
die();
}
$CFG["zem_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["zem_path"]=$actual_url->url_zem;
$CFG["zem_id"]=$actual_url->id_zeme;
$Udb->query("Update SYSTEM set hodnota=hodnota+1 where jmeno='cacheable'");
}
//mapovaný turistický region
if ($kod=="t"){$zem=$cislo; $who="touristreg"; Cint($zem);
$vysledek1=$Udb->query("select id, oblast".$jaz." from touristreg where path".$jaz."='$druheslovo' and jev=$zem");
$row = $Udb->next_record($vysledek1);
$touristreg=$row["id"];
$CFG["tourist_id"] = $touristreg;
$CFG["tourist_name"] =trim($row["oblast".$jaz]);
validId(array($zem,$cislo,/* $CFG["zem_id"], */ $CFG["tourist_id"]),"Turist. region");
$actual_url->id_touristreg=$CFG["tourist_id"];
$actual_url->url_touristreg=$druheslovo;
$actual_url->id_zeme = $cislo+0;
$CFG["zem_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["zem_path"]=$actual_url->url_zem;
$CFG["zem_id"]=$actual_url->id_zeme;
$actual_url->nacti_touristreg($CFG["zem_id"]);
$Udb->query("Update SYSTEM set hodnota=hodnota+1 where jmeno='cacheable'");
}
//mapované město
if ($kod=="c"){
$zem=$cislo;
$who="mesto";
Cint($zem);
$vysledek1=$Udb->query(
"select id, mesto".$jaz.", idkraje, idokresu from mesta where path".$jaz."='$druheslovo' and idstatu=$zem");
$row = $Udb->next_record($vysledek1);
$cityid=$row["id"];
$CFG["city_id"] = $cityid;
$CFG["city_name"] =trim($row["mesto".$jaz]);
$CFG["okres_id"] =$row["idokresu"];
$CFG["kraj_id"] =$row["idkraje"];
$mro=sql_values("select path, stat from druhy_zemi where id=$zem");
validId(array($zem,$cityid,$CFG["kraj_id"],$CFG["okres_id"]),"mesto");
$actual_url->id_mesta=$CFG["city_id"];
$actual_url->url_mesto=$druheslovo;
$actual_url->url_zem = $mro[0];
$actual_url->id_zeme = $cislo+0;
$actual_url->id_kraje = $CFG["kraj_id"];
$actual_url->id_okresu = $CFG["okres_id"];
$CFG["zem_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["zem_id"]=$actual_url->id_zeme;
$actual_url->nacti_mesta($actual_url->id_zeme,$CFG["kraj_id"]);
$Udb->query("Update SYSTEM set hodnota=hodnota+1 where jmeno='cacheable'");
}
//adresa konkrétní stránky
if ($kod=="a"){
$who=koa2who(id2koa($cislo));
validId($cislo,"objekt");
$$who=$tretislovo;
$vysledek2=$Udb->query("select id, oblast".$jaz." from podregiony where path".$jaz."='$druheslovo'");
$actual_url->url_mesto=$druheslovo;
$actual_url->url_zem = $predposlednislovo;
$actual_url->url_objekt_url=$tretislovo;
}
//adresa plachty
if ($kod=="p" or $kod=="q"){
$zem=$cislo; $who="plachta"; Cint($zem);
validId($zem,"plachta");
$actual_url->url_zem = $druheslovo;
$actual_url->id_zeme = $cislo+0;
$actual_url->nacti_kraje($actual_url->id_zeme);
$actual_url->nacti_mesta($actual_url->id_zeme);
$actual_url->nacti_touristreg($actual_url->id_zeme);
$actual_url->nacti_okresy($actual_url->id_zeme);
$CFG["zem_name"]=$actual_url->info_zem_name[$actual_url->id_zeme][$jaz];
$CFG["zem_path"]=$druheslovo;
$CFG["zem_id"]=$actual_url->id_zeme;
}
} //konec mapovaných adres
//print_r($actual_url);
//spouštěná virtuální adresa je kraj
if (($who=="stat" and $koa=="" and $d2<>"") or ($who=="stat" and $koa<>"" and $d3<>"")){
$who="kraj";
$myurl=($koa=="") ? $d2 : $d3;
$vysledek1=$Udb->query("select id from okresy where path".$jaz."='$myurl'");
$row = $Udb->next_record($vysledek1);
$okres=$row["id"];
//no není to kraj..ale možná je to město
if ($okres==0){
$vysledek1=$Udb->query("select id from mesta where path='$myurl' and idstatu=$zem");
$row = $Udb->next_record($vysledek1);
$cityid=$row["id"];
$who="mesto";}
//no není to kraj, není to město, tak to musí být turistický region
if ($okres==0 and $cityid==0){
$vysledek1=$Udb->query("select id from touristreg where path='$myurl' and jev=$zem");
$row = $Udb->next_record($vysledek1);
$touristreg=$row["id"];
$who="touristreg";}
}
//spouštěná virtuální adresa je okres
if (($who=="kraj" and $koa=="" and $d3<>"") or ($who=="kraj" and $koa<>"" and $d4<>"")){
$who="okres";
$krajurl=($koa=="") ? $d3 : $d4;
$vysledek2=$Udb->query("select id from podregiony where path='$krajurl'");
$row = $Udb->next_record($vysledek1);
$podregiony=$row["id"];
}
//stránky jednotlivých objektů
if ($who=="" and (($d1<>"" and $d2=="") or ($d1=="restaurant" and $d2<>"" and $d3=="")) ){
$prvni = ($d1=="restaurant") ? $d2 : $d1;
aktivacniadresa3($prvni, $who, $ukazovat);
//objekt je zapnutý
if ($ukazovat){$$who=$prvni;}
//vypnutý objekt
else {$who="";}
}
//print_r($actual_url);
running_time("po UNISTARTU");
include($klokan."_include/start.php");
?>