(function($){$.fn.labelcheck=function(options){var rows=$(this);if(!options)options={};options=$.extend({'click':function(){},'check_selector':'input[@type=checkbox], input[@type=radio]','label_selector':'label'},options);rows.each(function(){var row=$(this);new $.labelcheck(row,options)});return rows}$.labelcheck=function(row,options){this.row=row;this.options=options;this.labels=$(this.options.label_selector,this.row);this.toCheck=$(this.options.check_selector,this.row);this.labelWrapsCheck=!!$(this.options.check_selector,this.labels).size();if(this.toCheck.size()==1){this.buildClickEvents()}}$.extend($.labelcheck.prototype,{buildClickEvents:function(){var row=this;if(!this.labelWrapsCheck){this.labels.click(function(){row.check();row.options.click()})}this.toCheck.click(function(){row.options.click()})},check:function(){var checked=this.toCheck.attr('checked');if(this.toCheck.attr('type')=='radio'&&checked)return;this.toCheck.attr('checked',!checked)}})})(jQuery);