/* AJAX METHODS
   Karol Golka
   Mar 29, 2005
   http://rangeRoamer.com
*******************************/

/* loadCountryRatesDropDownList
--------------------------- */
function loadCountryRatesDropDownList(control, bAddSelectACountry)
{
	// load country rates drop down list
	rangeRoamer.AJAXmain.LoadCountryRatesDropDownList(control, bAddSelectACountry, loadCountryRatesDropDownList_callback);		
}

/* callback */
function loadCountryRatesDropDownList_callback(res)
{
	// display appropriate SELECT
	document.getElementById(res.value[0]).innerHTML = res.value[1];
	
	// don't load Country Rate Details if control == 'RatesStart'
	if(res.value[0] != 'RatesStart')		
		// update rates details (calling AJAX within a callback, b/c 2 in a row...)
		setTimeout("loadCountryRateDetails()", 100);	
}

/* Get URL Params
--------------------------- */
function gup( name )
{
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var tmpURL = window.location.href;
  var results = regex.exec( tmpURL );
  if( results == null )
    return "";
  else
    return results[1];
}

/* ddlRatesStartChanged
--------------------------- */
function ddlRatesStartChanged(id_country)
{	
	if (id_country != '0')
		// update order summary
		rangeRoamer.AJAXmain.SaveCountryRateSelection(id_country);		
	
	// try to get mode param
	var mode = gup('mode');
	
	// redirect with or w/o param
	if (mode == '')
		// redirect normally
		location.href = "http://www.rangeroamer.com/roaming-rates-details.aspx";
	else
		// redirect with param
		location.href = "http://www.rangeroamer.com/roaming-rates-details.aspx?mode=iframe";
}

/* ddlRatesCheckAnotherChanged
--------------------------- */
function ddlRatesCheckAnotherChanged(id_country)
{	
	if (id_country != '0')
	{
	    try
	    {
		rangeRoamer.AJAXmain.SaveCountryRateSelection(id_country);		
		}
		catch(e)
		{
		alert(e);
		}
    	// loading icon
	    document.getElementById("iconLoading").innerHTML = "<img src='http://www.rangeroamer.com/images/range-icon-loading.gif' />";
	
	    // loadCountryRateDetails
	    try
	    {
	    loadCountryRateDetails();
	    }
		catch(e)
		{
		alert(e);
		}
		
		if(navigator.appName=="Microsoft Internet Explorer")
    		window.location.reload();
	}
}

/* selRatesFromToChanged
--------------------------- */
function selRatesFromToChanged(id_from, id_to)
{	
	// get From To rate
	rangeRoamer.AJAXmain.LoadFromToRate(id_from, id_to, selRatesFromToChanged_callback);	
}

/* callback */
function selRatesFromToChanged_callback(res)
{
	// set appropriate span
	//spanFromTo_ (id_from)
	document.getElementById("spanFromTo_"+res.value[0]).innerHTML = res.value[1];
	
}

/* loadCountryRateDetails
--------------------------- */
function loadCountryRateDetails()
{
	// load country rates drop down list
	rangeRoamer.AJAXmain.LoadCountryRateDetails(loadCountryRateDetails_callback);		
}

/* callback */
function loadCountryRateDetails_callback(res)
{

	// display appropriate SELECT
	document.getElementById("spanCountryRatesDetails").innerHTML = res.value[1];
	
	// clear loading icon
	document.getElementById("iconLoading").innerHTML = "";
}

/* ModLinks4IFRAME
--------------------------- */
function ModLinks4IFRAME()
{
	// try to get mode param
	var mode = gup('mode');
	
	// redirect with or w/o param
	if (mode == 'iframe')
	{
		// variables
		var param = '?mode=iframe';
		
		// get coverage 1 & 2
		var coverage1 = document.getElementById("coverage1");
		var coverage2 = document.getElementById("coverage2");
		
		// cycle thru all <a> elemtns in each table
		var links1 = coverage1.getElementsByTagName("a");
		var links2 = coverage2.getElementsByTagName("a");
		
		// cycle thru links1
		for(var i = 0;i < links1.length;i++)
		{
			// change href and append ?mode=iframe
			links1[i].href = links1[i].href + param;		
		}
		
		// cycle thru links2
		for(var i = 0;i < links2.length;i++)
		{
			// change href and append ?mode=iframe
			links2[i].href = links2[i].href + param;		
		}
		
	
	}
	

}
