
//###################################################################################
// UAHtoWMZ calculation functions
//###################################################################################

function calcUAHtoWMZ(courseUAHtoWMZ, discount, fr)
{
	var courseUAHtoWMZ;
	var discount;
	var fr;
	var comission = 0;
	var tmpSumWMZout = 0;
	var sumWMZout = 0;
	
	var sumUAHin = document.orderWMZin.sumUAHin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHin < 0 || IsNumeric(sumUAHin) == false)
	{	
		document.orderWMZin.sumUAHin.value = "";
		document.orderWMZin.sumWMZout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
				
		return false;
	}
	
	if (IsNumeric(sumUAHin) == false)
	{	
		document.orderWMZin.sumUAHin.value = "";
		document.orderWMZin.sumWMZout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');	
		
		return false;
	}
	
	if (sumUAHin == 0)
	{
		document.orderWMZin.sumWMZout.value = "";
		return false;
	}
		
	if (sumUAHin == "")
	{
		document.orderWMZin.sumWMZout.value = "";
		return false;
	}
		
	tmpSumWMZout = sumUAHin/courseUAHtoWMZ;
	
	comission = calcComissionUAHtoWMZ(tmpSumWMZout);

	if (fr == 1)
	{
		sumWMZout = Math.floor((tmpSumWMZout)*100)/100;
	}
	else
	{
		if (comission === false)
		{	
			document.orderWMZin.sumUAHin.value = "";
			document.orderWMZin.sumWMZout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMZout = tmpSumWMZout*(1-comission);		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMZout = (sumUAHin-comission)/courseUAHtoWMZ;;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		sumWMZout = Math.floor((sumWMZout*(Number(1)+1*Number(discount)))*100)/100;
		document.orderWMZin.comission.value = tmpComissionValue;
	}

	document.orderWMZin.sumWMZout.value = sumWMZout;
	if (sumWMZout >= 1000)
	{
		document.orderWMZin.order_protection.disabled = true;
		document.orderWMZin.order_protection.checked = true;
	}
	else
	{
		document.orderWMZin.order_protection.disabled = false;
	}
}

function calcUAHtoWMZback(courseUAHtoWMZ, discount, fr)
{
	var courseUAHtoWMZ;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHin = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMZout = document.orderWMZin.sumWMZout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (sumWMZout < 0 || IsNumeric(sumWMZout) == false)
	{	
		document.orderWMZin.sumUAHin.value = "";
		document.orderWMZin.sumWMZout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMZout) == false)
	{	
		document.orderWMZin.sumUAHin.value = "";
		document.orderWMZin.sumWMZout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
			
		return false;
	}
	
	if (sumWMZout == 0)
	{
		document.orderWMZin.sumUAHin.value = "";
		return false;
	}
		
	if (sumWMZout == "")
	{
		document.orderWMZin.sumUAHin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHin = Math.ceil((courseUAHtoWMZ*sumWMZout)*100)/100;
	}
	else
	{
		sumWMZout = sumWMZout/(Number(1)+Number(discount));
		comission = calcComissionUAHtoWMZback(sumWMZout);
		if (comission == 0)
			comission = calcComissionUAHtoWMZback(Math.round(sumWMZout));	
		
		if (comission === false)
		{	
			document.orderWMZin.sumUAHin.value = "";
			document.orderWMZin.sumWMZout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHin = Math.ceil(((courseUAHtoWMZ*sumWMZout)/(1-comission))*100)/100;		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHin = Math.ceil(((courseUAHtoWMZ*sumWMZout) + Number(comission))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		document.orderWMZin.comission.value = tmpComissionValue;
	}
	
	document.orderWMZin.sumUAHin.value = sumUAHin;
	if (sumWMZout >= 1000)
	{
		document.orderWMZin.order_protection.disabled = true;
		document.orderWMZin.order_protection.checked = true;
	}
	else
	{
		document.orderWMZin.order_protection.disabled = false;
	}	
}

//###################################################################################
// WMZtoUAH calculation functions
//###################################################################################

function calcWMZtoUAH(courseWMZtoUAH, discount, fr)
{
	var courseWMZtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHout = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMZin = document.orderWMZout.sumWMZin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;

	if (sumWMZin < 0 || IsNumeric(sumWMZin) == false)
	{	
		document.orderWMZout.sumWMZin.value = "";
		document.orderWMZout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMZin) == false)
	{	
		document.orderWMZout.sumWMZin.value = "";
		document.orderWMZout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumWMZin == 0)
	{
		document.orderWMZout.sumWMZin.value = "";
		return false;
	}
		
	if (sumWMZin == "")
	{
		document.orderWMZout.sumWMZin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHout = Math.floor((sumWMZin*courseWMZtoUAH)*100)/100; 
	}
	else
	{
		comission = calcComissionWMZtoUAH(sumWMZin);
			
		if (comission === false)
		{	
			document.orderWMZout.sumWMZin.value = "";
			document.orderWMZout.sumUAHout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHout = (sumWMZin*courseWMZtoUAH)*(1-comission);
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHout = (sumWMZin*courseWMZtoUAH) - comission;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
			if (sumUAHout < 0)
				sumUAHout = 0;
		}		
		
		sumUAHout = Math.floor((sumUAHout*(Number(1)+Number(discount)))*100)/100;	
		document.orderWMZout.comission.value = tmpComissionValue;
	}
	
	document.orderWMZout.sumUAHout.value = sumUAHout;
	
	tmpWMcomission = Math.ceil((sumWMZin*0.008)*100)/100;
	if (tmpWMcomission > Number(50))
		document.orderWMZout.comission_wm.value = "(" + (Math.round((Number(sumWMZin) + Number(50))*100)/100) + " WMZ)";
	else if (tmpWMcomission < 0.01)
		document.orderWMZout.comission_wm.value = "(" + (Math.round((Number(sumWMZin) + Number(0.01))*100)/100) + " WMZ)";
	else
		document.orderWMZout.comission_wm.value = "(" + (Math.round((Number(sumWMZin) + Number(tmpWMcomission))*100)/100) + " WMZ)";
}

function calcWMZtoUAHback(courseWMZtoUAH, discount, fr)
{
	var courseWMZtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumWMZin = 0;
		
	var sumUAHout = document.orderWMZout.sumUAHout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHout < 0 || IsNumeric(sumUAHout) == false)
	{	
		document.orderWMZout.sumWMZin.value = "";
		document.orderWMZout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumUAHout) == false)
	{	
		document.orderWMZout.sumWMZin.value = "";
		document.orderWMZout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumUAHout == 0)
	{
		document.orderWMZout.sumUAHout.value = "";
		return false;
	}
		
	if (sumUAHout == "")
	{
		document.orderWMZout.sumUAHout.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumWMZin = Math.ceil((sumUAHout/courseWMZtoUAH)*100)/100;
	}
	else
	{
		sumUAHout = sumUAHout/(Number(1)+Number(discount));
		comission = calcComissionWMZtoUAHback(sumUAHout/courseWMZtoUAH);
		
		if (comission == 0)
			comission = calcComissionUAHtoWMZback(Math.round(sumUAHout/courseWMZtoUAH));	
					
		if (comission === false)
		{	
			document.orderWMZin.sumUAHin.value= 0;
			document.orderWMZin.sumWMZout.value= 0;
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMZin = Math.round(((sumUAHout/courseWMZtoUAH)/(1-comission))*100)/100;
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMZin = Math.round((((sumUAHout+Number(comission))/courseWMZtoUAH))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
		}
		
		document.orderWMZout.comission.value = tmpComissionValue;
	}
	
	document.orderWMZout.sumWMZin.value = sumWMZin;
	
	tmpWMcomission = Math.ceil((sumWMZin*0.008)*100)/100;
	if (tmpWMcomission > Number(50))
		document.orderWMZout.comission_wm.value = "(" + (Math.round((Number(sumWMZin) + Number(50))*100)/100) + " WMZ)";
	else if (tmpWMcomission < 0.01)
		document.orderWMZout.comission_wm.value = "(" + (Math.round((Number(sumWMZin) + Number(0.01))*100)/100) + " WMZ)";
	else
		document.orderWMZout.comission_wm.value = "(" + (Math.round((Number(sumWMZin) + Number(tmpWMcomission))*100)/100) + " WMZ)";
	
}

//###################################################################################
// UAHtoWMU calculation functions
//###################################################################################

function calcUAHtoWMU(courseUAHtoWMU, discount, fr)
{
	var courseUAHtoWMU;
	var discount;
	var fr;
	var comission = 0;
	var tmpSumWMUout = 0;
	var sumWMUout = 0;
	
	var sumUAHin = document.orderWMUin.sumUAHin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHin < 0 || IsNumeric(sumUAHin) == false)
	{	
		document.orderWMUin.sumUAHin.value = "";
		document.orderWMUin.sumWMUout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
				
		return false;
	}
	
	if (IsNumeric(sumUAHin) == false)
	{	
		document.orderWMUin.sumUAHin.value = "";
		document.orderWMUin.sumWMUout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');	
		
		return false;
	}
	
	if (sumUAHin == 0)
	{
		document.orderWMUin.sumWMUout.value = "";
		return false;
	}
		
	if (sumUAHin == "")
	{
		document.orderWMUin.sumWMUout.value = "";
		return false;
	}
		
	tmpSumWMUout = sumUAHin/courseUAHtoWMU;
	
	comission = calcComissionUAHtoWMU(tmpSumWMUout);

	if (fr == 1)
	{
		sumWMUout = Math.floor((tmpSumWMUout)*100)/100;
	}
	else
	{
		if (comission === false)
		{	
			document.orderWMUin.sumUAHin.value = "";
			document.orderWMUin.sumWMUout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMUout = tmpSumWMUout*(1-comission);		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMUout = (sumUAHin-comission)/courseUAHtoWMU;;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		sumWMUout = Math.floor((sumWMUout*(Number(1)+1*Number(discount)))*100)/100;
		document.orderWMUin.comission.value = tmpComissionValue;
	}

	document.orderWMUin.sumWMUout.value = sumWMUout;
	if (sumWMUout >= 8000)
	{
		document.orderWMUin.order_protection.disabled = true;
		document.orderWMUin.order_protection.checked = true;
	}
	else
	{
		document.orderWMUin.order_protection.disabled = false;
	}	
}

function calcUAHtoWMUback(courseUAHtoWMU, discount, fr)
{
	var courseUAHtoWMU;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHin = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMUout = document.orderWMUin.sumWMUout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (sumWMUout < 0 || IsNumeric(sumWMUout) == false)
	{	
		document.orderWMUin.sumUAHin.value = "";
		document.orderWMUin.sumWMUout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMUout) == false)
	{	
		document.orderWMUin.sumUAHin.value = "";
		document.orderWMUin.sumWMUout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
			
		return false;
	}
	
	if (sumWMUout == 0)
	{
		document.orderWMUin.sumUAHin.value = "";
		return false;
	}
		
	if (sumWMUout == "")
	{
		document.orderWMUin.sumUAHin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHin = Math.ceil((courseUAHtoWMU*sumWMUout)*100)/100;
	}
	else
	{
		sumWMUout = sumWMUout/(Number(1)+Number(discount));
		comission = calcComissionUAHtoWMUback(sumWMUout);
		if (comission == 0)
			comission = calcComissionUAHtoWMUback(Math.round(sumWMUout));	
		
		if (comission === false)
		{	
			document.orderWMUin.sumUAHin.value = "";
			document.orderWMUin.sumWMUout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHin = Math.ceil(((courseUAHtoWMU*sumWMUout)/(1-comission))*100)/100;		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHin = Math.ceil(((courseUAHtoWMU*sumWMUout) + Number(comission))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		document.orderWMUin.comission.value = tmpComissionValue;
	}
	
	document.orderWMUin.sumUAHin.value = sumUAHin;
	if (sumWMUout >= 8000)
	{
		document.orderWMUin.order_protection.disabled = true;
		document.orderWMUin.order_protection.checked = true;
	}
	else
	{
		document.orderWMUin.order_protection.disabled = false;
	}	
}

//###################################################################################
// WMUtoUAH calculation functions
//###################################################################################

function calcWMUtoUAH(courseWMUtoUAH, discount, fr)
{
	var courseWMUtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHout = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMUin = document.orderWMUout.sumWMUin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;

	if (sumWMUin < 0 || IsNumeric(sumWMUin) == false)
	{	
		document.orderWMUout.sumWMUin.value = "";
		document.orderWMUout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMUin) == false)
	{	
		document.orderWMUout.sumWMUin.value = "";
		document.orderWMUout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumWMUin == 0)
	{
		document.orderWMUout.sumWMUin.value = "";
		return false;
	}
		
	if (sumWMUin == "")
	{
		document.orderWMUout.sumWMUin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHout = Math.floor((sumWMUin*courseWMUtoUAH)*100)/100; 
	}
	else
	{
		comission = calcComissionWMUtoUAH(sumWMUin);
			
		if (comission === false)
		{	
			document.orderWMUout.sumWMUin.value = "";
			document.orderWMUout.sumUAHout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHout = (sumWMUin*courseWMUtoUAH)*(1-comission);
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHout = (sumWMUin*courseWMUtoUAH) - comission;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
			if (sumUAHout < 0)
				sumUAHout = 0;
		}		
		
		sumUAHout = Math.floor((sumUAHout*(Number(1)+Number(discount)))*100)/100;	
		document.orderWMUout.comission.value = tmpComissionValue;
	}
	
	document.orderWMUout.sumUAHout.value = sumUAHout;
	
	tmpWMcomission = Math.ceil((sumWMUin*0.008)*100)/100;
	if (tmpWMcomission > Number(250))
		document.orderWMUout.comission_wm.value = "(" + (Math.round((Number(sumWMUin) + Number(250))*100)/100) + " WMU)";
	else if (tmpWMcomission < 0.01)
		document.orderWMUout.comission_wm.value = "(" + (Math.round((Number(sumWMUin) + Number(0.01))*100)/100) + " WMU)";
	else
		document.orderWMUout.comission_wm.value = "(" + (Math.round((Number(sumWMUin) + Number(tmpWMcomission))*100)/100) + " WMU)";
}

function calcWMUtoUAHback(courseWMUtoUAH, discount, fr)
{
	var courseWMUtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumWMUin = 0;
		
	var sumUAHout = document.orderWMUout.sumUAHout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHout < 0 || IsNumeric(sumUAHout) == false)
	{	
		document.orderWMUout.sumWMUin.value = "";
		document.orderWMUout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumUAHout) == false)
	{	
		document.orderWMUout.sumWMUin.value = "";
		document.orderWMUout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumUAHout == 0)
	{
		document.orderWMUout.sumUAHout.value = "";
		return false;
	}
		
	if (sumUAHout == "")
	{
		document.orderWMUout.sumUAHout.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumWMUin = Math.ceil((sumUAHout/courseWMUtoUAH)*100)/100;
	}
	else
	{
		sumUAHout = sumUAHout/(Number(1)+Number(discount));
		comission = calcComissionWMUtoUAHback(sumUAHout/courseWMUtoUAH);
		
		if (comission == 0)
			comission = calcComissionUAHtoWMUback(Math.round(sumUAHout/courseWMUtoUAH));	
					
		if (comission === false)
		{	
			document.orderWMUin.sumUAHin.value= 0;
			document.orderWMUin.sumWMUout.value= 0;
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMUin = Math.round(((sumUAHout/courseWMUtoUAH)/(1-comission))*100)/100;
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMUin = Math.round((((sumUAHout+Number(comission))/courseWMUtoUAH))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
		}
		
		document.orderWMUout.comission.value = tmpComissionValue;
	}
	
	document.orderWMUout.sumWMUin.value = sumWMUin;
	
	tmpWMcomission = Math.ceil((sumWMUin*0.008)*100)/100;
	if (tmpWMcomission > Number(250))
		document.orderWMUout.comission_wm.value = "(" + (Math.round((Number(sumWMUin) + Number(250))*100)/100) + " WMU)";
	else if (tmpWMcomission < 0.01)
		document.orderWMUout.comission_wm.value = "(" + (Math.round((Number(sumWMUin) + Number(0.01))*100)/100) + " WMU)";
	else
		document.orderWMUout.comission_wm.value = "(" + (Math.round((Number(sumWMUin) + Number(tmpWMcomission))*100)/100) + " WMU)";
	
}



//###################################################################################
// UAHtoWMR calculation functions
//###################################################################################

function calcUAHtoWMR(courseUAHtoWMR, discount, fr)
{
	var courseUAHtoWMR;
	var discount;
	var fr;
	var comission = 0;
	var tmpSumWMRout = 0;
	var sumWMRout = 0;
	
	var sumUAHin = document.orderWMRin.sumUAHin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHin < 0 || IsNumeric(sumUAHin) == false)
	{	
		document.orderWMRin.sumUAHin.value = "";
		document.orderWMRin.sumWMRout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
				
		return false;
	}
	
	if (IsNumeric(sumUAHin) == false)
	{	
		document.orderWMRin.sumUAHin.value = "";
		document.orderWMRin.sumWMRout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');	
		
		return false;
	}
	
	if (sumUAHin == 0)
	{
		document.orderWMRin.sumWMRout.value = "";
		return false;
	}
		
	if (sumUAHin == "")
	{
		document.orderWMRin.sumWMRout.value = "";
		return false;
	}
		
	tmpSumWMRout = sumUAHin/courseUAHtoWMR;
	
	comission = calcComissionUAHtoWMR(tmpSumWMRout);

	if (fr == 1)
	{
		sumWMRout = Math.floor((tmpSumWMRout)*100)/100;
	}
	else
	{
		if (comission === false)
		{	
			document.orderWMRin.sumUAHin.value = "";
			document.orderWMRin.sumWMRout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMRout = tmpSumWMRout*(1-comission);		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMRout = (sumUAHin-comission)/courseUAHtoWMR;;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		sumWMRout = Math.floor((sumWMRout*(Number(1)+1*Number(discount)))*100)/100;
		document.orderWMRin.comission.value = tmpComissionValue;
	}

	document.orderWMRin.sumWMRout.value = sumWMRout;
	if (sumWMRout >= 25000)
	{
		document.orderWMRin.order_protection.disabled = true;
		document.orderWMRin.order_protection.checked = true;
	}
	else
	{
		document.orderWMRin.order_protection.disabled = false;
	}	
}

function calcUAHtoWMRback(courseUAHtoWMR, discount, fr)
{
	var courseUAHtoWMR;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHin = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMRout = document.orderWMRin.sumWMRout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (sumWMRout < 0 || IsNumeric(sumWMRout) == false)
	{	
		document.orderWMRin.sumUAHin.value = "";
		document.orderWMRin.sumWMRout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMRout) == false)
	{	
		document.orderWMRin.sumUAHin.value = "";
		document.orderWMRin.sumWMRout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
			
		return false;
	}
	
	if (sumWMRout == 0)
	{
		document.orderWMRin.sumUAHin.value = "";
		return false;
	}
		
	if (sumWMRout == "")
	{
		document.orderWMRin.sumUAHin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHin = Math.ceil((courseUAHtoWMR*sumWMRout)*100)/100;
	}
	else
	{
		sumWMRout = sumWMRout/(Number(1)+Number(discount));
		comission = calcComissionUAHtoWMRback(sumWMRout);
		if (comission == 0)
			comission = calcComissionUAHtoWMRback(Math.round(sumWMRout));	
		
		if (comission === false)
		{	
			document.orderWMRin.sumUAHin.value = "";
			document.orderWMRin.sumWMRout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHin = Math.ceil(((courseUAHtoWMR*sumWMRout)/(1-comission))*100)/100;		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHin = Math.ceil(((courseUAHtoWMR*sumWMRout) + Number(comission))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		document.orderWMRin.comission.value = tmpComissionValue;
	}
	
	document.orderWMRin.sumUAHin.value = sumUAHin;
	if (sumWMRout >= 25000)
	{
		document.orderWMRin.order_protection.disabled = true;
		document.orderWMRin.order_protection.checked = true;
	}
	else
	{
		document.orderWMRin.order_protection.disabled = false;
	}	
}

//###################################################################################
// WMRtoUAH calculation functions
//###################################################################################

function calcWMRtoUAH(courseWMRtoUAH, discount, fr)
{
	var courseWMRtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHout = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMRin = document.orderWMRout.sumWMRin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;

	if (sumWMRin < 0 || IsNumeric(sumWMRin) == false)
	{	
		document.orderWMRout.sumWMRin.value = "";
		document.orderWMRout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMRin) == false)
	{	
		document.orderWMRout.sumWMRin.value = "";
		document.orderWMRout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumWMRin == 0)
	{
		document.orderWMRout.sumWMRin.value = "";
		return false;
	}
		
	if (sumWMRin == "")
	{
		document.orderWMRout.sumWMRin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHout = Math.floor((sumWMRin*courseWMRtoUAH)*100)/100; 
	}
	else
	{
		comission = calcComissionWMRtoUAH(sumWMRin);
			
		if (comission === false)
		{	
			document.orderWMRout.sumWMRin.value = "";
			document.orderWMRout.sumUAHout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHout = (sumWMRin*courseWMRtoUAH)*(1-comission);
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHout = (sumWMRin*courseWMRtoUAH) - comission;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
			if (sumUAHout < 0)
				sumUAHout = 0;
		}		
		
		sumUAHout = Math.floor((sumUAHout*(Number(1)+Number(discount)))*100)/100;	
		document.orderWMRout.comission.value = tmpComissionValue;
	}
	
	document.orderWMRout.sumUAHout.value = sumUAHout;
	
	tmpWMcomission = Math.ceil((sumWMRin*0.008)*100)/100;
	if (tmpWMcomission > Number(1500))
		document.orderWMRout.comission_wm.value = "(" + (Math.round((Number(sumWMRin) + Number(1500))*100)/100) + " WMR)";
	else if (tmpWMcomission < 0.01)
		document.orderWMRout.comission_wm.value = "(" + (Math.round((Number(sumWMRin) + Number(0.01))*100)/100) + " WMR)";
	else
		document.orderWMRout.comission_wm.value = "(" + (Math.round((Number(sumWMRin) + Number(tmpWMcomission))*100)/100) + " WMR)";
}

function calcWMRtoUAHback(courseWMRtoUAH, discount, fr)
{
	var courseWMRtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumWMRin = 0;
		
	var sumUAHout = document.orderWMRout.sumUAHout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHout < 0 || IsNumeric(sumUAHout) == false)
	{	
		document.orderWMRout.sumWMRin.value = "";
		document.orderWMRout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumUAHout) == false)
	{	
		document.orderWMRout.sumWMRin.value = "";
		document.orderWMRout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumUAHout == 0)
	{
		document.orderWMRout.sumUAHout.value = "";
		return false;
	}
		
	if (sumUAHout == "")
	{
		document.orderWMRout.sumUAHout.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumWMRin = Math.ceil((sumUAHout/courseWMRtoUAH)*100)/100;
	}
	else
	{
		sumUAHout = sumUAHout/(Number(1)+Number(discount));
		comission = calcComissionWMRtoUAHback(sumUAHout/courseWMRtoUAH);
		
		if (comission == 0)
			comission = calcComissionUAHtoWMRback(Math.round(sumUAHout/courseWMRtoUAH));	
					
		if (comission === false)
		{	
			document.orderWMRin.sumUAHin.value= 0;
			document.orderWMRin.sumWMRout.value= 0;
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMRin = Math.round(((sumUAHout/courseWMRtoUAH)/(1-comission))*100)/100;
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMRin = Math.round((((sumUAHout+Number(comission))/courseWMRtoUAH))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
		}
		
		document.orderWMRout.comission.value = tmpComissionValue;
	}
	
	document.orderWMRout.sumWMRin.value = sumWMRin;
	
	tmpWMcomission = Math.ceil((sumWMRin*0.008)*100)/100;
	if (tmpWMcomission > Number(1500))
		document.orderWMRout.comission_wm.value = "(" + (Math.round((Number(sumWMRin) + Number(1500))*100)/100) + " WMR)";
	else if (tmpWMcomission < 0.01)
		document.orderWMRout.comission_wm.value = "(" + (Math.round((Number(sumWMRin) + Number(0.01))*100)/100) + " WMR)";
	else
		document.orderWMRout.comission_wm.value = "(" + (Math.round((Number(sumWMRin) + Number(tmpWMcomission))*100)/100) + " WMR)";
	
}

//###################################################################################
// UAHtoWME calculation functions
//###################################################################################

function calcUAHtoWME(courseUAHtoWME, discount, fr)
{
	var courseUAHtoWME;
	var discount;
	var fr;
	var comission = 0;
	var tmpSumWMEout = 0;
	var sumWMEout = 0;
	
	var sumUAHin = document.orderWMEin.sumUAHin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHin < 0 || IsNumeric(sumUAHin) == false)
	{	
		document.orderWMEin.sumUAHin.value = "";
		document.orderWMEin.sumWMEout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
				
		return false;
	}
	
	if (IsNumeric(sumUAHin) == false)
	{	
		document.orderWMEin.sumUAHin.value = "";
		document.orderWMEin.sumWMEout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');	
		
		return false;
	}
	
	if (sumUAHin == 0)
	{
		document.orderWMEin.sumWMEout.value = "";
		return false;
	}
		
	if (sumUAHin == "")
	{
		document.orderWMEin.sumWMEout.value = "";
		return false;
	}
		
	tmpSumWMEout = sumUAHin/courseUAHtoWME;
	
	comission = calcComissionUAHtoWME(tmpSumWMEout);

	if (fr == 1)
	{
		sumWMEout = Math.floor((tmpSumWMEout)*100)/100;
	}
	else
	{
		if (comission === false)
		{	
			document.orderWMEin.sumUAHin.value = "";
			document.orderWMEin.sumWMEout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMEout = tmpSumWMEout*(1-comission);		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMEout = (sumUAHin-comission)/courseUAHtoWME;;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		sumWMEout = Math.floor((sumWMEout*(Number(1)+1*Number(discount)))*100)/100;
		document.orderWMEin.comission.value = tmpComissionValue;
	}

	document.orderWMEin.sumWMEout.value = sumWMEout;
	if (sumWMEout >= 1000)
	{
		document.orderWMEin.order_protection.disabled = true;
		document.orderWMEin.order_protection.checked = true;
	}
	else
	{
		document.orderWMEin.order_protection.disabled = false;
	}	
}

function calcUAHtoWMEback(courseUAHtoWME, discount, fr)
{
	var courseUAHtoWME;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHin = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMEout = document.orderWMEin.sumWMEout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (sumWMEout < 0 || IsNumeric(sumWMEout) == false)
	{	
		document.orderWMEin.sumUAHin.value = "";
		document.orderWMEin.sumWMEout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMEout) == false)
	{	
		document.orderWMEin.sumUAHin.value = "";
		document.orderWMEin.sumWMEout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
			
		return false;
	}
	
	if (sumWMEout == 0)
	{
		document.orderWMEin.sumUAHin.value = "";
		return false;
	}
		
	if (sumWMEout == "")
	{
		document.orderWMEin.sumUAHin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHin = Math.ceil((courseUAHtoWME*sumWMEout)*100)/100;
	}
	else
	{
		sumWMEout = sumWMEout/(Number(1)+Number(discount));
		comission = calcComissionUAHtoWMEback(sumWMEout);
		if (comission == 0)
			comission = calcComissionUAHtoWMEback(Math.round(sumWMEout));	
		
		if (comission === false)
		{	
			document.orderWMEin.sumUAHin.value = "";
			document.orderWMEin.sumWMEout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHin = Math.ceil(((courseUAHtoWME*sumWMEout)/(1-comission))*100)/100;		
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHin = Math.ceil(((courseUAHtoWME*sumWMEout) + Number(comission))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";			
		}
		
		document.orderWMEin.comission.value = tmpComissionValue;
	}
	
	document.orderWMEin.sumUAHin.value = sumUAHin;
	if (sumWMEout >= 1000)
	{
		document.orderWMEin.order_protection.disabled = true;
		document.orderWMEin.order_protection.checked = true;
	}
	else
	{
		document.orderWMEin.order_protection.disabled = false;
	}	
}

//###################################################################################
// WMEtoUAH calculation functions
//###################################################################################

function calcWMEtoUAH(courseWMEtoUAH, discount, fr)
{
	var courseWMEtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumUAHout = 0;
	
	if (discount == 0)
		discount = 0.00;
			
	var sumWMEin = document.orderWMEout.sumWMEin.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;

	if (sumWMEin < 0 || IsNumeric(sumWMEin) == false)
	{	
		document.orderWMEout.sumWMEin.value = "";
		document.orderWMEout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumWMEin) == false)
	{	
		document.orderWMEout.sumWMEin.value = "";
		document.orderWMEout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumWMEin == 0)
	{
		document.orderWMEout.sumWMEin.value = "";
		return false;
	}
		
	if (sumWMEin == "")
	{
		document.orderWMEout.sumWMEin.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumUAHout = Math.floor((sumWMEin*courseWMEtoUAH)*100)/100; 
	}
	else
	{
		comission = calcComissionWMEtoUAH(sumWMEin);
			
		if (comission === false)
		{	
			document.orderWMEout.sumWMEin.value = "";
			document.orderWMEout.sumUAHout.value = "";
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumUAHout = (sumWMEin*courseWMEtoUAH)*(1-comission);
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumUAHout = (sumWMEin*courseWMEtoUAH) - comission;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
			if (sumUAHout < 0)
				sumUAHout = 0;
		}		
		
		sumUAHout = Math.floor((sumUAHout*(Number(1)+Number(discount)))*100)/100;	
		document.orderWMEout.comission.value = tmpComissionValue;
	}
	
	document.orderWMEout.sumUAHout.value = sumUAHout;
	
	tmpWMcomission = Math.ceil((sumWMEin*0.008)*100)/100;
	if (tmpWMcomission > Number(50))
		document.orderWMEout.comission_wm.value = "(" + (Math.round((Number(sumWMEin) + Number(50))*100)/100) + " WME)";
	else if (tmpWMcomission < 0.01)
		document.orderWMEout.comission_wm.value = "(" + (Math.round((Number(sumWMEin) + Number(0.01))*100)/100) + " WME)";
	else
		document.orderWMEout.comission_wm.value = "(" + (Math.round((Number(sumWMEin) + Number(tmpWMcomission))*100)/100) + " WME)";
}

function calcWMEtoUAHback(courseWMEtoUAH, discount, fr)
{
	var courseWMEtoUAH;
	var discount;
	var fr;
	var comission = 0;
	var sumWMEin = 0;
		
	var sumUAHout = document.orderWMEout.sumUAHout.value.replace(",",".");
	
	var lang = document.getElementById("page_lang").value;
	
	if (discount == 0)
		discount = 0.00;
	
	if (sumUAHout < 0 || IsNumeric(sumUAHout) == false)
	{	
		document.orderWMEout.sumWMEin.value = "";
		document.orderWMEout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (IsNumeric(sumUAHout) == false)
	{	
		document.orderWMEout.sumWMEin.value = "";
		document.orderWMEout.sumUAHout.value = "";
		
		if (lang == 'ua')
			alert('Сума обміну може бути тільки позитивним числом');
		else if (lang == 'en')	
			alert('The exchange sum can be only positive number');	
		else
			alert('Сумма обмена может быть только положительным числом');
		
		return false;
	}
	
	if (sumUAHout == 0)
	{
		document.orderWMEout.sumUAHout.value = "";
		return false;
	}
		
	if (sumUAHout == "")
	{
		document.orderWMEout.sumUAHout.value = "";
		return false;
	}
	
	if (fr == 1)
	{
		sumWMEin = Math.ceil((sumUAHout/courseWMEtoUAH)*100)/100;
	}
	else
	{
		sumUAHout = sumUAHout/(Number(1)+Number(discount));
		comission = calcComissionWMEtoUAHback(sumUAHout/courseWMEtoUAH);
		
		if (comission == 0)
			comission = calcComissionUAHtoWMEback(Math.round(sumUAHout/courseWMEtoUAH));	
					
		if (comission === false)
		{	
			document.orderWMEin.sumUAHin.value= 0;
			document.orderWMEin.sumWMEout.value= 0;
			
			if (lang == 'ua')
				alert('Виникла помилка у розрахунках, будь ласка, зверніться у Службу підтримки');
			else if (lang == 'en')	
				alert('Calculation error, please, contact with support');	
			else			
				alert('Возникла ошибка в расчётах, пожалуйста, обратитесь в Службу поддержки');	
				
			return false;
		}
		
		comission = new String(comission);		
		tmpComissionFound = comission.match(/\[(.+?)\]/i);
		if (tmpComissionFound === null)
		{
			sumWMEin = Math.round(((sumUAHout/courseWMEtoUAH)/(1-comission))*100)/100;
			tmpComissionValue = Math.round(comission*10000)/100 + "%";			
		}
		else
		{
			comission = tmpComissionFound[1];
			sumWMEin = Math.round((((sumUAHout+Number(comission))/courseWMEtoUAH))*100)/100;
			tmpComissionValue = Math.round(comission*100)/100 + " UAH";
		}
		
		document.orderWMEout.comission.value = tmpComissionValue;
	}
	
	document.orderWMEout.sumWMEin.value = sumWMEin;
	
	tmpWMcomission = Math.ceil((sumWMEin*0.008)*100)/100;
	if (tmpWMcomission > Number(50))
		document.orderWMEout.comission_wm.value = "(" + (Math.round((Number(sumWMEin) + Number(50))*100)/100) + " WME)";
	else if (tmpWMcomission < 0.01)
		document.orderWMEout.comission_wm.value = "(" + (Math.round((Number(sumWMEin) + Number(0.01))*100)/100) + " WME)";
	else
		document.orderWMEout.comission_wm.value = "(" + (Math.round((Number(sumWMEin) + Number(tmpWMcomission))*100)/100) + " WME)";
	
}

