// miniregister form validation
// settings
var rejectField = 'save';
var requireField = 'register';
var errorColor = '#C00';
var userField = 'email1';

function validateRegistration(e)
{
    var elm = e.element();
    if (elm.nodeName != 'FORM')
        elm = elm.up('form');
    // shortcut to removing reject field, and adding required field
    var submit = elm.save;
    if (submit)
        submit.name = requireField;

    // check mandatory elements
    var stop = false;
    var inputs = $$('.mandatory');
    inputs.each(function(i)
    {
        if (i.value.length == 0) {
            i.setStyle({color: errorColor, borderColor: errorColor});
            e.stop();
            stop = true;
        }
        else
            i.setStyle({color: '', borderColor: ''});
    });

    if (!stop) {
        // add a user field
        var user = document.createElement('input');
        user.type = 'hidden';
        user.name = 'user';
        user.value = elm.email1.value;
        elm.insert(user);
    }
}

// initialise page
function init()
{
    var registerForm = $('miniregister');
    if (registerForm) {
        Event.observe(registerForm, 'submit', validateRegistration);
    }
}

Event.observe(window, 'load', init);
