var bc_gInterval = null;
var bc_elemHeight = 0;
function bc_buyNow() {
	bc_gInterval = setInterval("scrollPage()", 500);
}

function scrollPage() {
	var elem = getDivByClassName("widget_where-to-buy");
	if(elem != null || elem.offsetHeight > 0) {
		if(bc_elemHeight != elem.offsetHeight) {
		
			try {
				scroll(0,findPos(elem)[1] + elem.offsetHeight);
			} 
			catch (e) { }
	
			try {
				scroll(0,findPos(elem)[1] + elem.offsetHeight);
			} catch (e) { }
		
			bc_elemHeight = elem.offsetHeight;
		}
	} else {
		clearInterval(bc_gInterval);
	}
}

function finishScroll() {
	var elem = getDivByClassName("widget_where-to-buy");
	scroll(0,findPos(elem)[1] + elem.offsetHeight);
}

function getDivByClassName(pName) {
	var elems = document.getElementsByTagName('div');
	//console.log(elems.length);
	for(var i=0; i<elems.length; i++) {
		if(elems[i].className == pName) {
			return elems[i];
		}
	}
	return null;
}

function invokeBuyNowWidget(pParams)
{
	bc_buyNow();
	
	if(navigator.userAgent.indexOf("Firefox")!=-1) {
		var position = findPos(document.getElementById("body_middle"));
		var widgetCoordinates = 
		{
			x: pParams.position.x,
			y: pParams.position.y + 10
		};
	} else {
		var position = findPos(document.getElementById("body_middle"));
		var widgetCoordinates = 
		{
			x: position[0] + pParams.position.x,
			y: position[1] + pParams.position.y + 10
		};
	}
	
	Philips.buyWidgetFlash(
		pParams.tags, 
		pParams.product, 
		pParams.country, 
		pParams.language, 
		pParams.consumer, 
		pParams.whereBuy, 
		pParams.close, 
		pParams.loading, 
		widgetCoordinates, 
		"body"
	);
}

function findPos(obj) {
 if(obj == null) {
     return null;
 }
    var curleft = curtop = 0;
    if (obj.offsetParent) {
        curleft = obj.offsetLeft
        curtop = obj.offsetTop
        while (obj = obj.offsetParent) {
            curleft += obj.offsetLeft
            curtop += obj.offsetTop
        }
 }
 return [curleft,curtop];
}