/*--- open/close ---*/
function openClose(){
	$('div.price-table tr').each(function(){
		var _hold = $(this);
		var _btn = _hold.find('a.slide-table');
		var _box = _hold.next().find('div.down-slide-holder');
		if(_btn.length && _box.length){
			var _h = _box.outerHeight();
			if(_hold.hasClass('opened')) _box.show();
			else _box.hide();
			_btn.click(function(){
				if(_hold.hasClass('opened')){
					_hold.removeClass('opened');
					_box.stop().animate({height:0}, 400, function(){
						$(this).css({display:'none', height: 'auto'});
					});
				}
				else{
					_hold.addClass('opened');
					if(_box.is(':hidden')){
						_box.show();
						_h = _box.height();
						_box.height(0);
					}
					_box.stop().animate({height:_h}, 400, function(){
						$(this).height('auto');
					});
				}
				return false;
			});
		}
	});
	$('div.matrix').each(function(){
		var _hold = $(this);
		var _btn = _hold.find('a.close-link, a.open-slide');
		var _box = _hold.find('div.table-holder');
		if(_btn.length && _box.length){
			var _h = _box.outerHeight();
			if(_hold.hasClass('opened')) _box.show();
			else _box.hide();
			_btn.click(function(){
				if(_hold.hasClass('opened')){
					_hold.removeClass('opened');
					_box.stop().animate({height:0}, 400, function(){
						$(this).css({display:'none', height: 'auto'});
					});
				}
				else{
					_hold.addClass('opened');
					if(_box.is(':hidden')){
						_box.show();
						_h = _box.height();
						_box.height(0);
					}
					_box.stop().animate({height:_h}, 400, function(){
						$(this).height('auto');
					});
				}
				return false;
			});
		}
	});
}
/*--- tooltip like 1 ---*/
function initTooltip(){
	var _speed = 150;
	if($.browser.msie) _speed = 0;
	
	var _tooltipL1 = $('<div class="tooltip" id="tooltip-l1"><div class="text"></div><div class="bg-r"></div></div>');
	var tooltipL1_text = _tooltipL1.find('div.text');
	_tooltipL1.css({opacity:0, display: 'none'});
	$('body').append(_tooltipL1);
	$('.with-tooltip-l1').each(function(){
		var _el = $(this);
		var _text = _el.find('span.info-text').html();
		_el.mouseenter(function(e){
			tooltipL1_text.html(_text);
			_tooltipL1.stop().css({top:e.pageY, left:e.pageX, display:'block'}).animate({opacity: 1}, _speed, function(){ $(this).css('opacity', 'auto');});
		}).mousemove(function(e){
			_tooltipL1.css({top:e.pageY, left:e.pageX});
		}).mouseleave(function(e){
			_tooltipL1.stop().animate({opacity: 0}, _speed, function(){ $(this).hide();});
		});
	});
	var _tooltipL2 = $('<div class="tooltip" id="tooltip-l2"><div class="text"></div><div class="bg-r"></div></div>');
	var tooltipL2_text = _tooltipL2.find('div.text');
	_tooltipL2.css({opacity:0, display: 'none'});
	$('body').append(_tooltipL2);
	$('.with-tooltip-l2').each(function(){
		var _el = $(this);
		var _text = _el.find('span.info-text').html();
		_el.mouseenter(function(e){
			tooltipL2_text.html(_text);
			_tooltipL2.stop().css({top:e.pageY, left:e.pageX, display:'block'}).animate({opacity: 1}, _speed, function(){ $(this).css('opacity', 'auto');});
		}).mousemove(function(e){
			_tooltipL2.css({top:e.pageY, left:e.pageX});
		}).mouseleave(function(e){
			_tooltipL2.stop().animate({opacity: 0}, _speed, function(){ $(this).hide();});
		});
	});
}
/*--- IE6 hover ---*/
function ieHover(h_list, h_class){
	if($.browser.msie && $.browser.version < 7){
		if(!h_class) var h_class = 'hover';
		$(h_list).live('mouseover', function(){
			$(this).addClass(h_class);
		}).live('mouseout', function(){
			$(this).removeClass(h_class);
		});
	}
}
/*--- add select ---*/
var counterCarriers = 0;
function addSelects(){
	$('ul.add-selects').each(function(){
		var _hold = $(this);
		var _el = _hold.children().clone();
		if (resLang=='en') {
			_el.find('a.link2').html('(-) <span>remove airline</span>');
			var btn_add = _hold.find('a.link2').html('(+) <span>add airline</span>');
		}
		else {
			_el.find('a.link2').html('(-) <span>αφαιρέστε αεροπορική</span>');
			var btn_add = _hold.find('a.link2').html('(+) <span>προσθέστε αεροπορική</span>');		
		}
		btn_add.click(function(){
			var t_el = _el.clone();
			if (counterCarriers<=1) {			
			
			_hold.append(t_el);
			counterCarriers++;
			}
			t_el.find('a.link2').click(function(){
				$(this).parents('li:eq(0)').remove();
				counterCarriers--;				
				return false;
			});
			return false;
		});
		
	});
}
/*--- search functional ---*/
function seachFunc(){
	var el_hold = $('#search-list');
	
	if(el_hold.length){
		var _box1 = $('#flights');
		var _box2 = $('#autocomplete-hold');
		_box2.hide();
		var a_box = $('<div id="acc-results"><ul></ul><div class="searching">Searching in database...</div><div class="no-results">No result was found.</div></div>');
		var a_list_hold = a_box.children('ul');
		var a_box_searching = a_box.children('div.searching');
		var a_box_nores = a_box.children('div.no-results');
		$('body').append(a_box);
		
		var a_a = -1;
		var a_t_el = false;
		var a_t;
		var a_list = false;
		
		var radio_list = $('#autocomplete-hold ul.radio-list input:radio');
		var a_data_list = [];
		var a_data = [];
		radio_list.each(function(){
			a_data_list.push((this.id).toUpperCase());
		});
		
		$('body').append(a_box);
		$('#acc-results li').live('mouseover', function(){
			var a_t_list = $(this).parent().children();
			a_t_list.removeClass('acc_hover');
			$(this).addClass('acc_hover');
			a_a = a_t_list.index(this);
		}).live('mousedown', function(){
			if(a_t_el){
				a_t_el.data('val', $(this).find('span').text());
				a_t_el.val(a_t_el.data('val'));
				a_t_el.blur();
			}
			return false;
		});
	
		el_hold.find('div.text > input:text').each(function(){
			var _field = $(this);
			_field.data('val', '');
			_field.data('val_d', '');
			_field.keyup(function(){
				if(_field.val() != '' && _field.val() != _field.data('val')){
					if(a_t) clearTimeout(a_t);
					a_t = setTimeout(function(){
						_field.data('val', _field.val());
						_field.data('val_d', _field.val());
						openDrop();
					}, 200);
				}
				else if(_field.val() == ''){
					a_box.hide();
					_field.data('val', '');
					a_list = false;
					a_a = -1;
				}
			}).focus(function(){
				a_t_el = _field;
			}).blur(function(){
				_field.data('val_d', _field.val());
				if(a_t) clearTimeout(a_t);
				a_t_el = false;
				a_list = false;
				a_a = -1;
				a_box.hide();
				radio_list.removeAttr('checked').filter('[id='+_field.val().toLowerCase()+']').attr('checked','checked');
				showSelectBoxes(a_box);
			}).keydown(function(e){
				if(a_list){
					if(!e) e = window.event;
					if(e.keyCode == 38){
						if(a_a == 0){
							a_list.eq(a_a).removeClass('acc_hover');
							a_a = -1;
							a_t_el.data('val', a_t_el.data('val_d'));
							a_t_el.val(a_t_el.data('val'));
						}
						else{
							if(a_a == -1){
								a_a = a_list.length - 1;
							}
							else{
								a_list.eq(a_a).removeClass('acc_hover');
								a_a--;
							}
							a_list.eq(a_a).addClass('acc_hover');
							a_t_el.data('val', a_list.eq(a_a).find('span').text());
							a_t_el.val(a_t_el.data('val'));
						}
					}
					else if(e.keyCode == 40){
						if(a_a == a_list.length - 1){
							a_list.eq(a_a).removeClass('acc_hover');
							a_a = -1;
							a_t_el.data('val', a_t_el.data('val_d'));
							a_t_el.val(a_t_el.data('val'));
						}
						else{
							if(a_a == -1){
								a_a = 0;
							}
							else{
								a_list.eq(a_a).removeClass('acc_hover');
								a_a++;
							}
							a_list.eq(a_a).addClass('acc_hover');
							a_t_el.data('val', a_list.eq(a_a).find('span').text());
							a_t_el.val(a_t_el.data('val'));
						}
					}
					else if(e.keyCode == 13){
						a_t_el.blur();
					}
				}
			});
		}).parents('li').find('a.link').each(function(){
			var _btn = $(this);
			var _field = _btn.parents('li:eq(0)').find('div.text > input:text');
			_btn.click(function(){
				radio_list.removeAttr('checked').filter('[id='+_field.data('val').toLowerCase()+']').attr('checked','checked');
				_box1.hide();
				_box2.show();
				tt_el = _field;
				return false;
			});
		});
		var tt_el = -1;
		_box2.find('div.button-block input:submit').click(function(){
			if(tt_el != -1 && tt_el.length){
				if(radio_list.filter(':checked').length){
					tt_el.val(radio_list.filter(':checked').attr('id').toUpperCase());
					tt_el.data('val', tt_el.val());
				}
			}
			_box2.hide();
			_box1.show();
			return false;
		});
		
		
		function openDrop(){
			if(a_t_el){
				a_list_hold.empty().hide();
				a_box_searching.show();
				a_box_nores.hide();
				a_list = false;
				a_a = -1;
				if(a_t) clearTimeout(a_t);
				showSelectBoxes(a_box);
				a_box.css({top: a_t_el.offset().top+a_t_el.outerHeight(), left:a_t_el.offset().left, display:'block'});
				a_t = setTimeout(function(){
					a_data = [];
					var a_q = a_t_el.val().toUpperCase();
					for(var i = 0; i < a_data_list.length; i++){
						if(a_data_list[i].indexOf(a_q) == 0) a_data.push(a_data_list[i]);
					}
					if(a_data.length){
						for(var i = 0; i < a_data.length; i++){
							a_list_hold.append('<li><span><strong>'+a_data[i].substr(0, a_q.length)+'</strong>'+a_data[i].substr(a_q.length)+'</span></li>');
						}
						a_box_searching.hide();
						a_list_hold.show();
						a_list = a_list_hold.children();
					}
					else{
						a_box_searching.hide();
						a_box_nores.show();
					}
					hideSelectBoxes(a_box);
				}, 300);
			}
		}
	}
}

$(document).ready(function(){
	ieHover('span.num');
	openClose();
	initTooltip();
	addSelects();
	//seachFunc();
});
/*--- hide selects for IE6 ---*/
function hideSelectBoxes(object){
	if($.browser.msie && $.browser.version < 7){
		var selects_list = $('select');
		object.each(function(){
			var _el = $(this);
			var t = _el.offset().top;
			var l = _el.offset().left;
			var w = _el.outerWidth();
			var h = _el.outerHeight();
			var el_selects = [];
			selects_list.not(_el.find('select')).each(function(){
				var _select = $(this);
				var s_t = _select.offset().top;
				var s_l = _select.offset().left;
				var s_w = _select.outerWidth();
				var s_h = _select.outerHeight();
				var _ver = false, _hor = false;
				if((t - s_t > 0) ? (t - s_t < s_h) : (t - s_t + h > 0)) _ver = true;
				if((l - s_l > 0) ? (l - s_l < s_w) : (l - s_l + w > 0)) _hor = true;
				if(_ver && _hor){
					_select.css('visibility', 'hidden');
					el_selects.push(this);
				}
			});
			this.sboxes = el_selects;
		});
	}
}
function showSelectBoxes(object){
	if($.browser.msie && $.browser.version < 7){
		object.each(function(){
			if(this.sboxes && this.sboxes.length > 0){
				var _el = $(this);
				var t = _el.offset().top;
				var l = _el.offset().left;
				var w = _el.outerWidth();
				var h = _el.outerHeight();
				$(this.sboxes).each(function(){
					var _select = $(this);
					var s_t = _select.offset().top;
					var s_l = _select.offset().left;
					var s_w = _select.outerWidth();
					var s_h = _select.outerHeight();
					var _ver = false, _hor = false;
					if((t - s_t > 0) ? (t - s_t < s_h) : (t - s_t + h > 0)) _ver = true;
					if((l - s_l > 0) ? (l - s_l < s_w) : (l - s_l + w > 0)) _hor = true;
					if(_ver && _hor) _select.css('visibility', 'hidden');
					else _select.css('visibility', 'visible');
				});
			}
		});
	}	
}
