	var cachePath='/_data/imageTextCache/';
	var installPath='/_lib/imageText/';
	
	
	function fnRemoveSpecialChars (string) {
	
		return (string.replace (/Ä|Ö|Ü|ä|ö|ü|:|\+|\/| /g, ''));
		
	}
	
	
	function rgbToHex(rgb) {
    if (rgb.match(/^#[0-9A-Fa-f]{6}$/)) {
        return rgb;
    }
    var rgbvals = /rgb\((.+),(.+),(.+)\)/i.exec(rgb);
    if (!rgbvals) {
        return rgb;
    }
    var rval = parseInt(rgbvals[1]);
    var gval = parseInt(rgbvals[2]);
    var bval = parseInt(rgbvals[3]);
    var pad = function(value) {
        return (value.length < 2 ? '0' : '') + value;
    };
    return '#' + pad(rval.toString(16)) + pad(gval.toString(16)) + pad(bval.toString(16));
} 

	jQuery.fn.imageText = function () {
	
		var fontFamily=getCSS ($(this).context.tagName.toLowerCase ()+'[title="imageText"]', 'fontFamily');
		if (typeof (fontFamily)=='undefined') {
			var classes=$(this).context.className.split (' ');
			for (var i=0; i<classes.length; i++) {
				fontFamily=getCSS ('.'+classes[i]+'[title="imageText"]', 'fontFamily');
				if (typeof (fontFamily)!='undefined') break;
			}
			if (typeof (fontFamily)=='undefined') return;
		}
		debug (fontFamily);

		var color=(($(this).css ('color').indexOf("rgb") > -1) ? rgbToHex($(this).css ('color')) : $(this).css ('color')).substr (1);
		var underline=$(this).css ('text-decoration');
		var text=$(this).text ();
		$(this).attr ('title', text);
		var fileName=jQuery.ideagento.libs.imageText.dataPath+fontFamily+'_'+parseInt ($(this).css ('font-size'))+'_'+color+'_'+underline+'_'+fnRemoveSpecialChars($(this).text ())+'.png';
			
		
		var $imageText=$('<IMG align="bottom" border=0 src="'+fileName+'" class="imageTextImage">');
		$imageText.bind ('error', function () {
			$imageText.unbind ('error');
			$(this).attr ('src', jQuery.ideagento.libs.imageText.scriptPath+'imageText.php?color='+color+'&fontSize='+$(this).css ('font-size')+'&fontFamily='+fontFamily+'&decoration='+underline+'&text='+escape(text).replace (/\+/, '%2b'));
		});
				
		$(this)
			.empty ()
			.append ($imageText)
		;
	

	}

	function initImageText () {
		return;
		$('.imageText[title]').each (function () {
			$(this)
				.empty ()
				.text ($(this).attr ('title'))
			;
		});
	
		if (typeof (getCSS ('h1[title="imageText"]', 'fontFamily'))!='undefined') { $('h1').addClass ('imageText'); }
		if (typeof (getCSS ('h2[title="imageText"]', 'fontFamily'))!='undefined') { $('h2').addClass ('imageText'); }
		if (typeof (getCSS ('h3[title="imageText"]', 'fontFamily'))!='undefined') { $('h3').addClass ('imageText'); }
		if (typeof (getCSS ('h4[title="imageText"]', 'fontFamily'))!='undefined') { $('h4').addClass ('imageText'); }
		if (typeof (getCSS ('.header[title="imageText"]', 'fontFamily'))!='undefined') { $('.header').addClass ('imageText'); }

		$('.imageText').each (function () { $(this).imageText (); });
		
	}
	
