// copyright Viva Multimédia

var contentXml;
var firstCall=true;
var documentIdElement=new Array();
var tElementCache=new Array();
var wDog = null;

var textBg = new Array('#fddd31','#fdc131','#fd9531','#fd6631','#fd3a31','#ffffff');
var textRed = new Array('#e00005','#fd0308','#ff4f53','#ff979a','#ffd1d3','#666666');


var getA2 = null;
var prevGetA2 = new Date();


function trim(str) {
	return str.replace(/^\s+/, '').replace(/\s+$/, '');
}

function getBaseURL()
{
        // Get document base path
        documentBasePath = document.location.href;
        if (documentBasePath.indexOf('?') != -1)
                documentBasePath = documentBasePath.substring(0, documentBasePath.indexOf('?'));
        documentBasePath = documentBasePath.substring(0, documentBasePath.lastIndexOf('/'));
        return( documentBasePath );
}


function flashText(elemName,idx) {
	var data;
	var i;
	if (idx >= textBg.length) {
		return;
	}
	data = 	document.getElementsByName(elemName);
	if (data.length>=1) {
		for(i=0;i<data.length;i++) {
			data[i].style.backgroundColor=textBg[idx];
		}
	}
	setTimeout ( "flashText('"+elemName+"',"+(idx+1)+")",30);
}

function flashText2(elemName,idx) {
	var data;
	var i;
	if (idx >= textRed.length) {
		return;
	}
	data = 	document.getElementsByName(elemName);
	if (data.length>=1) {
		for(i=0;i<data.length;i++) {
			data[i].style.color=textRed[idx];
		}
	}
	setTimeout( "flashText2('"+elemName+"',"+(idx+1)+")",60);
}



function setWatchDog() {

     clearWatchDog();
     wDog = setTimeout ("getAuctions2()",5000);

}

function clearWatchDog() {

	if (wDog != null) {
		clearTimeout(wDog);
	}
	wDog = null;

	if (getA2 != null) {
		clearTimeout(getA2);
	}
	getA2 = null;
}

function launchGetAuctions2() {

      clearWatchDog();

      var now = new Date();
      var timeout = Math.max(0, 999 - (now - prevGetA2)) + 1;
      prevGetA2 = now;

      getA2 = setTimeout ("getAuctions2()", timeout);

}




function getAuctions2() {
	var headID = document.getElementsByTagName("head")[0];
	try {
		headID.removeChild(auctionJsElem);
	} catch(e) {

	}
	setWatchDog();

	auctionJsElem = document.createElement('script');
	auctionJsElem.type = 'text/javascript';
	auctionJsElem.src = auctionUrl+'/content.js?rd='+escape(Math.floor(Math.random()*1000000));
	auctionJsElem.id="auctionjs";
	window.status='';
	headID.appendChild(auctionJsElem);
	window.status='';

}



/*
function getAuctions() {
	AjaxQuery("http://dev.www.zeeprice.com/content.xml",processContent, '',0);
}


function processContent(response,param) {

	contentXml=response;
	updateDocumentElements();
	setTimeout ( "getAuctions()",200);
}
*/




function updateDocumentElements() {
	var i;
	var elem;

	tElementCache = new Array();

	for(elem=0;elem<26;elem++) {
		updateDocumentElement(elem);
	}


	data = document.getElementsByName('sysdate');
	if (data.length>=1) {
		date = getDate();
		for(i=0;i<data.length;i++) {
			if (date !==false && date!=data[i].innerHTML) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = date;
				data[i].visibility = 'visible';
			}
		}
	}


	data = document.getElementsByName('systime');
	if (data.length>=1) {
		date = getTime();
		for(i=0;i<data.length;i++) {
			if (date !==false && date!=data[i].innerHTML) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = date;
				data[i].visibility = 'visible';
			}
		}
	}

}

function updateDocumentElement(elem) {
	var status;
	var type;
	var intitule;
	var i;


	auction = getElement(elem);
	if (auction===false) {
		return;
	}

	status = parseInt(auction.getElementsByTagName("status")[0].childNodes[0].nodeValue);
	type = parseInt(auction.getElementsByTagName("type")[0].childNodes[0].nodeValue);
	idauction = parseInt(auction.getElementsByTagName("id")[0].childNodes[0].nodeValue);

	// Le nom...
	elemName='zee_name_'+elem;
	data = document.getElementsByName(elemName);
	if (data.length>=1) {
		// il existe...
		obj=auction.getElementsByTagName("name")[0].childNodes[0].nodeValue;

		for(i=0;i<data.length;i++) {
			if (obj != false && obj!=data[i].innerHTML) {

				data[i].visibility = 'hidden';
				data[i].innerHTML = obj;
				data[i].visibility = 'visible';
			} else if (obj==false) {

				data[i].visibility = 'hidden';
				data[i].innerHTML = '';
				data[i].visibility = 'visible';
			}
		}
	} else {
		// Si le nom n'est pas la, on considère qu il ny a rien
		return;
	}


	// L'identifiant...
	elemName='zee_id_'+elem;

	data = document.getElementsByName(elemName);

	if (data.length>=1) {
		// il existe...
		obj=auction.getElementsByTagName("id")[0].childNodes[0].nodeValue;
		for(i=0;i<data.length;i++) {
			if (obj != false && obj!=data[i].innerHTML) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = obj;
				data[i].visibility = 'visible';
			} else if (obj==false) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = '';
				data[i].visibility = 'visible';
			}
		}
	}



	// Image

	elemName='zee_img_'+elem;
	data = document.getElementsByName(elemName);
	if (data.length>=1) {
		// il existe...
		obj=auction.getElementsByTagName("id")[0].childNodes[0].nodeValue;

		for(i=0;i<data.length;i++) {
			if (obj==false && data[i].src != '/img/unknownProduct.png') {
				data[i].visibility = 'hidden';
				data[i].src = '/img/unknownProduct.png';
				data[i].visibility = 'visible';
			} else if (obj!== false) {
				var url = baseURL+"/getProductSmallImage.php?ext_frm_id="+obj;
				//alert(url);
				if (url!=data[i].src) {
					data[i].visibility = 'hidden';
					data[i].src = url;
					data[i].visibility = 'visible';
				}
			}
		}
	}

	// Prix public

	elemName='zee_productprice_'+elem;
	data = document.getElementsByName(elemName);
	if (data.length>=1) {
		// il existe...
		obj=auction.getElementsByTagName("productprice")[0].childNodes[0].nodeValue;

		for(i=0;i<data.length;i++) {
			if (obj != false) {
				intitule = ""+obj+' €';
				if (intitule!=data[i].innerHTML) {

					data[i].visibility = 'hidden';
					data[i].innerHTML = intitule;
					data[i].visibility = 'visible';
				}
			} else if (obj==false) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = '--';
				data[i].visibility = 'visible';
			}
		}
	}


	// Prix actuel

	elemName='zee_price_'+elem;
	data = document.getElementsByName(elemName);
	if (data.length>=1) {
		// il existe...
		obj=auction.getElementsByTagName("price")[0].childNodes[0].nodeValue;


		for(i=0;i<data.length;i++) {
			if (obj != false && obj!=data[i].innerHTML) {
				if (status==4) {
					intitule=' Vendu ';
				} else {
					if (type==2) { //flash
						if (status==3) {
							intitule=' Prix actuel : ';
						} else if (status==1 || status==2) {
							intitule=' Prix de départ : ';
						} else {
							intitule=' Prix : ';
						}
					} else {
						intitule=' Prix : ';
					}
				}

				intitule = intitule+ '<span class="price">'+obj+ ' €</span>';

				if (status!=4 && type!=2 && type!=3 && type!=4) {
					intitule=intitule+ ' <strong>Maximum</strong>';
				}




				if (intitule!=data[i].innerHTML) {
					data[i].visibility = 'hidden';
					data[i].innerHTML = intitule;
					data[i].visibility = 'visible';
				}
			} else if (obj==false) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = '--';
				data[i].visibility = 'visible';
			}
		}
	}


	// Bargain

	// Prix actuel
	if (type==1 || type==3) {
		elemName='zee_bargain_'+elem;
		data = document.getElementsByName(elemName);

		var productPrice = auction.getElementsByTagName("productprice")[0].childNodes[0].nodeValue.replace(/ /, "");
		var price = auction.getElementsByTagName("price")[0].childNodes[0].nodeValue.replace(/ /, "");

		productPrice = productPrice.replace(/,/, ".");
		price = price.replace(/,/, ".");

		if (data.length>=1) {
			for(i=0;i<data.length;i++) {

				var cnt=parseFloat(productPrice)/100;
				if (cnt>0) {
					var prcRed = parseInt((parseFloat(productPrice) - parseFloat(price)) / cnt);
				} else {
					var prcRed='';
				}
				if (prcRed<0) {
					prcRed=0;
				}
				intitule='-'+prcRed+'%';
				//intitule = '<span class="bargain">'+intitule+'</span>';
				if (intitule!=data[i].innerHTML) {
					data[i].visibility = 'hidden';
					data[i].innerHTML = intitule;
					data[i].visibility = 'visible';
				}
			}
		}
	}


	elemName='zee_rawprice_'+elem;
	data = document.getElementsByName(elemName);
	if (data.length>=1) {
		// il existe...
		obj=auction.getElementsByTagName("price")[0].childNodes[0].nodeValue;


		for(i=0;i<data.length;i++) {
			if (obj != false && obj!=data[i].innerHTML) {
				if (obj!=data[i].innerHTML) {
					data[i].visibility = 'hidden';
					data[i].innerHTML = obj;
					data[i].visibility = 'visible';
				}
			} else if (obj==false) {
				data[i].visibility = 'hidden';
				data[i].innerHTML = '--';
				data[i].visibility = 'visible';
			}
		}
	}


	// Temps : date d'ouverture, Temps restant...

	elemName='zee_time_'+elem;
	data = document.getElementsByName(elemName);

	if (data.length>=1) {

		intitule="";
		switch (status) {
			case 1:	// pas prête
				switch (type) {
					case 1:	// classique
						intitule = "<span class=\"time\">Prochainement</span>";
						break;
					case 2: // flash

						intitule = "<span class=\"time\">Prochainement</span>";
						break;
					case 3:	// private

						intitule = "<span class=\"time\">Prochainement</span>";
						break;
					default:
						break;
				}
				break;


			case 2:	// prête
				switch (type) {
					case 1:	// classique
						obj=auction.getElementsByTagName("startdate")[0].childNodes[0].nodeValue;
						intitule = "Début de l'enchère le <span class=\"time\">"+obj+"</span>";
						break;
					case 2: // flash
						obj=auction.getElementsByTagName("startdate")[0].childNodes[0].nodeValue;
						intitule = "Début de l'enchère le<br/><span class=\"time\">"+obj+"</span>";
						break;
					case 3:	// private
						obj=auction.getElementsByTagName("startdate")[0].childNodes[0].nodeValue;
						intitule = "Début de la vente le <br/><span class=\"time\">"+obj+"</span>";
						break;
					default:
						break;
				}
				break;
			case 3:	// en cours
				switch (type) {
					case 1:	// classique
						obj=auction.getElementsByTagName("tremaining")[0].childNodes[0].nodeValue;
						if (obj!=false) {
							intitule = "L'enchère peut finir <span style=\"font-weight:bold;color:#9e1568;\">à tout instant</span> d'ici<br /><span class=\"time\">"+formatTimeRemaining(parseInt(obj))+"</span>";
						} else {
							intitule="";
						}

						break;
					case 2: // flash
						obj=auction.getElementsByTagName("tremaining")[0].childNodes[0].nodeValue;
						if (obj!=false) {
							intitule = "Fin dans <span class=\"time\">"+formatTimeRemaining(parseInt(obj))+"</span>";
						} else {
							intitule="";
						}

						break;
					case 3:	// private
						intitule = "<span class=\"time\">Terminée</span>";
						break;
					case 4: // Myst
						intitule="<span class=\"timeOpen\">VENTE OUVERTE</span>";

						break;

					default:
						break;
				}
				break;
			case 4:	// terminée
				switch (type) {
					case 1:	// classique
						intitule = "<span class=\"time\">Terminée</span>";
						lastbidder=auction.getElementsByTagName("lastbidder")[0].childNodes[0].nodeValue;
						if (lastbidder != false) {
							intitule = intitule + "<br />Remporté par <strong>"+lastbidder+"</strong>";
						}

						break;
					case 2: // flash

						intitule = "<span class=\"time\">Terminée</span>";
						lastbidder=auction.getElementsByTagName("lastbidder")[0].childNodes[0].nodeValue;
						if (lastbidder != false) {
							intitule = intitule + "<br />Remporté par <strong>"+lastbidder+"</strong>";
						}


						break;
					case 3:	// private
						intitule = "<span class=\"time\">Terminée</span>";
						break;
					case 4:	// myst
						intitule = "<span class=\"timeClosed\">VENDU</span>";
						break;

					default:
						break;
				}
				break;
			}
			for(i=0;i<data.length;i++) {
				if (intitule!=data[i].innerHTML) {
					data[i].visibility = 'hidden';
					data[i].innerHTML = intitule;
					data[i].visibility = 'visible';
					//flashText(elemName,0);
				}
			}
	}


	// Dernier enchérisseur
	if (type == 2 && (status == 3)) {
		elemName='zee_lastbidder_'+elem;
		data = document.getElementsByName(elemName);
		if (data.length>=1) {
			for(i=0;i<data.length;i++) {
				// il existe...
				if (status ==4) {
					data[i].innerHTML = '';
				} else {
					obj=auction.getElementsByTagName("lastbidder")[0].childNodes[0].nodeValue;
					intitule = "<strong>"+obj+"</strong>";
					if (obj != false) {
						intitule = "<strong>"+obj+"</strong>";
						//alert(i+' '+data.length+' '+elemName);
						if (intitule.toUpperCase()!=data[i].innerHTML.toUpperCase()) {

							data[i].visibility = 'hidden';
							data[i].innerHTML = intitule;
							data[i].visibility = 'visible';
							flashText(elemName,0);
						}
					} else if (obj==false) {
						data[i].visibility = 'hidden';
						data[i].innerHTML = '';
						data[i].visibility = 'visible';
					}
				}
			}
		}
	} else {
		elemName='zee_lastbidder_'+elem;
		data = document.getElementsByName(elemName);
		if (data.length>=1) {
			for(i=0;i<data.length;i++) {
				// il existe...
				data[i].innerHTML = '';
			}
		}
	}


	// Lien...


	elemName='zee_link_'+elem;
	data = document.getElementsByName(elemName);

	if (data.length>=1) {

		switch (status) {
			case 1:	// pas prête
				switch (type) {
					case 1:	// classique
						styleClass = "pinkEncherirButtonDisabled";
						onClickLink="";
						break;
					case 2: // flash
						styleClass = "pinkParticiperButtonDisabled";
						onClickLink="";
						break;
					case 3:	// private
						styleClass = "blueParticiperButtonDisabled";
						onClickLink="";
						break;
					default:
						break;
				}
				break;


			case 2:	// prête
				switch (type) {
					case 1:	// classique
						styleClass = "pinkEncherirButtonDisabled";
						onClickLink="";
						break;
					case 2: // flash
						styleClass = "pinkParticiperButton";
						onClickLink="closeLightBox();openLightBox('openWin.php?ext_frm_item=auctionaction&ext_frm_param="+idauction+"/"+elem+"',770,550)";
						break;
					case 3:	// private
						styleClass = "blueParticiperButton";
						onClickLink="closeLightBox();openLightBox('openWin.php?ext_frm_item=auctionaction&ext_frm_param="+idauction+"/"+elem+"',770,550)";
						break;
					default:
						break;
				}
				break;
			case 3:	// en cours
				switch (type) {
					case 1:	// classique
						styleClass = "pinkEncherirButton";
						onClickLink="closeLightBox();openLightBox('openWin.php?ext_frm_item=auctionaction&ext_frm_param="+idauction+"/"+elem+"',770,550)";
						break;
					case 2: // flash
						styleClass = "pinkEncherirButton";
						onClickLink="closeLightBox();openLightBox('openWin.php?ext_frm_item=auctionaction&ext_frm_param="+idauction+"/"+elem+"',770,550)";
						break;
					case 3:	// private
						styleClass = "blueParticiperButtonDisabled";
						onClickLink="";
						break;
					case 4:	// myst
						styleClass = "redDiscoverButton";
						onClickLink="closeLightBox();openLightBox('openWin.php?ext_frm_item=auctionaction&ext_frm_param="+idauction+"/"+elem+"',770,550)";
						break;

					default:
						break;
				}
				break;
			case 4:	// terminée
				switch (type) {
					case 1:	// classique
						styleClass = "pinkEncherirButtonDisabled";
						onClickLink="";
						break;
					case 2: // flash
						styleClass = "pinkParticiperButtonDisabled";
						onClickLink="";
						break;
					case 3:	// private
						styleClass = "blueParticiperButtonDisabled";
						onClickLink="";
						break;
					case 4:	// myst
						styleClass = "redDiscoverButtonDisabled";
						onClickLink="";
						break;

					default:
						break;
				}
				break;
			}
			for(i=0;i<data.length;i++) {
				if (styleClass!=data[i].className) {

					data[i].className = styleClass;
				}
				if (onClickLink!=data[i].onclick) {

					eval("data[i].onclick=function() { "+onClickLink+" };");
				}
			}

	}





}


function formatTimeRemaining(obj) {
	days = parseInt(obj/86400);
	hours = parseInt((obj-(days*86400))/3600);
	min = parseInt((obj-(days*86400)-(hours*3600)) / 60);
	sec = obj-(days*86400)-(hours*3600)-(min*60);



	if (hours<10) {
		hours = "0"+hours;
	}

	if (min<10) {
		min = "0"+min;
	}
	if (sec<10) {
		sec="0"+sec;
	}


	intitule="";
	if (days>0) {
		intitule+=days+" jour";
		if (days>1) {
			intitule+="s";
		}
		intitule+=" ";
	}
	if (hours>0 || days>0) {
		intitule+=hours+":";
	}
	if (min>0 || hours>0 || days>0) {
		intitule+=min+":";
	}
	if (sec>0 || min>0 || hours>0 || days>0) {
		intitule+=sec+"'";
	}
	return intitule;
}



function getElement(idElem) {

	if (typeof(tElementCache[idElem]) != 'undefined') {
		return tElementCache[idElem];
	}


	if (typeof contentXml!= 'object') {
		return false;
	}


	tAuction = contentXml.getElementsByTagName("auction");

	if (typeof contentXml.getElementsByTagName("auction").length != 'number')
		return false;

	var num = contentXml.getElementsByTagName("auction").length;
	for(i=0;i<num;i++) {
		auction = contentXml.getElementsByTagName("auction")[i];

		if (typeof auction == 'object' && auction.getElementsByTagName("idelem")[0].childNodes[0].nodeValue == idElem) {
			tElementCache[idElem] = auction;
			return 	auction;
		}
	}
	return false;
}



function getDate() {
	if (typeof contentXml!= 'object') {
		return '';
	}
	tDate = contentXml.getElementsByTagName("clock");

	if (typeof contentXml.getElementsByTagName("clock").length != 'number')
		return false;
	if (contentXml.getElementsByTagName("clock").length<1) {
		return false;
	}
	return contentXml.getElementsByTagName("clock")[0].getElementsByTagName("date")[0].childNodes[0].nodeValue;

}


function getTime() {
	if (typeof contentXml!= 'object') {
		return '';
	}
	tDate = contentXml.getElementsByTagName("clock");

	if (typeof contentXml.getElementsByTagName("clock").length != 'number')
		return false;
	if (contentXml.getElementsByTagName("clock").length<1) {
		return false;
	}
	return contentXml.getElementsByTagName("clock")[0].getElementsByTagName("time")[0].childNodes[0].nodeValue;

}

/*
function getIdAuction(auction) {
	return auction.getElementsByTagName("id")[0].childNodes[0].nodeValue;
}


function getName(auction) {
	return auction.getElementsByTagName("name")[0].childNodes[0].nodeValue;
}

function getTimeRemaining(auction) {
	return auction.getElementsByTagName("tremaining")[0].childNodes[0].nodeValue;
}

function getProductPrice(auction) {
	return auction.getElementsByTagName("productprice")[0].childNodes[0].nodeValue;
}


function getPrice(auction) {
	return auction.getElementsByTagName("price")[0].childNodes[0].nodeValue;
}

function getStartDate(auction) {
	return auction.getElementsByTagName("startdate")[0].childNodes[0].nodeValue;
}

function getLastBidder(auction) {
	return auction.getElementsByTagName("lastbidder")[0].childNodes[0].nodeValue;
}

function getStatus(auction) {
	return auction.getElementsByTagName("status")[0].childNodes[0].nodeValue;
}

function getType(auction) {
	return auction.getElementsByTagName("type")[0].childNodes[0].nodeValue;
}

*/

function flashBid(idauction) {
	document.getElementById('gobid').disabled = true;
	document.getElementById('flashbid').innerHTML = "<strong>Enchère en cours...</strong>";
	AjaxQuery("/flashBid.php?ext_frm_auction="+idauction,processFlashBid, '',0);
}





function processFlashBid(response,param) {
	document.getElementById('gobid').disabled = false;
	if (typeof response!= 'object') {
		return;
	}


	if (typeof response.getElementsByTagName("flashbidresult").length != 'number')
		return false;

	var credit = response.getElementsByTagName("flashbidresult")[0].getElementsByTagName("credit")[0].childNodes[0].nodeValue;
	var result = response.getElementsByTagName("flashbidresult")[0].getElementsByTagName("result")[0].childNodes[0].nodeValue;

	if (result=='bidok') {
		if (credit>0) {
			document.getElementById('flashbid').innerHTML = "<span id=\"bidok\" name=\"bidok\" class=\"bold\">Enchère enregistrée</span> ! Il vous reste <strong>"+credit+"</strong> <span class=\"zeepriceGreen\">Crédit</span> <span class=\"zeepricePink\">Flash</span>. Pour en acquérir plus, <a href=\"#\" onclick=\"lbRefresh('openWin.php?ext_frm_item=buycredit','main');return false;\">cliquez ici</a> !";
			flashText2("bidok",0);
		} else {
			document.getElementById('flashbid').innerHTML = "<span id=\"bidok\" name=\"bidok\" class=\"bold\">Enchère enregistrée</span> ! <strong>Vous n'avez plus de <span class=\"zeepriceGreen\">Crédit</span> <span class=\"zeepricePink\">Flash</span> !</strong>";
			document.getElementById('flashbidbutton').innerHTML = "<input type=\"button\" style=\"float:left;\" class=\"greenButton\" value=\" Obtenir des crédits \" onclick=\"lbRefresh('openWin.php?ext_frm_item=buycredit','main');return false;\" />";
			flashText2("bidok",0);
		}
	} else if (result=='credit') {
		document.getElementById('flashbid').innerHTML = "<strong>Vous n'avez pas assez de crédits pour enchérir !</strong>";
		document.getElementById('flashbidbutton').innerHTML = "<input type=\"button\" style=\"float:left;\" class=\"greenButton\" value=\" Obtenir des crédits \" onclick=\"lbRefresh('openWin.php?ext_frm_item=buycredit','main');return false;\" />";
	} else if (result=='endedwon') {
		document.getElementById('flashbid').innerHTML = "<span class=\"bold\">L'enchère est terminée ! Mais...Félicitations ! Vous l'avez remportée !</span><br />Pour finaliser votre achat, rendez-vous dans la rubrique \"Mes commandes\" !";
		document.getElementById('flashbidbutton').innerHTML = "<input type=\"button\" class=\"orangeButton\" value=\" Fermer \" onclick=\"closeLightBox(); return false;\" />";
	} else if (result=='endedlost') {
		document.getElementById('flashbid').innerHTML = "<span class=\"bold\">Trop tard ! L'enchère est terminée ! Vous ne l'avez hélas pas remportée.</span>";
		document.getElementById('flashbidbutton').innerHTML = "<input type=\"button\" class=\"orangeButton\" value=\" Fermer \" onclick=\"closeLightBox(); return false;\" />";
	}

}




var baseURL = getBaseURL();



