var UserName
var HotelID = ''

function ShowDetailOffer(response, idpos)
{

	CleanResponse = CleanHTML(response)
	ListOfElem = CleanResponse.split('-*-')
	
	if (document.getElementById("SENDTOAFRIENDLINK"))
	{
		document.getElementById("SENDTOAFRIENDLINK").innerHTML = ListOfElem[9]
	}
	
	HotelID = ListOfElem[7]
	
	document.getElementById("DETAILOFFER" + idpos).innerHTML = ListOfElem[0]
	
	if (detailMulti)
	{
		if(document.getElementById("PRICECONTENT" + idpos) && ListOfElem[2]){
			document.getElementById("PRICECONTENT" + idpos).innerHTML = trim(ListOfElem[2]);
		}
		if(document.getElementById("PRICETAXEDCONTENT" + idpos) && ListOfElem[3]){
			document.getElementById("PRICETAXEDCONTENT" + idpos).innerHTML = trim(ListOfElem[3]);
		}
		if(document.getElementById("TAXESCONTENT" + idpos) && ListOfElem[5]){
			document.getElementById("TAXESCONTENT" + idpos).innerHTML = trim(ListOfElem[5]);
		}
		if(document.getElementById("OLLINKCONTENT" + idpos) && ListOfElem[4]){
			document.getElementById("OLLINKCONTENT" + idpos).innerHTML = ListOfElem[4]
		}
		if(document.getElementById("HiddenPID" + idpos) && ListOfElem[1]){
			document.getElementById("HiddenPID" + idpos).value = ListOfElem[1]
		}
			
		LoadOptions(idpos, ListOfElem[1])
	}
	
	if(document.getElementById("DOImagesSlideShow"))
		InitializeSlideShow(ListOfElem[6], 'DOImagesSlideShow')
	
	if (document.getElementById("HOTELFEATURESTXT"))
		CallHotelFeature(ListOfElem[7])
		
	
	// Live Stats Values
	// If there is an HotelName (ListOfElem[8]) we pass it to the function
	
	if (ListOfElem[8] != "")
	{
		LoadHotelDetail(ListOfElem[7], ListOfElem[8]);	
	}else{
		LoadHotelDetail(ListOfElem[7],'');
	}
	
	if(document.getElementById("DOGOLCONTENT"))
	{
		if (ListOfElem[10] != "")
		{
			var RawDOGOLParams = ListOfElem[10] + "&HOTELEXITID=" + HotelID
			var DOGOLParams = RawDOGOLParams.replace(/&amp;/g, '&')
			CallDOGOL(DOGOLParams);
		}
	}
	
	
}


function LoadHotelDetail(HotID, HotelName)
{

	// Live Stats Values
	var DOStatParams = '&MKTSOURCE=DO'
	var hotelNameRef = HotelName;
	
	DOStatParams = DOStatParams + '&HOTELNAME=' + HotelName
	
	//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'Web2/DetailOffer/HotelDetail.asp?' + defaultParams + "&HOTELEXITID=" + HotID + statsParams
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/DetailOffer/HotelDetail.asp?' + defaultParams + "&HOTELEXITID=" + HotID + DOStatParams, 'ShowHotelDetail')
}

function ShowHotelDetail(response)
{

	CleanResponse = CleanHTML(response)
	ListOfElem = CleanResponse.split('-*-')
		if (ListOfElem[6] && ListOfElem[5] && ShowMapInDetailOffer == "true")
		{
			
			//set map size
				if (document.getElementById("hotelMap"))
				{
					document.getElementById("hotelMap").className = "DOMovieZoneContent";
					document.getElementById("hotelMap").style.width = '301px'
					document.getElementById("hotelMap").style.height = '190px'
				}
				
			//load google maps
				if (document.getElementById("hotelMap"))
				{
					loadGMap(ListOfElem[6], ListOfElem[5], parseInt(ListOfElem[10]),  parseInt(ListOfElem[11]) , ListOfElem[7], ListOfElem[8])	
				}
			//format the text
				//setTimeout('MakeCopyrightSmaller();', 500); 
		}
		
		if (ListOfElem[1] && ListOfElem[12])
		{
			if(ListOfElem[12] != "0")
			{
				hotelLogoUrl = SaticDBImagesURL + "DBImages/ExitHotelLogo/" + ListOfElem[1] + ".jpg";
								
				if(ListOfElem[12] == "1" && LangID == "FR"){
					hotelLogoUrl = hotelLogoUrl.replace("Fr", "EN")}
					
				if (document.getElementById("DETAILOFFERHOTELLOGO"))
				{
					document.getElementById("DETAILOFFERHOTELLOGO").src = hotelLogoUrl;
				}
			}
		}
				
		if(document.getElementById("MOVIEZONE") && ListOfElem[13])
		{
			var mediaTagValue = ListOfElem[13];
			
			if (mediaTagValue.indexOf('video') != '-1')
			{
				//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'include/linkredirect.asp?LINK=' + SaticWebServerURL + 'StaticContent/Common/Flv_Hotels/' + HotelID + '.htm'
				//PassAjaxResponseToFunction(APPSWebServerURL + 'include/linkredirect.asp?LINK=' + SaticWebServerURL + 'StaticContent/Common/Flv_Hotels/' + HotelID + '.htm', 'ShowMovieExterne')
				ShowMovieExterneV2(HotelID)
			}
			
		}
		
		if(document.getElementById("QTVRZONE") && ListOfElem[13])
		{
			var mediaTagValue = ListOfElem[13];
			
			if (mediaTagValue.indexOf('QTVR') != '-1')
			{
				//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'include/linkredirect.asp?LINK=' + SaticWebServerURL + 'StaticContent/Common/QTVR/' + HotelID + '.txt'
				PassAjaxResponseToFunction(APPSWebServerURL + 'include/linkredirect.asp?LINK=' + SaticWebServerURL + 'DBImages/Common/QTVR/' + HotelID + '.txt', 'ShowQTVR')				
			}
			
		}
		
}


function CallHotelFeature(ID)
{
	//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'Web2/DetailOffer/HotelFeature.asp?' + defaultParams + '&HotelExitID=' + ID
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/DetailOffer/HotelFeature.asp?' + defaultParams + '&HotelExitID=' + ID, 'ShowHotelFeature')
}

function ShowHotelFeature(response)
{
	
	CleanResponse = FilterContent(response)
	ListOfElem = CleanResponse.split('-*-')
	
	TagLinksID = ListOfElem[1].split(',')
	linksContentStr = ''
	
	if (document.getElementById("HOTELFEATURESTXT"))
	{
		for(d=0;d<=TagLinksID.length-1;d++)
		{
			tagLinkValues = TagLinksID[d].split('--')
			
			if(trim(tagLinkValues[0]) != '' && trim(tagLinkValues[1]) != '' && trim(tagLinkValues[2]) != '')
			{
				linksContentStr += '<a href=' + '"' + APPSWebServerURL + 'web2/Search/ulysse/default.asp?' + defaultParams + '&WHATID=251&TYPE=gamme&DESTINATIONID=' + trim(tagLinkValues[0]) + '&CTEMPLATE=GAMME&PARENTID=' + trim(tagLinkValues[2]) + '"' + ' class=' + '"' + 'HotelFeatureLink' + '"' + '>' + trim(tagLinkValues[1]) + '</a>'
				if(d != TagLinksID.length-1 && TagLinksID.length > 1)
				{linksContentStr += ', '}
			}
			// else if (trim(tagLinkValues[1]) != ''){
			//	linksContentStr += '<span class=' + '"' + 'HotelFeatureNonClickText' + '"' +  '>' + trim(tagLinkValues[1]) + '</span>'
			//	if(d != TagLinksID.length-1)
			//	{linksContentStr += ', '}	
			//}
		}
		
		document.getElementById("HOTELFEATURESTXT").innerHTML = linksContentStr
		
		if (document.getElementById("HotelDetailFeatureContent")){
			if(linksContentStr != ''){
				document.getElementById("HotelDetailFeatureContent").className="normal";
				if(document.getElementById("DOHotelFeatureTR")){
					document.getElementById("DOHotelFeatureTR").className = "normal";
				}
			}
		}
		
	}
	
	
	
	TaglistID = ListOfElem[2].split(',')
	contentStr = ''
	
	if (document.getElementById("HOTELFEATURESSECTION"))
	{
		for(c=0;c<=TaglistID.length-1;c++)
		{
			contentStr += '<div id="HOTELFEATURESSECTION' + c + '"></div>'
			bothVal = TaglistID[c].split('--')
			if (trim(bothVal[0]) != ''){
				CallUpSaleFeature(trim(bothVal[0]), trim(bothVal[1]), c)}
			
		}
	
		document.getElementById("HOTELFEATURESSECTION").innerHTML = contentStr
	}
}

function CallUpSaleFeature(id, parentid, num)
{
	//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'Web2/DetailOffer/UpSaleContent.asp?' + defaultParams + '&ID=' + id  + '&PARENTID=' + parentid + '&HOTELIDSEL=' + HotelID
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/DetailOffer/UpSaleContent.asp?' + defaultParams + '&ID=' + id  + '&PARENTID=' + parentid + '&HOTELIDSEL=' + HotelID, 'ShowUpSaleFeature', num)
}

function ShowUpSaleFeature(response, val)
{
	CleanResponse = FilterContent(response)
	ListOfElem = CleanResponse.split('-*-')
	
	document.getElementById("HOTELFEATURESSECTION" + val).innerHTML = ListOfElem[1]
}

function LoadOptions(idpos, PID)
{
	params = defaultParams + '&PID=' + PID + '&OLID=' + idpos
	//document.getElementById("DEBUG").innerHTML =APPSWebServerURL + 'Web2/Offerlist/Package/OptionsDO.asp?' + params + "&XSLTEMPLATEREF=" + XSLTemplateRef
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/Offerlist/Package/OptionsDO.asp?' + params + "&XSLTEMPLATEREF=" + XSLTemplateRef, 'ShowOptionsDetailOffer', idpos)
	
}

function ShowOptionsDetailOffer(response, idpos)
{

	CleanResponse = CleanHTML(response)
	ListOfElem = CleanResponse.split('-*-')
	if (document.getElementById("duration" + idpos) && ListOfElem[1].length>0)
		document.getElementById("duration" + idpos).innerHTML = ListOfElem[1]
	if (document.getElementById("MEALPLANBOX" + idpos) && ListOfElem[2].length>0)
		document.getElementById("MEALPLANBOX" + idpos).innerHTML = ListOfElem[2]
	if (document.getElementById("ROOMBOX" + idpos) && ListOfElem[3].length>0)
		document.getElementById("ROOMBOX" + idpos).innerHTML = ListOfElem[3]
	
}

function ShowMovieExterne(response)
{
	if(response.indexOf('HTTP 404') == -1)
	{
		document.getElementById("MOVIEZONE").innerHTML = '<iframe src="' + SaticWebServerURL + 'StaticContent/Common/Flv_Hotels/' + HotelID + '.htm" width="302" height="237" scrolling="no" frameborder="0" style="margin:0px; padding:0px;"></iframe>'
		document.getElementById("MOVIEZONE").className = "DOMovieZoneContent";
	}
}

function ShowMovieExterneV2(hotelid)
{
	document.getElementById("MOVIEZONE").innerHTML = '<iframe src="' + SaticWebServerURL + 'DBImages/Common/Video/HTMLContainer.htm?HOTELEXITID=' + hotelid + '" width="302" height="237" scrolling="no" frameborder="0" style="margin:0px; padding:0px;"></iframe>'
	document.getElementById("MOVIEZONE").className = "DOMovieZoneContent";
}

var QTVRString = "";

function ShowQTVR(response)
{

	if(response.indexOf('HTTP 404') == -1)
	{
		CleanResponse = FilterContent(response)
		CleanResponse = CleanResponse + '--'
		ListOfElem = CleanResponse.split('--')
		
		for(var i = 0; i < ListOfElem.length; ++i)
		{
			QTVRString = QTVRString + ListOfElem[i];
			if (i < ListOfElem.length - 1)
			{
				QTVRString = QTVRString + '--';
			}
		}
		
		var QTVRSize = "Small";
		
		//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'Web2/DetailOffer/HotelQTVR.asp?' + params + "&XSLTEMPLATEREF=" + XSLTemplateRef + "&QTVRSTRING=" + QTVRString + "&QTVRSIZE=" + QTVRSize
		PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/DetailOffer/HotelQTVR.asp?' + params + "&XSLTEMPLATEREF=" + XSLTemplateRef + "&QTVRSTRING=" + QTVRString + "&QTVRSIZE=" + QTVRSize, 'ShowQTVRDetail')
		
	}
}

function ShowQTVRDetail(response)
{
	CleanResponse = FilterContent(response)
	ListOfElem = CleanResponse.split('-*-')
	
	document.getElementById("QTVRZONE").innerHTML = ListOfElem[1];
	document.getElementById("QTVRZONE").className = "DOMovieZoneContent";
}

function CallBigQTVR(PID, QTVRString, QTVRSize)
{
	window.open(APPSWebServerURL + "Web2/DetailOffer/HotelQTVR.asp?" + defaultParams + "&PID=" + PID + "&QTVRSTRING=" + QTVRString + "&QTVRSIZE=" + QTVRSize,'','toolbar=no,location=no,status=no,scrollbars=no,resizable=no,width=680,height=600')
}

function ShowQTVRElem(elemID)
{
	for(var i = 1; i <= 4; i++)
	{
		if(document.getElementById("BigQTVRElemVideoTR" + i) && document.getElementById("BigQTVRElemTitleTR" + i))
		{
			document.getElementById("BigQTVRElemVideoTR" + i).className = "hidden";
			document.getElementById("BigQTVRElemTitleTR" + i).className = "hidden";
		}
	}
	
	document.getElementById("BigQTVRElemVideoTR" + elemID).className = "normal";
	document.getElementById("BigQTVRElemTitleTR" + elemID).className = "normal";
	
}





function MakeCopyrightSmaller() 
{ 
  map = document.map
  for(var i = 0; i < map.getContainer().childNodes.length; ++i)
  { 
	if(map.getContainer().childNodes[i].innerHTML.indexOf(String.fromCharCode(169)) != -1)
	{
	  modifStr = map.getContainer().childNodes[i].innerHTML.replace(': white', ':')
	 // modifStr = modifStr.replace('Ã©', 'é')
	  document.getElementById("MapCopyright").innerHTML = modifStr
	  map.getContainer().childNodes[i].innerHTML = ''
      //map.getContainer().childNodes[i].style.fontSize = '9px'; 
      break; 
    } 
  } 

} 

function SendToAFriend(PID, orgID, hotelID, hotelName, hotelRanking)
{
	hotelNameValue = hotelName.replace(';;', "'")
	//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + "DetailOffer/Package/PopUp/PopUpSendEmail.asp?" + defaultParams + "&PID=" + PID + "&ORGID=" + orgID + "&HOTELID=" + hotelID + "&HOTELNAME=" + trim(hotelNameValue) + "&HOTELRANKING=" + hotelRanking
	window.open(APPSWebServerURL + "DetailOffer/Package/PopUp/PopUpSendEmail.asp?" + defaultParams + "&PID=" + PID + "&ORGID=" + orgID + "&HOTELID=" + hotelID + "&HOTELNAME=" + trim(hotelNameValue) + "&HOTELRANKING=" + hotelRanking,'','toolbar=no,location=no,status=no,scrollbars=no,resizable=no,width=470,height=360')
}

function AddToTravelBag(PID)
{
	params = defaultParams + '&PID=' + PID
	//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'Web2/Offerlist/Package/TBSave.asp?' + params
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/Offerlist/Package/TBSave.asp?' + params, 'ResultAddTB')
}

function AddToTravelBagFlight(PID)
{
	params = defaultParams + '&PID=' + PID
	//document.getElementById("DEBUG").innerHTML = APPSWebServerURL + 'Web2/Offerlist/Flight/TBSave.asp?' + params
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/Offerlist/Flight/TBSave.asp?' + params, 'ResultAddTB')
}

function ResultAddTB(response)
{
	CleanResponse = CleanHTML(response)
	ListOfElem = CleanResponse.split('-*-')
	if (ListOfElem[1] == "good")
	{
		//update top number
		CallTBCount(defaultParams + '&USERNAME=' + UserName + '&JUSTCOUNT=YES');

	}

}

// Add to favorite animation
function AddToFavoriteEffect(button, linkContent, textContent)
{
	var classNonFavorite = "nonFavorite";
	var ATFButton = document.getElementById(button);
	var classElem = ATFButton.className;
	
	if (classElem == classNonFavorite)
	{
		FadeOutFadIn(button, 100, 0, 2000);
		FadeOutFadIn(button, 0, 100, 2000);
		setTimeout("ChangeATFText('"+linkContent+"', '"+textContent+"')", 2000);
		ATFButton.className = "favorite";
	}
}

//Change Text
function ChangeATFText(link, text)
{
	var ATFLinkContent = document.getElementById(link);
	var ATFTextContent = document.getElementById(text);
	
	ATFLinkContent.className = "hidden";
	ATFTextContent.className = "atfAddedText";
	
	/*var ATFText = document.getElementById(id);
	var TextToShow = "<b>" + text + "</b>"
	ATFText.innerHTML= TextToShow;*/	
}

// Fade out and fade in effect
function FadeOutFadIn(id, opacStart, opacEnd, millisec) 
{
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("ChangeOpacity(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("ChangeOpacity(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
} 

//Change the opacity
function ChangeOpacity(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}



function CallDOGOL(params)
{
	PassAjaxResponseToFunction(APPSWebServerURL + 'Web2/Offerlist/Package/ContentFlex.asp?' + defaultParams + params + '&GOLTYPE=Mini', 'ShowDOGOL')
}

function ShowDOGOL(response)
{
	
	CleanResponse = FilterContent(response)
	ListOfElem = CleanResponse.split('-*-')
	
	if(document.getElementById("DOGOLCONTENT"))	
		document.getElementById("DOGOLCONTENT").innerHTML =  ListOfElem[1];
		
}

function GoToDOPack(PID)
{
	location.href = APPSWebServerURL + 'Web2/DetailOffer/default.asp?' + defaultParams + '&WHATID=1&PID=' + PID
}




//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
