(function($){
	
	jQuery.fn.alphabet = function(options){
		
		// out defaults params
		var settings = 
		{
			init			: false,
			alphabet  : "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
			height    : 300,
			width			: 200,
			speed			: 300,
			position  : {'top': 0, 'left': 0}
		};
		
		// extend our default params with those provided
		settings = jQuery.extend(settings, options || {});
		
		
		return this.each(function(){
			
			var _this = $(this);
			
			_this.click(function(){
				
				var _parent = _this.parent();
				var _pos_this = _this.offset();
				var _pos_parent = _parent.offset();
				var _x = 0;
				var _y = 0;
				var _links  = '';
				var _letter = '';
				
				if (settings.init)
					return false;
				
				
				var _alphabet_div = jQuery('<div id="alphabet"></div>');
				$('body').append(_alphabet_div);
				
				for (i = 0; i < 26; i++){
					_letter = settings.alphabet.substr(i,1);
					var _a = jQuery('<a href="javascript: void(null)" class="alphabet-link">' + _letter + '</a>');
					
					_a.click(function(){
						
						getObject('selectbox-search_input').val($(this).text());
						getObject('form-search').submit();
					
					});
					_alphabet_div.append(_a);
				}
				
				_alphabet_div.css('top', _pos_parent.top + _parent.height() + 5);
				_alphabet_div.css('left', _pos_parent.left);
				
				_alphabet_div.slideDown(500, function(){
				
					settings.height = $(this).height();
					settings.width = $(this).width();
					settings.position = $(this).offset();
					
				 $(document).mousemove(function(e){
					 
						_x  = e.pageX;
						_y =  e.pageY;
						
						if (_x < settings.position.left || _x > settings.position.left + settings.width){
							_alphabet_div.slideUp(500, function() {$(this).remove()});
							$(document).unbind('mousemove');
							settings.init = false;
						}
						
						if (_y < settings.position.top - _parent.height() || _y > settings.position.top + settings.height){
							_alphabet_div.slideUp(500, function() {$(this).remove()});
							$(document).unbind('mousemove');
							settings.init = false;
						}
						
				 }); 					
				
				});
				
				settings.init = true;
				
			});
			
			return false;			
			
		
		});
		
	};	
	
})(jQuery);

$(document).ready(function(){

	$('#link-alphabet').alphabet();

});

