function $(id)
{
    return document.getElementById(id);
}

function previewCSS(typ)
{
    if (typ == 0)
    {
        opt = $('css_id').options[$('css_id').selectedIndex].value;

        $('pollframe').src =  "/pollview_example.php?template=" + escape(opt); 
    }
}

function checkPoll()
{
    if ($('title').value.length < 10)
    {
        err = err + 'Uw poll titel dient uit minimaal 10 tekens te bestaan\n';
    }
    else if ($('title').value.length > 180)
    {
        err = err + 'Uw poll titel dient uit maximaal 180 tekens te bestaan\n';
    }
    
    if (err.length == 0)
    {
        var cnt = 0;
        var ant = new Array();
        for (x = 1; x < 16; x++)
        {
            if ($('antw' + x).value != '')
            {
                if ($('antw' + x).value.length < 2)
                {
                    err = err + 'Uw antwoord ' + x + ' dient uit minimaal 2 karakters te bestaan\n';
                }
                else if ($('antw' + x).value.length > 120)
                {
                    err = err + 'Uw antwoord ' + x + ' dient uit maximaal 120 karakters te bestaan\n';
                }
                else if ($('antw' + x).value.length > 2 && $('antw' + x).value.length < 120)
                {
                    cnt++;
                    if (ant[$('antw' + x).value])
                    {
                        err = err + 'Antwoord ' + x + ' is het zelfde als antwoord ' + ant[$('antw' + x).value] + ', verander deze\n';
                    }
                    else if (!ant[$('antw' + x).value]) 
                    {
                         ant[$('antw' + x).value] = x;
                    }
                }
            }
        }
            
        if (cnt < 1)
        {
            err = err + 'U dient minimaal 2 antwoorden in te voeren in deze poll\n';
        }
    }
    
    if (err.length > 0)
    {
        return false;
    }
    return true;
}

function checkPollSettings()
{
    var emailRegEx =/^([a-zA-Z0-9])(([a-zA-Z0-9])*([\._-])?([a-zA-Z0-9]))*@(([a-zA-Z0-9\-])+(\.))+([a-zA-Z]{2,4})+$/

    if ($('email').value.search(emailRegEx )==-1) //if match failed
    {
        err = err + 'Uw email adres is incorrect, verander deze\n';
    }
    
    if ($('disclamer').checked == false)
    {
        err = err + 'U dient akkoord te gaan met de gestelde voorwaarden\n';
    }
    
    if (err.length > 0)
    {
        return false;
    }
}

function checkPollAjax()
{
    err = '';
    checkPoll();
    checkPollSettings();
    
    if (err.length > 0)
    {
        alert(err);
        return false;
    }

    if (xmlhttp)
    {
        // connection can be made

        var parameters = "title="  + encodeURI($('title').value) +
                         "&antw1=" + encodeURI($('antw1').value) + 
                         "&antw2=" + encodeURI($('antw2').value) + 
                         "&antw3=" + encodeURI($('antw3').value) + 
                         "&antw4=" + encodeURI($('antw4').value) + 
                         "&antw5=" + encodeURI($('antw5').value) + 
                         "&antw6=" + encodeURI($('antw6').value) + 
                         "&antw7=" + encodeURI($('antw7').value) + 
                         "&antw8=" + encodeURI($('antw8').value) + 
                         "&antw9=" + encodeURI($('antw9').value) + 
                         "&antw10=" + encodeURI($('antw10').value) + 
                         "&antw11=" + encodeURI($('antw11').value) + 
                         "&antw12=" + encodeURI($('antw12').value) + 
                         "&antw13=" + encodeURI($('antw13').value) + 
                         "&antw14=" + encodeURI($('antw14').value) + 
                         "&antw15=" + encodeURI($('antw15').value) + 
                         "&year=" + encodeURI($('year').value) + 
                         "&month=" + encodeURI($('month').value) + 
                         "&day=" + encodeURI($('day').value) + 
                         "&email=" + encodeURI($('email').value) + 
                         "&css_id=" + encodeURI($('css_id').value);

        if ($('disclamer').checked == true)
        {
            parameters = parameters + "&disclamer=yes";
        }

        // extra options
        if ($('captcha').checked == true)
        {
            parameters = parameters + "&set_captcha=yes";
        }

        if ($('sec1').checked == true)
        {
            parameters = parameters + "&set_security=c";
        }
        else if ($('sec2').checked == true)
        {
            parameters = parameters + "&set_security=i";
        }
        else if ($('sec3').checked == true)
        {
            parameters = parameters + "&set_security=b";
        }


        if ($('res1').checked == true)
        {
            parameters = parameters + "&set_results=j";
        }
        else if ($('res2').checked == true)
        {
            parameters = parameters + "&set_results=n";
        }

        parameters = parameters + "&cache=" + Math.floor(Math.random()*11);

        xmlhttp.open('POST', url + 'pollmaker.php', true);
        xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xmlhttp.setRequestHeader("Content-length", parameters.length);
        xmlhttp.setRequestHeader("Connection", "close");
        xmlhttp.send(parameters);

        xmlhttp.onreadystatechange=function() 
        {
            if (xmlhttp.readyState == 4) 
            {
                if (typeof DOMParser == "undefined") 
                {
                    var xmlobject = new ActiveXObject("MSXML.DomDocument");
                    xmlobject.loadXML(xmlhttp.responseText);
                }
                else
                {
                    var xmlobject = (new DOMParser()).parseFromString(xmlhttp.responseText, "text/xml");
                }
                var xpoll   = xmlobject.getElementsByTagName("poll")[0];
                var status  = xpoll.getElementsByTagName('status')[0].firstChild.nodeValue;
                var errcode = xpoll.getElementsByTagName('errcode')[0].firstChild.nodeValue;

                alert(status);

                if (errcode == 1)
                {
                    return false;
                }

                if (errcode == 0)
                {
                    $('title').value = '';
                    for (x = 1; x < 16; x++)
                    {
                        $('antw' + x).value = '';
                    }
                    fieldDisplay(1);
                }                
            }
        }
    }
}


function fieldDisplay(i)
{
    err = '';
    if (i == 2)
    {
        if (!checkPoll())
        {
            alert(err);
            return false;
        }
    }
    
    for (x = 1; x < 4; x++)
    {
        if (x != i)
        {
            document.getElementById('step'+x).style.display = 'none';
//            document.getElementById('f'+x).style.display = 'none';
        }
    }

      document.getElementById('step'+i).style.display = 'block';
//    document.getElementById('f'+i).style.display = 'block';
}