jQuery().ready(function($){

    /**
     * autor : CTAPbIu_MABP
     * email : ctapbiumabp@gmail.com
     * url : http://mabp.kiev.ua/content/2008/04/08/autocomplete/
     */

	$("#autocomplete1").autocomplete({
		url:'/content/polygon/search.php'
	});
	
	$("#autocomplete2").autocomplete({
		url:'/content/polygon/search.php?type=xml',
		minchar:2,
		delay:1000, // in milliseconds
		onSelect:function(){
			alert(this.ac.val())
		},
		type:'xml'
	});
	
	$("#autocomplete3").autocomplete({
		url:'/content/polygon/search.php?type=json',
		onKeyPress:function(){
			var self=this;
			setTimeout(function(){
				self.ac.val(self.ac.val().replace(/[^a-z ]+/g,""))
			},50)
		},
		fillin:true,
		type:'json'
	});
	
	$("#autocomplete4").autocomplete({
		url:'/content/polygon/non_exist.php',
		onError:function(XMLHttpRequest, textStatus, errorThrown){
			this.ac.val(textStatus);
			this.ac.attr({disabled:"disabled"}).css({'background-color':'#d0d0d0'});
			this.ul.hide();
			this.img.unbind("click");
		}
	});
	
	$("#autocomplete5").autocomplete({
		source:"#select",
		onKeyPress:function(){
			var o=this;
			setTimeout(function(){
				o.ac.val(o.ac.val().replace(/[^0-9]+/g,""));
			},50)
		},
		fillin:true
	});
	
	$("#autocomplete6").autocomplete({
		source:['a','b','c','d','e'],
		fillin:true
	});
	
	$("#autocomplete7").autocomplete({
		source:{a:'a',b:'b',c:'c',d:'d',e:'e'},
		fillin:true
	});
	
	$("#autocomplete8").autocomplete({
		url:'/content/polygon/search.php',
		top:true
	});

	$("#autocomplete9").autocomplete({
		url:'/content/polygon/search.php',
                values : true,
		writable : false,
                onSelect:function(){
                    alert(this.pairs[this.ac.val()]);
                }
	});

	$("#autocomplete10").autocomplete({
		onSetup:function(){
			var self = this;
			self.url = '/content/polygon/search.php';
			self.img.unbind("click")
				.bind("click", function() {
				clearTimeout(self.close);
				self.scroll();
				self.ul.slideToggle("slow")
				self.ac.focus();
			});
		}
	});
	
	$("#autocomplete11").autocomplete({
		url:'/content/polygon/search.php?type=json',
		onSuggest:function(){
			this.ac.css({'background-image': 'url("/content/source/autocomplete/progress.gif")'});
		},
		onError:function(XMLHttpRequest, textStatus, errorThrown){
			this.ac.val(textStatus);
			this.ac.attr({disabled:"disabled"}).css({'background-color':'#d0d0d0','background-image':'none'});
			this.ul.hide();
			this.img.unbind("click");
		},
		onDisplay:function(list){
			this.ac.css({'background-image':'none'});
			if (!list)
			this.ul.append("<div style='line-height:100px;text-decoration:underline;text-align:center;'>[Empty list...]</div>");
		},
		minchar:2,
		type:'json'
	});
	
	$("#autocomplete12").autocomplete({
		source : [{a:'a'},{b:'b'},{c:'c'},{d:'d'},{e:'e'}],
		fillin : true,
		dataHandler : function(mask){
			var self = this;
			return function(i, n) {
				for (var key in n){
					self.cache[mask].push(n[key]);
				}
				self.store[mask] += self.mark(n[key],mask);
				if(self.values && !self.pairs[n[key]])
					self.pairs[n[key]] = key;
				};
			}
	});
	
	$("#autocomplete13").autocomplete({
		url:function(self){
			var state = $("#c13").attr("checked");
			if (self.ac.data("c13") != state){
				self.ac.data("c13", state);
				self.cache = {};
				self.store = {};
				self.pairs = {};
			}
			return '/content/polygon/search.php?c13='+state;
		}
	});
	
	$("select#autocomplete14").autocomplete();
});
