var baseUrl = "https://www.cartrawler.com/affiliates/abeBook.html?clientId=183117"; // <-- verified

/*
	Given the correct country code, generates an iframe as content for the engine div.
    Also includes all the basic parameters for first impression.
*/
function GenerateEngineInterfaceByUrl(countryLangCode, height, width, locationCode, airportCode, countryCode)
{
    var htmlStr 	= "";
    var engineSrc 	= baseUrl + "&lang=" + countryLangCode; // + "&orderId=" + GenerateOrderId(); 

    if (locationCode != '')
    {
    	engineSrc	+= "&countryId=" + countryCode + "&pickupLocationId=" + locationCode;
	}
 
    if (airportCode != '')
    {
    	engineSrc	+= "&pickupIATACode=" + airportCode;
	}
     
    htmlStr += "<iframe name='engineMainFrame' src='" + engineSrc + "' scrolling='no' vspace='0' hspace='0' frameborder='0' style='border:none 0px blue; width:" + width + "px;height:" + height + "px;'></iframe>";    
   
	return htmlStr;
}

function GenerateEngineInterfaceByCode(countryLangCode, locationCode, airportCode, countryCode, incStep2, carGroup)
{
    var ctOTAEngine = new CT_OTA_Engine("ABE");
   
   // alert(incStep2);
   
    if (incStep2 == 'true')
    {
		ctOTAEngine.setStep2URL("http://www.epiccarhire.com/car-rental/booking.php");
    }
	
    ctOTAEngine.setDefaultURL("https://ota.cartrawler.com/cartrawlercustomabe/");

    ctOTAEngine.setURL("/modules/otaproxy.php"); // Provided by CarTrawler
    ctOTAEngine.setTarget("Production"); // Target for the engine
    ctOTAEngine.setClientID("183117"); // Provided by CarTrawler
    
    if (countryCode != '')
    {
    	// Default Country
    	ctOTAEngine.setCountryID(countryCode);
    } 
    
    if (locationCode != '')
    {
    	ctOTAEngine.setPickupID(locationCode); // Default Pickup Location
    	ctOTAEngine.setReturnID(locationCode); // Default Return Location
    }
    
    ctOTAEngine.addCurrency(); // adds list of all available currencies
    
    if (incStep2 == 'true')
    {
      ctOTAEngine.setCurrency("EUR"); // default Currency
      ctOTAEngine.setDefaultLanguage(countryLangCode); // Default Language
      ctOTAEngine.setCarGroupID(carGroup); // Default Car Group
    }
    
    /*
    else
    {
    	ctOTAEngine.setCarGroupID(carGroup);
    }*/
    
    ctOTAEngine.setTemplate("hybrid1");
    ctOTAEngine.setTemplateColor("blue"); // This line is optional to setup color scheme
    // ctOTAEngine.enableAutoSuggest({style: "lightgray", flag: true});
    ctOTAEngine.enableNewCalendar({style: "blue", daterange: true});
    ctOTAEngine.addCustomStyle(null,"/includes/embeds/engine.css")
    
    ctOTAEngine.setWebsiteConditionsURL("http://www.cartrawler.com/bookingengine-conditions.html");
    ctOTAEngine.setErrorReportUrl("https://www.cartrawler.com/ajaxerror.asp");
    ctOTAEngine.displayOptionalInsurance(); // Display Insurance on Step 3
    
    if (incStep2 == 'true')
    {
    	ctOTAEngine.displayStep1();
    }
    else
    {
    	 ctOTAEngine.displayBookEngine();
    }   
}

/*
	Generates a unique order id to be used as reference for the next booking.
    Affiliate id will be added to the order id if present.
*/
function GenerateOrderId()
{
	return 183117; // TODO: Auto generate from db. 
}

/*
	Updates the engine div content with the generated code.
*/
function UpdateEngine(countryLangCode, locationCode, airportCode, countryCode, incStep2, carGroup)
{
	if (!countryLangCode)
    	return;
       
    GenerateEngineInterfaceByCode(countryLangCode, locationCode, airportCode, countryCode, incStep2, carGroup);
    	
        // var divEngine = document.getElementById('engine_div');
        // if (divEngine != 'undefined')
        // divEngine.innerHTML = GenerateEngineInterfaceByUrl(countryLangCode, 1024, 768, locationCode, airportCode, countryCode);
}


/*
&pickupMonth=02&pickupYear=2008&pickupDate=09&pickupHour=10&pickupMinute=00&pickupIATACode=DUB&returnMonth=
02&returnYear=2008&returnDate=12&returnHour=10&returnMinute=00&returnIATACode=DUB&curr
ency=GBP&residency=Ireland&residencyId=IE&countryId=GB&lang=EN&carGroup=1&age=22&promo
tionCode=AA&orderId=112233
*/
