var Accordion2Levels = new Class({
		
	Implements: [Options, Events, Chain],
	
	initialize: function(element, options){
		this.element = element;
		this.setOptions(options);
		this.setupNavigator();
	},
	
	setupNavigator: function(){
		var navHolder = $(this.element);
		if (!navHolder) {
			return;
		}		
		var togglers1 = navHolder.getElements('dt.accordion1');		
		var currentAccordion1 = null;
		$$(togglers1).each(function(toggle1){
			toggle1.element1 = toggle1.getNext();
			toggle1.element1.fx = new Fx.Slide(toggle1.element1, {
				duration: 1000,
				transition: Fx.Transitions.Quint.easeInOut
			});			
			toggle1.addEvent('click', function(e) {		
				e.stop();
				//if(currentAccordion1 && currentAccordion1 != toggle1 && currentAccordion1.hasClass('current')){
				//	currentAccordion1.element1.fx.toggle();
				//	currentAccordion1.removeClass('current');
				//}
				toggle1.element1.fx.toggle();		
				toggle1.toggleClass('current');
				currentAccordion1 = this;				
			});
			if(!toggle1.hasClass('current'))
				toggle1.element1.fx.hide();	
			else 
				currentAccordion1 = toggle1;
		});
		var currentAccordion2 = null;
		var timer2 = null;
		var togglers2 = navHolder.getElements('li.accordion2 a');				
		$$(togglers2).each(function(toggle2){
			toggle2.element2 = toggle2.getNext();
			toggle2.element2.fx = new Fx.Slide(toggle2.element2, {
				duration: 1000,
				transition: Fx.Transitions.Circ.easeInOut
			});			
			toggle2.addEvent('click', function(e) {		
				e.stop();	
				//if(currentAccordion2 && currentAccordion2 != toggle2 && currentAccordion2.getParent().hasClass('current2')){
				//	currentAccordion2.element2.fx.toggle();
				//	currentAccordion2.getParent().removeClass('current2');
				//}				
				if(toggle2.getParent().hasClass('current2')){
					toggle2.element2.fx.slideOut().chain(function(){	
						$clear(timer2);						
					});	
					timer2 = setInterval(function(){
						currentAccordion1.element1.fx.show();	
					}, 10);
				}
				else{
					toggle2.element2.fx.slideIn().chain(function(){	
						$clear(timer2);								
					});
					timer2 = setInterval(function(){
						currentAccordion1.element1.fx.show();	
					}, 10);
				}
				toggle2.getParent().toggleClass('current2');			
				currentAccordion2 = this;
			});
			if(!toggle2.getParent().hasClass('current2'))
				toggle2.element2.fx.hide();		
			else
				currentAccordion2 = toggle2;
		});			
	}	
});

function addSeparatorsNF(nStr, inD, outD, sep)
{
	if(!inD) inD = '.';
	if(!outD) outD = '.';
	if(!sep) sep = '.';
	nStr = nStr.replace(/\./gi, '');
	nStr += '';
	var dpos = nStr.indexOf(inD);
	var nStrEnd = '';
	if (dpos != -1) {
		nStrEnd = outD + nStr.substring(dpos + 1, nStr.length);
		nStr = nStr.substring(0, dpos);
	}
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(nStr)) {
		nStr = nStr.replace(rgx, '$1' + sep + '$2');
	}
	return nStr + nStrEnd;
}

function doAjax(frm){
	var target = null;
	frm = $(frm);
	if(frm.id == 'formAddonAmount'){
		target = $('resultHolder');		
	}
	var amount = frm.getElement('input[name=age]');	
	var lang = frm.getElement('input[name=lang]');
	if(amount.value.trim() == ''){
		if(lang.value == 'en') alert('Please enter valid age');
		if(lang.value == 'vn') alert('Vui long nhap vao tuoi hop le');	
		amount.select();
		amount.focus();
		return false;
	}
	amount = frm.getElement('input[name=income]');
	if(amount.value.trim() == ''){
		if(lang.value == 'en') alert('Please enter valid income');
		if(lang.value == 'vn') alert('Vui long nhap vao thu nhap hop le');
		amount.select();
		amount.focus();
		return false;
	}
	amount = frm.getElement('input[name=savings]');
	if(amount.value.trim() == ''){
		if(lang.value == 'en') alert('Please enter valid number');
		if(lang.value == 'vn') alert('Vui long nhap vao so hop le');
		amount.select();
		amount.focus();
		return false;
	}
	amount = frm.getElement('input[name=debt]');
	if(amount.value.trim() == ''){
		if(lang.value == 'en') alert('Please enter valid number');
		if(lang.value == 'vn') alert('Vui long nhap vao so hop le');
		amount.select();
		amount.focus();
		return false;
	}
	amount = frm.getElement('input[name=amount]');
	if(amount.value.trim() == ''){
		if(lang.value == 'en') alert('Please enter valid number');
		if(lang.value == 'vn') alert('Vui long nhap vao so hop le');
		amount.select();
		amount.focus();
		return false;
	}		
	new Request.HTML({
		url: frm.action,
		method: 'post',		
		onSuccess: function(){			
			target.set('html', arguments[2]);
		}
	}).post(frm);
	return false;
}

function doAjaxCalculator(frm){
	var target = null;
	frm = $(frm);
	if(frm.id == 'formAddonCalculator'){
		target = $('resultHolder');		
	}
	var age = frm.getElement('input[name=age]');
	var lang = frm.getElement('input[name=lang]');
	if(age.value.trim() == '' || age.value < 0 || age.value > 60){
		if(lang.value == 'en') alert('Please enter valid age (0-60)');
		if(lang.value == 'vn') alert('Vui long nhap vao tuoi hop le (0-60)');
		age.select();
		age.focus();
		return false;
	}	
	var p = frm.getElement('input[name=p]');	
	var s = frm.getElement('input[name=s]');
	if(p.value.trim() == '' && s.value.trim() == ''){
		if(lang.value == 'en') alert('Please enter valid monthly payment or total amount');
		if(lang.value == 'vn') alert('Vui long nhap vao phi bao hiem hang thang hoac tong so tien bao hiem');		
		p.select();
		s.focus();
		return false;
	}		
	new Request.HTML({
		url: frm.action,
		method: 'post',		
		onSuccess: function(){			
			target.set('html', arguments[2]);
		}
	}).post(frm);
	return false;
}

function doAjaxCompare(frm){
	var target = null;
	frm = $(frm);
	if(frm.id == 'formAddonCompare'){
		target = $('resultHolder');		
	}
	var product1 = frm.getElement('select[name=product1]');
	var lang = frm.getElement('input[name=lang]');
	if(product1.value == '0'){
		if(lang.value == 'en') alert('Please select product 1');
		if(lang.value == 'vn') alert('Vui long chon san pham 1');		
		product1.focus();
		return false;
	}
	product2 = frm.getElement('select[name=product2]');
	if(product2.value == '0'){
		if(lang.value == 'en') alert('Please select product 2');
		if(lang.value == 'vn') alert('Vui long chon san pham 2');
		product2.focus();
		return false;
	}
	if(product1.value == product2.value) {
		if(lang.value == 'en') alert('Please select different products');
		if(lang.value == 'vn') alert('Vui long chon cac san pham khac nhau');		
		product2.focus();
		return false;		
	}
	new Request.HTML({
		url: frm.action,
		method: 'post',		
		onSuccess: function(){			
			target.set('html', arguments[2]);
		}
	}).post(frm);
	return false;
}

function doAjaxCalculatorLoadCombo(frm,lang){
	var target = null;
	frm = $(frm);
	if(frm.id == 'formAddonCalculator'){
		target = $('resultComboHolder');		
	}
	var age = frm.getElement('input[name=age]');
	var lang = frm.getElement('input[name=lang]');
	if(age.value.trim() == '' || age.value < 0 || age.value > 60){
		if(lang.value == 'en') alert('Please enter valid age (0-60)');
		if(lang.value == 'vn') alert('Vui long nhap vao tuoi hop le (0-60)');
		age.select();
		age.focus();
		return false;
	}
	new Request.HTML({
		url: '/ajaxcalculatorloadcombo.php?lang='+lang.value+'&age='+age.value,
		method: 'get',
		onSuccess: function(){			
			target.set('html', arguments[2]);
		}
	}).get();
	return false;
}

function showHideDiv(div, to){
	var aDiv = $(div);	
	if(!aDiv) return;
	aDiv.fx = new Fx.Tween(aDiv, {
		property: 'opacity',
		duration: 600
	});	
	_oFr = 0;
	_oTo = 1;		
	if(to == 1){
		new Element('div', {
			id: 'overlayDiv',
			styles: {
				'top': 0,
				'left': 0,								
				'position': 'absolute',
				'display': 'block',
				'zIndex': 9999,
				'background': '#000',
				'opacity': 0.5,
				'width':  window.getWidth() - (Browser.Engine.webkit?20:0),
				'height': window.getScrollHeight()				
			}
		}).inject(aDiv, 'before');
		aDiv.setStyles({
			'position': 'absolute',
			'visibility': 'visible',
			'display': 'block',
			'top': window.getScrollTop() + window.getHeight()/2 - aDiv.getCoordinates().height/2,
			'left': window.getWidth()/2 - aDiv.getCoordinates().width/2,
			'opacity': 0,
			'zIndex': 10000
		});		
		aDiv.getElement('.btnClose').addEvent('click', function(e){
			e.stop();
			aDiv.fx.start(0);
			if($('overlayDiv')){
				$('overlayDiv').destroy();
			}			
		});
		aDiv.fx.set(_oFr).start(1);		
	}
	else{
		aDiv.setStyles({
			'visibility': 'hidden',
			'display': 'none'		
		});
		aDiv.fx.set(0);			
		if($('overlayDiv')){
			$('overlayDiv').destroy();
		}
	}
}

window.addEvent('domready', function(){
	if($('showLayer')){
		$('showLayer').addEvent('click', function(e){
			e.stop();
			showHideDiv('popupContent', 1);
		});
	}
});

window.addEvent('domready', function(){
	new Accordion2Levels('accordion2Levels');
});

<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function GoUtility() {
	var form = document.formUtility.utility.value;
	if (form != "")	parent.location = form;
}
function GoProduct() {
	var form = document.formProduct.product.value;
	if (form != "")	parent.location = form;
}
//-->