
function showEmail(user, domain, tld, title){

	var emailId = user + "\u0040" + domain + "." + tld;
	var url = "mailto:" + emailId;

	if(!title){
		title = emailId;
	}

	document.write("<a href='" + url + "'>" + title + "</a>");
}


function languageMenu(state) {

	if (state == 'open') {
		$('languageMenu').style.display = '';
	} else if (state == 'close') {
		$('languageMenu').style.display = 'none';
	} else {
		return false;
	}
}

function toggleGroup(group_id,state) {

	var id = 'group'+group_id;
	var label = 'group'+group_id+'Label';

	if (state == 'open') {
		$(id).style.display = '';
		$(label).innerHTML = '<a href=\"#\" onclick=\"toggleGroup('+group_id+',\'close\');\">hide list</a>';
	} else if (state == 'close') {
		$(id).style.display = 'none';
		$(label).innerHTML = '<a href=\"#\" onclick=\"toggleGroup('+group_id+',\'open\');\">show list</a>';
	} else {
		return false;
	}
}

function readCookie(cookieName) {
  var docCookies = document.cookie;
  var startIndex = docCookies.indexOf(cookieName+"=");
  if (startIndex == -1) return false;
  startIndex += cookieName.length + 1;
  var endIndex = docCookies.indexOf(";",startIndex);
  if (endIndex == -1) endIndex = docCookies.length;
  var cookieValue = docCookies.substring(startIndex, endIndex);
  return unescape(cookieValue);
}

function setCookie( sName, sValue, nDays ) {
	var expires = "";
	if ( nDays ) {
		var d = new Date();
		d.setTime( d.getTime() + nDays * 24 * 60 * 60 * 1000 );
		expires = "; expires=" + d.toGMTString();
	}

	document.cookie = sName + "=" + sValue + expires + "; path=/";
};

function removeCookies(){
	if(window.confirm('Remove poll-cookies from this domain ?')){
		setCookie('submitted_polls','0',2);
		window.location.reload(true);
	}
}

var completePollForm = function(){
	if(d = $('pollFormButtons')){
		var b = document.createElement('button');
		b.onclick = function(){submitPoll.call(b,arguments);}
		b.setAttribute('type','button');
		b.innerHTML = 'submit';
		d.appendChild(b);
	}
	if(e = $('enqueteCompleted')){
			var html = '<h3>Thank You!</h3><p>Your comments will help inform and enhance our future development.<br />';
			html += '<a href="#" onclick="popUp(\'http://www.mailinglijst.nl/nieuwsbrief/subscribe.asp?l=261&amp;popup=yes\')">Click here to subscribe to our monthly cultural news bulletin</a>.</p>';
			fkkcPopIn(html,400,400);
	}

	bindRatingRadios();
}

function bindRatingRadios(){
	if(inputs = document.getElementsByTagName('input')) {
		var re = /rating/;
		for(f = 0;f<inputs.length;f++){
			var inp = inputs[f];
			var relAttribute = String(inp.getAttribute('rel'));
			if(relAttribute.match(re)){
				if(span = $(inp.name)){
					var inpValue = 'You rated '+String(inp.value);
					inp.onclick = setRatedValue.bindAsEventListener(inp);
				}
			}
		}
	}
}

function setRatedValue(){
	if(span = $(this.name)){
		span.innerHTML = 'You selected &nbsp; <strong>'+this.value+'</strong>';
	}
}

function popUp(URL) {
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=330,height=580,left=400,top=150');");
}

function popupPoll(enqueteID, pageID){

}

function prepare_cookie(){
	if(!readCookie('submitted_polls')){
		setCookie('submitted_polls','0',2);
	}
}

function loadPollForm(pollID){

	var elementID = (arguments[1])?arguments[1]:'pollWrapper';
	prepare_cookie();
	var frontpage = (elementID == 'pollWrapper')?'1':'0';
	var uri = '/requests/polls.php?poll_id='+pollID+'&frontpage='+frontpage;
	params = {onComplete:completePollForm};
	var updater = new Ajax.Updater(elementID,uri,params);
}

var submitPoll = function(){

	var elementID = (arguments[0] && typeof arguments[0] == 'string')?arguments[0]:'pollWrapper';
	var error = true;

	var inputs = $(elementID).getElementsByTagName('input');
	for(i = 0;i<=inputs.length;i++){

		if(inputs[i] && inputs[i].type && inputs[i].type != 'hidden' && inputs[i].type != 'button'){
			switch(inputs[i].type){
				case 'checkbox':
				case 'radio':

					if(inputs[i].checked){
						error = false;
					}
				break;
				default:
					alert('unkown type '.inputs[i].type);
				break;
			}
		}
	}

	var inputs = $(elementID).getElementsByTagName('select');
	for(i = 0;i<=inputs.length;i++){
		if(inputs[i] && inputs[i].value != ''){
			error = false;
			break;
		}
	}

	if(error){
		alert('Please select an option before you submit the form');
		return false;
	}

	var btts = $(elementID).getElementsByTagName('button');
	if(btts){
		for(b = 0;b < btts.length; b++){
			btts[b].setAttribute('disabled','disabled');
		}
	}
	if(validator = $('validator')){
		validator.apply(validator,formElement.elements);
	}
	var frontpage = (elementID == 'pollWrapper')?'1':'0';
	var uri = '/requests/submit_poll.php?frontpage='+frontpage;
	if(arguments[1]){
		uri += '&page='+arguments[1];
	}
	var params = {
		'method':'post',
		'postBody':Form.serialize(elementID),
		onComplete:completePollForm
	}
	var updater = new Ajax.Updater(elementID,uri,params);
}

function removePopIn(){
	if(d = $('fkkcPopIn')){
		d.parentNode.removeChild(d);
	}
}

function fkkcPopIn(_content,picH,picW){
	if (document.getElementById && document.createElement){

		popinDiv = document.createElement('div');
		popinDiv.style.position = "absolute";
		popinDiv.style.backgroundColor = "#fff";
		popinDiv.style.padding = "5px";
		popinDiv.style.zIndex = 100000;
		popinDiv.id = 'fkkcPopIn';


		var dims = piGetDims();
		var lc = ((dims['w'] - (picW * 1)) / 2);
		var tc = (dims['sy'] * 1) + ((dims['h'] - (picH * 1)) / 2);

		if (lc < 0) { lc = 0; }
		if (tc < 0) { tc = 0; }

		popinDiv.style.width = picW + 'px';
		popinDiv.style.left = lc+'px';
		popinDiv.style.top = tc+'px';
		popinDiv.style.display = 'block';
		_content += '<p style="text-align:center"><a onclick="removePopIn()">close window</a></p>';
		popinDiv.innerHTML = _content;

		document.body.appendChild(popinDiv);

	}
}

function viewAlbum(albumId){
	var request = new Ajax.Request('/requests/view_album.php?album_id='+albumId);
}
// Special function for starting movie clicked on homepage
function viewMovie(movieId){
	var request = new Ajax.Request('/requests/view_movie.php?movie_id='+movieId);
}


function viewPhotoAlbum(params){

	if(params.content){

		var albumId = 'photoAlbumContainer'+params.content[0].album_id;

		var albumContainer = $(albumId);
		if(!albumContainer){
			var albumContainer = document.createElement('div');
			albumContainer.id = albumId;
			albumContainer.style.display = 'none';
			document.body.appendChild(albumContainer);
		}

		albumContainer.innerHTML = '';
		$('buttonList').innerHTML = '';

		// Loop through images
		for(var i = 0, l = params.content.length; i < l ; i++){

			var a	= document.createElement('a');
			a.href = params.content[i].url;
			a.setAttribute("rel",'lightbox['+albumId+']');
			a.title = params.content[i].title;
			a.setAttribute("description",params.content[i].text);
			var img = document.createElement('img');
			img.src = params.content[i].url;

			a.appendChild(img);
			albumContainer.appendChild(a);
		}

		myLightbox.start(Element.firstDescendant(albumId));
	}
}

function viewMp3Album(params){
	window.movieLightbox.startMovie(params);
}

function viewVideoAlbum(params){
	window.movieLightbox.startMovie(params);
}


function toggleSelectAll() {
	$('mlSearchTitles').checked = 'checked';
	$('mlSearchTags').checked = 'checked';
	$('mlSearchDescription').checked = 'checked';
}

function isMaxLength(obj) {

	var mlength = obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""

	if (obj.getAttribute && obj.value.length>mlength) {
		obj.value=obj.value.substring(0,mlength);
	}
}


function submitGrantForm(form) {

	/*
	* FIELDS TO CHECK
	*
	* orgname, orgaddress, orgzip, orgcity, orgcountry
	* project_name, totalBudget, requestedAmount, discipline
	* part1org, part1city, part1country
	* surname, firstname, jobtitle, tel, email
	* appForm
	*
	**************************/
	
	var error = 0;
	var compulsoryFields = new Array('orgname','orgaddress','orgzip','orgcity','orgcountry','project_name','totalBudget','requestedAmount','discipline',
												'part1org','part1city','part1country','surname','firstname','jobtitle','tel','email','appForm');

	for (var x=0; x < compulsoryFields.length; x++) {
		if ($(compulsoryFields[x]).value == '') {
			$(compulsoryFields[x]).style.borderColor = '#cc0000';
			error = 1;
		} else {
			$(compulsoryFields[x]).style.borderColor = '#EDEDED';
		}
	}

	if (error == 0) {
		$(form).submit();
		return true;
	} else {
		alert('Required information is missing. Please, check the form again');
		return false;
	}
}