function followUser(user) {
    var postData = "id="+user;
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            if (o.responseText == "success")
                loadTwitterContent();
            else if (o.responseText == "failure")
                alert("uh oh");
        }
    }

    var handleFailure = function(o){}
    var callback = {
        success:handleSuccess,
        failure:handleFailure
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', '/ajax/twitter_follow/', callback, postData);
}

function limitText(limitField, limitCount, limitNum) {
    if (limitField.value.length >= limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } else {
        if (limitCount !== null)
            limitCount.value = limitNum - limitField.value.length;
    }
    var chars = limitField.value.length;
    var remaining = limitNum - chars;
    var count = document.getElementById("remaining");
    count.innerHTML = remaining;
}

function loadTwitterContent(page)
{
    var div = document.getElementById('twitter_content');
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            div.innerHTML = o.responseText;
        }
    }
    var handleFailure = function(o){
        if(o.responseText !== undefined){
            div.innerHTML = "<li>Transaction id: " + o.tId + "</li>";
            div.innerHTML += "<li>HTTP status: " + o.status + "</li>";
            div.innerHTML += "<li>Status code message: " + o.statusText + "</li>";
        }
    }

    if (isNaN(page)) page = 1;
    var url = '/ajax/twitter_content/'+page+'/';
    var callback = {
        success:handleSuccess,
        failure:handleFailure
    };
    var request = YAHOO.util.Connect.asyncRequest('GET', url, callback);
}

function runCron()
{
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            return true;
        }
    }
    var handleFailure = function(o){
        if(o.responseText !== undefined){
            return false;
        }
    }

    var url = '/cron/twitter/';
    var callback = {
        success:handleSuccess,
        failure:handleFailure
    };
    var request = YAHOO.util.Connect.asyncRequest('GET', url, callback);
}

function postTweet()
{
    var tweet = document.getElementById('tweet').value;
    var update = document.getElementById("tweet_update");

    update.innerHTML = "Sending tweet...";

    if (tweet.indexOf("#calstampeders") == -1)
        var postData = "status="+tweet+" #calstampeders";
    else
        var postData = "status="+tweet;

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            if (o.responseText == "success")
            {
                runCron();
                window.location.reload();
            }
            else if (o.responseText == "failure")
                alert("fail");
        }
    }

    var handleFailure = function(o){}
    var callback = {
        success:handleSuccess,
        failure:handleFailure
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', '/ajax/twitter_post/', callback, postData);
}

function changePage(page)
{
    document.getElementById('twitter_content').innerHTML = '<div class="loading"></div>';
    loadTwitterContent(page);
}
