var Header = Class.create(
{
	initialize:function(ele,options){
		this.ele = $(ele);
		var thisObj = this;
		
		//define locations btn
		this.is_location_show = false;
		this.is_location_effecting = 0;
		
		//define search btn
		this.is_init_search = true;
		this.is_search_effecting = 0;
		this.searchs = $$('.div_header_search');
		this.searchs.each(
			function(e){
				var list = e.down('.div_header_search_type').down('dl');
				e = e.down('input');
				new Effect.Move(list, { duration:0, x:220, mode: 'absolute'});
				new Effect.Fade(list, { duration:0 } );
				//list.show();
				
				//
				thisObj.type_names = ['Product', 'Technical', 'Showcase'];
				thisObj.types = ['product', 'technical', 'showcase'];
				
				var btn_all = e.up().next('div').down('dt');
				var btn_1 = e.up().next('div').down('dd', 0);
				var btn_2 = e.up().next('div').down('dd', 1);
				var btn_3 = e.up().next('div').down('dd', 2);
				
				Event.observe(btn_all, 'mousedown', function() { 
					thisObj.type_names = ['Product', 'Technical', 'Showcase'];
					thisObj.types = ['product', 'technical', 'showcase'];
					btn_all.removeClassName('text02b');
					btn_1.removeClassName('text02b');
					btn_2.removeClassName('text02b');
					btn_3.removeClassName('text02b');
					this.addClassName('text02b');
					e.focus();
				});
				Event.observe(btn_1, 'mousedown', function() { 
					thisObj.type_names = ['Product'];
					thisObj.types = ['product'];
					btn_all.removeClassName('text02b');
					btn_1.removeClassName('text02b');
					btn_2.removeClassName('text02b');
					btn_3.removeClassName('text02b');
					this.addClassName('text02b');
					e.focus();
				});
				Event.observe(btn_2, 'mousedown', function() { 
					thisObj.type_names = ['Showcase'];
					thisObj.types = ['showcase'];
					btn_all.removeClassName('text02b');
					btn_1.removeClassName('text02b');
					btn_2.removeClassName('text02b');
					btn_3.removeClassName('text02b');
					this.addClassName('text02b');
					e.focus();
				});
				Event.observe(btn_3, 'mousedown', function() { 
					thisObj.type_names = ['Technical'];
					thisObj.types = ['technical'];
					btn_all.removeClassName('text02b');
					btn_1.removeClassName('text02b');
					btn_2.removeClassName('text02b');
					btn_3.removeClassName('text02b');
					this.addClassName('text02b');
					e.focus();
				});
				//
				Event.observe(e, 'click', function() { 
					if (thisObj.is_init_search==true) {
						thisObj.is_init_search = false;
						e.value = '';
					}
				});
				Event.observe(e, 'focus', function() { 
					thisObj.is_search_effecting = 1;
					list.show();
					new Effect.Move(list, { x:0, mode: 'absolute', transition:Effect.Transitions.easeOutQuint, afterFinish:function(){
						thisObj.is_search_effecting--;
					}.bind(this)});
				});
				
				document.observe('click',function(event){ 
					if (list.getStyle('left')=='0px'&&!event.findElement().descendantOf(e.up())) {
						$('header_search_result').hide();
						thisObj.is_search_effecting = 1;
						new Effect.Move(list, { x:220, mode: 'absolute', transition:Effect.Transitions.easeOutQuint, afterFinish:function(){
							thisObj.is_search_effecting--;
							list.hide();
						}.bind(this)});
					}
				}.bind(this));
				/*
				Event.observe(e, 'blur', function() { 
					thisObj.is_search_effecting = 1;
					new Effect.Move(list, { x:220, mode: 'absolute', transition:Effect.Transitions.easeOutQuint, afterFinish:function(){
						thisObj.is_search_effecting--;
						list.hide();
					}.bind(this)});
				});
				*/
				Event.observe(e, 'keyup', function(evt) { 
					var ele = $('header_search_result');
					var key = $F(e);
					var type = thisObj.type_names.length>1 ? 'all' : thisObj.type_names.first;
					if (key!='' && evt.keyCode==13) {
						window.location = 'search.php?key='+key;
					} else if (key!='') {
						new Ajax.Request('_ajax.php',
											{	method: 'post', 
												parameters: {
													ajax:true,
													action:'quick_search',
													type:type,
													key:key
												},
												onSuccess: function(transport, json) {
													if (json.status) {
														ele.innerHTML = '';
														var type_names = thisObj.type_names;
														var types = thisObj.types;
														//var type_names = ['Product', 'Showcase'];
														//var types = ['product', 'showcase'];
														var type = '';
														var is_empty = true;
														var dl = 0;
														ele.appendChild( Builder.node('div', { className:'div_header_search_result_bg' } ));
														if (json['list_all']==true) {
															ele.appendChild( Builder.node('dl', { className:'div_header_search_result_all' }, [
																				Builder.node('dt', [
																					Builder.node('spam', [
																						Builder.node('img', { src:'images/icon-arrow-right-s.gif', border:0 }),
																						Builder.node('a', { href:'search.php?key='+key, className:'text04b' }, 'view all search results')
																					])
																				])
																			]));
															dl++;
														}
														for (var i=0; i<types.length; i++) {
															type = types[i];
															if (json[type].length>0) {
																is_empty = false;
																ele.appendChild( Builder.node('dl', { className:'div_header_search_result_'+type }, [
																					Builder.node('dt', { className:'text08b' }, type_names[i])
																				]));
																for (var j=0; j<json[type].length; j++) {
																	if (type=='technical') {
																		json[type][j]['image'] = json[type][j]['image']=='pdf'?'images/icon-pdf.gif':'images/icon-zip.gif';
																		href = 'download.php?id='+json[type][j]['id'];
																	} else if(json[type][j]['external_link']){
																		href = json[type][j]['external_link'];
																	} else {
																		href = type+'-detail.php?id='+json[type][j]['id'];
																	}
																	
																	var imgele=null;
																	/MSIE (\d+\.\d+);/.test(navigator.userAgent);
																	if(Prototype.Browser.IE && Number(RegExp.$1)<=6 &&
																		/\.png$/.test(json[type][j]['image'])
																	){
																		
																		
																		var style_size = "width:62px; height:64px";
																		
																		
																		
																		imgele = Builder.node('img', { src:"/lib/js/x.gif", border:0,'class':'png-ie', 'style':"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+json[type][j]['image']+"', sizingMethod='scale'); background-image:url(/lib/js/x.gif); width:62px; height:64px" });
																		
																		//imgele.src="/lib/js/x.gif";
																		//imgele.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+json[type][j]['image']+"', sizingMethod='scale')";
																		//imgele.style.backgroundImage="url(/lib/js/x.gif)";
																	}else{
																		imgele = Builder.node('img', { src:json[type][j]['image'], border:0 });
																	}															
																	
																	
																	if(json[type][j]['external_link']){
																			ele.down('dl', dl).appendChild( Builder.node('dd', [
																								Builder.node('a', { href:href, target:"_blank" }, [
																									imgele
																								]),
																								Builder.node('p', [
																									Builder.node('a', { href:href, target:"_blank", className:'text04' }, json[type][j]['name'])
																								])
																							]));	
																	} else {
																			ele.down('dl', dl).appendChild( Builder.node('dd', [
																								Builder.node('a', { href:href }, [
																									imgele
																								]),
																								Builder.node('p', [
																									Builder.node('a', { href:href, className:'text04' }, json[type][j]['name'])
																								])
																							]));	
																	}
																	
																}
																dl++;
															}
														}
														if (is_empty) {
															ele.appendChild( Builder.node('dl', [
																				Builder.node('dt', { className:'text08b' }, 'No record')
																			]));
														}
														ele.show();
														e.focus();
													}
												} 
											}
										);
					} else {
						ele.hide();
					}
				});
			}
		);
		
	},
	
	btnnn:function(ele){
		alert(ele);
	}
}
);

function initHeader() { header = new Header(); }
Event.observe(window, 'load', initHeader, false);
//Component.init('.div_header','Header');
