/*
 * jQuery selectbox plugin
 *
 * Copyright (c) 2007 Sadri Sahraoui (brainfault.com)
 * Licensed under the GPL license and MIT:
 *   http://www.opensource.org/licenses/GPL-license.php
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * The code is inspired from Autocomplete plugin (http://www.dyve.net/jquery/?autocomplete)
 *
 * Revision: $Id$
 * Version: 0.6
 * Customized to TAM Viagens By Riosoft
 */
jQuery.fn.extend({selectbox:function(i,o){return this.each(function(){new jQuery.SelectBox(this,i,o)})}});if(!window.console)var console={log:function(){}};
jQuery.SelectBox=function(i,o,s){function l(){m=0;d.hide()}function q(a){var b=$("li",d);if(!b||b.length==0)return false;j+=a;if(j<0)j=b.size();else if(j>b.size())j=0;a=b;var f=$(a[j]).get(0);a=d.get(0);if(f.offsetTop+f.offsetHeight>a.scrollTop+a.clientHeight)a.scrollTop=f.offsetTop+f.offsetHeight-a.clientHeight;else if(f.offsetTop<a.scrollTop)a.scrollTop=f.offsetTop;b.removeClass(c.hoverClass);$(b[j]).addClass(c.hoverClass)}function t(a){var b=document.createElement("ul");e.children("option").each(function(){var f=
document.createElement("li");f.setAttribute("id",a+"_"+$(this).val());f.innerHTML=$(this).html();if($(this).is(":selected")){h.val($(this).html());$(f).addClass(c.currentClass)}b.appendChild(f);$(f).mouseover(function(k){m=1;c.debug&&console.log("over on : "+this.id);jQuery(k.target,d).addClass(c.hoverClass)}).mouseout(function(k){m=-1;c.debug&&console.log("out on : "+this.id);jQuery(k.target,d).removeClass(c.hoverClass)}).click(function(){$("li."+c.hoverClass,d).get(0);c.debug&&console.log("click on :"+
this.id);$("li."+c.currentClass).removeClass(c.currentClass);$(this).addClass(c.currentClass);var k=$("li."+c.currentClass,d).get(0),r=(""+k.id).split("_");e.val(r[r.length-1]);h.val($(k).html());e.get(0).blur();l();typeof onSelectChange!="undefined"&&onSelectChange(e.get(0))})});return b}var c=o||{};c.inputClass=c.inputClass||"selectbox";c.containerClass=c.containerClass||"selectbox-wrapper";c.hoverClass=c.hoverClass||"current";c.currentClass=c.selectedClass||"selected";c.debug=c.debug||false;var g=
i.id,j=0,p=false,m=0,n=false,u=s||"/apt/img/btnDropdown.gif";document.getElementById(g+"_container");var e=$(i),d=function(a){var b,f=false;if(document.getElementById(g+"_container")!=null)b=document.getElementById(g+"_container");else{b=document.createElement("div");f=true}d=$(b);if(f){d.attr("id",g+"_container");d.addClass(a.containerClass)}if(e.children("option").length<6){if(e.children("option").val()==""&&e.children("option").html()==""){a=$.browser.msie&&parseInt($.browser.version)!=8?6:7;b=
$.browser.msie&&parseInt($.browser.version)!=8?110:116}else{a=6;b=110}a=b-(a-e.children("option").length)*19;a=a<20?20:a+2;d.css("height",a+"px")}else d.css("height","100px");if(f)if($.browser.msie&&parseInt($.browser.version)!=8)d.css("margin-left",(e.width()+7)*-1+"px");else{if($.browser.msie&&parseInt($.browser.version)==8)e.parent().css("float")=="none"&&e.attr("diffpix")!=null&&d.css("margin-left",e.offset().left-e.attr("diffpix")+"px");else d.css("margin-left",e.offset().left-e.parents().offset().left+
"px");d.css("margin-top","0px")}return d}(c),h=function(a){var b,f=false;if(document.getElementById(g+"_input")!=null)b=document.getElementById(g+"_input");else{b=document.createElement("input");f=true}b=$(b);if(f){b.attr("id",g+"_input");b.attr("type","text");b.addClass(a.inputClass);b.attr("autocomplete","off");b.attr("readonly","readonly");b.attr("tabIndex",e.attr("tabindex"))}return b}(c);i=function(){var a,b=false;if(document.getElementById(g+"_img")!=null)a=document.getElementById(g+"_input");
else{a=document.createElement("img");b=true}a=$(a);if(b){a.attr("id",g+"_img");a.attr("src",u);a.addClass("dropdown");b=e.parent().css("float")!="none"&&!$.browser.safari?5:e.width()+10;a.css("margin-left",b+"px")}return a}();e.hide().before(i).before(h).before(d);(function(){d.html(t(h.attr("id"))).hide();var a=e.width();d.width(a+28);h.width(a)})();$.browser.safari&&d.mousemove(function(){n=true;h.focus()}).mouseout(function(){n=false});h.click(function(){p||d.toggle()}).focus(function(){if(d.not(":visible")){p=
true;d.show()}}).keydown(function(a){switch(a.keyCode){case 38:a.preventDefault();q(-1);break;case 40:a.preventDefault();q(1);break;case 13:a.preventDefault();$("li."+c.hoverClass).trigger("click");break;case 27:l()}}).blur(function(){if(d.is(":visible")&&m>0)c.debug&&console.log("container visible and has focus");else if(n||document.activeElement&&document.activeElement.getAttribute("id"))if($.browser.safari&&!n||document.activeElement.getAttribute("id").indexOf("_container")==-1){p=false;l()}else h.focus();
else l()});i.click(function(){h.focus()})};
