function headerToSifr(headerDom, sifrURL){
		var color = getRGB($(headerDom).css('color'));
		color = rgbToHex('rgb('+color+')');
		var textAlign = 'right';
		if('start' == $(headerDom).css('text-align') || 'left' == $(headerDom).css('text-align')){
			textAlign = 'left';
		};
		$(headerDom).flash({ 
			src: sifrURL,
			wmode: 'transparent',
			flashvars: { 
				css: [
					'* { color: '+color+'; text-align: '+textAlign+'; }'
				].join(' ')
			}
		},{
			version: 7
		},function(htmlOptions) {
			htmlOptions.flashvars.txt = headerDom.innerHTML;
			headerDom.innerHTML = '<div>'+headerDom.innerHTML+'</div>';
			var $alt = $(headerDom.firstChild);
			htmlOptions.height = $alt.height();
			htmlOptions.width = $alt.width();
			$alt.addClass('alt');
			$(headerDom).addClass('flash-replaced').prepend($.fn.flash.transform(htmlOptions));						
		});
}

function hex(x) {
	 if (x==null) return "00";
	 x=parseInt(x); if (x==0 || isNaN(x)) return "00";
	 x=Math.max(0,x); x=Math.min(x,255); x=Math.round(x);
	 return "0123456789ABCDEF".charAt((x-x%16)/16) + "0123456789ABCDEF".charAt(x%16);
}

function rgbToHex(rgbColor) {
	rgbColor = rgbColor.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);	
	hexColor = "#" + hex(rgbColor[1]) + hex(rgbColor[2]) + hex(rgbColor[3]);
	return hexColor;  
}

// Color Conversion functions from highlightFade
// By Blair Mitchelmore
// http://jquery.offput.ca/highlightFade/

// Parse strings looking for color tuples [255,255,255]
function getRGB(color) {
	var result;

	// Check if we're already dealing with an array of colors
	if ( color && color.constructor == Array && color.length == 3 )
		return color;

	// Look for rgb(num,num,num)
	if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
		return [parseInt(result[1]), parseInt(result[2]), parseInt(result[3])];

	// Look for rgb(num%,num%,num%)
	if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
		return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];

	// Look for #a0b1c2
	if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
		return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];

	// Look for #fff
	if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
		return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];

	// Otherwise, we're most likely dealing with a named color
	return colors[jQuery.trim(color).toLowerCase()];
}

function getColor(elem, attr) {
	var color;

	do {
		color = jQuery.curCSS(elem, attr);

		// Keep going until we find an element that has color, or we hit the body
		if ( color != '' && color != 'transparent' || jQuery.nodeName(elem, "body") )
			break; 

		attr = "backgroundColor";
	} while ( elem = elem.parentNode );

	return getRGB(color);
};

// Some named colors to work with
// From Interface by Stefan Petre
// http://interface.eyecon.ro/

var colors = {
	aqua:[0,255,255],
	azure:[240,255,255],
	beige:[245,245,220],
	black:[0,0,0],
	blue:[0,0,255],
	brown:[165,42,42],
	cyan:[0,255,255],
	darkblue:[0,0,139],
	darkcyan:[0,139,139],
	darkgrey:[169,169,169],
	darkgreen:[0,100,0],
	darkkhaki:[189,183,107],
	darkmagenta:[139,0,139],
	darkolivegreen:[85,107,47],
	darkorange:[255,140,0],
	darkorchid:[153,50,204],
	darkred:[139,0,0],
	darksalmon:[233,150,122],
	darkviolet:[148,0,211],
	fuchsia:[255,0,255],
	gold:[255,215,0],
	green:[0,128,0],
	indigo:[75,0,130],
	khaki:[240,230,140],
	lightblue:[173,216,230],
	lightcyan:[224,255,255],
	lightgreen:[144,238,144],
	lightgrey:[211,211,211],
	lightpink:[255,182,193],
	lightyellow:[255,255,224],
	lime:[0,255,0],
	magenta:[255,0,255],
	maroon:[128,0,0],
	navy:[0,0,128],
	olive:[128,128,0],
	orange:[255,165,0],
	pink:[255,192,203],
	purple:[128,0,128],
	violet:[128,0,128],
	red:[255,0,0],
	silver:[192,192,192],
	white:[255,255,255],
	yellow:[255,255,0]
};