

function addCommentListeners() {
    
    var event = YAHOO.util.Event;
    var dom   = YAHOO.util.Dom;    
    var is_logged = false;
        
    var body   = dom.get('id_body');
    var form   = dom.get('comment-form-itself');
    var submit = dom.get('submitButton');
    var reset  = dom.get('resetButton');    
    
    var email, name;
    
    try {
        email  = dom.get('id_email');
        name   = dom.get('id_name');
        name.value;
    } catch (err) {
        is_logged = true;   
    }
    
    var canSubmit = false;
    
    function isMailValid(email) {
        email = email.replace(/^\s*/, "").replace(/\s*$/, "");
        var reEmail = new RegExp(/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/);
        return reEmail.test(email);
    }

    function isEmpty(msg) {

    	if (msg.length === 0)
    		return true;

    	for (var i=0; i < msg.length; i++) {
    		if (msg.substring(i,i+1) != ' ') {
    		  return false;
            }
    	}

    	return true;
    }    
    
    function enableComment() {
        
        if (isEmpty(body.value) || (!is_logged && (!isMailValid(email.value) || isEmpty(name.value)))) {

            dom.removeClass(submit, 'submitEnabled');
            dom.addClass(submit, 'submitDisabled')
            canSubmit = false;
            return;
        }

        dom.removeClass(submit, 'submitDisabled');
        dom.addClass(submit, 'submitEnabled')
        canSubmit = true;

    }
    
    function onSubmit() {
        
        if (!canSubmit) {
            return;
        }

        form.submit();        
    }
    
    function onReset() {
        form.reset();
        enableComment();
    }
    
    event.addListener(submit, 'click', onSubmit);
    event.addListener(reset,  'click', onReset);
    event.addListener(body,   'keyup', enableComment);

    if (!is_logged) {
        event.addListener(email,   'keyup', enableComment);
        event.addListener(name,   'keyup', enableComment);
    }
    
    enableComment();
}


function highlightMessages() {

    var messages = YAHOO.util.Dom.getElementsByClassName('site_messages');
    var i = 0;

    for (i=0; i<messages.length ; i++) {
        var c = new Effect.Highlight(messages[i], { startcolor: '#77F77C', endcolor: '#EFF7F7' });
    }
            
}
