/**
 * jQuery Imagem Check
 * 
 * Copyright (c) 2012 Sandro Diniz Jordão
 *
 * Usage: 
 * 		$('elemento').imagemCheck({ [input: 'checkbox/radio'], [imagem: 'img.*'], [imagemChecked: 'imgCkeck.*'] });
 *
 * License: 
 * 		Este plugin está licenciado sob a GNU General Public License: http://www.gnu.org/licenses/gpl.html
 *
**/

jQuery.fn.imagemCheck = function(settings) 
{
	var config = { 
		'input': 'checkbox',
		'imagem': 'checkbox.png', 
		'imagemChecked': 'checkbox-azul-checked.png'
	};
	
    if ( settings )
	{ 
		jQuery.fn.extend(config, settings); 
	}
	
	$([ config.imagem, config.imagemChecked ]).each(function(){ $('<img/>')[0].src = this; new Image().src=this; });
	
	return this.each(function(){
	
        $(this).hide();
		
		var div = '<span id="div_' + this.id + '"></span>';
		var divCSS = { 
			'position' : 'relative', 
			'margin-right' : '10px',
			'cursor' : 'pointer'
		}
			
		//if(config.input == 'checkbox')
		//{	
			$(this).before(div);
			$("#div_" + this.id).css(divCSS);
					
			if($('#' + this.id).is(':checked')) 
			{
				$("#div_" + this.id).append('<img src="' + config.imagemChecked + '" />');
			}
			else
			{
				$("#div_" + this.id).append('<img src="' + config.imagem + '" />');	
			}
		
			$("#div_" + this.id).click(function() {
			
				var idDiv = this.id; 
				
				var idInput = idDiv.replace("div_", ""); 

				if($('#' + idInput).is(':checked'))
				{
					$("#" + idDiv).html('<img src="' + config.imagem + '" />');
					
					$('#' + idInput).removeAttr("checked");
				}
				else
				{
					$("#" + idDiv).html('<img src="' + config.imagemChecked + '" />');
					
					$('#' + idInput).attr("checked", "checked");
				}

			});
		//}
		/*
		else if(config.input == 'radio')
		{
			$(this).before(div);
			$("#div_" + this.id).css(divCSS);
					
			if($('#' + this.id).is(':checked')) 
			{
				$("#div_" + this.id).append('<img src="' + config.imagemChecked + '" />');
			}
			else
			{
				$("#div_" + this.id).append('<img src="' + config.imagem + '" />');	
			}
			
			$("#div_" + this.id).click(function() {
			
				var idDiv = this.id;
				
				var idInput = idDiv.replace("div_", ""); 
				
				var nameInput = $('#' + idInput).attr('name');
				
				$("input[name='"+ nameInput +"']").prev('span').html('<img src="' + config.imagem + '" />');
				
				$("#" + idDiv).html('<img src="' + config.imagemChecked + '" />');
				
				$('#' + idInput).attr("checked", "checked");
			});
		}
		*/
    });
	
};