
var showDebug = 0;
var globalPaymentDays;
var globalPaymentCnt;

function setTrackNo(id){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function(){ updateSetTrackNo(req); };
	req.open(null, "payments.php", true);
	req.send( { paymentId: id, action: 'getForm' } );	
}
function updateSetTrackNo(req){
	if (req.readyState == 4){
		showDialog('Номер посылки', req.responseText);
	}
}
function setFilledTrackNo(){
	var reqSet;
	var val = gId('dest_systems').value;
	var track = gId('trackno').value;
	if (val.length < 1){
		alert('Не выбрана почтовая система или не указана страна назначения');
		return;
	}	
	if (track.length < 1){
		alert('Не указан TrackNo');
		return;
	}	
	reqSet = new JsHttpRequest();
	reqSet.onreadystatechange = function(){ 
		if (reqSet.readyState == 4){
			if (reqSet.responseJS.error){
				alert(reqSet.responseJS.error);
			} else {
				closeDialog();
				refreshPaymentRows();
			}
		}	
	};
	reqSet.open(null, "payments.php", true);
	reqSet.send( { paymentId: gId('paymentId').value, trackNo: gId('trackno').value, shipSystem: val, action: 'setTrack' } );	
}

function viewTrackNo(track, ship){
	req = new JsHttpRequest();
	req.onreadystatechange = function(){updateTrackNo(req)};
	req.open(null, "track.php", true);
	req.send( { sys: ship, track: track, action: 'getRespond' } );
}
function updateTrackNo(req){
	if (req.readyState == 4){
		showDialog('Статус посылки', req.responseText);
	}
}
function showSearchPaymentsDialog(){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function(){ 
		if (req.readyState == 4){
			showDialog('Поиск платежа', req.responseText);
			$dPicker = jQuery.noConflict();
				// Указываем дейтпикеру что выводить все нужно на русском
				$dPicker.datepicker.setDefaults($dPicker.datepicker.regional['ru']);
				
				$dPicker("#pay-date-from,#pay-date-to").datepicker({ 
				    beforeShow: customRangeSearch, 
				    showOn: "both", 
				    buttonImage: "/includes/datepicker/calendar.gif", 
				    buttonImageOnly: true 
				});
		 
		}	
	};
	req.open(null, "payments.php", true);
	req.send( { action: 'getSearchDialog' } );	
}
var $dPicker;
function showExportCSVDialog(){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function(){ 
		if (req.readyState == 4){
			showDialog('Экспорт в Excel', req.responseText);
			$dPicker = jQuery.noConflict();
				// Указываем дейтпикеру что выводить все нужно на русском
				$dPicker.datepicker.setDefaults($dPicker.datepicker.regional['ru']);
				
				$dPicker("#pay-date-from-csv,#pay-date-to-csv").datepicker({ 
				    beforeShow: customRangeCSV, 
				    showOn: "both", 
				    buttonImage: "/includes/datepicker/calendar.gif", 
				    buttonImageOnly: true 
				});
		 
		}	
	};
	req.open(null, "payments.php", true);
	req.send( { action: 'getExportCSV' } );	
}
function customRangeCSV(input) { 
    return {minDate: (input.id == "pay-date-to-csv" ? $dPicker("#pay-date-from-csv").datepicker("getDate") : null), 
        maxDate: (input.id == "pay-date-from-csv" ? $dPicker("#pay-date-to-csv").datepicker("getDate") : null)}; 
} 	
function customRangeSearch(input) { 
    return {minDate: (input.id == "pay-date-to" ? $dPicker("#pay-date-from").datepicker("getDate") : null), 
        maxDate: (input.id == "pay-date-from" ? $dPicker("#pay-date-to").datepicker("getDate") : null)}; 
} 	
function exportToCSV(){
	if (gId('pay-date-from-csv').value.length > 0){
		if (!checkDate(gId('pay-date-from-csv').value)){
			alert('Неверно введена начальная дата!');
			return;
		}
	} else {
		alert('Не введена начальная дата!');
		return;
	
	}
	if (gId('pay-date-to-csv').value.length > 0){
		if (!checkDate(gId('pay-date-to-csv').value)){
			alert('Неверно введена конечная дата!');
			return;
		}
	} else {
		alert('Не введена конечная дата!');
		return;
	}
	if (gId('pay-csv-coma').checked){
		delimer='coma';
	} else {
		delimer='dot';
	}
	window.open('payments.php?action=exportCSV&start='+gId('pay-date-from-csv').value+'&end='+gId('pay-date-to-csv').value+'&delimer='+delimer, '_blank');
	closeDialog();
	
}
function searchPaymentRows(){
	if (gId('pay-date-from').value.length > 0){
		if (!checkDate(gId('pay-date-from').value)){
			alert('Неверно введена начальная дата!');
			return;
		}
	}
	if (gId('pay-date-to').value.length > 0){
		if (!checkDate(gId('pay-date-to').value)){
			alert('Неверно введена конечная дата!');
			return;
		}
	}
	if (gId('pay-id').value.length > 0){
		if (parseInt(gId('pay-id').value)!=gId('pay-id').value){
			alert('Неверно введен номер платежа!');
			return;
		}
	}
	if (gId('pay-lock').checked){
		payLock = 1;
	} else {
		payLock = 0;
	}
	reqPayments = new JsHttpRequest();
	reqPayments.onreadystatechange = function(){ updatePaymentRows(reqPayments); };
	reqPayments.open(null, "payments.php", true);
	reqPayments.send( { days: 0, cnt: 0, payId: gId('pay-id').value, payEmail: gId('pay-email').value, dateFrom: gId('pay-date-from').value, dateTo: gId('pay-date-to').value, payPayer: gId('pay-payer').value, payTrack: gId('pay-track').value, payDisput: gId('pay-disput').value, payDocno: gId('pay-docno').value, payItem:gId('pay-item').value, payLock: payLock, action: 'getPayments' } );	
	closeDialog();
	gId('payments').innerHTML = '<blink>== идет поиск ==</blink>';
}
function getPaymentRows(days, cnt, page){
	var reqPayments;
	days = parseInt(days);
	if (isNaN(days)){
		days = 0;
	}
	if (isNaN(page)){
		page = 0;
	}
	cnt = parseInt(cnt);
	if (isNaN(cnt)){
		cnt = 0;
	}
	globalPaymentDays = days;
	globalPaymentCnt = cnt;
	reqPayments = new JsHttpRequest();
	reqPayments.onreadystatechange = function(){ updatePaymentRows(reqPayments); };
	reqPayments.open(null, "payments.php", true);
	reqPayments.send( { days: days, cnt: cnt, page: page, action: 'getPayments' } );	
	gId('payments').innerHTML = '<blink>== идет загрузка данных ==</blink>';
}

function refreshPaymentRows(){
	var reqPayments;
	reqPayments = new JsHttpRequest();
	reqPayments.onreadystatechange = function(){ updatePaymentRows(reqPayments); };
	reqPayments.open(null, "payments.php", true);
	reqPayments.send( { days: globalPaymentDays, cnt: globalPaymentCnt, action: 'getPayments' } );	
}
function updatePaymentRows(reqPayments){
	if (reqPayments.readyState == 4){
		if (showDebug > 0){
			gId('debug').innerHTML = reqPayments.responseText;
		}
		gId('payments').innerHTML = reqPayments.responseJS.payments;
		var rows = gId('payments-body').getElementsByTagName('tr');
		for (var i=0; i< rows.length; i++){
			rows[i].ondblclick = paymentDetail;
		}
	}
}
function paymentDetail(){
	//alert(this.getElementsByTagName('td')[0].firstChild.nodeValue);
	var paymentId=this.getElementsByTagName('td')[0].firstChild.nodeValue;
	window.open('details.php?paymentId='+paymentId, '_blank', 'location=no,menubar=no,resizable=no,scrollbars=yes,status=no,toolbar=no,width=510,height=650');
}
// exchange, transfer
var amountFrom = 0;
var amountTo = 0;
var courseFrom = 0;
var courseTo = 0;
var crossCourse = 0;
var transferComission;
function getAccountByCur(el){
	var elem;
	var amountPlace;
	var req;
	var elem_input;
	var valueField;
	switch (el){
		case 'from':
			elem = gId('curr_from');
			amountPlace = gId('amount_from');
			valueField = gId('in_from');
			break;
		default:
			elem = gId('curr_to');
			amountPlace = gId('amount_to');
			valueField = gId('in_to');
	}
	if (elem.value.length < 1){
		valueField.value = '';
		gId('in_from').disabled = 1;
		try {
			gId('in_to').disabled = 1;
		} catch (e){
			// не получилось
		}
		replaceText(amountPlace, '');
		if (el == 'from'){
			amountFrom = 0;
			courseFrom = 0;
		} else {
			amountTo = 0;
			courseTo = 0;
		}
		crossCourse = 0;
	} else {
		replaceText(amountPlace, '== получение данных ==');
		req = new JsHttpRequest();
		req.onreadystatechange = function(){ updateAccountByCur(req, el); };
		req.open(null, "exchange.php", true);
		req.send( { currId: elem.value, action: 'getAmount' } );	
	}
}
function updateAccountByCur(req, el){
	var elem;
	var amountPlace;
	var amount;
	if (req.readyState == 4){
		amount = req.responseJS.amount+' '+req.responseJS.sign;
		switch (el){
			case 'from':
				elem = gId('curr_from');
				amountPlace = gId('amount_from');
				amountFrom = req.responseJS.amount;
				courseFrom = req.responseJS.course.buy;
				break;
			default:
				elem = gId('curr_to');
				amountPlace = gId('amount_to');
				amountTo = req.responseJS.amount;
				courseTo = req.responseJS.course.sell;
		}
		try{
			gId('in_to').disabled = 1; // если нет валюты назначения, то разблокируем валюту отправки
			if ((courseFrom > 0)&&(courseTo > 0) && (gId('curr_from').value != gId('curr_to').value)){
				crossCourse = Math.round(courseTo/courseFrom*10000)/10000;
				gId('in_from').disabled = 0;
				gId('in_to').disabled = 0;
			}
		} catch (e){
			gId('in_from').disabled = 0;
		}
		replaceText(amountPlace, amount);
	}		
}
function setToAmount(){
	var from;
	var to;
	from = parseFloat(gId('in_from').value);
	gId('in_to').onchange = null;
	if (!isNaN(from)){
		if (from != gId('in_from').value){
			alert('Неверный ввод, допустимы только цифры и точка!');
			gId('in_to').value = 0;
			gId('in_to').onchange = setFromAmount;
			gId('curr_exchange').disabled = 1;
			return;
		}
		to = Math.round(from/crossCourse*100)/100;
		gId('in_to').value = to;
		gId('curr_exchange').disabled = 0;
	} else {
		if (gId('in_from').value.length > 0){
			alert('Неверный ввод, допустимы только цифры и точка!');
		} 
		gId('in_to').value = 0;
		gId('curr_exchange').disabled = 1;
	}
	gId('in_to').onchange = setFromAmount;
}
function setFromAmount(){
	var from;
	var to;
	gId('in_from').onchange = null;
	to = parseFloat(gId('in_to').value);
	if (!isNaN(to)){
		if (to != gId('in_to').value){
			alert('Неверный ввод, допустимы только цифры и точка!');
			gId('in_from').value = 0;
			gId('in_from').onchange = setToAmount;
			gId('curr_exchange').disabled = 1;
			return;
		}
		from = Math.round(to*crossCourse*100)/100;
		gId('in_from').value = from;
		gId('curr_exchange').disabled = 0;
	} else {
		if (gId('in_to').value.length > 0){
			alert('Неверный ввод, допустимы только цифры и точка!');
		} 
		gId('in_from').value = 0;
		gId('curr_exchange').disabled = 1;
		
	}
	gId('in_from').onchange = setToAmount;
}
function processCurrExchange(){
	if (parseFloat(gId('in_from').value) > parseFloat(amountFrom)){
		alert('У Вас недостаточно средств на счету исходной валюты!');
		return;
	}
	if (!confirm('Вы производите обмен валют. Совершить обмен?')){
		alert('Процесс обмена прерван!');
		return;
	}	
	gId('curr_exchange').disabled = 1;
	var req = new JsHttpRequest();
	req.onreadystatechange = function(){ updateCurrExchange(req); };
	req.open(null, "exchange.php", true);
	req.send( { currFrom: gId('curr_from').value, currTo: gId('curr_to').value, amountFrom: gId('in_from').value, action: 'exchangeCurr' } );
}
function updateCurrExchange(req){
	if (req.readyState == 4){
		if (req.responseJS.err < 1){
			alert('Обмен удачно завершен!');
			window.location.href="my-account.php";
		} else {
			alert(req.responseJS.errMessage);
		}
	}
}
function validateMoneyFormat(field, button_name){
	var from;
	from = parseFloat(gId(field).value);
	if (!isNaN(from)){
		if (from != gId(field).value){
			alert('Неверный ввод, допустимы только цифры и точка!');
			gId(button_name).disabled = 1;
			return;
		}
		gId(button_name).disabled = 0;
	} else {
		if (gId(field).value.length > 0){
			alert('Неверный ввод, допустимы только цифры и точка!');
		} 
		gId(button_name).disabled = 1;
	}
}
function getTransferComission(){
	var buttonStatus = gId('send_money').disabled;
	gId('send_money').disabled = 1;
	replaceText(gId('comission'), '== получение данных ==');
	var req = new JsHttpRequest();
	req.onreadystatechange = function(){ 	
		if (req.readyState == 4){
			transferComission = parseFloat(req.responseJS.comission);
			replaceText(gId('comission'), req.responseJS.comission);
			gId('send_money').disabled = buttonStatus;
		} 
	};
	req.open(null, "transfer.php", true);
	req.send( { currFrom: gId('curr_from').value, amount: gId('in_from').value, action: 'getComission' } );	
}
function processSendMoney(){
	if ((parseFloat(gId('in_from').value)+transferComission) > parseFloat(amountFrom)){
		alert('У Вас недостаточно средств на счету для перевода денег!');
		return;
	}
	if (gId('receiver').value.length < 1){
		alert('Не заполнен получатель платежа!');
		return;
	}
	if (gId('paymentDesc').value.length < 1){
		alert('Не заполнено назначение платежа!');
		return;
	}
	if (!confirm('Вы производите перевод денег пользователю '+gId('receiver').value+'. Совершить перевод?')){
		alert('Процесс перевода прерван!');
		return;
	}
	gId('send_money').disabled = 1;
	var req = new JsHttpRequest();
	req.onreadystatechange = function(){ updateSendMoney(req); };
	req.open(null, "transfer.php", true);
	req.send( { currFrom: gId('curr_from').value, receiver: gId('receiver').value, amountFrom: gId('in_from').value, paymentDesc: gId('paymentDesc').value,  action: 'sendMoney' } );
}
function updateSendMoney(req){
	if (req.readyState == 4){
		if (showDebug > 0){
			gId('debug').innerHTML = req.responseText;
			//alert('debug pause');
		}
		if (req.responseJS.err < 1){
			alert('Перевод денег удачно завершен!');
			window.location.href="my-account.php";
		} else {
			alert(req.responseJS.errMessage);
			gId('send_money').disabled = 0;
		}
	}
}
// вывод денег
function getOutputComission(url){
	try {
		if (url.length == 0){
			url = "outmoney.php";
		}
	} catch (e){
		url = "outmoney.php";
	}
	replaceText(gId('comission'), '== получение данных ==');
	var req = new JsHttpRequest();
	req.onreadystatechange = function(){ 
		if (req.readyState == 4){
			outputComission = parseFloat(req.responseJS.comission);
			replaceText(gId('comission'), req.responseJS.comission);
		}	
	};
	req.open(null, url, true);
	req.send( { currFrom: gId('curr_from').value, amount: gId('in_from').value, system: gId('system').value, action: 'getComission' } );	
}
function processOutputMoney(url){
	try {
		if (url.length == 0){
			url = "outmoney.php";
		}
	} catch (e){
		url = "outmoney.php";
	}
	if (changeAccountFl > 0){
		if (confirm('Данные аккаунта не сохранены. Сохранить и продолжить вывод денег?')){
			getMoneyFl = 1;
			saveAccount();
			return;
		} else {
			return;
		}
	}
	if ((parseFloat(gId('in_from').value)+outputComission) > parseFloat(amountFrom)){
		alert('У Вас недостаточно средств вывода указанной суммы!');
		return;
	}
	if (!getMoneyFl){
		if (!confirm('Вы производите вывод денег из системы. Совершить операцию?')){
			alert('Процесс вывода денег прерван!');
			return;
		}
	}
	gId('send_money').disabled = 1;
	var req = new JsHttpRequest();
	req.onreadystatechange = function(){ 
		if (req.readyState == 4){
			if (showDebug > 0){
				gId('debug').innerHTML = req.responseText;
				//alert('debug pause');
			}
			if (req.responseJS.err < 1){
				alert('Требование на вывод денег удачно создано!');
				window.location.href="my-account.php";
			} else {
				alert(req.responseJS.errMessage);
				gId('send_money').disabled = 0;
			}
		}
	};
	req.open(null, url, true);
	req.send( { currFrom: gId('curr_from').value, amountFrom: gId('in_from').value, system: gId('system').value, action: 'getMoney' } );
}

function checkDate(fld) {
	var mo, day, yr;
	var entry = fld;
	var reLong = /\b\d{1,2}[\/\.]\d{1,2}[\/\.]\d{4}\b/;
	//var reShort = /\b\d{l,2}[\/\.]\d{l,2}[\/\.]\d{2}\b/;
	var valid = (reLong.test(entry)) /*|| (reShort.test(entry))*/;
	if (valid) {
		var delimChar = (entry.indexOf("/") != -1) ? "/" : ".";
		var delim1 = entry.indexOf(delimChar);
		var delim2 = entry.lastIndexOf(delimChar);
		day = parseInt(entry.substring(0, delim1), 10);
		mo = parseInt(entry.substring(delim1+1, delim2), 10);
		yr = parseInt(entry.substring(delim2+1), 10);
		// Обработка сокращенной записи года
		if (yr < 100) {
			var today = new Date ();
			// определяем нижнюю границу текущего века (например. 2000)
			var currCent = parseInt(today.getFullYear() / 100) * 100;
			// годы до текущего + 15 считаются принадлежащими текущему веку
			var threshold = (today.getFullYear() + 15) - currCent;
			if (yr > threshold) {
				yr += currCent - 100;
			} else {
				yr += currCent;
			}
		}
		var testDate = new Date(yr, mo-1, day);
		if (testDate.getDate() == day) {
			if (testDate.getMonth() + 1 == mo) {
				if (testDate.getFullYear() == yr) {
					return true;
				} else {
					alert("Дата введена с ошибкой.");
				}
			} else {
				alert("Mecяц записан с ошибкой.");
			}
		} else {
			alert("Число записано с ошибкой.");
		}
	
	} else {
		alert("Неправильный формат даты. Используйте формат дд/мм/гггг.");
	}
	return false;
}
function viewDisput(id){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function(){ updateDisput(req); };
	req.open(null, "payments.php", true);
	req.send( { paymentId: id, action: 'viewDisput' } );		
}
function updateDisput(req){
	if (req.readyState == 4){
		showDialog('Просмотр жалобы', req.responseText);
	}
}
var reqForgot;
function forgotPass(){
	reqForgot = new JsHttpRequest();
	reqForgot.onreadystatechange = passForm;
	reqForgot.open(null, "forgot.php", true);
	reqForgot.send(null);
}
function passForm(){
	if (reqForgot.readyState == 4){
		showDialog("Форма восстановления пароля", reqForgot.responseText);
	}

}
function showLoginForm(){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function() {updateLoginForm(req);}
	req.open(null, "index.php", true);
	req.send({action: 'loginForm'});
}
function updateLoginForm(req){
	if (req.readyState == 4){
		showDialog("  Вход в систему", req.responseText);
	}

}
function showOpacity(){
if (document.documentElement && document.documentElement.scrollTop)
	var theTop = document.documentElement.scrollTop;
else if (document.body)
	var theTop = document.body.scrollTop;
if (document.documentElement && document.documentElement.scrollTop)
	var theLeft = document.documentElement.scrollLeft;
else if (document.body)
	var theLeft = document.body.scrollLeft;
	
	_y=document.documentElement.clientHeight;
	if (_y < 1) {
		// for IE5, 5.5
		_y=document.body.offsetHeight;
	}
	x = (document.body.clientWidth-400)/2;
	y = theTop+_y/2;
	opDiv = document.createElement('div');
	opDiv.setAttribute('id', 'opacity');
//		opDiv.appendChild(document.createTextNode('hello'));
	opDiv.className = 'opacity80';
	opDiv.style.bottom = parseInt(0- theTop)+'px';
	opDiv.style.right = parseInt(0- theLeft)+'px';
	ourBody = document.getElementsByTagName("body")[0];
	/* for (i=0; i<ourBody.childNodes.length; i++){
		if (ourBody.childNodes[i].nodeName.substr(0,1) != '#'){
			alert(ourBody.childNodes[i].nodeName);
			ourBody.childNodes[i].style.zIndex = 0;
		}
	}*/
	ourBody.insertBefore(opDiv, ourBody.firstChild);
	return false;
	
}
function showDialog(name, content){
	if (document.documentElement && document.documentElement.scrollTop)
	var theTop = document.documentElement.scrollTop;
else if (document.body)
	var theTop = document.body.scrollTop;
if (document.documentElement && document.documentElement.scrollTop)
	var theLeft = document.documentElement.scrollLeft;
else if (document.body)
	var theLeft = document.body.scrollLeft;
	
	var _y=document.documentElement.clientHeight;
	if (_y < 1) {
		// for IE5, 5.5
		_y=document.body.offsetHeight;
	}
	var x = (document.body.clientWidth-400)/2;
	var y = theTop+_y/2;
	var Dialog = document.createElement('div');
	Dialog.className = 'dialog';
	Dialog.setAttribute('id', 'dialog');
	
	Dialog.style.left = parseInt(x)+'px';
	Dialog.style.top = parseInt(y-400 / 2)+'px';
	var DialogHead = document.createElement('div');
	DialogHead.className = 'head';
	var closeImg = document.createElement('img');
	closeImg.setAttribute('height', '20');
	closeImg.setAttribute('width', '20');
	closeImg.setAttribute('src', '/images/design/close.gif');
	closeImg.onclick = closeDialog;
	DialogHead.appendChild(closeImg);
	DialogHead.appendChild(document.createTextNode(name));
	
	Dialog.appendChild(DialogHead);
	DialogBody = document.createElement('div');
	DialogBody.className = 'dialogBody';
	DialogBody.innerHTML = content;
	Dialog.appendChild(DialogBody);

	showOpacity();
	var ourBody = document.getElementsByTagName("body")[0];
	ourBody.insertBefore(Dialog, ourBody.firstChild);
	//alert(1);
	return false;
	
}
function closeDialog(){
	var ourBody = document.getElementsByTagName("body")[0];
	ourBody.removeChild(document.getElementById("opacity"));
	ourBody.removeChild(document.getElementById("dialog"));
}
function loginProcess(afterloginlink){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function(){updateLogin(req,afterloginlink)};
	req.open('POST', "index.php", true);
	req.send( { user: document.getElementById('login').value, password: document.getElementById('pass').value, action: 'sigin' } );	
}
function login2Process(afterloginlink){
	var req;
	req = new JsHttpRequest();
	req.onreadystatechange = function(){updateLogin(req, afterloginlink)};
	req.open(null, "index.php", true);
	req.send( { user: document.getElementById('login2').value, password: document.getElementById('pass2').value, action: 'sigin' } );	
}
function updateLogin(req, afterloginlink){
	if (req.readyState == 4){
		if (req.responseJS.login == 1){
			window.location.href = String(afterloginlink);
		} else {
			alert(req.responseJS.errorText);
		}
	}
}
function trackGetDestinationCountries(){
	var req;
	var val = gId('ship_system').value;
	if (val.length < 1){
		gId('dest_country').length = 0;
		return;
	} else {
		req = new JsHttpRequest();
		req.onreadystatechange = function(){updateDestinationCountries(req)};
		req.open(null, "track.php", true);
		req.send( { q: val, action: 'getSystems' } );
	}
}
function updateDestinationCountries(req){
	var systemList = gId('dest_country');
	if (req.readyState == 4){
		while (systemList.hasChildNodes()){
			systemList.removeChild(systemList.firstChild);
		}
		if (req.responseJS.systems.length > 0){
			for (i=0; i<req.responseJS.systems.length; i++){
				systemList.options[i] = new Option(req.responseJS.systems[i].country_name, req.responseJS.systems[i].ship_system);
			}
		}
	}

}
function trackGetDestinationCountrySystems(){
	var req;
	var val = gId('country_id').value;
	if (val.length < 1){
		gId('dest_systems').length = 0;
		return;
	} else {
		req = new JsHttpRequest();
		req.onreadystatechange = function(){
			if (req.readyState == 4){
				var systemList = gId('dest_systems');
				while (systemList.hasChildNodes()){
					systemList.removeChild(systemList.firstChild);
				}
				if (req.responseJS.systems.length > 0){
					for (i=0; i<req.responseJS.systems.length; i++){
						systemList.options[i] = new Option(req.responseJS.systems[i].system_name, req.responseJS.systems[i].system_id);
					}
				}
			}		
		};
		req.open(null, "track.php", true);
		req.send( { q: val, action: 'getSystems1' } );
	}
}
