$obj->connessione();
$contof=1; //per le off
$cadbb=$adulti;
//if($fascia1occ==1){ $cadbb+=$bambini; $bboccup+=$bambini; }else{ $bbnooccup+=$bambini; }
//if($fascia2occ==1){ $cadbb+=$bambinia; $bboccup+=$bambinia; }else{ $bbnooccup+=$bambinia; }
//if($fascia3occ==1){ $cadbb+=$bambinib; $bboccup+=$bambinib; }else{ $bbnooccup+=$bambinib; }
if(strlen($bboccup)<=0)$bboccup=0;
if(strlen($bbnooccup)<=0)$bbnooccup=0;
$libero=1;
$query =" select * from tipocamere where ";
$query.=" numero = $adulti ";
$query.=" and maxbambini2 = $bambinia ";
$query.=" and maxbambini1 >= $bambini ";
$query.=" and maxbambini3 = $bambinib ";
$query.=" order by ordine ";
$dati2=mysql_query($query); //se persone <=2 la singola ci sta
//echo "trovati".mysql_num_rows($dati2);
while($array2=mysql_fetch_array($dati2)){
$idcamera=$array2[id];
/******** blocco restrizioni ********/
$pezzi=explode("/",$datap);
$dalx=$pezzi[2]."-".$pezzi[1]."-".$pezzi[0];
$pezzi2=explode("/",$dataa);
$alx=$pezzi2[2]."-".$pezzi2[1]."-".$pezzi2[0];
//giorno settimana
$giornis = array('Domenica','Lunedi','Martedi','Mercoledi','Giovedi','Venerdi','Sabato');
$ts_from = mktime(0, 0, 0, $pezzi[1], $pezzi[0], $pezzi[2]);
$ts_to = mktime(0, 0, 0, $pezzi2[1], $pezzi2[0], $pezzi2[2]);
$giornoallora= date('Y/m/d', $ts_from);
$quindigiorno=$giornis[date('w',strtotime($giornoallora))];
$giornoallora2= date('Y/m/d', $ts_to);
$quindigiorno2=$giornis[date('w',strtotime($giornoallora2))];
$sql33="SELECT * FROM `restrizioni` WHERE '$dalx' >= dal AND '$alx' <= al";
$dati33=mysql_query($sql33);
while($array33=mysql_fetch_array($dati33)){
$arragiorno=explode(",",$array33[giorno]);
$arragiorno2=explode(",",$array33[giorno2]);
$sql44="SELECT * FROM `restrizioni_camere` where id_res='$array33[id]'";
$dati44=mysql_query($sql44);
while($array44=mysql_fetch_array($dati44)){
$camereristrette[]=$array44[id_cam];
}
if(!in_array($quindigiorno,$arragiorno) || !in_array($quindigiorno2,$arragiorno2) ){
if(count($camereristrette)>0){
if(in_array($idcamera,$camereristrette)){
echo"
";
echo " "._DAL." $array33[dal] "._AL." $array33[al]
"._POSSIBILEPRENOTARE." da $array33[giorno] a $array33[giorno2]";
echo" ";
$errorerestrizione=1;
}}
}
}
/******** blocco restrizioni ********/
$libero=1;
if($libero==1){ //accetta tutto
$idcamera=$array2[id];
$tipo_camera=$idcamera;
$personenn=$bambini;
$personen=$array2[numero];
$adulti=$personen;
$terzolettosi=$array2[terzoletto];
$quartolettosi=$array2[quartoletto];
$tariffazionecamera=tariffazionecamera($tipo_camera);
$date_from_parts = explode('/', $datap);
$date_to_parts = explode('/', $dataa);
$ts_from = mktime(0, 0, 0, $date_from_parts[1], $date_from_parts[0], $date_from_parts[2],0);
$ts_to = mktime(0, 0, 0, $date_to_parts[1], $date_to_parts[0], $date_to_parts[2],0);
for ($x = $ts_from; $x < $ts_to; $x += 86400){
$vi = date('Y/m/d', $x);
$vi=str_replace('/',"-",$vi);//verifica la disponibilita della camera
$quantesolodispo=verifica($vi,$tipo_camera,0);
if($quantesolodispo<=0){
$err=1; //data non disp
$tipo_camera="0";
$personen=0;
$personenn=0;
$bambinia=0;
$bambinib=0;
}
else{
if($tariffazionecamera==0){
$aaaaaaaa=prezzos($tipo_camera,$vi);
$prezzo+=$aaaaaaaa; //a camera
}
else{
/*nuovo calcolo in base a sconto 3 e 4 adulti*/
if($personen==3 && $terzoletto>0){ //tripla
$aaaaaaaa=prezzos($tipo_camera,$vi)*2; //2 adultu pagano pieno
$sconto3=$terzoletto;
$prezzopersona=prezzos($tipo_camera,$vi);
$prezzosconto3=prezzos($tipo_camera,$vi)*$terzoletto/100;
$aaaaaaaa+=($prezzopersona-$prezzosconto3);
}
else if($personen==4 && $quartoletto>0){ //quadrupla
$aaaaaaaa=prezzos($tipo_camera,$vi)*2; //2 adultu pagano pieno
$sconto3=$terzoletto;
$sconto4=$quartoletto;
$prezzopersona=prezzos($tipo_camera,$vi);
$prezzosconto3=prezzos($tipo_camera,$vi)*$terzoletto/100;
$prezzosconto4=prezzos($tipo_camera,$vi)*$quartoletto/100;
$aaaaaaaa+=($prezzopersona-$prezzosconto3);
$aaaaaaaa+=($prezzopersona-$prezzosconto4);
}else{
$aaaaaaaa=prezzos($tipo_camera,$vi)*$personen; //a persona adulti
}
/*nuovo calcolo in base a sconto 3 e 4 adulti*/
$bbbbbbbb=prezzobs($tipo_camera,$vi)*$personenn;
$bbbbbbbba=prezzobsa($tipo_camera,$vi)*$bambinia;
$bbbbbbbbb=prezzobsb($tipo_camera,$vi)*$bambinib;
$prezzo+=$aaaaaaaa; //a persona adulti
$prezzo+=$bbbbbbbb; //a persona bambini
$prezzo+=$bbbbbbbba; //a persona bambini
$prezzo+=$bbbbbbbbb; //a persona bambini
$aaaaaaaa=$aaaaaaaa+$bbbbbbbb+$bbbbbbbba+$bbbbbbbbb;
}
}
$tmpstringaprezziperiodo.="$vi,$aaaaaaaa|";
}
//resetta array
$oldprezzo=$prezzo;
?>
/* */
/*** calcolo delle offerte - alla fine deve uscire o un nuovo prezzo o uno sconto**/
/* */
$giorni=$notti+1;
$totaledellepersone=$adulti+$bambini;
/*passo1 - identifica offerta corretta per data:*/
$pezzi=explode("/",$datap);
$dalx=$pezzi[2]."-".$pezzi[1]."-".$pezzi[0];
$pezzi2=explode("/",$dataa);
$alx=$pezzi2[2]."-".$pezzi2[1]."-".$pezzi2[0];
//conta offerte cumulabili
$sql33="SELECT * FROM `offerte` WHERE '$dalx' >= dal AND '$alx' <= al and prenotabile=0 and quantita>0 order by sconto ";
$dati33=mysql_query($sql33);
$numerocumulabili=mysql_num_rows($dati33);
//se ce ne sono cumulabili allora quelle nn cumulabili nn appaiono
//trova tutte le offerte nelle date comprese
$sql33="SELECT * FROM `offerte` WHERE '$dalx' >= dal AND '$alx' <= al and prenotabile=0 and quantita>0 order by sconto desc";
$dati33=mysql_query($sql33);
while($array33=mysql_fetch_array($dati33)){
/*passo 2 - nel while vedere le offerte che soddisfano i requisiti che sono 3. persone,notti,anticipo*/
/*cosa dice offerta, che tipo di requisiti vuole e se il cliente li soddisfa*/
$idoffer=$array33[id];
$numpersone=$array33[numpersone];
$segnopersone=$array33[segnopersone];
$valorepersone=$array33[valorepersone];
$numnotti=$array33[numnotti];
$segnonotti=$array33[segnonotti];
$valorenotti=$array33[valorenotti];
$gganticipo=$array33[gganticipo];
$segnoanticipo=$array33[segnoanticipo];
$valoreanticipo=$array33[valoreanticipo];
//mette camere in oggetto
$sql66="SELECT * FROM offerte_camere where id_off='$idoffer'";
$dati66=mysql_query($sql66);
while($array66=mysql_fetch_array($dati66)){
$tmparraicamere[]=$array66[id_cam];
}
//caso date non valide //18 aprile 2012
$sql77="SELECT * FROM offerte_nonvalida where id_off='$idoffer'";
$dati77=mysql_query($sql77);
while($array77=mysql_fetch_array($dati77)){
$datenonvalide[]=$array77[data];
}
//ciclo dal al (compresi) e vedo se con in_array sono tra le date nn valide
$date_from_parts = explode('/', $datap);
$date_to_parts = explode('/', $dataa);
$ts_from = mktime(0, 0, 0, $date_from_parts[1], $date_from_parts[0], $date_from_parts[2],0);
$ts_to = mktime(0, 0, 0, $date_to_parts[1], $date_to_parts[0], $date_to_parts[2],0);
for ($x = $ts_from; $x <= $ts_to; $x += 86400){
$vi = date('d/m/Y', $x);
if(in_array($vi,$datenonvalide))$trovatadatannvalida=1;
}
//18 aprile 2012
//caso 1 di 3
//gg anticipo
if($gganticipo==1){
//echo"Sconto anticipo: ";
$okanticipo=0;
$al2x=date('d/m/Y');
//nelle date controlla i giorni prima
$igiorni=diff_in_giorni2($datap,$al2x);
//echo $igiorni."-1-".$datap."-2-".$al2x;
//vede il segno
if($segnoanticipo=="<"){
//echo" < $valoreanticipo ";
if($igiorni>=$valoreanticipo)$okanticipo=1;
//echo $igiorni. " e ".$valoreanticipo;
}
else if($segnoanticipo=="="){
//echo" = $valoreanticipo ";
if($igiorni==$valoreanticipo) $okanticipo=1;
}
}
//caso 2 di 3
//numero di notti
if($numnotti==1){
$oknotti=0;
if($segnonotti=="<"){
if($notti<$valorenotti)$oknotti=1;
}
else if($segnonotti==">"){
if($notti>$valorenotti)$oknotti=1;
}
else if($segnonotti=="="){
if($notti==$valorenotti)$oknotti=1;
}
}
//caso 3 di 3
//numero di persone
if($numpersone==1){
$okpersone=0;
if($segnopersone=="<"){
if($adulti<$valorepersone)$okpersone=1;
}
else if($segnopersone==">"){
if($adulti>$valorepersone)$okpersone=1;
}
else if($segnopersone=="="){
if($adulti==$valorepersone)$okpersone=1;
}
}
/*passo 3 - questi sconti si applicano a determinati tipi di camera*/
$iofferta="no";
if($gganticipo==1 && $numnotti==1 && $numpersone==1){
if($okanticipo==1 && $oknotti==1 && $okpersone==1){
$iofferta="ok";
}
}
else if($gganticipo==1 && $numnotti==1){
if($okanticipo==1 && $oknotti==1){
$iofferta="ok";
}
}else if($numnotti==1 && $numpersone==1){
if($oknotti==1 && $okpersone==1){
$iofferta="ok";
}
}else if($gganticipo==1 && $numpersone==1){
if($okanticipo==1 && $okpersone==1){
$iofferta="ok";
}
} //add giov 6 mag
else if($gganticipo==1 && $numpersone==0 && $numnotti==0){
if($okanticipo==1){
$iofferta="ok";
}
}else if($gganticipo==0 && $numpersone==1 && $numnotti==0){
if($okpersone==1){
$iofferta="ok";
}
}else if($gganticipo==0 && $numpersone==0 && $numnotti==1){
if($oknotti==1){
$iofferta="ok";
}
}
if (in_array($tipo_camera, $tmparraicamere) && ($iofferta=="ok")) {
$iofferta="ok";
}else $iofferta="";
if($iofferta=="ok" && $trovatadatannvalida!=1){ //18 aprile 2012
$eofferta=$array33[nome];
echo"";
if($array33[prezzo]>0){ //4 maggio
$losconto=$array33[prezzo];
$prezzo=$prezzo-$losconto;
$tmpmemorizzalosconto=$array33[prezzo];
}
else{
$losconto=$prezzo*$array33[sconto]/100;
$prezzo=$prezzo-$losconto;
$tmpmemorizzalosconto=$array33[sconto];
}
break;
}
unset($tmparraicamere);
}
/**
fine cancolo
**/
?>
$addd="";
for($add=0;$add<($array2[numero]+$array2[maxbambini2]);$add++){
$addd.=" ";
}
if($linguai=="it")echo " ".strtoupper($array2[nomeIT])." ($addd) ";
if($linguai=="es")echo " ".strtoupper($array2[nomeSP])." ($addd) ";
if($linguai=="de")echo " ".strtoupper($array2[nomeDE])." ($addd) ";
if($linguai=="fr")echo " ".strtoupper($array2[nomeFR])." ($addd) ";
if($linguai=="en")echo " ".strtoupper($array2[nomeEN])." ($addd) ";
?>
}?>
/******* mem preventivi *****/
$data=date('d/m/Y');
$ora=date('H:i');
$ip=$_SERVER['REMOTE_ADDR'];
$dal=$datap;
$al=$dataa;
$camera=$idcamera;
$importo=$prezzo;
if(strlen($ip)>0)
mysql_query("insert into preventivi(data,ora,ip,dal,al,id_camera,importo) values ('$data','$ora','$ip','$dal','$al','$camera','$importo')");
echo mysql_error();
/******* mem preventivi *****/
?>
unset($prezzo);
unset($err);
unset($stop);
unset($errmstay);
unset($oldprezzo);
unset($puo);
unset($iofferta);
unset($eofferta);
unset($losconto);
unset($addd);
unset($tmpstringaprezziperiodo);
unset($errorerestrizione);
unset($camereristrette);
unset($errorerestrizione);
$megacontatore++;
?>
}?>
|
0 && strlen($dataa)>0 && $cameretrovate>0 &&
diff_in_giorni($datap,date('d/m/Y'))>=$giornirelease && $errorerestrizione!=1){?>
|
}
if($cameretrovate==0)echo" Nessuna camera soddisfa i requisiti della tua ricerca.";
if(diff_in_giorni($datap,date('d/m/Y'))<$giornirelease)echo"
Puoi prenotare con almeno $giornirelease giorni di anticipo";
?>