function getFullUrl(src)
{
	var url='';

	if (/^\w+:\/\//.test(src))
	{
		//begin width http://
		//absolute path
		//no action
		url=src;
	}
	else if(src.charAt(0)=='/')
	{
		//absolute path
		//no action
		url=src;
	}
	else
	{
		//relative path
		//get base url
		var baseUrl='';
		var $base=$('base:eq(0)');
		if($base.size()>0) baseUrl=$base.attr('href');

		if(baseUrl.length==0) baseUrl=location.href.substring(0,location.href.lastIndexOf('/'));

		if(baseUrl.length>0 && baseUrl.substr(-1)!='/') baseUrl+='/';

		url=baseUrl+src;
	}

	return url;
}

jQuery.fn.pngfix=function()
{
	if(! /\bMSIE\b/.test(navigator.appVersion)) return;

	var arVersion = navigator.appVersion.split("MSIE")
    var version = parseFloat(arVersion[1])    
    if (version>6) return;

	this.each(function(){
		var $this=$(this);
		
		var $div=$('<div></div>');
		$div.attr('id',$this.attr('id'));
		$div[0].className=$this[0].className;
		
		
		if($this.css('float')!='')
		{
			$div.css('float',$this.css('float'));
		}
		else if (typeof($this.attr('align'))!='undefined' && $this.attr('align')!='')
		{
			$div.css('float',$this.attr('align'));
		}
		
		if($this.css('display')=='inline')
		{
			$div.css('display','inline').css('zoom','1');
		}
		else
		{
			$div.css('display',$this.css('display'));
		}
		
		$div.css('background-image','none');

		$div
			.css('width',$this.width()+'px')
			.css('height',$this.height()+'px')
			.css('border-width',$this.css('border-width'))
			.css('border-style',$this.css('border-style'))
			.css('border-color',$this.css('border-color'))
			.css('margin-top',$this.css('margin-top'))
			.css('margin-right',$this.css('margin-right'))
			.css('margin-bottom',$this.css('margin-bottom'))
			.css('margin-left',$this.css('margin-left'))
			.css('position',$this.css('position'))
			.css('left',$this.css('left'))
			.css('top',$this.css('top'))
			.css('right',$this.css('right'))
			.css('bottom',$this.css('bottom'))
			.attr('title',$this.attr('title'))
		;

		var $divInner=$('<div></div>');
		$divInner.width(
			$this.width()
			//- parseInt($this.css('padding-left'))
			//- parseInt($this.css('padding-right'))
			//- parseInt($this.css('border-left-width'))
			//- parseInt($this.css('border-right-width'))
		);
		$divInner.height(
			$this.height()
			//- parseInt($this.css('padding-top'))
			//- parseInt($this.css('padding-bottom'))
			//- parseInt($this.css('border-top-width'))
			//- parseInt($this.css('border-bottom-width'))
		);
		if($this.parents('a').size()>0) { $divInner.css('cursor','pointer'); }
		$divInner.css('cursor','pointer');
		$divInner.css('margin','0');
		$divInner.css('padding','0');
		$divInner.css('border-width','0');
		$divInner.css('border-style','none');
		$divInner.css('border-color','transparent');
		$divInner.css('background-image','none');
		
		var url=getFullUrl($this.attr('src'))
		$divInner.css('filter','progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' +url+ '", sizingMethod="scale");');

		$div.append($divInner);
		$this.replaceWith($div);
	});
	
	return this;
}

jQuery.fn.bgpngfix=function()
{
	if(! /\bMSIE\b/.test(navigator.appVersion)) return;

	var arVersion = navigator.appVersion.split("MSIE")
    var version = parseFloat(arVersion[1])    
    if (version>6) return;

	this.each(function(){
		var $this=$(this);
		var url=$this.css('background-image').replace(/^url\([\'\"]?/,'').replace(/[\'\"]?\)/,'');
		
		var $divOuter=$('<div></div>');

		$this.width(
			$this.width()
			+parseInt($this.css('padding-left'))
			+parseInt($this.css('padding-right'))
		);
		$this.height(
			$this.height()
			+parseInt($this.css('padding-top'))
			+parseInt($this.css('padding-bottom'))
		);
		$this.css('padding','0');
		$this.css('background-image','none');
		$this.css('filter','progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' +url+ '", sizingMethod="crop");');
		
		
	});
	
	return this;
}


$(document).ready(function(){
	$('.pngfix').pngfix();
});



/*
// run this script in defer mode
$(document).ready()
{
	$('.logos').pngfix();		//fix <img> transparency, css display will change to inline-block
	$('#logo2').bgpngfix();		//fix css background-image transparency, background-position not supported
}
*/
