var com = com || {};
com.as = com.as || {};

/**
 * @author Juan Carlos Conde colque
 * @link juan.conde@altrasoluciones.com
 * 
 * insert code example
 * $(document).ready(function(){
 * 		var search = new com.as.Search();
 * 		search.configureDialogForm("#dialog-form-search");
 * 		search.addEventClickSearch("#search-key");
 * 		search.configureCalendar("#startDate");
 * 		search.configureCalendar("#endDate");
 * 		search.addEventInputFocusInOut("#searchterms","Enter Search Term(s)");
 * 		search.addEventInputFocusInOut("#searchwithout","Search Without These Words");
 * 		search.configureAccordionResult("#accordion");
 * 		search.configureDatatableNews("#result-news");
 * });
 */
com.as.Search = function() {
	this.idDialogForm = "";
	this.textSearchDefault = "";
};

com.as.Search.prototype = {
	/**
	 * @param String idButton format #id jquery
	 */
	addEventClickSearch:function(idButton) {with (this){
		$(idButton).bind('click',function(event) {
			event.preventDefault();
				if (idDialogForm != "") {
					if (!$(idDialogForm).dialog( "isOpen" )) {
						//var width = $(idDialogForm).dialog("option","width");
						var x = $(this).position().left;
					    var y = $(this).position().top - $(document).scrollTop();
						//console.log($("#container").position().left);
					    $(idDialogForm).dialog({ position:[x,y + 44] });
						$(idDialogForm).dialog("open");
					} else {
						$(idDialogForm).dialog("close");
					}
				}
			});
	}},
	/**
	 * @param String idDialogForm format #id jquery
	 */
	configureDialogForm:function(idDialogFormSearch){ with(this){
		idDialogForm = idDialogFormSearch;
		$.fx.speeds._default = 500;
		$(idDialogForm).dialog({
			autoOpen: false,
			height: 270,
			width: 335,
			draggable:false,
			resizable:false,
			modal: false,
			show: 'blind',
			hide:'blind',
			buttons: {
				"Search": function() {
					var valText = $("#formSearch :input[type=text]").val();
					if (textSearchDefault != valText && valText != "")
						$("#formSearch").submit();
				},	
				Cancel: function() {
					$( this ).dialog( "close" );
				}
			}
		});
		//for hide header
		$(".ui-widget-header").css('display','none');
	}},
	/**
	 * @param String idCalendar format #id jquery
	 */
	configureCalendar:function(idCalendar) {
		$(idCalendar).datepicker({
			showOn: "button",
			dateFormat: 'mm/dd/yy',
			buttonImage: "http://www.interactivelandrover.com/home/images/calendar.gif",
			buttonImageOnly: true
		});
	},
	/**
	 * 
	 * @param String idInput format #id jquery
	 * @param String textDefault insertado como texto si el campo esta vacio.
	 * @returns
	 */
	addEventInputFocusInOut:function(idInput,textDefault) {
		this.textSearchDefault = textDefault;
		$(idInput).bind('focusin', function(event) {
				if ($(this).val() == textDefault) {
					$(this).val("");
				}
			});
		$(idInput).bind('focusout', function(event) {
			if ($(this).val() == "") {
				$(this).val(textDefault);
			}
		});
	}
};


