var hpnc_current_expansion = null;

function expand_hpnc( path, id ) {
	// Fancy effect
	var expansion = document.getElementById( "hpnc_expansion_" + id );
	if ( expansion ) expansion.blur();
	var done = false;
	var pulsator = function() {
		if ( done ) return;
		Effect.Pulsate( "hpnc_icon_" + id, { afterFinish: pulsator } );
	}
	pulsator();
	
	// Get the HTML true an AJAX call
	callAjax( path + "/expand_comments.php?id=" + id, function( result ) {
		var ok = false;
		done = true;
		var expansion = document.getElementById( "hpnc_expansion_" + id );

		if ( result ) eval( result );

		if ( ok ) {
			hpnc_html = hpnc_html.replace( /#MODULEPATH#/ig, path );
			expansion.innerHTML = hpnc_html;
			expansion.scrollIntoView();
		}
		else {
			expansion.innerHTML = "<div class='error'>foutje!</div>";
		}
		if ( hpnc_current_expansion ) hpnc_current_expansion.style.display = 'none';
		expansion.style.display = 'block';
		hpnc_current_expansion = expansion;
		//Effect.SlideDown( expansion, { duration: 1.0 } );

		var printer = document.getElementById( "printer" );
		if ( printer ) printer.style.zIndex = parseInt(Math.random()*1000);
	} );
	
	// Cancel the link action
	return false;
}

function post_hpnc( form ) {
	var errors = false;
	
	form.comment.className = form.comment.className.replace( "hpn_error", "" );
	if ( form.comment.value.length < 2 )  {
		form.comment.className += " hpn_error";
		errors = true;
	}

	form.name.className = form.name.className.replace( "hpn_error", "" );
	if ( form.name.value.length < 3 ) {
		form.name.className += " hpn_error";
		errors = true;
	}

	form.email.className = form.email.className.replace( "hpn_error", "" );
	if ( form.email.value.length < 3 )  {
		form.email.className += " hpn_error";
		errors = true;
	}
	else if ( !checkemail( form.email.value ) ) {
		form.email.className += " hpn_error";
		errors = true;
	}

	return !errors;
}

function checkemail(str) {
	var filter= /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	return filter.test(str);
}
