function prevOff() {
	document.getElementById("comment_preview").style.display = "none";
	}

function prevOn() {
	document.getElementById("comment_preview").style.display = "block";
	}

function prevUpdate() {
	prevOn();
	var previewt = document.getElementById("preview_text");
	text = document.getElementById('text').value;
	text = cleanComment(text);
	previewt.innerHTML = '<p>' + text + '</p>';
	previewt.style.display = "block";
	}

function cleanComment(text) {
	text = text.replace(/<a.*javascript:.*?>/ig, ''); 	
	text = text.replace(/<a.*class=.*?>/ig, ''); 	
	text = text.replace(/<a.*style=.*?>/ig, ''); 	
	text = text.replace(/<a.*on\w+=.*?>/ig, ''); 	
	text = text.replace(/<i.*class=.*?>/ig, ''); 	
	text = text.replace(/<i.*style=.*?>/ig, ''); 	
	text = text.replace(/<i.*on\w+=.*?>/ig, ''); 	
	text = text.replace(/<b.*class=.*?>/ig, ''); 	
	text = text.replace(/<b.*style=.*?>/ig, ''); 	
	text = text.replace(/<b.*on\w+=.*?>/ig, ''); 	
	text = text.replace(/<img.*?>/g, ''); 	
	text = text.replace(/<(?!a.*?|\/a|b|\/b|i|\/i).*?>/ig, ''); 

	text = autoLink(text);

	var pars = text.split(/\r?\n\r?\n/);
	var newtext = ''; 
	for(i = 0; i < pars.length; i++) {
		pars[i] = pars[i].replace(/\r?\n/g, '<br />\n'); 	
		newtext += '<p>\n' + pars[i] + '</p>\n';
	}
	newtext = cleanQuotes(newtext);
	return newtext;
}

function autoLink(text) {
    text = text.replace( /(^|\s+)(http:\/\/\S+)/igm, '$1<a href="$2">$2</a>');
    var amatches = text.match(/>(.*?)<\/a>/g);
    if(amatches) {
        for(i = 0; i < amatches.length; i++) {
            var href = amatches[i];
            if(href.length > 60) {
                var nhref = href.substr(0, 59);
                var index = text.indexOf(href);
                var stext = text.substr(0, index);
                var etext = text.substr(index + href.length, text.length);
                text = stext + nhref + "...</a>" + etext;  
            }
        }
    }
    return text;
}

function cleanQuotes(text) {
    // clean smart chars and such...
    // 8216, 8217, 8220, 8221, 8212, 8211
    var chars = text.split("");
    var newtext = '';
    for(i = 0; i < chars.length; i++) {
        var chr = chars[i].charCodeAt(0);
        switch( chr ) {
            case 8216: newtext += "'"; break;
            case 8217: newtext += "'"; break;
            case 8220: newtext += '"'; break;
            case 8221: newtext += '"'; break;
            case 8211: newtext += "-"; break;
            case 8212: newtext += "-"; break;
            default: newtext += chars[i];
        }
    }
    return newtext;
}

	
	
function validateComment() {
	err = '';
	if(document.getElementById('comment-author').value == "") {
		var err = "Please enter your name.\n";
		}
	
	if(document.getElementById('comment-email').value == "") {
		err += "Please enter your email address.\n";
		}
	
	if(document.getElementById('text').value == "") {
		err += "Please enter a comment.\n";
		}
	
	if(err != '') {
		alert(err);
		return false;
		err = '';
		}
	}	