// <![CDATA[
//-----------------------------------------------------------------------------
// Define some constants.
//-----------------------------------------------------------------------------

// Define a list of Microsoft XML HTTP ProgIDs.
var XMLHTTPREQUEST_MS_PROGIDS = new Array(
	"Msxml2.XMLHTTP.7.0",
	"Msxml2.XMLHTTP.6.0",
	"Msxml2.XMLHTTP.5.0",
	"Msxml2.XMLHTTP.4.0",
	"MSXML2.XMLHTTP.3.0",
	"MSXML2.XMLHTTP",
	"Microsoft.XMLHTTP"
);

// Define ready state constants.
var XMLHTTPREQUEST_READY_STATE_UNINITIALIZED = 0;
var XMLHTTPREQUEST_READY_STATE_LOADING       = 1;
var XMLHTTPREQUEST_READY_STATE_LOADED        = 2;
var XMLHTTPREQUEST_READY_STATE_INTERACTIVE   = 3;
var XMLHTTPREQUEST_READY_STATE_COMPLETED     = 4;

//-----------------------------------------------------------------------------
// Returns an XMLHttpRequest object.
//-----------------------------------------------------------------------------
function getXMLHttpRequest() {
	var httpRequest = null;
	// Create the appropriate HttpRequest object for the browser.
	if (window.XMLHttpRequest != null)
		httpRequest = new window.XMLHttpRequest();
	else if (window.ActiveXObject != null) {
		// Must be IE, find the right ActiveXObject.
		var success = false;
		for (var i = 0; i < XMLHTTPREQUEST_MS_PROGIDS.length && !success; i++) {
			try {
				httpRequest = new ActiveXObject(XMLHTTPREQUEST_MS_PROGIDS[i]);
				success = true;
			}
			catch (ex)
			{}
		}
	}
	// Display an error if we couldnt create one.
	if (httpRequest == null)
		alert("Error in HttpRequest():\n\nCannot create an XMLHttpRequest object.");
	// Return it.
	return httpRequest;
}

function setStatusText(text)
{
	// Display the status message.
	var el = document.getElementById("statusText");
	if (el.firstChild == null)
		el.appendChild(document.createTextNode(""));
	el.firstChild.nodeValue = text;
}

function URLEncode (clearString) {
  var output = '';
  var x = 0;
  clearString = clearString.toString();
  var regex = /(^[a-zA-Z0-9_.]*)/;
  while (x < clearString.length) {
    var match = regex.exec(clearString.substr(x));
    if (match != null && match.length > 1 && match[1] != '') {
    	output += match[1];
      x += match[1].length;
    } else {
      if (clearString[x] == ' ')
        output += '+';
      else {
        var charCode = clearString.charCodeAt(x);
        var hexVal = charCode.toString(16);
        output += '%' + ( hexVal.length < 2 ? '0' : '' ) + hexVal.toUpperCase();
      }
      x++;
    }
  }
  return output;
}

var bidsLookup = getXMLHttpRequest();
var objectsLookup = getXMLHttpRequest();
var prodLookup = getXMLHttpRequest();
var baseurl = "";

function initiateBidsLookup(clientid, baseurlin)
{
	// Clear the status text.
	//setStatusText("");
	baseurl = baseurlin;
	// Abort any currently active request.
	bidsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxbidsget.phtml";
	bidsLookup.onreadystatechange = bidsReadyStateChange;

	bidsLookup.open("POST", ajaxurl, true);
	bidsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	bidsLookup.send("id=" + clientid);
}

function initiateObjectsLookup(catid, baseurlin)
{
	// Clear the status text.
	//setStatusText("");
	baseurl = baseurlin;
	// Abort any currently active request.
	objectsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxobjectsget.phtml";
	objectsLookup.onreadystatechange = objectsReadyStateChange;

	objectsLookup.open("POST", ajaxurl, true);
	objectsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	objectsLookup.send("id=" + URLEncode(catid));
}

function initiateObjectsNewLookup(catid, interval)
{

	// Clear the status text.
	//setStatusText("");
	// Abort any currently active request.
	objectsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxobjectsget.phtml";
	objectsLookup.onreadystatechange = objectsNewReadyStateChange;

	objectsLookup.open("POST", ajaxurl, true);
	objectsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	objectsLookup.send("interval="+interval+"&id=" + URLEncode(catid));
}


function initiateObjectLookup(objid, baseurlin)
{
	// Clear the status text.
	//setStatusText("");
	baseurl = baseurlin;
	// Abort any currently active request.
	objectsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxobjectget.phtml";
	objectsLookup.onreadystatechange = objectsNewReadyStateChange;

	objectsLookup.open("POST", ajaxurl, true);
	objectsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	objectsLookup.send("id=" + objid);
}

function initiateWatchObjectLookup(objid, baseurlin)
{
	// Clear the status text.
	//setStatusText("");
	baseurl = baseurlin;
	// Abort any currently active request.
	objectsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxwatchobjectget.phtml";
	objectsLookup.onreadystatechange = objectsWatchReadyStateChange;

	objectsLookup.open("POST", ajaxurl, true);
	objectsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	objectsLookup.send("id=" + objid);
}

function initiateWatchObjectsLookup()
{
	// Abort any currently active request.
	objectsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxwatchobjectget.phtml";
	objectsLookup.onreadystatechange = objectsWatchReadyStateChange;

	objectsLookup.open("POST", ajaxurl, true);
	objectsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	objectsLookup.send("type=watch");
}

function initiateActiceObjectsLookup()
{
	// Abort any currently active request.
	objectsLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxwatchobjectget.phtml";
	objectsLookup.onreadystatechange = objectsWatchReadyStateChange;

	objectsLookup.open("POST", ajaxurl, true);
	objectsLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	objectsLookup.send("type=mypage");
}

function initiateProdLookup(prodid, baseurlin)
{
	// Clear the status text.
	//setStatusText("");
	baseurl = baseurlin;
	// Abort any currently active request.
	prodLookup.abort();
	// Perform an asynchronous request to get the matching city and state.
	var ajaxurl = "/ajaxprodget.phtml";
	prodLookup.onreadystatechange = prodReadyStateChange;

	prodLookup.open("POST", ajaxurl, true);
	prodLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	prodLookup.send("aliaslanguage=1&id=" + prodid);
}

function prodReadyStateChange()
{

	var statusText;
	switch (prodLookup.readyState)
	{
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			statusText = "";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			statusText = "Uppdaterar objektet";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			statusText = "Skickar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			statusText = "Hämtar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
			// Assume no match was found.
			statusText = "Objektet inte uppdaterat."
			try
			{
				var xmlDoc = prodLookup.responseXML;

    		var els = xmlDoc.getElementsByTagName("object");

        if(els.length > 0) {
					for(iloop = 0; iloop < els.length; iloop ++  ){

	          if(els[iloop].getElementsByTagName('id')[0].hasChildNodes() == true) {
							var pid = els[iloop].getElementsByTagName('id')[0].firstChild.data;
							var bid = (els[iloop].getElementsByTagName('bid')[0].firstChild.data * 1);
							var bidformated = els[iloop].getElementsByTagName('bidformated')[0].firstChild.data;
							var bidder = els[iloop].getElementsByTagName('bidder')[0].firstChild.data;
							var aenddate = els[iloop].getElementsByTagName('aenddate')[0].firstChild.data;
							var aendkl = els[iloop].getElementsByTagName('aendkl')[0].firstChild.data;
							var timeleft = els[iloop].getElementsByTagName('timeleft')[0].firstChild.data;
							var vatprice = els[iloop].getElementsByTagName('vatprice')[0].firstChild.data;
							var vatconditions = els[iloop].getElementsByTagName('vatconditions')[0].firstChild.data;
							var resprice = els[iloop].getElementsByTagName('resprice')[0].firstChild.data;
							var antbids = els[iloop].getElementsByTagName('antbids')[0].firstChild.data;
							// Global var used in page_products.phtml
							usernbid = (els[iloop].getElementsByTagName('usernbid')[0].firstChild.data * 1);
							ulastbid = (els[iloop].getElementsByTagName('ulastbid')[0].firstChild.data * 1);
							bidinc = (els[iloop].getElementsByTagName('bidinc')[0].firstChild.data * 1);
							lastbid = bid;

							//if(document.getElementById('bid')){
								//document.getElementById('bid').value = (lastbid + bidinc);
							//}

							if(document.getElementById('objecthighbid'+pid)){
                var highbid = "Inga bud";
                if(bidformated != "" || bidformated != "0") {
  								highbid = bidformated+" kr";
	  							if(vatconditions == 0) { highbid = highbid+""; }
		  						else { highbid = highbid+" exkl moms"; }
                }
								document.getElementById('objecthighbid'+pid).innerHTML = highbid;
              }
							if(document.getElementById('fendtime'+pid)){
								document.getElementById('fendtime'+pid).innerHTML = "<strong>Sluttid: "+aenddate+" &nbsp;Kl "+aendkl+"</strong>";
							}
							if(document.getElementById('ftimeleft'+pid)){
								if(timeleft == 0) timeleft = "";
								document.getElementById('ftimeleft'+pid).innerHTML = "<strong>"+timeleft+"</strong>";
								secleft = (els[iloop].getElementsByTagName('secleft')[0].firstChild.data * 1);
							}

							if(document.getElementById('fresprice'+pid)){
								if(resprice == 1){
									document.getElementById('fresprice'+pid).innerHTML = "Ja";
									document.getElementById('fresprice'+pid).className = "priceapproved";
								}
								else {
									document.getElementById('fresprice'+pid).innerHTML = "Nej";
									document.getElementById('fresprice'+pid).className = "pricenotapproved";
								}
							}

							if(document.getElementById('bidinc'+pid)){
								if(lastbid > 0){
									bidtext = "Lägsta budhöjning: ";
								}
								else {
									bidtext = "Minsta bud: ";
								}
								document.getElementById('bidinc'+pid).innerHTML = bidtext+bidinc+" kr";
							}

							if(document.getElementById('fsoldpic'+pid)){
								if(timeleft == "Avslutad"){
									if(document.getElementById('bidform'+pid)){
										document.getElementById('bidform'+pid).style.display = "none";
									}
									if(document.getElementById('autobidform'+pid)){
										document.getElementById('autobidform'+pid).style.display = "none";
                  }
									if(document.getElementById('btn-autobidshow')){
										document.getElementById('btn-autobidshow').style.display = "none";
                  }
									document.getElementById('fsoldpic'+pid).src = "/images/sold_large.gif";
								}
								else {
									if(document.getElementById('bidform'+pid)){
										document.getElementById('bidform'+pid).style.display = "";
									}
									if(document.getElementById('autobidform'+pid)){
										document.getElementById('autobidform'+pid).style.display = "";
									}
									if(document.getElementById('btn-autobidshow')){
										document.getElementById('btn-autobidshow').style.display = "";
									}
									document.getElementById('fsoldpic'+pid).src = "/images/pix.gif";
								}
							}

						}

					}


	    		var bidlist = xmlDoc.getElementsByTagName("biditem");
					var bbtext = "";

        	if(bidlist.length > 0) {
        		bbtext = bbtext+"<strong>Bud på objektet</strong>\n";
						for(iloop = 0; iloop < bidlist.length; iloop ++  ){
		          if(bidlist[iloop].getElementsByTagName('id')[0].hasChildNodes() == true) {

								biddate = bidlist[iloop].getElementsByTagName('biddate')[0].firstChild.data;
								bidkl = bidlist[iloop].getElementsByTagName('bidkl')[0].firstChild.data;
								user = bidlist[iloop].getElementsByTagName('user')[0].firstChild.data;
								bidsum = bidlist[iloop].getElementsByTagName('bidsum')[0].firstChild.data;

								bbtext = bbtext+"<div class='";
								if((iloop % 2) == 0) { bbtext = bbtext+"bidrow_dark"; }
								else { bbtext = bbtext+"bidrow_light"; }
								if(iloop == 0) { bbtext = bbtext+" bidrow_top"; }
								bbtext = bbtext+"'>\n";
								bbtext = bbtext+"<div style='float:left;' class='";
								if(iloop == 0) { bbtext = bbtext+" lastbidinfo"; }
								bbtext = bbtext+"'>\n";
								bbtext = bbtext+biddate+" &nbsp;&nbsp;Kl "+bidkl+" &nbsp;&nbsp;";
								bbtext = bbtext+""+user;
								bbtext = bbtext+"</div>\n";

								bbtext = bbtext+"<div style='float:right;' class='"; 
								if(iloop == 0) { bbtext = bbtext+" lastbid"; }
								bbtext = bbtext+"'>\n";
								bbtext = bbtext+bidsum+" kr";
								if(vatconditions == 0) { bbtext = bbtext+""; }
								else { bbtext = bbtext+" exkl moms"; }
								bbtext = bbtext+"</div>\n";
								bbtext = bbtext+"<div style='clear:both;'></div>\n";
								bbtext = bbtext+"</div>\n";

							}
						}
						if(antbids > 5){
							bbtext = bbtext+"<p><a href=\"/allabud/"+pid+"/\" onclick=\"";
							bbtext = bbtext+"window.open(this.href, 'Budhistorik_"+pid+"', 'width=500px,height=500px,scrollbars=yes');";
							bbtext = bbtext+" return false;\">Budhistorik »</a></p>";
						}
					}
					else {
						bbtext = bbtext+"Inga bud";
					}
					if(document.getElementById('biddingbox')){
						document.getElementById('biddingbox').innerHTML = bbtext;
					}

          statusText = "Objektet uppdaterat";
        }

			}
			catch (ex)
			{}
			break;

		default:
			statusText = "Unknown error.";
			break;
	}
	// Update the status message.
	//setStatusText(statusText);
}

function objectsReadyStateChange()
{
	var statusText;
  var timelefttext;
	switch (objectsLookup.readyState)
	{
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			statusText = "";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			statusText = "Uppdaterar objekt";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			statusText = "Skickar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			statusText = "Hämtar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
			// Assume no match was found.
			statusText = "Inga objekt uppdaterade."
			try
			{
				var xmlDoc = objectsLookup.responseXML;

    		var els = xmlDoc.getElementsByTagName("object");
        if(els.length > 0) {
					for(iloop = 0; iloop < els.length; iloop ++  ){

	          if(els[iloop].getElementsByTagName('id')[0].hasChildNodes() == true) {
							pid = els[iloop].getElementsByTagName('id')[0].firstChild.data;
							bid = els[iloop].getElementsByTagName('bid')[0].firstChild.data;
							bidder = els[iloop].getElementsByTagName('bidder')[0].firstChild.data;
							endtime = els[iloop].getElementsByTagName('endtime')[0].firstChild.data;
							timeleft = els[iloop].getElementsByTagName('timeleft')[0].firstChild.data;
							isnew = els[iloop].getElementsByTagName('isnew')[0].firstChild.data;
							vatprice = els[iloop].getElementsByTagName('vatprice')[0].firstChild.data;

							if(document.getElementById('endtime'+pid)){
								document.getElementById('endtime'+pid).innerHTML = "<strong>Auktionen avslutas:</strong><br />"+endtime;
							}
							if(document.getElementById('timeleft'+pid)){
                if(timeleft != "") timelefttext = timeleft+"<br />";
								if(timeleft == 0 || timeleft == "") timelefttext = "";
								document.getElementById('timeleft'+pid).innerHTML = timelefttext;
              }
							bidtext = "";
							if(bid != "" && bid != 0){
								if(document.getElementById('bid'+pid)){
									bidtext = ""+bid+" kr ";
									if(vatprice == 1) bidtext = bidtext+"inkl";
									else bidtext = bidtext+"exkl";
									bidtext = bidtext+" moms";
									if(document.getElementById('bid'+pid).innerHTML.toLowerCase() != bidtext.toLowerCase()){
										document.getElementById('bid'+pid).style.fontWeight = "bold";
									}
									else {
										document.getElementById('bid'+pid).style.fontWeight = "normal";
									}
									document.getElementById('bid'+pid).innerHTML = bidtext;

								}

								if(document.getElementById('bidtext'+pid)){
//									bidtexten = "<strong>Högsta bud:</strong><br /><strong>Budgivare:</strong><br />";
									bidtexten = "<strong>Högsta bud:</strong><br />";
									document.getElementById('bidtext'+pid).innerHTML = bidtexten;
								}

								if(document.getElementById('bidderhead'+pid)){
//									bidtexten = "<strong>Högsta bud:</strong><br /><strong>Budgivare:</strong><br />";
									bidtexten = "<strong>Budgivare:</strong><br />";
									document.getElementById('bidderhead'+pid).innerHTML = bidtexten;
								}

								biddertext = "";
								if(bidder != "" && bidder != 0){
									if(document.getElementById('bidder'+pid)){
										biddertext = ""+bidder;
										//alert(document.getElementById('bidder'+pid).innerHTML);
										if(document.getElementById('bidder'+pid).innerHTML.toLowerCase() != biddertext.toLowerCase()){
											document.getElementById('bidder'+pid).style.fontWeight = "bold";
										}
										else {
											document.getElementById('bidder'+pid).style.fontWeight = "normal";
										}
										document.getElementById('bidder'+pid).innerHTML = biddertext;
									}
								}
							}

							if(document.getElementById('addnewobjimg'+pid)){
								var addnewimgurl = "/images/pix.gif";
								if(timeleft != "" && timeleft != "Avslutad"){
									addnewimgurl = "/images/clock_anim_whitebg.gif";
								}
								else {
									if(timeleft != "Avslutad"){
										if(isnew == 1){
											addnewimgurl = "/images/new_object_whitebg.gif";
										}
									}
								}
								document.getElementById('addnewobjimg'+pid).src = addnewimgurl;
							}

							if(document.getElementById('soldpic'+pid)){
								if(timeleft == "Avslutad"){
									document.getElementById('soldpic'+pid).src = "/images/sold_small.gif";
//                  setTimeout("dnd("+pid+")", 30000);
								}
								else {
									document.getElementById('soldpic'+pid).src = "/images/pix.gif";
								}
							}

//alert(timeleft);
  						if(timeleft == "Avslutad"){
                setTimeout("dnd("+pid+")", 30000);
  						}

						}

					}
          statusText = "Objekt uppdaterade";
        }
			}
			catch (ex)
			{}
			break;

		default:
			statusText = "Unknown error.";
			break;
	}
	// Update the status message.
	//setStatusText(statusText);
}

function objectsNewReadyStateChange()
{
	var statusText;
  var timelefttext;
	switch (objectsLookup.readyState)
	{
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			statusText = "";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			statusText = "Uppdaterar objekt";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			statusText = "Skickar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			statusText = "Hämtar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
			// Assume no match was found.
			statusText = "Inga objekt uppdaterade."
			try
			{
				var xmlDoc = objectsLookup.responseXML;

    		var els = xmlDoc.getElementsByTagName("object");
        if(els.length > 0) {
					for(iloop = 0; iloop < els.length; iloop ++  ){

	          if(els[iloop].getElementsByTagName('id')[0].hasChildNodes() == true) {
							pid = els[iloop].getElementsByTagName('id')[0].firstChild.data;
							bid = els[iloop].getElementsByTagName('bid')[0].firstChild.data;
							bidder = els[iloop].getElementsByTagName('bidder')[0].firstChild.data;
							endtime = els[iloop].getElementsByTagName('endtime')[0].firstChild.data;
							vatprice = els[iloop].getElementsByTagName('vatprice')[0].firstChild.data;

							if(document.getElementById('endtime'+pid)){
  							  if(document.getElementById('endtime'+pid).innerHTML != endtime) {
                    document.getElementById('endtime'+pid).style.fontWeight = "bold";
                  } else {
                    document.getElementById('endtime'+pid).style.fontWeight = "normal";
                  }
  								document.getElementById('endtime'+pid).innerHTML = endtime;
							}
							bidtext = "";
							if(bid != "" && bid != 0){
								if(document.getElementById('bid'+pid)){
									bidtext = ""+bid+" kr";
/*
									if(vatprice == 1) bidtext = bidtext+"inkl";
									else bidtext = bidtext+"exkl";
									bidtext = bidtext+" moms";
*/
									if(document.getElementById('bid'+pid).innerHTML.toLowerCase() != bidtext.toLowerCase()){
										document.getElementById('bid'+pid).style.fontWeight = "bold";
									}
									else {
										document.getElementById('bid'+pid).style.fontWeight = "normal";
									}
									document.getElementById('bid'+pid).innerHTML = bidtext;

								}

								if(document.getElementById('bidderhead'+pid)){
									bidtexten = bidder;
									document.getElementById('bidderhead'+pid).innerHTML = bidtexten;
								}
							}

							if(document.getElementById('soldpic'+pid)){
								if(endtime == "Avslutad"){
									document.getElementById('soldpic'+pid).src = "/images/sold_small.gif";
								}
								else {
									document.getElementById('soldpic'+pid).src = "/images/pix.gif";
								}
							}

  						if(endtime == "Avslutad"){
                setTimeout("dnd("+pid+")", 30000);
  						}

						}

					}
          statusText = "Objekt uppdaterade";
        }
			}
			catch (ex)
			{}
			break;

		default:
			statusText = "Unknown error.";
			break;
	}
	// Update the status message.
	//setStatusText(statusText);
}

function objectsWatchReadyStateChange()
{
	var statusText;
  var timelefttext;
	switch (objectsLookup.readyState)
	{
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			statusText = "";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			statusText = "Uppdaterar objekt";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			statusText = "Skickar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			statusText = "Hämtar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
			// Assume no match was found.
			statusText = "Inga objekt uppdaterade."
			try
			{
				var xmlDoc = objectsLookup.responseXML;

    		var els = xmlDoc.getElementsByTagName("object");
        if(els.length > 0) {
					for(iloop = 0; iloop < els.length; iloop ++  ){
	          if(els[iloop].getElementsByTagName('id')[0].hasChildNodes() == true) {
							pid = els[iloop].getElementsByTagName('id')[0].firstChild.data;
//alert("pid: "+pid);
							bid = els[iloop].getElementsByTagName('bid')[0].firstChild.data;
//alert("bid: "+bid);
							userbid = els[iloop].getElementsByTagName('userbid')[0].firstChild.data;
//alert("userbid: "+userbid);
							bidder = els[iloop].getElementsByTagName('bidder')[0].firstChild.data;
//alert("bidder: "+bidder);
							endtime = els[iloop].getElementsByTagName('endtime')[0].firstChild.data;
//alert("end: "+endtime);
							vatprice = els[iloop].getElementsByTagName('vatprice')[0].firstChild.data;
//alert("vat: "+vatprice);
							resprice = els[iloop].getElementsByTagName('resprice')[0].firstChild.data;
//alert("res: "+resprice);
							maxreached = els[iloop].getElementsByTagName('maxreached')[0].firstChild.data;
//alert("mr: "+maxreached);
							maxbid = els[iloop].getElementsByTagName('maxbid')[0].firstChild.data;
//alert("max: "+maxbid);

							if(document.getElementById('endtime'+pid)){
  							  if(document.getElementById('endtime'+pid).innerHTML != endtime) {
                    document.getElementById('endtime'+pid).style.fontWeight = "bold";
                  } else {
                    document.getElementById('endtime'+pid).style.fontWeight = "normal";
                  }
  								document.getElementById('endtime'+pid).innerHTML = endtime;
							}

							if(document.getElementById('mbendtime'+pid)){
  							  if(document.getElementById('mbendtime'+pid).innerHTML != endtime) {
                    document.getElementById('mbendtime'+pid).style.fontWeight = "bold";
                  } else {
                    document.getElementById('mbendtime'+pid).style.fontWeight = "normal";
                  }
  								document.getElementById('mbendtime'+pid).innerHTML = endtime;
							}

							bidtext = "";
							if(bid != "" && bid != 0){
								if(document.getElementById('bid'+pid)){
									bidtext = ""+bid+"kr";
									if(document.getElementById('bid'+pid).innerHTML.toLowerCase() != bidtext.toLowerCase()){
										document.getElementById('bid'+pid).style.fontWeight = "bold";
									}
									else {
										document.getElementById('bid'+pid).style.fontWeight = "normal";
									}
									document.getElementById('bid'+pid).innerHTML = bidtext;
								}
								if(document.getElementById('mbbid'+pid)){
									bidtext = ""+bid+"kr";
									if(document.getElementById('mbbid'+pid).innerHTML.toLowerCase() != bidtext.toLowerCase()){
										document.getElementById('mbbid'+pid).style.fontWeight = "bold";
									}
									else {
										document.getElementById('mbbid'+pid).style.fontWeight = "normal";
									}
									document.getElementById('mbbid'+pid).innerHTML = bidtext;
								}
							}

							bidtext = "";
							if(maxbid != "" && maxbid != 0){
								if(document.getElementById('mbown'+pid)){
									bidtext = ""+maxbid+"kr";
									if(document.getElementById('mbown'+pid).innerHTML.toLowerCase() != bidtext.toLowerCase()){
										document.getElementById('mbown'+pid).style.fontWeight = "bold";
									}
									else {
										document.getElementById('mbown'+pid).style.fontWeight = "normal";
									}
									document.getElementById('mbown'+pid).innerHTML = bidtext;
								}
							}

							bidtext = "";
							if(userbid != "" && userbid != 0){
								if(document.getElementById('ownbid'+pid)){
									bidtext = ""+userbid+"kr";

                  if(userbid == bid) {
  									document.getElementById('ownbid'+pid).className = "priceapproved";
                  } else {
  									document.getElementById('ownbid'+pid).className = "pricenotapproved";
                  }

   								if(document.getElementById('icon'+pid)){
                    if(userbid == bid) {
      								document.getElementById('icon'+pid).innerHTML = '<img src="/images/icon_wonauction.gif" title="Ditt bud är det högsta på objektet">';
                    } else {
      								document.getElementById('icon'+pid).innerHTML = '<img src="/images/icon_lostauction.gif" title="Ditt bud är inte det högsta på objektet">';
                    }
                  }

   								if(document.getElementById('mbicon'+pid)){
                    if(userbid == bid) {
      								document.getElementById('mbicon'+pid).innerHTML = '<img src="/images/icon_wonauction.gif" title="Ditt bud är det högsta på objektet">';
                    } else {
      								document.getElementById('mbicon'+pid).innerHTML = '<img src="/images/icon_lostauction.gif" title="Ditt bud är inte det högsta på objektet">';
                    }
                  }


									if(document.getElementById('ownbid'+pid).innerHTML.toLowerCase() != bidtext.toLowerCase()){
										document.getElementById('ownbid'+pid).style.fontWeight = "bold";
									}
									else {
										document.getElementById('ownbid'+pid).style.fontWeight = "normal";
									}
									document.getElementById('ownbid'+pid).innerHTML = bidtext;
								}
							}

							if(document.getElementById('resprice'+pid)){
								document.getElementById('resprice'+pid).innerHTML = resprice;
              }

							if(document.getElementById('mbreached'+pid)){
								document.getElementById('mbreached'+pid).innerHTML = maxreached;
              }


							if(document.getElementById('soldpic'+pid)){
								if(endtime == "Avslutad"){
									document.getElementById('soldpic'+pid).src = "/images/sold_small.gif";
								}
								else {
									document.getElementById('soldpic'+pid).src = "/images/pix.gif";
								}
							}

						}

					}
          statusText = "Objekt uppdaterade";
        }
			}
			catch (ex)
			{}
			break;

		default:
			statusText = "Unknown error.";
			break;
	}
	// Update the status message.
	//setStatusText(statusText);
}


function bidsReadyStateChange()
{
	var statusText;
	switch (bidsLookup.readyState)
	{
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			statusText = "";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			statusText = "Uppdaterar bud";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			statusText = "Skickar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			statusText = "Hämtar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
			// Assume no match was found.
			statusText = "Inga bud uppdaterade."
			try
			{
				var xmlDoc = bidsLookup.responseXML;
				
    		var els = xmlDoc.getElementsByTagName("object");
        if(els.length > 0) {
					for(iloop = 0; iloop < els.length; iloop ++  ){

	          if(els[iloop].getElementsByTagName('id')[0].hasChildNodes() == true) {
							pid = els[iloop].getElementsByTagName('id')[0].firstChild.data;
							bidowner = els[iloop].getElementsByTagName('bidowner')[0].firstChild.data;
							linkname = els[iloop].getElementsByTagName('name')[0].firstChild.data+" ("+els[iloop].getElementsByTagName('artno')[0].firstChild.data+")";
							newtext = "<a href='"+baseurl+"/auction/product/"+els[iloop].getElementsByTagName('urlname')[0].firstChild.data+"/'>";
							newtext = newtext+linkname.substr(0, 28)+" »</a>";
							newtext = newtext+"<br />";
							newtext = newtext+els[iloop].getElementsByTagName('highbid')[0].firstChild.data+"";
							if(els[iloop].getElementsByTagName('resprice')[0].firstChild.data == 1){
								newtext = newtext+"&nbsp;<img src='/images/resprice.gif' width='10' class='resprice_img' alt='Reservationspris uppnått' />";
							}
							//newtext = newtext+"<br />Reservationspris uppnått: ";
							divtext = "<div class='";
							if(user_id == bidowner){
								divtext = divtext+"objectwatch_leader";
							}
							else {
								divtext = divtext+"objectwatch_notleader";							
							}
							divtext = divtext+"'>";
							divtext = divtext+newtext;
							divtext = divtext+"</div>";
							if(document.getElementById('prodact_'+pid+'_1')){
								document.getElementById('prodact_'+pid+'_1').innerHTML = divtext;
								document.getElementById('prodact_'+pid+'_2').innerHTML = divtext;
							}
							if(document.getElementById('prodfav_'+pid+'_1')){
								newtext = "<div class='objectwatch_fav'>"+newtext+"</div>";
								document.getElementById('prodfav_'+pid+'_1').innerHTML = newtext;
								document.getElementById('prodfav_'+pid+'_2').innerHTML = newtext;
							}
						}

					}
          statusText = "Bud uppdaterade";
        }
			}
			catch (ex)
			{}
			break;

		default:
			statusText = "Unknown error.";
			break;
	}
	// Update the status message.
	//setStatusText(statusText);
}

// ----------------------------------------------------------------------------------------------------------------------------------

var bidRequest = getXMLHttpRequest();
var lastBidObj;
var lastBidFrom;

function initiateBidRequest(oid, from) {
  from = typeof(from) != 'undefined' ? from : '';

	// Abort any currently active request.
	bidRequest.abort();

	// Encode the data to be POSTed.
//	var object_id  = encodeURI(objectid);

  var bid = 0;
  if(document.getElementById("bidinput"+oid)) {
    bid = document.getElementById("bidinput"+oid).value;
  }
  if(bid > 0) {
    lastBidObj = oid;
    lastBidFrom = from;

    var str = "oid="+oid+"&bid="+bid+"&aliaslanguage=1";
  	var url = "/ajaxbidobject.phtml";
  	bidRequest.onreadystatechange = bidReadyStateChange;
  	bidRequest.open("POST", url, true);
  	bidRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    bidRequest.send(str);
  } else {
    if(bid.match('/\d+/')) {
      alert("Ditt bud måste vara större än 0.");
    } else {
      alert("Ditt bud kan bara bestå av siffor.");
    }
  }
}

function bidReadyStateChange() {
	var statusText;

	// Check the ready state.
	switch (bidRequest.readyState) {
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
      if(document.getElementById("bidtr"+lastBidObj+"_loading")) {
        document.getElementById("bidtr"+lastBidObj+"_loading").style.display="";
      }
      if(document.getElementById("bidtr"+lastBidObj)) {
        document.getElementById("bidtr"+lastBidObj).style.display="none";
      }

			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
      if(document.getElementById("bidtr"+lastBidObj+"_loading")) {
        document.getElementById("bidtr"+lastBidObj+"_loading").style.display="none";
      }
      if(document.getElementById("bidtr"+lastBidObj)) {
        document.getElementById("bidtr"+lastBidObj).style.display="";
      }
      if(document.getElementById("bidinput"+lastBidObj)) {
        document.getElementById("bidinput"+lastBidObj).value="";
      }

			// Assume no matches were found.
			statusText = "Problem med ditt bud uppstod."
			// Get the XML document returned from the request and fill in the
			// form fields.
			try
			{
				var xmlDoc = bidRequest.responseXML;

				// Copy the city and state attributes from the root XML node to the appropriate form fields.
    		var els = xmlDoc.getElementsByTagName("bidinfo");
        if(els.length > 0) {
          for(var i = 0; i < els.length; i++) {
            if(els[i].getElementsByTagName('id')[0].hasChildNodes() == true) {
              var id = els[i].getElementsByTagName('id')[0].firstChild.data;

              if(els[i].getElementsByTagName('bidmsg')[0].hasChildNodes() == true) {
                var bidmsg = els[i].getElementsByTagName('bidmsg')[0].firstChild.data;
                if(document.getElementById("bidmsg"+id)) {
                  document.getElementById("bidmsg"+id).innerHTML = bidmsg;
                  setTimeout("resetMsg("+id+")",10000);
                }
              }

              if(els[i].getElementsByTagName('bidstatus')[0].hasChildNodes() == true) {
                var bidstatus = els[i].getElementsByTagName('bidstatus')[0].firstChild.data;
                if(lastBidFrom == 'watchlist') {
                  initiateWatchObjectLookup(id, "");
                } else {
                  initiateObjectLookup(id, "");
                }
              }
            }
          }
				}
			}
			catch (ex)
			{}
			break;

		default:
			break;
	}
}

function resetMsg(oid) {
  if(document.getElementById("bidmsg"+oid)) {
    document.getElementById("bidmsg"+oid).innerHTML = "";
  }
}

function dnd(oid) {
  if(document.getElementById("tr_obj"+oid)) {
    document.getElementById("tr_obj"+oid).style.display = "none";
  }
  if(document.getElementById("tr_objinfo"+oid)) {
    document.getElementById("tr_objinfo"+oid).style.display = "none";
  }
  if(document.getElementById("qbtr"+oid)) {
    document.getElementById("qbtr"+oid).style.display = "none";
  }
  if(document.getElementById("bidtr"+oid)) {
    document.getElementById("bidtr"+oid).style.display = "none";
  }
  if(document.getElementById("bidtr"+oid+"_loading")) {
    document.getElementById("bidtr"+oid+"_loading").style.display = "none";
  }
  if(document.getElementById("biddertr"+oid)) {
    document.getElementById("biddertr"+oid).style.display = "none";
  }
  if(document.getElementById("trbidline"+oid)) {
    document.getElementById("trbidline"+oid).style.display = "none";
  }
  if(document.getElementById("infotr"+oid)) {
    document.getElementById("infotr"+oid).style.display = "none";
  }
}

function URLEncode (clearString) {
  var output = '';
  var x = 0;
  clearString = clearString.toString();
  var regex = /(^[a-zA-Z0-9_.]*)/;
  while (x < clearString.length) {
    var match = regex.exec(clearString.substr(x));
    if (match != null && match.length > 1 && match[1] != '') {
    	output += match[1];
      x += match[1].length;
    } else {
      if (clearString[x] == ' ')
        output += '+';
      else {
        var charCode = clearString.charCodeAt(x);
        var hexVal = charCode.toString(16);
        output += '%' + ( hexVal.length < 2 ? '0' : '' ) + hexVal.toUpperCase();
      }
      x++;
    }
  }
  return output;
}