
if(jQuery)(function($){$.extend($.fn,{multiSelect:function(o,callback){if(!o)var o={};if(o.selectAll==undefined)o.selectAll=true;if(o.selectAllText==undefined)o.selectAllText="Selectează toate";if(o.noneSelected==undefined)o.noneSelected='- selectează -';if(o.oneOrMoreSelected==undefined)o.oneOrMoreSelected='% selectate';$(this).each(function(){var select=$(this);var html='<input type="text" readonly="readonly" class="multiSelect" value="" style="cursor: default;" />';html+='<div class="multiSelectOptions" style="position: absolute; z-index: 99999; display: none;">';if(o.selectAll)html+='<label class="selectAll"><input type="checkbox" class="selectAll" />'+o.selectAllText+'</label>';$(select).find('OPTION').each(function(){if($(this).val()!=''){html+='<label><input type="checkbox" name="'+$(select).attr('name')+'" value="'+$(this).val()+'"';if($(this).attr('selected'))html+=' checked="checked"';html+=' />'+$(this).html()+'</label>';}});html+='</div>';$(select).after(html);$(select).next('.multiSelect').mouseover(function(){$(this).addClass('hover');}).mouseout(function(){$(this).removeClass('hover');}).click(function(){if($(this).hasClass('active')){$(this).multiSelectOptionsHide();}else{$(this).multiSelectOptionsShow();}
return false;}).focus(function(){$(this).addClass('focus');}).blur(function(){$(this).removeClass('focus');});if(o.selectAll){var sa=true;$(select).next('.multiSelect').next('.multiSelectOptions').find('INPUT:checkbox').not('.selectAll').each(function(){if(!$(this).attr('checked'))sa=false;});if(sa)$(select).next('.multiSelect').next('.multiSelectOptions').find('INPUT.selectAll').attr('checked',true).parent().addClass('checked');}
$(select).next('.multiSelect').next('.multiSelectOptions').find('INPUT.selectAll').click(function(){if($(this).attr('checked')==true)$(this).parent().parent().find('INPUT:checkbox').attr('checked',true).parent().addClass('checked');else $(this).parent().parent().find('INPUT:checkbox').attr('checked',false).parent().removeClass('checked');});$(select).next('.multiSelect').next('.multiSelectOptions').find('INPUT:checkbox').click(function(){$(this).parent().parent().multiSelectUpdateSelected(o);$(this).parent().parent().find('LABEL').removeClass('checked').find('INPUT:checked').parent().addClass('checked');$(this).parent().parent().prev('.multiSelect').focus();if(!$(this).attr('checked'))$(this).parent().parent().find('INPUT:checkbox.selectAll').attr('checked',false).parent().removeClass('checked');if(callback)callback($(this));});$(select).next('.multiSelect').next('.multiSelectOptions').each(function(){$(this).multiSelectUpdateSelected(o);$(this).find('INPUT:checked').parent().addClass('checked');});$(select).next('.multiSelect').next('.multiSelectOptions').find('LABEL').mouseover(function(){$(this).parent().find('LABEL').removeClass('hover');$(this).addClass('hover');}).mouseout(function(){$(this).parent().find('LABEL').removeClass('hover');});$(select).next('.multiSelect').keydown(function(e){if($(this).next('.multiSelectOptions').is(':visible')){if(e.keyCode==9){$(this).addClass('focus').trigger('click');$(this).focus().next(':input').focus();return true;}
if(e.keyCode==27||e.keyCode==37||e.keyCode==39){$(this).addClass('focus').trigger('click');}
if(e.keyCode==40){if(!$(this).next('.multiSelectOptions').find('LABEL').hasClass('hover')){$(this).next('.multiSelectOptions').find('LABEL:first').addClass('hover');}else{$(this).next('.multiSelectOptions').find('LABEL.hover').removeClass('hover').next('LABEL').addClass('hover');if(!$(this).next('.multiSelectOptions').find('LABEL').hasClass('hover')){$(this).next('.multiSelectOptions').find('LABEL:first').addClass('hover');}}
$(this).multiSelectAdjustViewport($(this));return false;}
if(e.keyCode==38){if(!$(this).next('.multiSelectOptions').find('LABEL').hasClass('hover')){$(this).next('.multiSelectOptions').find('LABEL:first').addClass('hover');}else{$(this).next('.multiSelectOptions').find('LABEL.hover').removeClass('hover').prev('LABEL').addClass('hover');if(!$(this).next('.multiSelectOptions').find('LABEL').hasClass('hover')){$(this).next('.multiSelectOptions').find('LABEL:last').addClass('hover');}}
$(this).multiSelectAdjustViewport($(this));return false;}
if(e.keyCode==13||e.keyCode==32){if($(this).next('.multiSelectOptions').find('LABEL.hover INPUT:checkbox').hasClass('selectAll')){if($(this).next('.multiSelectOptions').find('LABEL.hover INPUT:checkbox').attr('checked')){$(this).next('.multiSelectOptions').find('INPUT:checkbox').attr('checked',false).parent().removeClass('checked');}else{$(this).next('.multiSelectOptions').find('INPUT:checkbox').attr('checked',true).parent().addClass('checked');}
$(this).next('.multiSelectOptions').multiSelectUpdateSelected(o);if(callback)callback($(this));return false;}
if($(this).next('.multiSelectOptions').find('LABEL.hover INPUT:checkbox').attr('checked')){$(this).next('.multiSelectOptions').find('LABEL.hover INPUT:checkbox').attr('checked',false);$(this).next('.multiSelectOptions').multiSelectUpdateSelected(o);$(this).next('.multiSelectOptions').find('LABEL').removeClass('checked').find('INPUT:checked').parent().addClass('checked');$(this).next('.multiSelectOptions').find('INPUT:checkbox.selectAll').attr('checked',false).parent().removeClass('checked');if(callback)callback($(this));}else{$(this).next('.multiSelectOptions').find('LABEL.hover INPUT:checkbox').attr('checked',true);$(this).next('.multiSelectOptions').multiSelectUpdateSelected(o);$(this).next('.multiSelectOptions').find('LABEL').removeClass('checked').find('INPUT:checked').parent().addClass('checked');if(callback)callback($(this));}}
return false;}else{if(e.keyCode==38||e.keyCode==40||e.keyCode==13||e.keyCode==32){$(this).removeClass('focus').trigger('click');$(this).next('.multiSelectOptions').find('LABEL:first').addClass('hover');return false;}
if(e.keyCode==9){$(this).focus().next(':input').focus();return true;}}
if(e.keyCode==13)return false;});if($.fn.bgiframe)$(select).next('.multiSelect').next('.multiSelectOptions').bgiframe();$(select).remove();});},multiSelectOptionsHide:function(){$(this).removeClass('active').next('.multiSelectOptions').hide();},multiSelectOptionsShow:function(){$('.multiSelect').multiSelectOptionsHide();$(this).next('.multiSelectOptions').find('LABEL').removeClass('hover');$(this).addClass('active').next('.multiSelectOptions').show();var offset=$(this).position();$(this).next('.multiSelectOptions').css({top:offset.top+$(this).outerHeight()+'px'});$(this).next('.multiSelectOptions').css({left:offset.left+'px'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;$(this).next('.multiSelectOptions').children().each(function(){listHeight+=this.offsetHeight;});if(listHeight>200)$(this).next('.multiSelectOptions').css({height:'200px'});}
multiSelectCurrent=$(this);var timer='';$(this).next('.multiSelectOptions').hover(function(){clearTimeout(timer);},function(){timer=setTimeout('jQuery(multiSelectCurrent).multiSelectOptionsHide(); $(multiSelectCurrent).unbind("hover");',250);});},multiSelectUpdateSelected:function(o){var i=0,s='';$(this).find('INPUT:checkbox:checked').not('.selectAll').each(function(){i++;})
if(i==0){$(this).prev('INPUT.multiSelect').val(o.noneSelected);}else{if(o.oneOrMoreSelected=='*'){var display='';$(this).find('INPUT:checkbox:checked').each(function(){if($(this).parent().text()!=o.selectAllText)display=display+$(this).parent().text()+', ';});display=display.substr(0,display.length-2);$(this).prev('INPUT.multiSelect').val(display);}else{$(this).prev('INPUT.multiSelect').val(o.oneOrMoreSelected.replace('%',i));}}},multiSelectAdjustViewport:function(el){var i=0;var selectionTop=0,selectionHeight=0;$(el).next('.multiSelectOptions').find('LABEL').each(function(){if($(this).hasClass('hover')){selectionTop=i;selectionHeight=$(this).outerHeight();return;}
i+=$(this).outerHeight();});var divScroll=$(el).next('.multiSelectOptions').scrollTop();var divHeight=$(el).next('.multiSelectOptions').height();$(el).next('.multiSelectOptions').scrollTop(selectionTop-((divHeight/2)-(selectionHeight/2)));}});})(jQuery);