﻿function landChanged( landCtrlId, regionCtrlId, ortCtrlId, egalText)
{
	var landCtrl = $('#' + landCtrlId).get(0);
	var landId = landCtrl.options[landCtrl.selectedIndex].value;
	
	fillRegion( landCtrlId, regionCtrlId, egalText);
	fillOrt( landCtrlId, regionCtrlId, ortCtrlId, egalText);
}
		
function regionChanged( landCtrlId, regionCtrlId, ortCtrlId, egalText)
{
	fillOrt( landCtrlId, regionCtrlId, ortCtrlId, egalText);
}

function fillOrt( landCtrlId, regionCtrlId, ortCtrlId, egalText)
{
	var landCtrl = $('#' + landCtrlId).get(0);
	var currentLandId = landCtrl.options[landCtrl.selectedIndex].value;
	var regionCtrl = $('#' + regionCtrlId).get(0);
	var currentRegionId = regionCtrl.options[regionCtrl.selectedIndex].value;
	var ortCtrl = $('#' + ortCtrlId).get(0);
	var currentOrtId = ortCtrl.options[ortCtrl.selectedIndex].value;
	
	ortCtrl.options.length = 0;
	ortCtrl.selectedIndex = -1;

	ortCtrl.options.add( new Option( egalText, ''));
	
	for( i = 0; i < ortListe.length; i++)
	{
		if( currentRegionId == ortListe[i].RegionId || currentRegionId == '' && currentLandId == ''  || (currentRegionId == '' && currentLandId == ortListe[i].LandId))
		{
			var option = new Option( ortListe[i].Displayname, ortListe[i].Id);
			
			if( ortListe[i].Id == currentOrtId)
			{
				option.selected = true;
			}
			
			ortCtrl.options.add( option);
		}
	}
	
	if( ortCtrl.options.length == 1)
	{
		ortCtrl.options[0].selected = true;
	}
	else if( ortCtrl.options.length == 2)
	{
		ortCtrl.options[0] = null;
		ortCtrl.options[0].selected = true;
	}
}

function fillRegion( landCtrlId, regionCtrlId, egalText)
{
	var landCtrl = $('#' + landCtrlId).get(0);
	var landId = landCtrl.options[landCtrl.selectedIndex].value;
	var regionCtrl = $('#' + regionCtrlId).get(0);
	var currentRegionId = regionCtrl.options[regionCtrl.selectedIndex].value;

	regionCtrl.options.length = 0;
	regionCtrl.selectedIndex = -1;

	regionCtrl.options.add( new Option( egalText, ''));
	
	for( i = 0; i < regionenListe.length; i++)
	{
		if( landId == regionenListe[i].LandId || landId == '')
		{
			var option = new Option( regionenListe[i].Displayname, regionenListe[i].Id);
			
			if( regionenListe[i].Id == currentRegionId)
			{
				option.selected = true;
			}
			
			regionCtrl.options.add( option);
		}
	}
	
	if( regionCtrl.options.length == 1)
	{
		regionCtrl.options[0].selected = true;
	}
	else if( regionCtrl.options.length == 2)
	{
		regionCtrl.options[0] = null;
		regionCtrl.options[0].selected = true;
	}
}
