var booking = {
bookungPageID:"booking.php",
loungePageID:"booking2.php",
pfwID:"c-frame",
isOpen:false,
planWidth:1920,
planHeight:1200,
toolTipOffsetX:100,
toolTipOffsetY:20,
openEvent:null,
lounges:[
{
id:6,
top:200,
left:660,
label:'Lounge 1',
desc:'Der Bereich hinter dem DJ - Pult bietet Platz für Gruppen bis zu 20 Personen. Mit drei Tischen, zwei geräumigen Sofa sowie weiteren Sitzgelegenheiten bietet sich in dieser schönen Lounge die Möglichkeit einen Club im Club zu schaffen. Ein idealer Ort um unter sich zu bleiben und doch das Geschehen mitten im Blick zu haben.',
image:'thumbs/reservierungen/tn_lounge1.jpg',
price:'100.00',
imageBG:'thumbs/reservierungen/lounge1.jpg'
},
{
id:7,
top:200,
left:960,
label:'Lounge 2',
desc:'Die Hirschlounge ist der Ort direkt am Pulschlag der Bar. Die Tanzfläche direkt im Blick und eine Armlänge vom Barkeeper entfernt, bietet der Bereich Platz für bis zu zehn Gäste. Zwei bequeme Sofas bieten Platz für sechs Personen. Mehr Mittendrin geht nicht!',
image:'thumbs/reservierungen/tn_lounge2.jpg',
price:'100.00',
imageBG:'thumbs/reservierungen/lounge2.jpg'
},
{
id:8,
top:990,
left:620,
label:'Lounge 3',
desc:'Diese Lounge bietet Raum für fünf bis sechs Personen. Direkt neben der Tanzfläche platziert kann man bei einem coolen Drink das Treiben der Nacht beobachten und trotzdem exklusiv mit seinen Freunden feiern. Sie wollen Sich fühlen wie ein König? Dann ist das Ihr Ort!',
image:'thumbs/reservierungen/tn_lounge3.jpg',
price:'100.00',
imageBG:'thumbs/reservierungen/lounge3.jpg'
},
{
id:9,
top:990,
left:830,
label:'Lounge 4',
desc:'Diese Lounge bietet Raum für fünf bis sechs Personen. Direkt neben der Tanzfläche platziert kann man bei einem coolen Drink das Treiben der Nacht beobachten und trotzdem exklusiv mit seinen Freunden feiern. Sie wollen Sich fühlen wie ein König? Dann ist das Ihr Ort!',
image:'thumbs/reservierungen/tn_lounge4.jpg',
price:'100.00',
imageBG:'thumbs/reservierungen/lounge4.jpg'
},
{
id:10,
top:990,
left:1050,
label:'Lounge 5',
desc:'Diese Lounge bietet Raum für fünf bis sechs Personen. Direkt neben der Tanzfläche platziert kann man bei einem coolen Drink das Treiben der Nacht beobachten und trotzdem exklusiv mit seinen Freunden feiern. Sie wollen Sich fühlen wie ein König? Dann ist das Ihr Ort!',
image:'thumbs/reservierungen/tn_lounge5.jpg',
price:'100.00',
imageBG:'thumbs/reservierungen/lounge5.jpg'
}
],
akklounge:null,
products:[],
shopingcart:[],
init:function () {
booking.isOpen = true;
/** bg switch farout**/
$('#c-frame').stop().animate({top:-500},1000,function () {
$(this).css({'display':'none'});
});
$('#image-bg-main').fadeOut('middel',function () {
$('#image-bg-vip')
.stop()
.css({'display':'none','width':'','height':'80%'})
.fadeIn('middel',booking.initWindows);
});
/** bg switch farout**/
},
update:function (eventID) {
$('#lounges-event-display').html ('
');
booking.displayReset();
$.getJSON("lounges_update.php?event_id="+eventID, function(json) {
$('#lounges-event-display').html(''+json.event.tag+'||'+json.event.monat+'||'+json.event.jahr+'
'+json.event.headline+'
');
booking.openEvent = json.event;
$.each (json.bookings,function (i,item) {
for(var i = 0; i < booking.lounges.length; i++) {
if (booking.lounges[i].id == item.lounge) {
var dot;
if (item.status == 1)
dot = "url(images/res-yelow-dot.png)";
if (item.status == 2)
dot = "url(images/res-red-dot.png)";
$('#'+booking.lounges[i].htmlObjectID)
.css("background-image", dot)
.unbind ('click');
break;
}
}
});
});
},
displayReset:function () {
for(var i = 0; i < booking.lounges.length; i++) {
$('#'+booking.lounges[i].htmlObjectID)
.css("background-image", "url(../images/res-green-dot.png)")
.unbind ('click')
.bind ('click',function () {
booking.openBookingForm($(this).attr('objectid'));
});
}
},
openBookingForm:function (loungeID) {
window.location.hash = booking.loungePageID+'?event='+booking.openEvent.ID+'&lounge='+loungeID;
},
initWindows:function () {
/**kalender**/
$('#page-size').append('');
$('#page-size').append('');
$('#page-size').append('');
$('#resv_kalender').load('backend/inc/inc_reservierung_kalender.php');
/*** add lounge ***/
for(var i = 0; i < booking.lounges.length; i++) {
var htmlObject = $('#page-size').append(''+booking.lounges[i].label+'
');
booking.lounges[i].htmlObjectID = 'lounge-frame-wrapper-'+booking.lounges[i].id;
$('#'+booking.lounges[i].htmlObjectID).hover (booking.onLoungeOver,booking.onLoungeOut);
}
booking.positionLounges();
$(window).bind('resize',booking.onResize)
booking.update();
},
onLoungeOver:function (e) {
$(this).addClass('lounge-hover');
var object = null;
for(var i = 0; i < booking.lounges.length; i++) {
if (parseInt ($(this).attr('objectID')) == booking.lounges[i].id) {
object = booking.lounges[i];
break;
}
}
$('#lounges-tooltip')
.css('display','none')
.css("top",(e.pageY - booking.toolTipOffsetX) + "px")
.css("left",(e.pageX + booking.toolTipOffsetY) + "px")
.fadeIn("fast");
$('#lounges-image').attr('src',object.image);
$('#lounges-tooltip h1').html(object.label);
$('#lounges-tooltip p').html(object.desc);
$(this).mousemove(function(e){
$("#lounges-tooltip")
.css("top",(e.pageY - booking.toolTipOffsetX) + "px")
.css("left",(e.pageX + booking.toolTipOffsetY) + "px");
});
},
onLoungeOut:function () {
$(this).removeClass('lounge-hover');
$('#lounges-tooltip').css('display','none')
$(this).mousemove(function (e) {});
},
positionLounges:function () {
var bgWidth = $('#image-bg-vip').width();
var bgHeight = $('#image-bg-vip').height();
var pWidth = Math.round((bgWidth * 100)/ booking.planWidth);
var pHeight = Math.round((bgHeight * 100) / booking.planHeight);
for(var i = 0; i < booking.lounges.length; i++) {
$('#'+booking.lounges[i].htmlObjectID).css({
'top':Math.round((booking.lounges[i].top * pHeight)/100) - 5,
'left': (Math.round((booking.lounges[i].left * pWidth)/100)+$('#image-bg-vip').offset().left) - 5
});
}
},
destroyWindows:function () {
$('#resv_kalender').remove();
$('#lounges-tooltip').remove();
$('#lounges-event-display').remove();
$('.lounge-image').remove();
$('.lounge-frame-wrapper').remove();
$('.booking-lounge-book-wrapper').remove();
booking.shopingcart = [];
booking.akklounge = null;
},
destroy:function (noBgReset) {
if (!noBgReset) {
booking.isOpen = false;
/** bg switch farout**/
$('#c-frame').css({'display':'block'}).stop().animate({top:'50%'},1000);
$('#image-bg-vip').fadeOut('middel',function () {
$('#image-bg-main')
.stop()
.fadeIn('middel');
});
/** bg switch farout**/
}
$(window).unbind('resize',booking.onResize)
booking.destroyWindows();
},
showLounge:function (loungeID,eventID) {
booking.destroy(true);
lounge = null;
for(var i = 0; i < booking.lounges.length; i++) {
if (booking.lounges[i].id == parseInt(loungeID)){
lounge = booking.lounges[i];
break;
}
}
/**lounge nicht gefunden -> break **/
if (lounge == null){
window.location.hash = booking.bookungPageID;
return false;
}
booking.akklounge = lounge;
$('#image-bg-vip').fadeOut('middel');
$('#image-bg').append('
');
$('#page-size').append(' Warenkorb
Mindestumsatz
'+lounge.price+' €
');
$('#lounges-booking-infos').html(''+booking.openEvent.tag+'||'+booking.openEvent.monat+'||'+booking.openEvent.jahr+'
'+booking.openEvent.headline+'
'+booking.akklounge.label+'
'+booking.akklounge.desc+'
');
$('#booking-form-send-bn').css('visibility','hidden');
$.getJSON ('lounges_get_products.php',function (json) {
booking.products = json.producs;
$.each(booking.products, function (i,item) {
/*
*/
$('#produkte').append(''+item.bezeichnung+'
Preis: '+item.preis+' Euro
');
});
$('.product').hover (function () {
$(this).css({"background-image":"url(images/product-pfeil_green.png)",'background-color':'#333'});
},function () {
$(this).css({"background-image":"url(images/product-pfeil.png)",'background-color':'transparent'});
})
.click (function () {
var pid = parseInt($(this).attr('pid'));
for(var i = 0; i < booking.products.length; i++) {
if (pid == booking.products[i].ID) {
booking.addProduct(booking.products[i]);
break;
}
}
});
});
},
addProduct:function (product) {
var pin = booking.isInCart(product);
if (pin) {
pin.count ++;
}else{
var nid = Math.round(Math.random()*10000000);
$('#warenkorb').append('
'+product.bezeichnung+'
Anzahl: 1 Preis gesammt: '+product.preis+' €
');
var po = {};
po.ID = product.ID;
po.price = product.preis;
po.hmtlID = nid.toString();
po.count = 1;
booking.shopingcart.push(po);
}
booking.updatePrice();
},
isInCart:function (product) {
for (var i = 0; i < booking.shopingcart.length; i++) {
if (booking.shopingcart[i].ID == product.ID) {
return booking.shopingcart[i];
}
}
return false;
},
removeProduct:function (product) {
var pin = booking.isInCart(product);
if (pin && pin.count > 0) {
pin.count --;
if (pin.count == 0) {
booking.shopingcart.splice(booking.shopingcart.indexOf(pin),1);
$('#'+pin.hmtlID).remove();
}
}
booking.updatePrice();
},
findeProduct:function (ID) {
var pid = parseInt(ID);
for(var i = 0; i < booking.products.length; i++) {
if (pid == booking.products[i].ID) {
return booking.products[i];
}
}
},
updatePrice:function () {
var totalprice = 0;
for (var i = 0; i < booking.shopingcart.length; i++) {
var ptotal = Math.round(((booking.shopingcart[i].price * booking.shopingcart[i].count)*100))/100;
$('#p_'+booking.shopingcart[i].hmtlID).html ('
Anzahl: '+booking.shopingcart[i].count+' Preis gesammt: '+booking.CurrencyFormatted(ptotal)+' €');
totalprice += ptotal;
}
$('#akk-umsatz').html(booking.CurrencyFormatted(totalprice)+' €');
if (totalprice >= booking.akklounge.price) {
$('#akk-umsatz').css('color','#090');
$('#booking-form-send-bn').css('visibility','visible');
$('#booking-form-feedback')
.html('Buchung möglich')
.css('color','#090');
}else{
$('#akk-umsatz').css('color','#F00');
$('#booking-form-send-bn').css('visibility','hidden');
$('#booking-form-feedback')
.html('Der Mindestbestellwert für diese Lounge beträgt: '+booking.akklounge.price+' €')
.css('color','#F00');
}
},
check_resv:function () {
var sendObj = {};
sendObj.booking = {'lounge':booking.akklounge.id,'event':booking.openEvent.ID};
sendObj.product = booking.shopingcart;
sendObj.personal = $('#form_resv').serializeObject();
$('#booking-form-feedback').html('

');
$.get('reservierung_feedback.php',{'json':$.toJSON(sendObj)},function (data) {
if (data.indexOf('001') != -1){
window.location.hash = "bookingcomplete.php";
}else{
$('#booking-form-feedback').html(data);
}
});
},
onResize:function (e) {
booking.positionLounges();
},
CurrencyFormatted:function(amount) {
var i = parseFloat(amount);
if(isNaN(i)) { i = 0.00; }
var minus = '';
if(i < 0) { minus = '-'; }
i = Math.abs(i);
i = parseInt((i + .005) * 100);
i = i / 100;
s = new String(i);
if(s.indexOf('.') < 0) { s += '.00'; }
if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
s = minus + s;
return s;
}
}