(function($){var CB=function(e)
{if(!e)var e=window.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();};$.fn.checkbox=function(options){try{document.execCommand('BackgroundImageCache',false,true);}catch(e){}
var settings={cls:'jquery-checkbox',empty:'empty.png'};settings=$.extend(settings,options||{});var addEvents=function(object)
{var checked=object.checked;var disabled=object.disabled;var $object=$(object);if(object.stateInterval)
clearInterval(object.stateInterval);object.stateInterval=setInterval(function()
{if(object.disabled!=disabled)
$object.trigger((disabled=!!object.disabled)?'disable':'enable');if(object.checked!=checked)
$object.trigger((checked=!!object.checked)?'check':'uncheck');},10);return $object;};return this.each(function()
{var ch=this;var $ch=addEvents(ch);if(ch.wrapper)ch.wrapper.remove();ch.wrapper=$('<span class="'+settings.cls+'"><span class="mark"><img src="'+settings.empty+'" /></span></span>');ch.wrapperInner=ch.wrapper.children('span:eq(0)');ch.wrapper.hover(function(e){ch.wrapperInner.addClass(settings.cls+'-hover');CB(e);},function(e){ch.wrapperInner.removeClass(settings.cls+'-hover');CB(e);});$ch.css({position:'absolute',zIndex:-1,visibility:'hidden'}).after(ch.wrapper);var label=false;if($ch.attr('id'))
{label=$('label[for='+$ch.attr('id')+']');if(!label.length)label=false;}
if(!label)
{label=$ch.closest?$ch.closest('label'):$ch.parents('label:eq(0)');if(!label.length)label=false;}
if(label)
{label.hover(function(e){ch.wrapper.trigger('mouseover',[e]);},function(e){ch.wrapper.trigger('mouseout',[e]);});label.click(function(e){$ch.trigger('click',[e]);CB(e);return false;});}
ch.wrapper.click(function(e){$ch.trigger('click',[e]);CB(e);return false;});$ch.click(function(e){CB(e);});$ch.bind('disable',function(){ch.wrapperInner.addClass(settings.cls+'-disabled');}).bind('enable',function(){ch.wrapperInner.removeClass(settings.cls+'-disabled');});$ch.bind('check',function(){ch.wrapper.addClass(settings.cls+'-checked');}).bind('uncheck',function(){ch.wrapper.removeClass(settings.cls+'-checked');});$('img',ch.wrapper).bind('dragstart',function(){return false;}).bind('mousedown',function(){return false;});if(window.getSelection)
ch.wrapper.css('MozUserSelect','none');if(ch.checked)
ch.wrapper.addClass(settings.cls+'-checked');if(ch.disabled)
ch.wrapperInner.addClass(settings.cls+'-disabled');});}})(jQuery);
