// ===========================
// 2C Communnication Consultancy bv
// Leidse Rijn 31-35, De Meern
// Postbus 128, 3454 ZJ, De Meern
// www.2c.nl
// Tel.: +31 (0) 306663209
// Fax : +31 (0) 306664905
// =========================== 

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);



// Aanmeldwebsite formulier functies

// -- Extra website toevoegen zichtbaar maken
function showFieldset(fieldset) {
	fieldVisibility = document.getElementById(fieldset).style.display;
	if(fieldVisibility=='' || fieldVisibility=='none') {
		document.getElementById(fieldset).style.display = 'block';
	} else {
		document.getElementById(fieldset).style.display = 'none';
	}
}

// -- Controleren gegevens

function isValidURL(url){
    var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
    if(RegExp.test(url)){
        return true;
    }else{
        return false;
    }
}

function isValidEmail(email){
    var RegExp = /^((([a-zA-Z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-zA-Z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-zA-Z]|[0-9])([a-zA-Z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-zA-Z]|[0-9])([a-zA-Z]|[0-9]|\-){0,61}([a-zA-Z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/
    if(RegExp.test(email)){
        return true;
    }else{
        return false;
    }
} 

function checkAanmelden() {

	document.getElementById('aanmeld_error_org').style.display = 'none';
	clearElement('aanmeld_error_org');
	document.getElementById('aanmeld_error_site_1').style.display = 'none';
	clearElement('aanmeld_error_site_1');
	document.getElementById('aanmeld_error_site_2').style.display = 'none';
	clearElement('aanmeld_error_site_2');
	document.getElementById('aanmeld_error_site_3').style.display = 'none';
	clearElement('aanmeld_error_site_3');

	
	var naam_error=false;		
	var org_error=false;
	var tel_error=false;
	var functie_error=false;	
	var email_error=false;	
	var site_1_url=false;
	var site_1_maand=false;
	var site_1_jaar=false;
	var site_1_motivatie=false;
	var site_1_rel=false;
	var site_2_url=false;
	var site_2_maand=false;
	var site_2_jaar=false;
	var site_2_motivatie=false;
	var site_3_url=false;
	var site_3_maand=false;
	var site_3_jaar=false;
	var site_3_motivatie=false;
	var voorwaarden_error=false;
	var error_org=false;
	var error_site_1=false; 
	var error_site_2=false;
	var error_site_3=false;
	var error_overig=false;


	if(document.aanmeldformulier.aanmeld_naam.value=='') {
		naam_error=true;		
	} 
	if(document.aanmeldformulier.aanmeld_orga.value=='') {
		org_error=true;
	}
	if(document.aanmeldformulier.aanmeld_functie.value=='') {
		functie_error=true;	
	}
	if(!isValidEmail(document.aanmeldformulier.aanmeld_email.value)) {
		email_error=true;	
	}
	if(document.aanmeldformulier.aanmeld_tel.value=='') {
		tel_error=true;
	}
	if(!isValidURL(document.aanmeldformulier.aanmeld_site_1_url.value)) {
	   site_1_url=true;
	}
	if(document.aanmeldformulier.a_site_1_mot.value=='') {
		site_1_maand=true;
	}
	if(document.aanmeldformulier.aanmeld_site_1_ontwikkeling.checked==false & document.aanmeldformulier.aanmeld_site_1_opdrachtgever.checked==false) {
		site_1_jaar=true;
	}
	if(document.aanmeldformulier.a_site_1_rel.value=='') {
		site_1_rel=true;
	}
	
	/*
	
	if(document.getElementById('aanmeld_site_2').style.display == 'block') {
		if(!isValidURL(document.aanmeldformulier.aanmeld_site_2_url.value)) {
		   site_2_url=true;
		}
		if(document.aanmeldformulier.aanmeld_site_2_mot.value=='') {
			site_2_maand=true;
		}
		if(document.aanmeldformulier.aanmeld_site_2_ontwikkeling.checked==false & document.aanmeldformulier.aanmeld_site_2_opdrachtgever.checked==false) {
		site_2_jaar=true;
		}
		if(document.aanmeldformulier.aanmeld_site_2_rel.value=='') {
			site_2_rel=true;
		}
	}

	if(document.getElementById('aanmeld_site_3').style.display == 'block') {
		if(!isValidURL(document.aanmeldformulier.aanmeld_site_3_url.value)) {
		   site_3_url=true;
		}
		if(document.aanmeldformulier.aanmeld_site_3_maand.value=='') {
			site_3_maand=true;
		}
		if(document.aanmeldformulier.aanmeld_site_3_ontwikkeling.checked==false & document.aanmeldformulier.aanmeld_site_3_opdrachtgever.checked==false) {
		site_3_jaar=true;
		}
		if(document.aanmeldformulier.aanmeld_site_3_motivatie.value=='') {
			site_3_motivatie=true;
		}
	}

	if(document.aanmeldformulier.aanmeld_voorwaarden.checked==false) {
		voorwaarden_error=true;
	}
	*/

	if(naam_error || org_error || functie_error || email_error || tel_error) {
		document.getElementById('aanmeld_error_org').style.display = 'block';

		insertElement('De volgende velden zijn nog leeg of niet helemaal juist ingevuld:', 'p', '', '', 'aanmeld_error_org', '', '');
		insertElement('', 'ul', 'aanmeld_error_org_ul', '', 'aanmeld_error_org', '', '');

		if(naam_error) {
			insertElement('Naam contactpersoon', 'li', '', 'error', 'aanmeld_error_org_ul', '', 0);
		}
		if(org_error) {
			insertElement('Uw organisatie', 'li', '', 'error', 'aanmeld_error_org_ul', '', 0);
		}
		if(functie_error) {
			insertElement('Functie', 'li', '', 'error', 'aanmeld_error_org_ul', '', 0);
		}
		if(email_error) {
			insertElement('Email', 'li', '', 'error', 'aanmeld_error_org_ul', '', 0);
		}
		if(tel_error) {
			insertElement('Telefoonnummer', 'li', '', 'error', 'aanmeld_error_org_ul', '', 0);
		}
		document.getElementById('aanmeld_org').scrollIntoView(true);
		error_org = true;
		
		
	}  else if(site_1_url || site_1_maand || site_1_jaar || site_1_motivatie || site_1_rel) {
		document.getElementById('aanmeld_error_site_1').style.display = 'block';

		insertElement('De volgende velden zijn nog leeg of niet helemaal juist ingevuld:', 'p', '', '', 'aanmeld_error_site_1', '', '');
		insertElement('', 'ul', 'aanmeld_error_site_1_ul', '', 'aanmeld_error_site_1', '', '');

		if(site_1_url) {
			insertElement('De URL van de website die u op wilt geven', 'li', '', 'error', 'aanmeld_error_site_1_ul', '', 0);
		}
		if(site_1_maand) {
			insertElement('Motivatie', 'li', '', 'error', 'aanmeld_error_site_1_ul', '', 0);
		}
		if(site_1_jaar) {
			insertElement('Geef aan hoe u betrokken bent bij deze website', 'li', '', 'error', 'aanmeld_error_site_1_ul', '', 0);
		}
		if(site_1_rel) {
			insertElement('Datum release', 'li', '', 'error', 'aanmeld_error_site_1_ul', '', 0);
		}
		document.getElementById('aanmeld_site_1').scrollIntoView(true);
		error_site_1 = true;
		
	} else if(site_2_url || site_2_maand || site_2_jaar || site_2_motivatie) {
		document.getElementById('aanmeld_error_site_2').style.display = 'block';

		insertElement('De volgende velden zijn niet ingevuld voor het aanmelden van een website:', 'p', '', '', 'aanmeld_error_site_2', '', '');
		insertElement('', 'ul', 'aanmeld_error_site_2_ul', '', 'aanmeld_error_site_2', '', '');

		if(site_2_url) {
			insertElement('Url', 'li', '', 'error', 'aanmeld_error_site_2_ul', '', 0);
		}
		if(site_2_maand) {
			insertElement('Maand', 'li', '', 'error', 'aanmeld_error_site_2_ul', '', 0);
		}
		if(site_2_jaar) {
			insertElement('Jaar', 'li', '', 'error', 'aanmeld_error_site_2_ul', '', 0);
		}
		if(site_2_motivatie) {
			insertElement('Motivatie', 'li', '', 'error', 'aanmeld_error_site_2_ul', '', 0);
		}
		document.getElementById('aanmeld_site_2').scrollIntoView(true);
		error_site_2 = true;
	} else if(site_3_url || site_3_maand || site_3_jaar || site_3_motivatie) {
		document.getElementById('aanmeld_error_site_3').style.display = 'block';
		clearElement('aanmeld_error_site_3');
		insertElement('De volgende velden zijn niet ingevuld voor het aanmelden van een website:', 'p', '', '', 'aanmeld_error_site_3', '', '');
		insertElement('', 'ul', 'aanmeld_error_site_3_ul', '', 'aanmeld_error_site_3', '', '');

		if(site_3_url) {
			insertElement('Url', 'li', '', 'error', 'aanmeld_error_site_3_ul', '', 0);
		}
		if(site_3_maand) {
			insertElement('Maand', 'li', '', 'error', 'aanmeld_error_site_3_ul', '', 0);
		}
		if(site_3_jaar) {
			insertElement('Jaar', 'li', '', 'error', 'aanmeld_error_site_3_ul', '', 0);
		}
		if(site_3_motivatie) {
			insertElement('Motivatie', 'li', '', 'error', 'aanmeld_error_site_3_ul', '', 0);
		}
		document.getElementById('aanmeld_site_3').scrollIntoView(true);
		error_site_3 = true;
		} 

	if(error_org || error_site_1) {
		return false;
	} else {
		return true;
	}
}



function checkNieuwsbrief() {

	document.getElementById('nieuwsbrf_error_org').style.display = 'none';
	clearElement('nieuwsbrf_error_org');
	
	var naam_error=false;		
	var org_error=false;
	var email_error=false;	

	if(document.nieuwsbrf_aanmelden.nieuwsbrf_naam.value=='') {
		naam_error=true;		
	} 
	if(document.nieuwsbrf_aanmelden.nieuwsbrf_orga.value=='') {
		org_error=true;
	}
	if(!isValidEmail(document.nieuwsbrf_aanmelden.nieuwsbrf_email.value)) {
		email_error=true;	
	}


	if(naam_error || org_error || email_error) {
		document.getElementById('nieuwsbrf_error_org').style.display = 'block';

		insertElement('De volgende velden zijn niet ingevuld of niet valide:', 'p', '', '', 'nieuwsbrf_error_org', '', '');
		insertElement('', 'ul', 'nieuwsbrf_error_org_ul', '', 'nieuwsbrf_error_org', '', '');

		if(naam_error) {
			insertElement('Naam', 'li', '', 'error', 'nieuwsbrf_error_org_ul', '', 0);
		}
		if(org_error) {
			insertElement('Organisatie', 'li', '', 'error', 'nieuwsbrf_error_org_ul', '', 0);
		}
		if(email_error) {
			insertElement('Email', 'li', '', 'error', 'nieuwsbrf_error_org_ul', '', 0);
		}
		document.getElementById('nieuwsbrf_org').scrollIntoView(true);
		error_org = true;
	}  

	if(error_org) {
		return false;
	} else {
		return true;
	}
}



function checkContact() {

	document.getElementById('contact_error_org').style.display = 'none';
	clearElement('contact_error_org');

	document.getElementById('contact_error_bericht').style.display = 'none';
	clearElement('contact_error_bericht');

	
	var naam_error=false;		
	var org_error=false;
	var tel_error=false;
	var mob_error=false;	
	var email_error=false;	
	var onderwerp_error=false;	
	var tekst_error=false;	
	var error_org = false;
	var error_bericht = false;

	if(document.contactformulier.contact_naam.value=='') {
		naam_error=true;		
	} 
	if(document.contactformulier.contact_orga.value=='') {
		org_error=true;
	}
	/*
	if(document.contactformulier.contact_tel.value=='') {
		tel_error=true;
	}
	
	if(document.aanmeldformulier.contact_mob.value=='') {
		mob_error=true;	
	}
	*/
	if(!isValidEmail(document.contactformulier.contact_email.value)) {
		email_error=true;	
	}

	if(document.contactformulier.contact_onderwerp.value=='') {
		onderwerp_error=true;
	}

	if(document.contactformulier.contact_tekst.value=='') {
		tekst_error=true;
	}

	

	if(naam_error || org_error || tel_error || mob_error || email_error) {
		document.getElementById('contact_error_org').style.display = 'block';

		insertElement('De volgende velden zijn niet ingevuld of zijn niet goed ingevuld:', 'p', '', '', 'contact_error_org', '', '');
		insertElement('', 'ul', 'contact_error_org_ul', '', 'contact_error_org', '', '');

		if(naam_error) {
			insertElement('Naam contactpersoon', 'li', '', 'error', 'contact_error_org_ul', '', 0);
		}
		if(org_error) {
			insertElement('Organisatie', 'li', '', 'error', 'contact_error_org_ul', '', 0);
		}
		/*
		if(tel_error) {
			insertElement('Telefoonnummer', 'li', '', 'error', 'contact_error_org_ul', '', 0);
		}
		if(mob_error) {
			insertElement('Mobielenummer', 'li', '', 'error', 'contact_error_org_ul', '', 0);
		}
		*/
		if(email_error) {
			insertElement('Email', 'li', '', 'error', 'contact_error_org_ul', '', 0);
		}
		document.getElementById('contact_org').scrollIntoView(true);
		error_org = true;
	}  else if(tekst_error || onderwerp_error) {
		document.getElementById('contact_error_bericht').style.display = 'block';

		insertElement('De volgende velden zijn niet ingevuld of zijn niet goed ingevuld:', 'p', '', '', 'contact_error_bericht', '', '');
		insertElement('', 'ul', 'contact_error_bericht_ul', '', 'contact_error_bericht', '', '');

		if(tekst_error) {
			insertElement('Bericht onderwerp', 'li', '', 'error', 'contact_error_bericht_ul', '', 0);
		}
		if(onderwerp_error) {
			insertElement('Bericht tekst', 'li', '', 'error', 'contact_error_bericht_ul', '', 0);
		}
		document.getElementById('contact_bericht').scrollIntoView(true);
		error_bericht = true;

	}

	if(error_org || error_bericht) {
		return false;
	} else {
		return true;
	}
}

function checkSignup() {
	var error = false;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

	form = document.getElementById('signup');
	
	if(form.signup_firstname.value=='') {
		form.signup_firstname.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_firstname.style.border='1px solid #000';} 
	
	if(form.signup_surname.value=='') {
		form.signup_surname.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_surname.style.border='1px solid #000';} 
	
	if(form.signup_gender.selectedIndex<1) {
		form.signup_gender.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_gender.style.border='1px solid #000';} 

	if(form.signup_dateofbirthday.selectedIndex <1) {
		form.signup_dateofbirthday.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_dateofbirthday.style.border='1px solid #000';} 
	
	if(form.signup_dateofbirthmonth.selectedIndex <1) {
		form.signup_dateofbirthmonth.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_dateofbirthmonth.style.border='1px solid #000';} 
	
	if(form.signup_dateofbirthyear.selectedIndex <1) {
		form.signup_dateofbirthyear.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_dateofbirthyear.style.border='1px solid #000';} 

	if(!filter.test(form.signup_email.value)) {
		form.signup_email.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_email.style.border='1px solid #000';} 
	
	

	if(form.signup_password.value.length < 6) {
		form.signup_password.style.border='2px solid #c00';
		error = true;
	} else if(form.signup_password_check.value.length<6) {
		form.signup_password_check.style.border='2px solid #c00';
		error = true;
	} else if(form.signup_password_check.value!=form.signup_password.value) {
		form.signup_password.style.border='2px solid #c00';
		form.signup_password_check.style.border='2px solid #c00';
		error = true;
	} else {
		form.signup_password.style.border='1px solid #000';;
		form.signup_password_check.style.border='1px solid #000';
		error = false;
	}

	if(form.signup_zipcode.value=='') {
		form.signup_zipcode.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_zipcode.style.border='1px solid #000';} 
	
	if(form.signup_city.value=='') {
		form.signup_city.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_city.style.border='1px solid #000';} 
	
	if(form.signup_country.selectedIndex <1) {
		form.signup_country.style.border='2px solid #c00';
		error = true;
	}else{ form.signup_country.style.border='1px solid #000';} 

	if(form.signup_acceptterms.checked!=true) {
		document.getElementById('signup_term').style.border='2px solid #c00';
		error = true;
	} else {
		form.getElementById('signup_term').style.border='1px solid #000';
	}
	
	if(error) {
		document.getElementById('error').style.display = 'block';
		return false;
	} else {
		return true;
	}
}


function clearClassFormElements(div) {
    if(div) {
        elements = document.getElementById(div);
    } else {
        elements = document;
    }
	if(elements.getElementsByTagName('form')) {
	    
		/* list all input elements in a form */
		var input = elements.getElementsByTagName('input');
		
		for (var i=0;i<input.length;i++) { 
			/* all list elements in array */
			var formelement = input[i];
			addEvent(formelement, 'change', function() {
				if(this.className == 'error') {
					this.className = '';
				}
				
			});
			if(div) {
			   if(formelement.className == 'error') {
					formelement.className = '';
				} 
			}
			
		}
		var select = elements.getElementsByTagName('select');
		for (var i=0;i<select.length;i++) { 
			/* all list elements in array */
			var formelement = select[i];
			addEvent(formelement, 'change', function() {
				if(this.className == 'error') {
					this.className = '';
				}
			});
			if(div) {
			   if(formelement.className == 'error') {
					formelement.className = '';
				} 
			}
		}
		var textarea = elements.getElementsByTagName('textarea');
		for (var i=0;i<textarea.length;i++) { 
			/* all list elements in array */
			var formelement = textarea[i];
			addEvent(formelement, 'change', function() {
				if(this.className == 'error') {
					this.className = '';
				}
			});
			if(div) {
			   if(formelement.className == 'error') {
					formelement.className = '';
				} 
			}
		}
	}
}




/* add event function */
function addEvent(element, type, handler) {
    // assign each event handler a unique ID
    if (!handler.$$guid) handler.$$guid = addEvent.guid++;
    // create a hash table of event types for the element
    if (!element.events) element.events = {};
    // create a hash table of event handlers for each element/event pair
    var handlers = element.events[type];
    if (!handlers) {
        handlers = element.events[type] = {};
        // store the existing event handler (if there is one)
        if (element["on" + type]) {
            handlers[0] = element["on" + type];
        }
    }
    // store the event handler in the hash table
    handlers[handler.$$guid] = handler;
    // assign a global event handler to do all the work
    element["on" + type] = handleEvent;
};
// a counter used to create unique IDs
addEvent.guid = 1;

function removeEvent(element, type, handler) {
    // delete the event handler from the hash table
    if (element.events && element.events[type]) {
        delete element.events[type][handler.$$guid];
    }
};

function handleEvent(event) {
    // grab the event object (IE uses a global event object)
    event = event || window.event;
    // get a reference to the hash table of event handlers
    var handlers = this.events[event.type];
    // execute each event handler
    for (var i in handlers) {
        this.$$handleEvent = handlers[i];
        this.$$handleEvent(event);
    }
};



/* get the page-scrollbar top position in */
function getPageScroll(){
	var yScroll;
	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
	}

	arrayPageScroll = new Array('',yScroll) 
	return arrayPageScroll;
}

/* get alle the page sizes and windowsizes */
function getPageSize(){
	var xScroll, yScroll;
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}

	if(xScroll < windowWidth){	
		pageWidth = windowWidth;
	} else {
		pageWidth = xScroll;
	}

	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}

function insertElement(text, objType, objID, objClass, objParent, objSibling, numOfNodes) {
	// if the object doesnt exsist yet
	if(!document.getElementById(objID)) {
	// create an element with the objType
	var objElement = document.createElement(objType);
		// if there is an id, assign it to the element
		if(objID) 		
			objElement.setAttribute('id', objID);
		// if there is an class, assign it to the element
		if(objClass)
			objElement.className = objClass;
		// if there is any text, insert it into the element
		if(text)
			objElement.innerHTML = text;

		// insert the element inside an other element
		objParent = document.getElementById(objParent);
		if(objParent) {
			objParent.appendChild(objElement);
		}
		// insert the element after an other element
		objSibling = document.getElementById(objSibling);
		if(objSibling) {
			if(numOfNodes>0) {
                for(var n=0; n<numOfNodes; n++) {
	                objSibling = objsibling.nextSibling;
                }
			}
			objSibling.parentNode.insertBefore(objElement, objSibling.nextSibling );
		}
	}
}


function clearElement(element) {
    document.getElementById(element).innerHTML = '';
}
	

function disappear(element, opacity) {
    element = document.getElementById(element); 
	var reduce_opacity_by = 15;
	var rate = 30;	// 15 fps
	
	if (opacity > 0) {
		opacity -= reduce_opacity_by;
		if (opacity < 0) opacity = 0;
		
		if (element.filters) {
			try {
				element.filters.item("DXImageTransform.Microsoft.Alpha").opacity = opacity;
			} catch (e) { 
				// If it is not set initially, the browser will throw an error.  This will set it if it is not set yet.
				element.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(opacity=' + opacity + ')';
			}
		} else {
			element.style.opacity = opacity / 100;
		}
	}
	

	if(opacity > 0) {
		setTimeout(function() { disappear(element.id, opacity); }, rate);
	} else {
		element.style.display = "none";
	}
}


function getObj(name) {
	if (document.getElementById) this.obj = document.getElementById(name);
	else if (document.all) this.obj = document.all[name];
	else if (document.layers) this.obj = document.layers[name];
	return this.obj;
}

function submitform() {
	document.vote.submit();
}

function submitvote() {
	document.vote.clickedVote.value = "true";
	document.vote.submit();
}

function activateStars(cat, score) {
	for(var i=1;i<=10;i++) {
		if (document.images && i<=score) getObj(cat+'_'+i).src = star_on.src;
		else if (document.images && i>score) getObj(cat+'_'+i).src = star_off.src;
	}
	eval('document.vote.'+cat+'.value='+score);
}




