areas = new Array('Ahvenanmaa', 'Etelä-Karjala', 'Etelä-Pohjanmaa', 'Etelä-Savo', 'Itä-Uusimaa', 'Kainuu', 'Kanta-Häme',  'Keski-Pohjanmaa', 'Keski-Suomi', 'Kymenlaakso',  'Lappi', 'Pirkanmaa', 'Pohjanmaa', 'Pohjois-Karjala', 'Pohjois-Pohjanmaa', 'Pohjois-Savo', 'Päijät-Häme', 'Satakunta', 'Uusimaa', 'Varsinais-Suomi');

locations = new Array();

locations['Ahvenanmaa'] = new Array(
'Brändö',
'Eckerö',
'Föglö',
'Finström',
'Geta',
'Hammarland',
'Jomala',
'Kökar',
'Kumlinge',
'Lemland',
'Lumparland',
'Maarianhamina',
'Saltvik',
'Sottunga',
'Sund',
'Vårdö'
);

locations['Etelä-Karjala'] = new Array(
'Imatra',
'Lappeenranta',
'Lemi',
'Luumäki',
'Parikkala',
'Rautjärvi',
'Ruokolahti',
'Savitaipale',
'Suomenniemi',
'Taipalsaari',
'Ylämaa'
);

locations['Etelä-Pohjanmaa'] = new Array(
'Alajärvi',
'Alavus',
'Evijärvi',
'Ilmajoki',
'Isojoki',
'Jalasjärvi',
'Karijoki',
'Kauhajoki',
'Kauhava',
'Kuortane',
'Kurikka',
'Lappajärvi',
'Lapua',
'Seinäjoki',
'Soini',
'Töysä',
'Teuva',
'Vimpeli',
'Yli-Ii',
'Ähtäri'
);

locations['Etelä-Savo'] = new Array(
'Enonkoski',
'Heinävesi',
'Hirvensalmi',
'Joroinen',
'Juva',
'Kangasniemi',
'Kerimäki',
'Mäntyharju',
'Mikkeli',
'Pertunmaa',
'Pieksämäki',
'Punkaharju',
'Puumala',
'Rantasalmi',
'Ristiina',
'Savonlinna',
'Sulkava'
);

locations['Itä-Uusimaa'] = new Array(
'Askola',
'Lapinjärvi',
'Liljendal',
'Loviisa',
'Myrskylä',
'Pernaja',
'Porvoo',
'Pukkila',
'Ruotsinpyhtää',
'Sipoo'
);

locations['Kainuu'] = new Array(
'Hyrynsalmi',
'Kajaani',
'Kuhmo',
'Paltamo',
'Puolanka',
'Ristijärvi',
'Sotkamo',
'Suomussalmi',
'Vaala'
);

locations['Kanta-Häme'] = new Array(
'Forssa',
'Hämeenlinna',
'Hattula',
'Hausjärvi',
'Humppila',
'Janakkala',
'Jokioinen',
'Loppi',
'Riihimäki',
'Tammela',
'Ypäjä'
);

locations['Keski-Pohjanmaa'] = new Array(
'Halsua',
'Himanka',
'Kannus',
'Kaustinen',
'Kokkola',
'Lestijärvi',
'Perho',
'Toholampi',
'Veteli'
);

locations['Keski-Suomi'] = new Array(
'Hankasalmi',
'Jämsä',
'Joutsa',
'Jyväskylä',
'Kannonkoski',
'Karstula',
'Keuruu',
'Kinnula',
'Kivijärvi',
'Konnevesi',
'Kuhmoinen',
'Kyyjärvi',
'Laukaa',
'Luhanka',
'Multia',
'Muurame',
'Petäjävesi',
'Pihtipudas',
'Saarijärvi',
'Toivakka',
'Uurainen',
'Viitasaari',
'Äänekoski'
);

locations['Kymenlaakso'] = new Array(
'Hamina',
'Iitti',
'Kotka',
'Kouvola',
'Miehikkälä',
'Pyhtää',
'Virolahti'
);

locations['Lappi'] = new Array(
'Enontekiö',
'Inari',
'Kemi',
'Kemijärvi',
'Keminmaa',
'Kittilä',
'Kolari',
'Muonio',
'Pelkosenniemi',
'Pello',
'Posio',
'Ranua',
'Rovaniemi',
'Salla',
'Savukoski',
'Simo',
'Sodankylä',
'Tervola',
'Tornio',
'Utsjoki',
'Ylitornio'
);

locations['Pirkanmaa'] = new Array(
'Akaa',
'Hämeenkyrö',
'Ikaalinen',
'Juupajoki',
'Kangasala',
'Kihniö',
'Kuhmalahti',
'Kylmäkoski',
'Lempäälä',
'Mänttä-Vilppula',
'Nokia',
'Orivesi',
'Pälkäne',
'Parkano',
'Pirkkala',
'Punkalaidun',
'Ruovesi',
'Sastamala',
'Tampere',
'Urjala',
'Valkeakoski',
'Vesilahti',
'Virrat',
'Ylöjärvi'
);

locations['Pohjanmaa'] = new Array(
'Isokyrö',
'Kaskinen',
'Korsnäs',
'Kristiinankaupunki',
'Kruunupyy',
'Laihia',
'Luoto',
'Maalahti',
'Mustasaari',
'Närpiö',
'Oravainen',
'Pedersöre',
'Pietarsaari',
'Uusikaarlepyy',
'Vähäkyrö',
'Vöyri-Maksamaa',
'Vaasa'
);

locations['Pohjois-Karjala'] = new Array(
'Ilomantsi',
'Joensuu',
'Juuka',
'Kesälahti',
'Kitee',
'Kontiolahti',
'Lieksa',
'Liperi',
'Nurmes',
'Outokumpu',
'Polvijärvi',
'Rääkkylä',
'Tohmajärvi',
'Valtimo'
);

locations['Pohjois-Pohjanmaa'] = new Array(
'Alavieska',
'Haapajärvi',
'Haapavesi',
'Hailuoto',
'Haukipudas',
'Ii',
'Kärsämäki',
'Kalajoki',
'Kempele',
'Kiiminki',
'Kuusamo',
'Liminka',
'Lumijoki',
'Merijärvi',
'Muhos',
'Nivala',
'Oulainen',
'Oulu',
'Oulunsalo',
'Pudasjärvi',
'Pyhäjärvi',
'Pyhäjoki',
'Pyhäntä',
'Raahe',
'Reisjärvi',
'Sievi',
'Siikajoki',
'Siikalatva',
'Taivalkoski',
'Tyrnävä',
'Utajärvi',
'Vihanti',
'Ylivieska'
);

locations['Pohjois-Savo'] = new Array(
'Iisalmi',
'Juankoski',
'Kaavi',
'Karttula',
'Keitele',
'Kiuruvesi',
'Kuopio',
'Lapinlahti',
'Leppävirta',
'Maaninka',
'Nilsiä',
'Pielavesi',
'Rautalampi',
'Rautavaara',
'Siilinjärvi',
'Sonkajärvi',
'Suonenjoki',
'Tervo',
'Tuusniemi',
'Varkaus',
'Varpaisjärvi',
'Vesanto',
'Vieremä'
);

locations['Päijät-Häme'] = new Array(
'Artjärvi',
'Asikkala',
'Hämeenkoski',
'Hartola',
'Heinola',
'Hollola',
'Kärkölä',
'Lahti',
'Nastola',
'Orimattila',
'Padasjoki',
'Sysmä '
);

locations['Satakunta'] = new Array(
'Eura',
'Eurajoki',
'Harjavalta',
'Honkajoki',
'Huittinen',
'Jämijärvi',
'Köyliö',
'Kankaanpää',
'Karvia',
'Kiikoinen',
'Kokemäki',
'Lavia',
'Luvia',
'Merikarvia',
'Nakkila',
'Noormarkku',
'Pomarkku',
'Pori',
'Rauma',
'Säkylä',
'Siikainen',
'Ulvila'
);

locations['Uusimaa'] = new Array(
'Espoo',
'Hanko',
'Helsinki',
'Hyvinkää',
'Inkoo',
'Järvenpää',
'Karjalohja',
'Karkkila',
'Kauniainen',
'Kerava',
'Kirkkonummi',
'Lohja',
'Mäntsälä',
'Nummi-Pusula',
'Nurmijärvi',
'Pornainen',
'Raasepori',
'Siuntio',
'Tuusula',
'Vantaa',
'Vihti'
);

locations['Varsinais-Suomi'] = new Array(
'Aura',
'Kaarina',
'Kemiönsaari',
'Koski',
'Kustavi',
'Länsi-Turunmaa',
'Laitila',
'Lieto',
'Loimaa',
'Marttila',
'Masku',
'Mynämäki',
'Naantali',
'Nousiainen',
'Oripää',
'Pöytyä',
'Paimio',
'Pyhäranta',
'Raisio',
'Rusko',
'Salo',
'Sauvo',
'Somero',
'Taivassalo',
'Tarvasjoki',
'Turku',
'Uusikaupunki',
'Vehmaa'
);

supcategories = new Array('Kirjallisuus', 'Kuvataide', 'Lasten- ja nuortenkulttuuri', 'Media', 'Kädentaitajat ja muotoilu', 'Näyttämötaide', 'Sirkus', 'Musiikki', 'Tanssitaide', 'Valo-, video- ja elokuva', 'Muu kulttuuri');

categories = new Array();

categories['Kirjallisuus'] = new Array(
'Kirjailijat, dekkarit',
'Kirjailijat, elämäkerrat',
'Kirjailijat, historiikit',
'Kirjailijat, kaskut ja pakinat',
'Kirjailijat, kertomakirjallisuus',
'Kirjailijat, kotiseutukirjallisuus',
'Kirjailijat, kuvakirjat',
'Kirjailijat, novellit',
'Kirjailijat, romaanit',
'Kirjailijat, tietokirjat',
'Kirjoittajat',
'Kolumnistit',
'Opettajat ja ohjaajat, kirjallisuus',
'Runoilijat',
'Sarjakuvataiteilijat',
'Tuotanto-, toimitus- ja kustannuspalvelut, kirjallisuus',
'Muu kirjallisuus'
);

categories['Kuvataide'] = new Array(
'Graafikot, mainos',
'Graafikot, taide',
'Ikonitaide',
'Kortit, julisteet',
'Kuvanveistäjät',
'Kuvataiteilijat, maalaus',
'Kuvataiteilijat, muotokuvat',
'Kuvataiteilijat, piirustus',
'Kuvitus',
'Opettajat ja ohjaajat, kuvataide',
'Tuotanto-, toimitus- ja kustannuspalvelut, kuvataide',
'Muu kuvataide'
);

categories['Lasten- ja nuortenkulttuuri'] = new Array(
'Elokuvat, lasten',
'Kirjailijat, kuunnelmat',
'Kirjailijat, näytelmät',
'Kirjailijat, lasten- ja nuortenkirjallisuus',
'Kirjailijat, satukirjat',
'Lastenjuhlien esiintyjät ja tuottajat',
'Lastenkulttuuri',
'Lastenmusiikki',
'Lastentanssi',
'Lastenteatteri',
'Nuorisoteatteri',
'Nuortenkulttuuri',
'Opettajat ja ohjaajat, lasten- ja nuortenkulttuuri',
'Tuotanto-, toimitus- ja kustannuspalvelut, lapset ja nuoret',
'TV-ohjelmat, lasten',
'Muu lasten- ja nuortenkulttuuri'
);

categories['Media'] = new Array(
'3D-graafikot',
'Animaattorit',
'Copywriters',
'Freelancer toimittajat',
'Graafiset suunnittelijat',
'Juontajat',
'Kuvankäsittelijät',
'Mediataiteilijat',
'Opettajat ja ohjaajat, media-ala',
'Peliala',
'Radiotuotanto',
'Speakkaajat',
'Tietokonetaiteilijat',
'Tuotanto-, toimitus- ja kustannuspalvelut, media-ala',
'Uusmediatuotanto',
'Äänituotanto',
'Muu media'
);

categories['Kädentaitajat ja muotoilu'] = new Array(
'Käsityötaiteilijat, huonekalut ja sisustus',
'Käsityötaiteilijat, keramiikka',
'Käsityötaiteilijat, koriste-esineet',
'Käsityötaiteilijat, korut ja kivet',
'Käsityötaiteilijat, kudonta',
'Käsityötaiteilijat, kulta- ja hopeasepät',
'Käsityötaiteilijat, käyttöesineet',
'Käsityötaiteilijat, lasitaide',
'Käsityötaiteilijat, metallityöt',
'Käsityötaiteilijat, puutyöt',
'Muotoilijat',
'Opettajat ja ohjaajat, käsityöt ja muotoilu',
'Perinnekäsityöt',
'Restauroijat, entisöijät ja konservaattorit',
'Sepät ja puusepät',
'Tekstiilisuunnittelu ja -käsityö',
'Teolliset muotoilijat',
'Vaatesuunnittelu ja -käsityö',
'Verhoilijat',
'Muut kädentaitajat ja muotoilijat'
);

categories['Näyttämötaide'] = new Array(
'Dramaturgit',
'Improvisaatioteatterit',
'Kesäteatteri',
'Koreografit, näyttämötaide',
'Lausujat',
'Lavastajat',
'Maskeeraajat',
'Nukketeatterit',
'Näyttelijät',
'Ohjaajat, teatteri',
'Opettajat ja ohjaajat, näyttämötaide',
'Puhe',
'Pukusuunnittelijat ja puvustajat',
'Senioriteatteri',
'Stand-up, sketsiviihde',
'Teatterit, ammattiteatterit',
'Teatterit, vapaat',
'Valo- ja äänisuunnittelijat',
'Ylioppilasteatterit',
'Muut näyttämötaiteilijat'
);

categories['Sirkus'] = new Array(
'Akrobaatit',
'Jonglöörit',
'Klovnit',
'Opettajat ja ohjaajat, sirkus',
'Sirkuskoulut',
'Taikurit',
'Tasapainoilijat',
'Tuotanto-, toimitus- ja kustannuspalvelut, sirkus',
'Muut sirkustaiteilijat'
);

categories['Musiikki'] = new Array(
'Kansanmusiikki',
'Kirkkomusiikki',
'Kuorot',
'Laulajat',
'Muusikot / soittajat, iskelmä, viihde ja tanssi',
'Muusikot / soittajat, jazz, blues ja soul',
'Muusikot / soittajat, klassinen',
'Muusikot / soittajat, pop ja rock',
'Muusikot / soittajat, muut',
'Opettajat ja ohjaajat, musiikki',
'Orkesterit, iskelmä, viihde ja tanssi',
'Orkesterit, jazz, blues ja soul',
'Orkesterit, klassinen',
'Orkesterit, pop ja rock',
'Orkesterit, muut',
'Sanoittajat',
'Soittokunnat',
'Sovittajat',
'Säveltäjät',
'Tuotanto-, toimitus- ja kustannuspalvelut, musiikki',
'Muut muusikot'
);

categories['Tanssitaide'] = new Array(
'Koreografit, tanssitaide',
'Opettajat ja ohjaajat, tanssitaide',
'Steppaajat',
'Tanssijat, baletti',
'Tanssijat, etninen',
'Tanssijat, jazz-, street- ja showtanssijat',
'Tanssijat, kansantanssijat',
'Tanssijat, kilpa',
'Tanssijat, nyky- ja modernit tanssijat',
'Tanssikoulut',
'Tanssiryhmät',
'Tanssiteatterit',
'Tuotanto-, toimitus- ja kustannuspalvelut, tanssi',
'Muut tanssitaiteilijat'
);

categories['Valo-, video- ja elokuva'] = new Array(
'Elokuvakerhot',
'Elokuvat',
'Elokuvat, animaatio',
'Elokuvat, dokumentit',
'Elokuvat, lyhyt',
'Elokuvat, piirros',
'Kuvaajat',
'Käsikirjoittajat',
'Leikkaajat',
'Mainokset',
'Musiikkivideot',
'Ohjaajat',
'Opettajat ja ohjaajat, valo-, video- ja elokuva',
'Tuotanto-, toimitus- ja kustannuspalvelut, valo- ja videokuva',
'TV-ohjelmat',
'TV-ohjelmat, dokumentit ja opetus',
'TV-ohjelmat, viihde',
'Valokuvaajat',
'Videokuvaajat',
'Videotuotannot',
'Äänittäjät',
'Muut valokuva- ja videotaiteilijat'
);

categories['Muu kulttuuri'] = new Array(
'Ohjelma- ja elämyspalvelut',
'Opettajat ja ohjaajat, muut',
'Pantomiimikot',
'Performanssi',
'Tilataiteilijat',
'Tuotanto-, toimitus- ja kustannuspalvelut, muut',
'Valotaiteilijat ja valosuunnittelijat',
'Ympäristötaiteilijat',
'Äänitaiteilijat ja äänisuunnittelijat',
'Muut'
);

function changeList(list, area) {
	var targetlist = document.getElementById(list);
	targetlist.options.length = 0;
	
	if(targetlist.hasChildNodes()) {
		while(targetlist.childNodes.length >= 1 ) {
			targetlist.removeChild(targetlist.firstChild);       
		} 
	}
	
	if (list == 'form_searchLocation') {
		sup = areas;
		data = locations;
		targetlist.options[0] = new Option('Kaikki alueen kunnat', '');
	} else {
		sup = supcategories;
		data = categories;
		targetlist.options[0] = new Option('Kaikki tuottajat', '');
	}
	
	if (area == '') {
		var i;
		for (i in sup) {
			var nuoptgroup = document.createElement('optgroup');
			nuoptgroup.label = sup[i];
			
			var j;
			for (j in data[sup[i]]) {
				var nuoption = document.createElement('option');
				nuoption.value = data[sup[i]][j];
				nuoption.appendChild(document.createTextNode(data[sup[i]][j]));
				nuoptgroup.appendChild(nuoption);
			}
			
			targetlist.appendChild(nuoptgroup);
		}
	} else {
		var i;
		var a = 1;
		for (i in data[area]) {
			targetlist.options[a] = new Option(data[area][i], data[area][i]);
			a = a+1;
		}
	}
};