var url = "includes/ajax/databasesearch/database_search.php?state="; // The server-side script
var url_database = "&database_type=";
var url_page = "&page=";
function xmlhttpChange() {
  if (http.readyState == 4) {
    //alert("XML data OK")
	//alert(http.responseText)
	//database type and username
	var databaseType = document.getElementById("database_type").value;
	var usernameValue = document.getElementById("username").value;
// Use the XML DOM to unpack the city and state data
	var xmlDocument = http.responseXML;
	var namevaluelength = xmlDocument.getElementsByTagName("namevalue").length;
	var pagevalue = xmlDocument.getElementsByTagName("pagevalue").item(0).firstChild.data;
	var pagenum = xmlDocument.getElementsByTagName("pagenum").item(0).firstChild.data;
	var search_result = "<table cellspacing='0' cellpadding='0'>";
	for(var i=0; i<namevaluelength; i++)
	{
		//Get the data from the XML file
		var namevalue= xmlDocument.getElementsByTagName("namevalue").item(i).firstChild.data;
		var statename= xmlDocument.getElementsByTagName("statevalue").item(i).firstChild.data;
		var idvalue= xmlDocument.getElementsByTagName("idvalue").item(i).firstChild.data;
		var count = i+1;
		//set the output
		search_result = search_result+"<tr><td><table cellspacing='0' cellpadding='0'><tr><td width='5'></td><td width='194' height='25' class='greytext'><a href='?id="+usernameValue+"_music_promotion&type=profile&style=artist&database_type="+databaseType+"&id_type="+idvalue+"' class='greytext'>"+namevalue+"</a></td><td width='5'></td><td width='194' height='25' class='greytext'><a href='?id="+usernameValue+"_music_promotion&type=profile&style=artist&database_type="+databaseType+"&id_type="+idvalue+"' class='greytext'>"+statename+"</a></td></tr></table></td></tr><tr><td height='1' bgcolor='D0D1D3'></td></tr>"; 
	}
	search_result = search_result + "</table>";
	document.getElementById('Divresult').innerHTML = search_result;
	
	var max_links_shown = 5;
	var page_link = "";
	
	if(pagevalue > 1) //if more than one page returned, generate links to other pages
		{
			if(max_links_shown >= pagevalue) //if number of pages needed is less than or equal to the max links per page
			{
            	for(var x = 1; x <= pagevalue; x++)
				{
					if(x == pagenum)
					{ //if page counter is equal to page number output page number
						page_link += "["+ x +"]";
                    }
					else //else generate link to other page number
					{
						page_link += "<a href='javascript:void(0)' onclick='updateresult("+x+")' class='greytext'>"+x+"</a>&nbsp;";
					}
				}
			}
			else //more pages needed than max links shown
			{
				if(max_links_shown%2 != 0) //if max links per page is odd
				{
					var first_page_link = parseInt(pagenum) - ((max_links_shown - 1)/2);
					var last_page_link = parseInt(pagenum) + ((max_links_shown - 1)/2);
				}
				else //max links per page is even
				{
                   var first_page_link = parseInt(pagenum) - (max_links_shown/2) + 1;
                   var last_page_link = parseInt(pagenum) + (max_links_shown/2);
                }
				
				
				
				//if first link is less than zero, adjust the first and last links
                if(first_page_link < 1)
                {
					
					first_page_link = 1; //set first link to one
                    last_page_link = max_links_shown; //increment last link
					/*
					for(var x = first_page_link; x < 1; x++)
					{
						last_page_link = last_page_link++; //increment last link
						first_page_link = 1; //set first link to one
					}
					*/
					
                }
                //if last link is greater than the number of pages needed
                if(last_page_link > pagevalue)
                {
					
					var difference_last_page = last_page_link - pagevalue;
					first_page_link = difference_last_page; //decrement first link
                    last_page_link = pagevalue; //set last link to the number of pages needed
					
					/*
					for(var x = last_page_link; x > pagevalue; x--)
					{
						first_page_link = first_page_link--; //decrement first link
                        last_page_link = pagenum; //set last link to the number of pages needed
                    }
					*/
					
				}
                 
				  
               //if first link is not 1, make link to the first page
				if(first_page_link != 1)
				{
					page_link += "<a href='javascript:void(0)' onclick='updateresult(1)' class='greytext'>First</a>&nbsp;...&nbsp;";
				}
                         //print each page link
				//Change the values
				for(var x = first_page_link; x <= last_page_link; x++)
                {
					if(x == pagenum) //we don't need a link to the current page
                	{     //print the page number with brackets around it
						page_link += "["+x+"]";
					}else //print links to other pages
					{
				//Change the values	
						page_link += "<a href='javascript:void(0)' onclick='updateresult("+x+")' class='greytext'>"+x+"</a>&nbsp;";
					}
				}
                //if last link does not equal the number of pages needed,
                //print link to last page
				if(last_page_link != pagevalue)
				{
					page_link += "&nbsp;...&nbsp;<a href='javascript:void(0)' onclick='updateresult("+pagevalue+")' class='greytext'>Last</a>&nbsp;";
				}
              //end else
			  
           	}
			
		}
		/*
				 //end of the pagination row
	*/
	//var page_link = pagenum+" "+first_page_link+" "+last_page_link;
	document.getElementById('pageLink').innerHTML = page_link;
	
      isWorking = false;
    
  }
}
var isWorking = false;
function updateresult(pagenum) {
  if (!isWorking && http) {
    var stateValue = document.getElementById("state").value;
	var databaseValue = document.getElementById("database_type").value;
	http.open("GET", url + escape(stateValue) + url_database + escape(databaseValue) + url_page + pagenum, true);
    http.onreadystatechange = xmlhttpChange;
	isWorking = true;
    http.send(null);
  }
}
//Create Page links using function and onclick function




/*
set x=xmlDoc.getElementsByTagName("ARTIST")
for i = 1 to x.length
  document.write(x.item(i-1).text & "<br />")
next
*/
function getHTTPObject() {
  var xmlhttp;
  /*@cc_on
  @if (@_jscript_version >= 5)
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        xmlhttp = false;
      }
    }
  @else
  xmlhttp = false;
  @end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
	  xmlhttp.overrideMimeType("text/xml");
    } catch (e) {
      xmlhttp = false;
    }
  }
  return xmlhttp;
}
var http = getHTTPObject(); // We create the HTTP Object
