// aus Kompatbilitätsgründen
function falert(message){if(Ext.isReady)ExtAlert(message);}
function fwait(message){if(Ext.isReady)ExtWait(message);}
function finfo(message){if(Ext.isReady)ExtInfo(message);}
function finfo(tit,message){if(Ext.isReady)ExtInfo(message);}

function versicherung (){rv();}
function rv() {
	externpopup('https://www.reiseversicherung.de/vrv/partner/ep-Assistent.html?/data/agent/hagtnr=082169&/data/agent/nagtnr=000000&/io/ext/response/mail=mail@nordseetraum.de',450,300,'rv',10,10,'');
}

///////////////////////////////////
// Anpassen des Content-Bereiches für IE
////////////////////////////////////
function resizeME() {
   var agent = navigator.userAgent;
	if(agent.indexOf("MSIE") != -1 || agent.indexOf("Opera") != -1) {
		var completeHeight = document.body.clientHeight;
		var newHeight = completeHeight - 100;
      if(typeof content != "undefined") {
         document.getElementById('content').style.height = "" + newHeight + "px";
         //$('content').style.top = "80px";
      }
	}
   /*
	var agent = navigator.userAgent;
	if(agent.indexOf("MSIE 7.0") == -1 && (agent.indexOf("MSIE") != -1 || agent.indexOf("Opera") != -1)) {
		var completeHeight = document.body.clientHeight;
		var newHeight = completeHeight - 154;
		$('content').style.height = "" + newHeight + "px";
	}
	*/
}

///////////////////////////////////
// Funktion für scrollbare Preisetabellen
////////////////////////////////////
function fscroll_table(id, single) {
   var max_w = 498;
   var w1 = 0;
   if($('td1_' + id))
   {
      // Breite der 1. Spalte bestimmen
      var dimensions = $('td1_' + id).getDimensions();
      w1 = dimensions.width;
   }

   // Breite der restlichen Spalten ändern
   var dimensions = $('div_content1_' + id).getDimensions();
   var w = dimensions.width;
   if(w < max_w && w1 == 0)
   {
      $('div_content1_' + id).style.overflow = "auto";
      $('div_content1_' + id).style.width = w + "px";
   }
   else
   {
      var w = max_w - w1;
      $('div_content1_' + id).style.width = w + "px";
   }

   // restlichen Spalten um einen Pixel verschieben
   if(single != 1 && w1 != 0)
   {
      $('div_content3_' + id).style.left = "-1px";
      var dimensions = $('div_content3_' + id).getDimensions();
      var w = dimensions.width;
      w = w - 2;
      $('div_content2_' + id).style.width = w + "px";
   }
}

////////////////////////////////////
// Löschen-Button für Datumsfelder
////////////////////////////////////
function hoverDelete(obj, hover) {
   (hover == 0) ?
   obj.src = '../gfx/ExtDelete-21x22.gif':
   obj.src = '../gfx/ExtDelete-21x22-hover.gif';
}

function clearValue(obj) {
   if(!obj.val)obj.val = ''
   $(obj.id).value = obj.val;
}

////////////////////////////////////
// Vakanzabfrage
////////////////////////////////////
function vac(){

   $('vacInfo').show();
   $('vacResult').update('');
   window.clearTimeout(vacTimer);

   ExtWait('Bitte haben Sie einen Moment Geduld! Ihre Anfrage wird bearbeitet.');
   var vacNights = Ext.getDom('vacNights').value;
   var vacStart = Ext.getDom('vacStart').value;
   var vacEnd = Ext.getDom('vacEnd').value;
   
   var vacFerienhaus = 1;
   var vacFerienwohnung = 1;
   var vacHotel = 1;
   if($('vacFerienhaus').checked != true)vacFerienhaus = 0;
   if($('vacFerienwohnung').checked != true)vacFerienwohnung = 0;
   if($('vacHotel').checked != true)vacHotel = 0;

   var vacEinzelzimmer = 1;
   var vacDoppelzimmer = 1;
   var vacDreibettzimmer = 1;
   if($('vacEinzelzimmer').checked != true)vacEinzelzimmer = 0;
   if($('vacDoppelzimmer').checked != true)vacDoppelzimmer = 0;
   if($('vacDreibettzimmer').checked != true)vacDreibettzimmer = 0;

   var ajaxCon = new Ext.data.Connection({});
   ajaxCon.request({
   	url: 'http://www.unser-bensersiel.de/inc/ajax/unserBensersiel.ajax.php',
   	method: 'POST',
   	success: function(r, o){
         ExtWait('');
         eval(r.responseText);
   	},
   	failure: function(r, o)
   	{
   		alert('Fehler Vakanzabfrage');
   	},
   	params: {action: 'vac', vacNights: vacNights, vacStart: vacStart, vacEnd: vacEnd, vacFerienhaus: vacFerienhaus, vacFerienwohnung: vacFerienwohnung, vacHotel: vacHotel, vacEinzelzimmer: vacEinzelzimmer,vacDoppelzimmer: vacDoppelzimmer, vacDreibettzimmer: vacDreibettzimmer}
   });
}

// ändert die Anzeige der Angaben zu einem Suchergebnis
function toggleVacContent(obj){
   $('vacLodgingTimes' + obj.nr).hide();
   $('vacLodgingFeatures' + obj.nr).hide();
   $('vacLodgingAddress' + obj.nr).hide();
   $('vacLodgingImages' + obj.nr).hide();

   if(obj.target != 'vacLodgingImages' && $('aLoadVacLodgingImages' + obj.nr).style.display == "none"){
      $('aShowVacLodgingImages' + obj.nr).show();
      $('aHideVacLodgingImages' + obj.nr).hide();
   }

   var str = "";
   switch(obj.target){
      case 'vacLodgingTimes':
         str = '<br/>(inklusive grafischen Belegungskalender mit allen freien Terminen)';
         break;
      case 'vacLodgingFeatures':
         str = '<br/>(inklusive ausf&#252;hrlicher Beschreibung der Ausstattung)';
         break;
      case 'vacLodgingAddress':
         str = '<br/>(große Fotos, Ausstattung, Preise, freie Termine (Kalender), Anfrage, Buchung, Anfahrt)';
         break;
      case 'vacLodgingImages':
         str = '<br/>(inklusive aller Bilder in gro&#223;em Format)';
         break;
   }
   $('vacInfoLinks' + obj.nr).update(str);

   $(obj.target + obj.nr).show();
}

// array für die Vorschaubilder
var arrVacFirstImages = new Array();

// maximal 300 Ausgaben für Vakanzabfrage
for(var nr = 0; nr < 300; nr++) {
   // für die Aufzählung der Unterkünfte in der Ergebnisliste der Vakanzabfrage
   eval("var strNextVac" + nr + " = '';");

   // zum Wiederherstellen der jeweils ersten großen Bilder
   eval("var timerVacFirstImage" + nr + ";");
}

var vacTimer;
function nextVacInsert(obj){
   var nr = obj.nr;
   var max = obj.max;

   if(nr >= max)return false;

   if(typeof "strNextVac" + nr + "" == "undefined")return false;

   $('vacResult').insert(eval("strNextVac" + nr));

   nr = nr + 1;

   var obj = '{nr:' + nr + ', max: ' + max + '}';

   vacTimer = window.setTimeout('nextVacInsert(' + obj + ')',500);
}

// Schnellabfrage
function quickVac(){
   var p = new Ext.Panel({
      title: 'Schnellabfrage',
      renderTo: 'quickVac',
      frame: true,
      width: 200,
      autoLoad: {
         url: 'http://www.unser-bensersiel.de/inc/ajax/unserBensersiel.ajax.php',
         params: 'action=getQuickVac',
         callback: function() {
            var vacStartDatefield = new Ext.form.DateField({
      			id: 'quickVacStart',
      			applyTo: 'quickVacStart',
      			emptyText:'TT.MM.JJJJ',
      			invalidText: 'Bitte geben Sie ein Datum im Format TT.MM.JJJJ an.',
      			format: 'd.m.Y',
      			width:85
      		});

      		var vacEndDatefield = new Ext.form.DateField({
      			id: 'quickVacEnd',
      			applyTo: 'quickVacEnd',
      			emptyText:'TT.MM.JJJJ',
      			invalidText: 'Bitte geben Sie ein Datum im Format TT.MM.JJJJ an.',
      			format: 'd.m.Y',
      			width:85
      		});
         }
      },
      buttonAlign: 'center',
		buttons: [{
         text     : 'Suchen',
			handler  : function(){
            Ext.getDom('quickVacForm').submit();
         }
		}]
   });
}
////////////////////////////////////
// sonstiges
////////////////////////////////////
// erstellt ein verkleinertes Bild mit Bildlupe als Hinweis zum Anklicken
function createImgEnlarger(obj,aLink) {
	var str = '<img';
	for(var i in obj)
		str = str + ' ' + i + '="' + obj[i] + '"';
	str = str + ' border="0" />';

	if(typeof aLink == 'object') {
		var strA = '<a';
		for(var i in aLink)
			strA = strA + ' ' + i + '="' + aLink[i] + '"';
		str = strA + ' style="text-decoration:none;" /><div style="border:0px solid #000000;font-size:10px;text-align:center;">' + str + '<br><img src="../gfx/lupe-12x15.gif" width="12" height="15" border="0" style="margin:0 5px 0 0;"> Klicken zum Vergrößern</div></a>';
	}
	//alert(str);
	document.write(str);
}

// markiert alle Ankreuzkästchen einer Gruppe
function checkAll(chk,arr,frm){
	for(var a = 0; a < arr.length; a++){
		var arr_group = document.forms[frm].elements[arr[a]];
		for(var b = 0; b < arr_group.length; b++){
			arr_group[b].checked = chk;
		}
	}
}

function checkVacHotelAll(chk,n,frm){
   for(var x=0;x<document.forms[frm].elements.length;x++){
      if(document.forms[frm].elements[x].name==n)
         document.forms[frm].elements[x].checked=chk;
   }
}

function counterpopup (id) {
   var win;
   win=window.open("http://www.unser-bensersiel.de/html/counterPopup.html?id=" + id,"cp" + id,"width=580,height=550,screenX=0,screenY=0, left=0,top=0,fullscreen=0,directories=0,location=0,menubar=0,resizable=1,scrollbars=yes,status=1,toolbar=0,depend=no");
}

// Bilder-Popup der Unterkünfte
function showLodgingImagespopup(id){
   externpopup('http://www.unser-bensersiel.de/inc/showLodgingImages.inc.php?id_lodging=' + id + '',500,300,'BilderPopup',10,10,'1');
}

// bei Onmouseover auf eines der winzigen Bilder unterhalb des Vorschaubildes
// in der Vakanzabfrage wird das winzige Bild als Vorschaubild für eine kurze Zeit angezeigt
function showVacImagePreview(obj){
   if($('vacImagePreview' + obj.nr) == null)return false;
   eval("window.clearTimeout(timerVacFirstImage"+obj.nr+");");
   $('vacImagePreview' + obj.nr).src = obj.image;
   eval("timerVacFirstImage"+obj.nr+" = window.setTimeout('resetFirstVacImage("+obj.nr+")',3000);");
}

// großes Vorschaubild in Vakanzabfrage auf Ursprung zurücksetzen
function resetFirstVacImage(nr){
   $('vacImagePreview' + nr).src = arrVacFirstImages[nr];
}

// lädt die Bilder des ausgewählten Objektes im Hintergund nach
function showVacLodgingImages(obj) {
   // Übergabewerte
   var id_lodging = obj.id_lodging;
   var objID = obj.objID;
   var nr = obj.nr;

   $('vacLodgingImages' + nr).update('<p><img src="../gfx/default/tree/loading.gif">&nbsp;Bitte haben Sie einen Moment Geduld! Sollte der Ladevorgang l&#228;nger als 10 Sekunden dauern, klicken Sie bitte <a href="javascript:;" onclick="showVacLodgingImages({id_lodging:' + obj.id_lodging + ', objID:' + obj.objID +', nr:' + obj.nr +'});">hier</a>.');
   $('vacLodgingImages' + nr).show();

   // Zeitstempel benutzen, damit der Aufruf nicht aus dem Cache erfolgt
   var datum = new Date();
   var timestamp = Date.parse(datum);

   var param = "timestamp=" + timestamp +
               "&action=showVacLodgingImages" +
               "&id_lodging=" + id_lodging + "&objID=" + objID + "&nr=" + nr;

   // AJAX-Request absetzen
	var ajax = new Ajax.Request
   (
      "../inc/ajax/unserBensersiel.ajax.php",
      {
         method: "post",
         postBody: param,
         requestHeader:["Content-Type", "text/html"],
         onComplete: function(r)
         {
            eval(r.responseText);
         },
         onFailure: function(r)
         {
            falert(r.responseText);
         }
      }
   )
}

// startet die Preisberechnung in der Vakanzabfrage
function getVacPrices(obj){
   // Übergabewerte
   var id_lodging = obj.id_lodging;
   var tsStart = obj.tsStart;
   var tsEnd = obj.tsEnd;
   var nights = obj.nights;
   
   var vacNights = nights;
   if($F('vacNights') != "")vacNights = $F('vacNights');


   // Zeitstempel benutzen, damit der Aufruf nicht aus dem Cache erfolgt
   var datum = new Date();
   var timestamp = Date.parse(datum);

   var param = "timestamp=" + timestamp +
               "&action=getVacPrices" +
               "&id_lodging=" + id_lodging + "&tsStart=" + tsStart + "&tsEnd=" + tsEnd + "&vacNights=" + vacNights;

   // AJAX-Request absetzen
	var ajax = new Ajax.Request
   (
      "../inc/ajax/unserBensersiel.ajax.php",
      {
         method: "post",
         postBody: param,
         requestHeader:["Content-Type", "text/html"],
         onComplete: function(r)
         {
            eval(r.responseText);
         },
         onFailure: function(r)
         {
            falert(r.responseText);
         }
      }
   )
}