/*
** 
** Developed by Lukasz Welniak - FireFly Creation Sp z o.o.
** 2008-2009 all rights reserved
*/

$(document).ready(function() {
    // inputRadioReplace();
    // inputCheckReplace();
     inputFileReplace();
});

function cssStyle(cssClass, height, width, bgimg, bgcolor, textcss) {
	this.cssClass = cssClass;
	this.height = height;
	this.width  = width;
	this.bgimg  = bgimg;
	this.bgcolor = bgcolor;
	this.text = textcss;
}

function cssTextStyle(color, size, paddingT, paddingR, paddingB, paddingL, bgcolor) {
	this.color   = color;
	this.size  	 = size;
	this.paddingT = paddingT;
	this.paddingR = paddingR;
	this.paddingB = paddingB;
	this.paddingL = paddingL;
	this.bgcolor = bgcolor;
}

textStyle  = new cssTextStyle('#000000',8,'0','0','0','0','#e9f1f3');
inputRadio = new cssStyle('inputRadio',11,11,'/www/static/frontend/default/gfx/front/radio.jpg','#e9f1f3',textStyle);

textStyle2  = new cssTextStyle('#000000',8,'0','0','0','0','#e9f1f3');
inputCheck = new cssStyle('inputCheck',13,13,'/www/static/frontend/default/gfx/front/check.jpg','#e9f1f3',textStyle2);

textStyle3  = new cssTextStyle('#000000',12,'2','4','2','2','#e9f1f3');
inputFile = new cssStyle('inputFile',20,220,'/www/static/frontend/default/gfx/input.file.bg.png','#e9f1f3',textStyle3);


//inputFileDefault = new cssStyle('inputFileDefault',29,250,'img/btn.ok.gif','yellow',textStyle);


function inputFileReplace() {	
	$("input[type=file]").each(function() {
		var cssClass = $(this).attr('class');
		cssClass = eval(cssClass);
		if(typeof cssClass.cssClass == "string") {
			$('<div class="'+cssClass.cssClass+'Div"></div>').prepend('<input type="text" class="'+cssClass.cssClass+'Text" />').insertBefore($(this));//insertBefore($("input[type=file]"));
		}
		loadCssPropertiesForFileInput(cssClass);
	});
	
	$('input[type=file]').change(function(){
		var value = $(this).attr('value');
		var cssClass = $(this).attr('class');
		cssClass = eval(cssClass);
		$(this).prev("."+cssClass.cssClass+"Div").find("input").val(value);
	});
}

function inputCheckReplace() {
	$("input[type=checkbox]").each(function() {
		var cssClass = $(this).attr('class');
		cssClass = eval(cssClass);
		if(typeof cssClass.cssClass == "string") {
			$('<div class="'+cssClass.cssClass+'Div"></div>').insertBefore($(this));
		}
		loadCssPropertiesForCheckInput(cssClass);
	});
	
	$('input[type=checkbox]').click(function() {
		var cssClass = $(this).attr('class');
		cssClass = eval(cssClass);
		if($(this).attr('checked') == true) {
			$(this).prev("div").css("background", cssClass.bgcolor+" url("+cssClass.bgimg+") 0px -"+cssClass.height+"px no-repeat");
		}
		else $(this).prev("div").css("background", cssClass.bgcolor+" url("+cssClass.bgimg+") 0px 0px no-repeat");
		
	});
}

function inputRadioReplace() {
	$("input[type=radio]").each(function() {
		var cssClass = $(this).attr('class');
		cssClass = eval(cssClass);
		if(typeof cssClass.cssClass == "string") {
			$('<div class="'+cssClass.cssClass+'Div"></div>').insertBefore($(this));
		}
		loadCssPropertiesForRadioInput(cssClass);
	});
	
	$('input[type=radio]').click(function() {
		var checkName = $(this).attr('name');
		var cssClass = $(this).attr('class');
		cssClass = eval(cssClass);
		
		$("."+cssClass.cssClass+"[name="+checkName+"]").each(function() {
			$(this).prev("div").css("background", cssClass.bgcolor+" url("+cssClass.bgimg+") 0px 0px no-repeat");	
		}); 
		$(this).prev("div").css("background", cssClass.bgcolor+" url("+cssClass.bgimg+") 0px -"+cssClass.height+"px no-repeat");
	});
}





// css styles configuration functions

function loadCssPropertiesForFileInput(cssClass) {
	var inpuFileTextHeight = (cssClass.height*1-(cssClass.text.paddingT*1 + 1*cssClass.text.paddingB))+"px"
	inpuFileHeight = cssClass.height+"px";  
	inputFileWidth = cssClass.width+"px";
	
	$("."+cssClass.cssClass+"Div").css({ 
		cursor : "pointer",
		background: cssClass.bgcolor+" url("+cssClass.bgimg+") top right no-repeat",
		height: inpuFileHeight,
		width: inputFileWidth
	});

	$("."+cssClass.cssClass).css({
		cursor : "pointer",
		height: inpuFileHeight,
		width: inputFileWidth,
		top: "-"+inpuFileHeight,
		position: "relative",
		opacity: "0.0",
		filter: "alpha(opacity=0)"
	});

	$("."+cssClass.cssClass+"Text").css({
		cursor : "text",
		height: inpuFileTextHeight,
		"font-size": cssClass.text.size+"px",
		padding: cssClass.text.paddingT+"px "+cssClass.text.paddingR+"px "+cssClass.text.paddingB+"px "+cssClass.text.paddingL+"px",
		color: cssClass.text.color,
		background: cssClass.text.bgcolor,
		border: "0px solid black"
	});
}

function loadCssPropertiesForCheckInput(cssClass) {
	$("."+cssClass.cssClass+"Div").css({
		height: cssClass.height,
		width: cssClass.width,
		background: cssClass.bgcolor+" url("+cssClass.bgimg+") 0 0 no-repeat"
	});	
	
	$("."+cssClass.cssClass).css({
		height: cssClass.height,
		margin:"0px",
		width: cssClass.width,
		position: "relative",
		top: "-"+cssClass.height+"px",
		left: "0px",
		opacity: "0.0",
		filter: "alpha(opacity=0)"
	});	
}

function loadCssPropertiesForRadioInput(cssClass) {
	$("."+cssClass.cssClass+"Div").css({
		height: cssClass.height,
		width: cssClass.width,
		background: cssClass.bgcolor+" url("+cssClass.bgimg+") 0 0 no-repeat"
	});	
	
	$("."+cssClass.cssClass).css({
		height: cssClass.height,
		margin:"0px",
		width: cssClass.width,
		position: "relative",
		top: "-"+cssClass.height+"px",
		left: "0px",
		opacity: "0.0",
		filter: "alpha(opacity=0)"
	});	
}
