
/**Search Towns*/
var townByCo = new Array();
var townByNo = new Array();
townByNo[0] = townByCo["Antrim"] = new Array("Ballycastle","Ballymena","Belfast","Bushmills","Carrickfergus","Crumlin","Cushendall","Glenariff","Lisburn","Randalstown");
townByNo[1] = townByCo["Armagh"] = new Array("Armagh","Keady");
townByNo[2] = townByCo["Carlow"] = new Array("Bagenalstown","Carlow","Carlow Town","Castledermot","Tullow");
townByNo[3] = townByCo["Cavan"] = new Array("Ballyconnell","Belturbet","Cavan","Killeshandra","Virginia");
townByNo[4] = townByCo["Clare"] = new Array("Ballyvaughan","Bunratty","Corofin","Doolin","Doolin/Cliffs of Moher","Ennis","Ennistymon","Kilkee","Killaloe","Killimer","Kilrush","Lahinch","Liscannor","Lisdoonvarna","Miltown Malbay","Mountshannon","Newmarket-on-Fergus","OBriens Bridge","Quin","Shannon","Tulla Quin");
townByNo[5] = townByCo["Cork"] = new Array("Ballincollig","Ballinhassig Kinsale","Ballycotton","Ballyhooly","Ballyvourney","Baltimore","Bandon","Bantry","Blarney","Carrigaline Ferryport Airport","Carrigtwohill","Castletownbere","Castletownberehaven Ardgroom","Clonakilty","Cobh","Conna","Cork City","Cork City Airport Kinsale Road","Cork City Bishopstown","Cork City Dennehys Cross","Cork City Douglas","Cork City Lower Glanmire Road","Cork City Wilton University","Crookhaven Mizen Head","Drimoleague Skibbereen","Fermoy","Glengarriff","Goleen","Innishannon near Kinsale","Kinsale","Macroom","Mallow","Midleton","Mitchelstown","Rosscarbery","Schull","Skibbereen","Skibbereen Town","Timoleague","Union Hall Glandore","Youghal");
townByNo[6] = townByCo["Derry"] = new Array("Coleraine","Derry","Feeny","LondonDerry");
townByNo[7] = townByCo["Donegal"] = new Array("Ardara","Ardara Portnoo","Ballybofey Stranorlar","Ballyshannon","Buncrana","Bundoran","Carrigans Near Derry","Carrigart","Clonmany Inishowen","Culdaff","Donegal Mountcharles","Donegal Town","Donegal Town Lough Eske","Downings","Dunfanaghy","Dungloe","Falcarragh","Glenties","Killybegs","Letterkenny","Ramelton","Raphoe");
townByNo[8] = townByCo["Down"] = new Array("Banbridge","Down","Downpatrick","Dromore","Gilford","Kilkeel","Newcastle","Newtownards");
townByNo[9] = townByCo["Dublin"] = new Array("Artane","Ballsbridge","Blackrock","Castleknock","Clontarf","Donnybrook","Drumcondra","Dun Laoghaire","Howth","Killiney","Lucan","Lusk","Malahide","Phibsboro","Raheny","Ranelagh","Rathcoole","Rathfarnham","Rathmines","Portmarnock","Sandyford Village","Sandymount","Shankill","Skerries","South Circular Road","Sutton","Swords","Swords/Airport","Swords/Balbriggan","Swords/Ballyboghil","Templeogue","Terenure");
townByNo[10] = townByCo["Fermanagh"] = new Array("Enniskillen");
townByNo[11] = townByCo["Galway"] = new Array("Annaghdown","Aran Islands","Aran Islands (Inismore)","Aran Islands Inis Meain","Athenry","Ballinasloe","Ballyconneely Connemara","Barna","Barna Village","Beal A Daingin Connemara","Carna Connemara","Carraroe","Carraroe Connemara","Claregalway","Clarinbridge","Cleggan Connemara","Clifden","Clifden Connemara","Clonbur Cong Connemara","Corr Na Mona","Craughwell","Galway","Galway City","Galway City Castlegar Area","Galway City Dangan","Galway City Glenina Heights","Galway City Grattan Park","Galway City Lower Salthill","Galway City Merlin Park","Galway City Salthill","Galway City Upper Salthill","Galway City Whitestrand","Gort","Kinvara","Kylemore Connemara","Leenane Connemara","Loughrea","Moycullen","Oranmore","Oughterard Connemara","Portumna","Renvyle Connemara","Roundstone Connemara","Spiddal Connemara","Spiddal Furbo","Tuam");
townByNo[12] = townByCo["Kerry"] = new Array("Annascaul (Dingle Peninsula)","Ardfert","Ballinskelligs","Ballybunion","Ballyduff","Ballylongford","Caherdaniel Ring of Kerry","Cahirciveen","Castlegregory","Castlegregory Dingle Peninsula","Castleisland","Castlemaine","Dingle","Glenbeigh","Glenbeigh Ring of Kerry","Inch Dingle Peninsula","Kenmare","Kenmare Lauragh","Kilgarvan","Killarney","Killarney Aghadoe","Killarney Ballycasheen","Killarney Beaufort","Killarney Cork Road","Killarney Countess Road","Killarney Fossa","Killarney Gap of Dunloe","Killarney Muckross Road","Killarney Ross Road","Killarney Town","Killarney Tralee Road","Killorglin","Killorglin Ring of Kerry","Listowel","Milltown","Portmagee","Sneem Ring of Kerry","Tralee","Tralee Ballyard","Tralee Fenit Road","Tralee Killarney Road","Valentia Island","Waterville","Waterville Ring Of Kerry");
townByNo[13] = townByCo["Kildare"] = new Array("Athy","Clane","Clane/Straffan","Leixlip","Maynooth","Naas","Newbridge");
townByNo[14] = townByCo["Kilkenny"] = new Array("Bennettsbridge","Callan","Dungarvan","Freshford","Graiguenamanagh","Kilkenny","Kilkenny City","Thomastown");
townByNo[15] = townByCo["Laois"] = new Array("Borris-in-Ossory","Mountmellick","Portlaoise","Roscrea");
townByNo[16] = townByCo["Leitrim"] = new Array("Ballinamore","Carrick-on-Shannon","Manorhamilton");
townByNo[17] = townByCo["Limerick"] = new Array("Abbeyfeale","Adare","Askeaton","Askeaton Pallaskenry","Ballyneety","Bruff","Glin","Kilmallock","Limerick","Limerick City","Limerick City Castletroy","Limerick City Ennis Road","Murroe","Newcastle West","Patrickswell");
townByNo[18] = townByCo["Longford"] = new Array("Ardagh","Longford");
townByNo[19] = townByCo["Louth"] = new Array("Ardee","Carlingford","Clogherhead","Drogheda","Dundalk");
townByNo[20] = townByCo["Mayo"] = new Array("Achill Island","Ballina","Ballinrobe","Ballycastle","Belmullet","Belmullet Peninsula","Castlebar","Charlestown","Claremorris","Cong","Crossmolina","Kiltimagh","Knock","Louisburgh","Newport","Swinford","Westport");
townByNo[21] = townByCo["Meath"] = new Array("Ashbourne","Athboy","Bettystown","Julianstown","Kells","Navan","Navan/Slane","Slane","Tara","Trim");
townByNo[22] = townByCo["Monaghan"] = new Array("Carrickmacross","Castleblaney","Emyvale","Monaghan");
townByNo[23] = townByCo["Offaly"] = new Array("Banagher","Cloghan","Clonmacnoise","Edenderry","Kinnitty","Portarlington","Shannonbridge","Tullamore");
townByNo[24] = townByCo["Roscommon"] = new Array("Athlone","Boyle","Castlerea","Rooskey","Roscommon");
townByNo[25] = townByCo["Sligo"] = new Array("Ballisodare","Ballymote","Castlebaldwin","Drumcliffe","Grange","Rosses Point","Sligo","Sligo Town","Strandhill","Tubbercurry");
townByNo[26] = townByCo["Tipperary"] = new Array("Birdhill","Borrisokane","Cahir","Carrick-On-Suir","Cashel","Clonmel","Glen of Aherlow","Nenagh","Nenagh Lough Derg","Roscrea","Terryglass","Thurles","Tipperary");
townByNo[27] = townByCo["Tyrone"] = new Array("Aughnacloy","Cookstown","Omagh");
townByNo[28] = townByCo["Waterford"] = new Array("Ardmore","Ballymacarbry Nire Valley","Cappoquin","Dungarvan","Dunmore East","Lismore","Tramore","Waterford");
townByNo[29] = townByCo["Westmeath"] = new Array("Athlone","Kinnegad","Moate","Mullingar");
townByNo[30] = townByCo["Wexford"] = new Array("Arthurstown","Bunclody","Enniscorthy","Gorey","Kilmore Quay","Kilrane","New Ross","Rosslare Harbour","Wexford");
townByNo[31] = townByCo["Wicklow"] = new Array("Arklow","Ashford","Avoca","Blessington","Bray","Enniskerry","Glendalough","Greystones","Rathdrum","Wicklow");

var coByReg = new Array();
var coByNo = new Array();
coByNo[0] = coByReg["Dublin & Ireland East"] = new Array("Dublin","Louth","Meath","Wicklow","Kildare","Cavan","Laois","Monaghan","Offaly","Westmeath");
coByNo[1] = coByReg["Northern Ireland"] = new Array("Antrim","Armagh","Derry","Down","Fermanagh","Tyrone","Donegal","Leitrim","Sligo");
coByNo[2] = coByReg["Ireland South"] = new Array("Carlow","Kilkenny","Waterford","Wexford","Cork","Kerry");
coByNo[3] = coByReg["Ireland West"] = new Array("Galway","Mayo","Roscommon","Clare","Limerick","Tipperary","Longford");


function setTowns(toObj, region, county)
{
	var opt = toObj.options;
	opt.length = 0;
	opt[0] = new Option("","");
	toObj.selectedIndex = 0;
	var list;
	if(county == "") // county not set
	{
		list = new Array();
		var index = 0;
		if(region == "") //region not set = display all towns
		{
			for(var i = 0; i < townByNo.length; i++)
				for(var j = 0; j < townByNo[i].length; j++)
					list[index++] = townByNo[i][j];
		}
		else // display all towns in region
		{
			for(var i = 0; i < coByReg[region].length; i++)
			{
				var subl = townByCo[coByReg[region][i]];
				for(var j = 0; j < subl.length; j++)
					list[index++] = subl[j];
			}
		}
		sort(list);
	}
	else // display all towns in county
		list = townByCo[county];
	
	for(var i = 0; i < list.length; i++)
		opt[i+1] = new Option(list[i],list[i]);
}



/**Set contents of counties menu when region is set*/
function setCounties(coObj, region)
{
	var opt = coObj.options;
	opt.length = 0;
	opt[0] = new Option("","");
	coObj.selectedIndex = 0;
	var list;
	if(region == "")//get All counties
	{
		var index = 0;
		var list = new Array();
		for(var i = 0; i < coByNo.length; i++)
			for(var j = 0; j < coByNo[i].length; j++)
				list[index++] = coByNo[i][j];
		sort(list);
	}
	else
	{
		list = coByReg[region];
	}

	for(var i = 0; i < list.length; i++)
		opt[i+1] = new Option(list[i],list[i]);
}


function setRegions(regObj, lang)
{
	var opt = regObj.options;
	if(lang=="sp")
	{
		opt[0] = new Option("","");
		opt[1] = new Option("Costa Este","Dublin & Ireland East");
		opt[2] = new Option("Norte de Irlanda","Northern Ireland");
		opt[3] = new Option("Sur de Irlanda","Ireland South");
		opt[4] = new Option("Oeste de Irlanda","Ireland West");
	}
	else
	{
		opt[0] = new Option("","");
		opt[1] = new Option("Dublin & Ireland East","Dublin & Ireland East");
		opt[2] = new Option("Northern Ireland","Northern Ireland");
		opt[3] = new Option("Ireland South","Ireland South");
		opt[4] = new Option("Ireland West","Ireland West");
	}
}




//simple linear sort
function sort(array)
{
	for(var i = 0; i < array.length; i++)
		for(var j = i+1; j < array.length; j++)
		{
			if(array[j] < array[i])
			{
				var tmp = array[i];
				array[i] = array[j];
				array[j] = tmp;
			}
		}
}