function init_poll() {
    new Ajax.Request('poll/rpc.php',
    {
        method:'post',
        parameters: {method: 'load_image', vkey: parseInt(Math.random() * 999999)},
        onSuccess: function(transport){
           if (transport.responseText != '') {

               document.getElementById('image_ajax').innerHTML = transport.responseText;
               document.getElementById('image_ajax').style.display = 'block';
               check_taken();
           }
        },
        onFailure: function(transport){
           document.getElementById('poll_ajax').innerHTML = 'ERROR: '+transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        }
    });
}
function check_taken() {
    new Ajax.Request('poll/rpc.php',
    {
        method:'post',
        parameters: {method: 'check_taken', vkey: parseInt(Math.random() * 999999)},
        onSuccess: function(transport){
           if (transport.responseText == '0')
                load_poll();
           else
                load_results();
        },
        onFailure: function(transport){
           document.getElementById('poll_ajax').innerHTML = 'ERROR: '+transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        }
    });
}
function load_poll() {
    new Ajax.Request('poll/rpc.php',
    {
        method:'post',
        parameters: {method: 'vote', vkey: parseInt(Math.random() * 999999)},
        onSuccess: function(transport){
           document.getElementById('poll_ajax').innerHTML = transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        },
        onFailure: function(transport){
           document.getElementById('poll_ajax').innerHTML = 'ERROR: '+transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        }
    });
}
function poll_vote( r ) {
    document.getElementById('poll_ajax').innerHTML = "Saving your vote...";
    document.getElementById('poll_ajax').style.display = 'block';
    new Ajax.Request('poll/rpc.php',
    {
        method:'post',
        parameters: {method: 'vote_process', response: r, vkey: parseInt(Math.random() * 999999)},
        onSuccess: function(transport){
           document.getElementById('poll_ajax').style.display = 'none';
           load_results();
        },
        onFailure: function(transport){
           document.getElementById('poll_ajax').innerHTML = 'ERROR: '+transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        }
    });
}

function load_results() {
    new Ajax.Request('poll/rpc.php',
    {
        method:'post',
        parameters: {method: 'results', vkey: parseInt(Math.random() * 999999)},
        onSuccess: function(transport){
           document.getElementById('poll_ajax').innerHTML = transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        },
        onFailure: function(transport){
           document.getElementById('poll_ajax').innerHTML = 'ERROR: '+transport.responseText;
           document.getElementById('poll_ajax').style.display = 'block';
        }
    });
}