function processForm(el)
{
    var postVars = '?';
    var target;
    var method;

    if(jQuery.wymeditors(0))
    {
        if(document.getElementById('s_content'))
        {
            document.getElementById('s_content').value = jQuery.wymeditors(0).xhtml();
        }
    }

    for(var i=0;i<el.elements.length;i++)
    {
        //encode
        if(el.elements[i].getAttribute('type')!='checkbox' || el.elements[i].checked==true)
        {
            postVars = postVars + el.elements[i].name + '=' + encodeURIComponent(el.elements[i].value) + '&' ;
        }
    }
    if(el.ajaxview)
    {
        postVars = postVars + 'view='+el.ajaxview.value+'&';
        target = document.getElementById(el.ajaxview.value);
    }
    postVars = postVars + 'format=json&';
    method = el.method || 'POST';

    loadXMLDoc(el.action+postVars,target,loadingImg,method);
    return false;
}

function updateView(div,response)
{

    //rather convulted way to replace div with an html snippet (response.output)
    var newdiv = document.createElement('div');
    newdiv.innerHTML = response.output;
    div.parentNode.insertBefore(newdiv.firstChild,div);
    div.parentNode.removeChild(div);

    registerEvents();
    corners();

    var onloads = getElementsByClassName('run_on_snippet_load',null,'script');
    for(var i=0; i<onloads.length; i++)
    {
        eval(onloads[i].text);
    }
}
