// JavaScript Document


	$.fn.ajxLiveDropdown = function(opts) {


		var defaults = {
			source 			: "",
			keyfield		: "",
			labelfield		: "",
			defaultValue	: "",
			filters			: "",	
			onchange		: function(){ }
		};


		return this.each(function() {

			var context = this;
			var $context = $(this);
			var options = $.extend(defaults, opts);



			function setEventHandlers() {
				$(context).change(context.options.onchange);
			}


			function fillSelectInput(data) {
				$(context).empty();
				$(context).append($('<option></option>').val("").html(""));
				for (var i=0; i<data.length; i++) {
					$(context).append($('<option></option>').val(data[i][options.keyfield]).html(data[i][options.labelfield])	);
				}
				if (options.defaultValue) $(context).val(options.defaultValue);
			}

			function render(data){
				$.ajax({
					    url: "../admin/ajx/php/ajx.backend.php",
					    dataType:"json",
					    data:"call=getGridData&source="+options.source+"&filters="+options.filters,
					    success: function(data){
			        	      if (data.retcode=="OK") {
							  fillSelectInput(data.data);
							} else {
								// wrong data, ignore
			                }
					    },
					    error: function(data){
								// cal error
					    }
				});
			}


			function init(){
				render();
				setEventHandlers();								
			}




			init();
		});
	}


