// $Id: inline_ajax_search.js,v 1.3.2.5.2.2 2010/06/04 08:40:20 fabianderijk Exp $
(function ($) {
	Drupal.behaviors.inline_ajax_search = {
  	attach: function(){
  		Drupal.settings.IAS_settings.IAS_charChount = 0;
  		Drupal.settings.IAS_settings.IAS_el = $('#inline_ajax_search'); // CHANGED
  		Drupal.settings.IAS_settings.IAS_el_res = $('#inline_ajax_search_results'); // CHANGED
  		IAS_throbber = $('.IAS_block_throbber');
  		Drupal.settings.IAS_settings.IAS_el.val(Drupal.settings.IAS_settings.IAS_el.attr('title'));
  		Drupal.settings.IAS_settings.IAS_el_res.hide();
  		$('body').addClass('inline-ajax-search');
  		Drupal.settings.IAS_settings.IAS_el.keyup(function(event){
  			if ($(this).val().length >= Drupal.settings.IAS_settings.word_size) {
  				Drupal.settings.IAS_settings.countCharsShown = false;
  				Drupal.settings.IAS_settings.IAS_el_res.empty();
  				IAS_throbber.show();
  				var path = Drupal.settings.basePath + 'search/inline_ajax_search/get/';
  				$.ajax({
  					type: 'POST',
  					dataType: 'json',
  					url: path + $(this).val() + '/default',
  					success: inline_ajax_search_succes
  				});
  				return false;
  			}
  			else 
  				if ($(this).val().length > 0) {
  					setTimeout(function(){
  						if (!Drupal.settings.IAS_settings.countCharsShown && Drupal.settings.IAS_settings.IAS_charChount < Drupal.settings.IAS_settings.word_size) {
  							Drupal.settings.IAS_settings.resultsShownPage = true;
  							Drupal.settings.IAS_settings.countCharsShown = true;
  							IAS_throbber.hide();
  							var result = '<div class="searchresult lowcharcount">' + Drupal.t('Please enter at least ') + Drupal.settings.IAS_settings.word_size + Drupal.t(' characters.') + '</div>'; // CHANGED
  							Drupal.settings.IAS_settings.IAS_el_res.empty();
  							Drupal.settings.IAS_settings.IAS_el_res.append(result);
  							Drupal.settings.IAS_settings.IAS_el_res.fadeIn('fast');
  							Drupal.settings.IAS_settings.IAS_el_res.addClass('shown');
  						}
  					}, 500);
  				}
  				else {
  					Drupal.settings.IAS_settings.resultsShown = false;
  					Drupal.settings.IAS_settings.countCharsShown = false;
  					Drupal.settings.IAS_settings.IAS_el_res.fadeOut('fast', function(){
  						Drupal.settings.IAS_settings.IAS_el_res.removeClass('shown');
  						Drupal.settings.IAS_settings.IAS_el_res.empty();
  					});
					
  				}
  		});
  		
  		Drupal.settings.IAS_settings.IAS_el.focus(function(){
  			if ($(this).val() == $(this).attr('title')) {
  				$(this).val('');
  			}
  		});
  		
  		Drupal.settings.IAS_settings.IAS_el.blur(function(e){
  			if (!Drupal.settings.IAS_settings.resultsShown) {
  				$(this).val($(this).attr('title'));
  			}
  		});
  		
  		$(window).click(function(e){
  			if (Drupal.settings.IAS_settings.resultsShown) {
  				var left = Drupal.settings.IAS_settings.IAS_el_res.offset().left;
  				var top = Drupal.settings.IAS_settings.IAS_el_res.offset().top;
  				var bottom = top + Drupal.settings.IAS_settings.IAS_el_res.height();
  				var right = left + Drupal.settings.IAS_settings.IAS_el_res.width();
  				if (e.pageX > left && e.pageX < right && e.pageY > top && e.pageY < bottom) {
  					// do something inside the results
						}
						else {
							Drupal.settings.IAS_settings.resultsShown = false;
							Drupal.settings.IAS_settings.IAS_el_res.fadeOut('fast', function(){
								Drupal.settings.IAS_settings.IAS_el_res.empty();
								Drupal.settings.IAS_settings.IAS_el_res.removeClass('shown');
								Drupal.settings.IAS_settings.IAS_el.val(Drupal.settings.IAS_settings.IAS_el.attr('title'));
							});
							jQuery('div').remove('.dynamicDiv'); // NEW, CHANGED
						}
					}
				});
			}
		}
})(jQuery);

function inline_ajax_search_succes(data) {
  if(data.answer != null) {
    IAS_throbber.hide();
    Drupal.settings.IAS_settings.resultsShown = true;
    Drupal.settings.IAS_settings.IAS_el_res.html(data.answer);
    Drupal.settings.IAS_settings.IAS_el_res.fadeIn('fast');
    Drupal.settings.IAS_settings.IAS_el_res.addClass('shown');
	jQuery('div').remove('.dynamicDiv'); // NEW, CHANGED
  }
};

