//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		alert("Your Browser Sucks!\nIt's about time to upgrade don't you think?");
	}
}

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();

//Called from keyup on the search textbox.
//Starts the AJAX request.
function searchSuggest() {
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
	  document.getElementById("search_suggest").style.zIndex="100";
		var str = escape(document.getElementById('regSearch').value);
		searchReq.open("GET", 'searchSuggest.php?search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggest; 
		searchReq.send(null);
	}		
}

function handleSearchSuggest() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('search_suggest')
		ss.innerHTML = '';
		var str = searchReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i++) {
			//Build our element string.  This is cleaner using the DOM, but
			//IE doesn't support dynamically added attributes.
			var suggest = '<div onmouseover="javascript:suggestOver(this);" ';
			suggest += 'onmouseout="javascript:suggestOut(this);" ';
			suggest += 'onclick="javascript:setSearch(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
		}
	}
}

//Mouse over function
function suggestOver(div_value) {
	div_value.className = 'suggest_link_over';
}
//Mouse out function
function suggestOut(div_value) {
	div_value.className = 'suggest_link';
}

//Click function
function setSearch(value) {
	document.getElementById('regSearch').value = value;
	document.getElementById('search_suggest').innerHTML = '';
}

function selectOption()
{
//first find monday's value in array index format i.e. mondayopen = options[0]
  var opentime = document.getElementById('mondayopen').selectedIndex;
  var closetime = document.getElementById('mondayclose').selectedIndex;
//then apply those values to every other day
  document.getElementById('tuesdayopen').selectedIndex = opentime;
  document.getElementById('tuesdayclose').selectedIndex = closetime;
  document.getElementById('wednesdayopen').selectedIndex = opentime;
  document.getElementById('wednesdayclose').selectedIndex = closetime;
  document.getElementById('thursdayopen').selectedIndex = opentime;
  document.getElementById('thursdayclose').selectedIndex = closetime;
  document.getElementById('fridayopen').selectedIndex = opentime;
  document.getElementById('fridayclose').selectedIndex = closetime;
  document.getElementById('saturdayopen').selectedIndex = opentime;
  document.getElementById('saturdayclose').selectedIndex = closetime;
  document.getElementById('sundayopen').selectedIndex = opentime;
  document.getElementById('sundayclose').selectedIndex = closetime;
}

function expandCollapse() {
for (var i=0; i<expandCollapse.arguments.length; i++) {
var element = document.getElementById(expandCollapse.arguments[i]);
element.style.display = (element.style.display == 'none') ? 'block' : 'none';
	}
}

function bookmark_us(url, title){

if (window.sidebar) // firefox
    window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ // opera
    var elem = document.createElement('a');
    elem.setAttribute('href',url);
    elem.setAttribute('title',title);
    elem.setAttribute('rel','sidebar');
    elem.click();
}
else if(document.all)// ie
    window.external.AddFavorite(url, title);
}

//Change city listing.
function listCity() {
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
	  //document.getElementById("jumpMenu");
		var str = escape(document.getElementById('jumpMenu').value);
		if(str != ""){
      searchReq.open("GET", 'changeCity.php?sortby=' + str, true);
      searchReq.onreadystatechange = handlelistCity; 
      searchReq.send(null);
		}
	}		
}

function handlelistCity() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('cityChange')
		ss.innerHTML = '';
		var str = searchReq.responseText;
		ss.innerHTML += str;
	}
}

//Change city listing.
function deleteSpec(specid) {
  var special = specid;
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
      searchReq.open("GET", 'deleteSpecial.php?specid=' + special, true);
      searchReq.onreadystatechange = handledeleteSpec; 
      searchReq.send(null);
		}		
}

function handledeleteSpec() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('specialbubble')
		ss.innerHTML = '';
		var str = searchReq.responseText;
		ss.innerHTML += str;
	}
}

function hideboxes(){
	var citybox = document.getElementById('citybox')
	var specbox = document.getElementById('specbox')
	if(specbox){
	var sp1 = document.createElement("a");
	// give it an id attribute called 'newSpan'
	sp1.setAttribute("id", "newLink");
	sp1.setAttribute("href", "#");
	sp1.setAttribute("onclick", "showbespokebox(); return false;");
	// create some content for the newly created element.
	var sp1_content = document.createTextNode("Not shown above? Click Here");
	// apply that content to the new element
	sp1.appendChild(sp1_content);
	var sp2 = document.getElementById("specbox");
	var parentDiv = sp2.parentNode;
	// insert the new element into the DOM before sp2
	parentDiv.insertBefore(sp1, sp2);
	//hide the specbox
	specbox.style.display = "none"
	
	}
	
	var cb = document.createElement("a");
	// give it an id attribute called 'newSpan'
	cb.setAttribute("id", "newLink2");
	cb.setAttribute("href", "#");
	cb.setAttribute("onclick", "showcitybox(); return false;");
	// create some content for the newly created element.
	var cb_content = document.createTextNode("Not listed? Click Here");
	// apply that content to the new element
	cb.appendChild(cb_content);
	//var cb2 = document.getElementById("citybox");
	var parentDiv2 = citybox.parentNode;
	// insert the new element into the DOM before sp2
	parentDiv2.insertBefore(cb, citybox);

	
	citybox.style.display = "none"

}

function showcitybox(){
	var citybox = document.getElementById('citybox')
	citybox.style.display = "block"
}

function showbespokebox(){
	var specbox = document.getElementById('specbox')
	specbox.style.display = "block"

}

function setdeeplink(city){
	//alert(city)
	var linkcode = document.getElementById('linkcode')
	linkcode.innerHTML = "<a href=\"#\" onclick=\"OpenCenteredWindow('linkcode.php?town="+escape(city)+"',500,500);return false;\">Link code</a>"
}

function resetdeeplink(){
	var linkcode = document.getElementById('linkcode')
	linkcode.innerHTML = "<a href=\"#\" onclick=\"OpenCenteredWindow('linkcode.php',500,500);return false;\">Link code</a>"
}


