if (jQuery) ( function ($) {
	
	/**
	 * jQuery AJAX
	 * 
	 * type: ÆûÀü¼Û¹æ½Ä
	 * contentType: ÄÁÅÙÆ® Å¸ÀÔ
	 * dataType: ÀÀ´ä µ¥ÀÌÅÍ Å¸ÀÔ 
	 * url: ¿äÃ» URL
	 * data: ¿äÃ» ÆÄ¶ó¹ÌÅÍ
	 * error: ÀÀ´ä ¿¡·¯ È£Ãâ ÇÔ¼ö
	 * success: ÀÀ´ä ¼º°ø È£Ãâ ÇÔ¼ö
	 * complete: AJAX Ã³¸® ¿Ï·áÈÄ È£Ãâ ÇÔ¼ö
	 * 
	 * url : ¿äÃ» URL
	 * id : ¿¤·¹¸ÕÆ® id
	 * success : (EX. function (data) { ... })
	 * complete : (EX. function () { ... })
	 */
	$.setAjax = function (url, id, success, complete) {
		$.ajax({
			type: "POST",
			contentType: "application/x-www-form-urlencoded",
			cache: false,
			dataType: "html",
			url: url,
			data: $(id).serialize(),
			error: function () {
				alert("Error loding document");
			},
			success: success,
			complete: complete
		});
	};
		
	/**
	 * jQuery UI Widgets - Datepicker
	 *
	 * changeYear: ³âµµ ¼±ÅÃ¿©ºÎ
	 * changeMonth: ¿ù ¼±ÅÃ¿©ºÎ
	 * monthNamesShort: ¿ù ¼±ÅÃ¹Ú½º ÅØ½ºÆ®
	 * showButtonPanel: ¿À´Ã¹öÆ°°ú ´Ý±â¹öÆ° ¼±ÅÃ¿©ºÎ
	 * currentText: ¿À´Ã ÅØ½ºÆ®
	 * closeText: ´Ý±â ÅØ½ºÆ®
	 * dayNamesMin: ¿äÀÏº° ÅØ½ºÆ®
	 * monthNames: ¿ùº° ÅØ½ºÆ®
	 * prevText: ÀÌÀü´Þ ÅØ½ºÆ®
	 * nextText: ´ÙÀ½´Þ ÅØ½ºÆ®
	 * dateFormat: ´Þ·Â ¼±ÅÃ ÀÌÈÄ Ãâ·ÂÇÒ ÅØ½ºÆ® À¯Çü (EX. 2009.01.01)
	 * showOn: datepicker µðÀÚÀÎ À¯Çü (EX. focus ¶Ç´Â button)
	 * buttonImage: showOn ¿É¼ÇÀ» button ¼³Á¤½Ã »ç¿ëµÉ ÀÌ¹ÌÁö
	 * buttonImageOnly: ¹öÆ° ÀÌ¹ÌÁö¸¸ º¸¿©ÁÙ °ÍÀÎÁö ¼±ÅÃ¿©ºÎ
	 * buttonText: ¹öÆ° ÀÌ¹ÌÁö ÅøÆÁ
	 * yearRange: ¼±ÅÃ ¿¬µµ ¹üÀ§ (EX. 1997:2010)
	 * maxDate: ¼±ÅÃ°¡´ÉÇÑ ÃÖ´ëÀÏÀÚ
	 * 
	 * strYearRange : ¼±ÅÃ ¿¬µµ ¹üÀ§ (EX. 1997:2010)
	 * maxDate : ¼±ÅÃ°¡´ÉÇÑ ÃÖ´ëÀÏÀÚ (EX. 20101020)
	 */
	$.setDatepicker = function (strYearRange, strMaxDate) {
		var yearMaxDate = strMaxDate.substring(0, 4);
		var monthMaxDate = strMaxDate.substring(4, 6);
		var dayMaxDate = strMaxDate.substring(6, 8);
		
		$.datepicker.setDefaults({
			changeYear: true,
			changeMonth: true,
			monthNamesShort: ["1¿ù", "2¿ù", "3¿ù", "4¿ù", "5¿ù", "6¿ù", "7¿ù", "8¿ù", "9¿ù", "10¿ù", "11¿ù", "12¿ù"],
			showButtonPanel: true,
			currentText: "¿À´Ã",
			closeText: "´Ý±â",
			dayNamesMin: ["ÀÏ", "¿ù", "È­", "¼ö", "¸ñ", "±Ý", "Åä"],
			monthNames: ["1¿ù", "2¿ù", "3¿ù", "4¿ù", "5¿ù", "6¿ù", "7¿ù", "8¿ù", "9¿ù", "10¿ù", "11¿ù", "12¿ù"],
			prevText: "ÀÌÀü´Þ",
			nextText: "´ÙÀ½´Þ",
			dateFormat: "yy.mm.dd",
			showOn: "button",
			buttonImage: "/images/btn/btn_calrendar.gif",
			buttonImageOnly: true,
			buttonText: "±â°£Á¶È¸",
			yearRange: strYearRange,
			maxDate: new Date(yearMaxDate, monthMaxDate - 1, dayMaxDate)
		});
	};
	
	/**
	 * jQuery UI Widgets - Datepicker
	 *
	 * changeYear: ³âµµ ¼±ÅÃ¿©ºÎ
	 * changeMonth: ¿ù ¼±ÅÃ¿©ºÎ
	 * monthNamesShort: ¿ù ¼±ÅÃ¹Ú½º ÅØ½ºÆ®
	 * showButtonPanel: ¿À´Ã¹öÆ°°ú ´Ý±â¹öÆ° ¼±ÅÃ¿©ºÎ
	 * currentText: ¿À´Ã ÅØ½ºÆ®
	 * closeText: ´Ý±â ÅØ½ºÆ®
	 * dayNamesMin: ¿äÀÏº° ÅØ½ºÆ®
	 * monthNames: ¿ùº° ÅØ½ºÆ®
	 * prevText: ÀÌÀü´Þ ÅØ½ºÆ®
	 * nextText: ´ÙÀ½´Þ ÅØ½ºÆ®
	 * dateFormat: ´Þ·Â ¼±ÅÃ ÀÌÈÄ Ãâ·ÂÇÒ ÅØ½ºÆ® À¯Çü (EX. 2009.01.01)
	 * showOn: datepicker µðÀÚÀÎ À¯Çü (EX. focus ¶Ç´Â button)
	 * buttonImage: showOn ¿É¼ÇÀ» button ¼³Á¤½Ã »ç¿ëµÉ ÀÌ¹ÌÁö
	 * buttonImageOnly: ¹öÆ° ÀÌ¹ÌÁö¸¸ º¸¿©ÁÙ °ÍÀÎÁö ¼±ÅÃ¿©ºÎ
	 * buttonText: ¹öÆ° ÀÌ¹ÌÁö ÅøÆÁ
	 * yearRange: ¼±ÅÃ ¿¬µµ ¹üÀ§ (EX. 1997:2010)
	 * maxDate: ¼±ÅÃ°¡´ÉÇÑ ÃÖ´ëÀÏÀÚ
	 */
	$.setDefaultDatepicker = function () {
		
		$.datepicker.setDefaults({
			monthNamesShort: ["1¿ù", "2¿ù", "3¿ù", "4¿ù", "5¿ù", "6¿ù", "7¿ù", "8¿ù", "9¿ù", "10¿ù", "11¿ù", "12¿ù"],
			showButtonPanel: true,
			currentText: "¿À´Ã",
			closeText: "´Ý±â",
			dayNamesMin: ["ÀÏ", "¿ù", "È­", "¼ö", "¸ñ", "±Ý", "Åä"],
			monthNames: ["1¿ù", "2¿ù", "3¿ù", "4¿ù", "5¿ù", "6¿ù", "7¿ù", "8¿ù", "9¿ù", "10¿ù", "11¿ù", "12¿ù"],
			prevText: "ÀÌÀü´Þ",
			nextText: "´ÙÀ½´Þ",
			dateFormat: "yy.mm.dd",
			buttonText: "±â°£Á¶È¸"
		});
		
	};
	
	/**
	 * jQuery ÆÄÀÏ ´Ù¿î·Îµå(added by pwjman 2011.01.04)
	 * ¿äÃ»¿¡ ÀÇÇØ µ¿ÀûÀ¸·Î ÆûÀ» »ý¼ºÇÏ¿© ÆÄÀÏ ´Ù¿î·Îµå ÆäÀÌÁö¸¦ È£ÃâÇÑ´Ù.
	 * »ç¿ë ¿¹) $.download('/jsp/common/download.jsp', 'attType=idea&attSeq='+attSeq, 'post'); 
	 */
	$.download = function(url, data, method){
	    // url°ú data¸¦ ÀÔ·Â¹ÞÀ½
	    if( url && data ){ 
	        // data ´Â  string ¶Ç´Â array/object ¸¦ ÆÄ¶ó¹ÌÅÍ·Î ¹Þ´Â´Ù.
	        data = typeof data == 'string' ? data : $.param(data);
	        // ÆÄ¶ó¹ÌÅÍ¸¦ formÀÇ  inputÀ¸·Î ¸¸µç´Ù.
	        var inputs = '';
	        $.each(data.split('&'), function(){ 
	            var pair = this.split('=');
	            inputs+='<input type="hidden" name="'+ pair[0] +'" value="'+ pair[1] +'" />'; 
	        });
	        // request¸¦ º¸³½´Ù.
	        $('<form action="'+ url +'" method="'+ (method||'post') +'">'+inputs+'</form>')
	        .appendTo('body').submit().remove();
	    };
	};
})(jQuery);
