/*====================================================================================================
//////////////////////////////////////////////////////////////////////////////////////////////////////

 Author : http://www.yomotsu.net
 created: 2008/07/18
 update : 
 Licensed under the GNU Lesser General Public License
 IE で border-radius を実現するためのライブラリ ベータ版なのでバグとかあります!!

//////////////////////////////////////////////////////////////////////////////////////////////////////
====================================================================================================*/

window.onload = function(){
	if(/*@cc_on!@*/false){

		if (!document.namespaces.v) {
			document.namespaces.add("v", "urn:schemas-microsoft-com:vml");
		}
		
		var i,j;
		var elements = ['div'];
		var targetE = document.getElementsByTagName(elements[0]);
		
		for(j=0; j<targetE.length; j++){
			if(targetE[j].currentStyle['border-radius']){
				borderRadiusVML(targetE[j])
			}
		}
	}
}

var borderRadiusVML = function(targetE){
	
	var arcSize = parseInt(targetE.currentStyle['border-radius']) / Math.min(targetE.offsetWidth, targetE.offsetHeight);
	
	var strokeColor = targetE.currentStyle.borderColor;
	var strokeWeight = targetE.currentStyle.borderWidth;
	
	var marginTop  = Math.floor(parseInt(strokeWeight) / 2) + "px";
	var marginLeft = Math.floor(parseInt(strokeWeight) / 2) + "px";

	var padding = parseInt(targetE.currentStyle['padding']) + parseInt(strokeWeight) * 2 + "px";
	
	var fillColor = targetE.currentStyle.backgroundColor;
	var fillSrc = targetE.currentStyle.backgroundImage.replace(/^url\("(.+)"\)$/, '$1');
	targetE.style.background = 'transparent';
	
	if(targetE.currentStyle['width'].match(/px$/)){
		targetE.style.width = parseInt(targetE.currentStyle['width']) + parseInt(targetE.currentStyle['paddingRight']) + parseInt(targetE.currentStyle['paddingLeft']) + "px";
	}
	targetE.style.border = "none";
	targetE.style.padding = 0;

	targetE.innerHTML = '<div style="width:100%;overflow:hidden;"><v:roundrect arcsize="' + arcSize + '" strokecolor="' + strokeColor + '" strokeweight="' + strokeWeight + '"><v:fill type="tile" src="' + fillSrc + '" />' + targetE.innerHTML + '</v:roundrect></div>';
	
	var roundrect = targetE.getElementsByTagName("roundrect")[0];
	roundrect.style.width   = "auto";
	roundrect.style.height  = "100%";
	roundrect.style.padding = padding;
	roundrect.style.display = "block";
	roundrect.style.margin  = marginTop + ' 3px 0 ' + marginLeft;
	roundrect.style.zoom    = 1;

}
