var popupUnderviser = new Popup(null, 'popupUnderviser'); 
var popupGalleri = new Popup(null, 'popupGalleri');
var galleriTidUpdater = new DatoTidUpdater('underviserGalleriDatoTid');

var datadispenser;
var selectedUnderviser; 
Event.observe(document, 'dom:loaded', function() {	
	$$('.underviserCombo').each(function(e) {
		e.observe('click',comboClick);
	});	
	$('underviserIMGStor').observe('click',openUnderviserPopup);
	if (window.underviserSideType == 'stor') {
		$('underviserNavnA').observe('click',openUnderviserPopup);
		$('underviserGalleriA').observe('click',openGalleriPopup);
		datadispenser = new Datadispenser(undervisere, ['navn','fornavnUC','titel','tekst_kort','tekst_lang']);	
		
	} else {
		datadispenser = new Datadispenser(undervisere, ['navn','navn_alm','titel','tekst_kort','tekst_lang']);
	}
	
	selectedUnderviser = initUnderviser;
	selectUnderviser();	
});

function comboClick(event) {
	var e = event.element();
	if (!e.hasClassName('underviserCombo')) {
		e = e.up('.underviserCombo');
	}	
	selectedUnderviser = e.id.substring(11); 
	selectUnderviser();		
}

function selectUnderviser() {
	datadispenser.update(selectedUnderviser);
	if (window.underviserSideType == 'stor') {		
		$('underviserIMGStor').src = '/images/cms/undervisere/stor_midt/' + selectedUnderviser + '.jpg?salt=' + undervisere[selectedUnderviser]['image_salt'];
	} else {
		$('centerBillede').src = '/images/cms/undervisere/' + selectedUnderviser + '.jpg?salt=' + undervisere[selectedUnderviser]['image_salt'];
		//$('underviserTekstKort').insert({bottom: '<br /><br /><a href="javascript:openUnderviserPopup();">Læs mere...</a>'});
	}	
	$('underviserPopupIMG').src = '/images/cms/undervisere/popup/' + selectedUnderviser + '.jpg?salt=' + undervisere[selectedUnderviser]['image_salt'];
	setPageState('undervisere', selectedUnderviser);
}

function gotoKursus(event) {
	var tr = event.element();
	if (tr.tagName != 'tr') {
		tr = tr.up('tr');
	}
	if (tr.hasClassName('system_kategori_grund')) {
		document.location = '/action/setStateAndRedirect?page=kurser&id=' + tr.id.substring(7);
	} else if (tr.hasClassName('system_kategori_intensiv')) {
		document.location = '/action/setStateAndRedirect?page=kurser_intensive&id=' + tr.id.substring(7);
	} else if (tr.hasClassName('system_kategori_foredrag')) {
		document.location = '/action/setStateAndRedirect?page=foredrag&id=' + tr.id.substring(7);			
	}
}

function openUnderviserPopup() {
	popupUnderviser.setBgColor(undervisere[selectedUnderviser]['popup_color']);	
	popupUnderviser.open();
	var holdHTML = '<table class="holdTBL">';
	hold[selectedUnderviser].each(function(hold) {
		holdHTML += '<tr id="holdTR_' + hold['id'] + '" class="system_kategori_' + hold['system_kategori'] + '"><td class="col1">' + hold['holdnummer'] + '</td><td class="col2">' + hold['ugedag'] + '</td><td class="col3">' + hold['startdato'] + '</td><td class="col4">' + hold['starttid'] + '</td><td class="col5">' + hold['titel'] + '</td><td class="col6">' + hold['deltagere_status'] + '</td></tr>';
		 
	});
	holdHTML += '</table>';
	flexcrollUpdate('popupHoldliste',holdHTML);
	hold[selectedUnderviser].each(function(hold) {
		$('holdTR_' + hold['id']).observe('click', gotoKursus);
		$('holdTR_' + hold['id']).observe('mouseover', kursusMouseover);
		$('holdTR_' + hold['id']).observe('mouseout', kursusMouseout);
	}); 
	fleXenv.postInitInitialize('popupUnderviserTekst');
	fleXenv.postInitInitialize('popupHoldliste');
}

function kursusMouseover(event) {
	var tr = event.element();
	if (tr.tagName != 'tr') {
		tr = tr.up('tr');
	}
	if (!tr.hasClassName('mouseover')) {
		tr.addClassName('mouseover');
	}
}

function kursusMouseout(event) {
	var tr = event.element();
	if (tr.tagName != 'tr') {
		tr = tr.up('tr');
	}
	if (tr.hasClassName('mouseover')) {
		tr.removeClassName('mouseover');
	}
}

function openGalleriPopup() {
	popupGalleri.setBgColor(undervisere[selectedUnderviser]['popup_color']);
	var html = '<div id="underviserGalleriListeContainer" class="galleriListeContainer flexcroll_hidden">';
	var b;
	for (var i = 0; i < underviserGalleribilleder[selectedUnderviser].length; i++) {
		b = underviserGalleribilleder[selectedUnderviser][i];
		html += '<div class="IMGContainer"><img src="/images/cms/underviser_galleribilleder/small/' + b.id + '.jpg?salt='+b.salt+'" alt="" id="galleribillede_' + b.id + '" class="galleriBilledeSmall" style="left:' + Math.max(b.pos_x_2,0) + 'px;top:' + Math.max(b.pos_y_2,0) + 'px;" /></div>';
	}	
	html += '<div class="endOfList">&nbsp;</div></div>';
	var galleriListe = $('popupGalleri').down('.galleriListe');
	galleriListe.update(html);	
	var largeImg = $('popupGalleri').down('.galleriStortBillede').down('img'); 
	if (underviserGalleribilleder[selectedUnderviser][0]) {
		largeImg.setStyle({display:'inline'});
		largeImg.src='/images/cms/underviser_galleribilleder/'+underviserGalleribilleder[selectedUnderviser][0]['id']+'.jpg?salt='+underviserGalleribilleder[selectedUnderviser][0]['salt'];
		largeImg.setStyle({
			left: Math.max(underviserGalleribilleder[selectedUnderviser][0]['pos_x'],0) + 'px',
			top:  Math.max(underviserGalleribilleder[selectedUnderviser][0]['pos_y'],0) + 'px'
		});
		galleriListe.down('.IMGContainer').setStyle({marginTop : 0});
	} else {
		largeImg.setStyle({display:'none'});
	}
	popupGalleri.open();
	fleXenv.reInitialize('underviserGalleriListeContainer');
	$$('#underviserGalleriListeContainer img.galleriBilledeSmall').each(function(img) {
		img.observe('click', function(event) {			
			var id = event.element().id.substring(15);			
			var salt = underviserGalleribilleder[selectedUnderviser].find(function(b) {return b.id == id;}).salt;						
			largeImg.src = 'images/cms/underviser_galleribilleder/' + id + '.jpg?salt=' + salt;
			largeImg.setStyle({
				left: Math.max(underviserGalleribilleder[selectedUnderviser].find(function(b) {return b.id == id;}).pos_x,0) + 'px',
				top:  Math.max(underviserGalleribilleder[selectedUnderviser].find(function(b) {return b.id == id;}).pos_y,0) + 'px'
			});			
		})
	})
}
