
var LoggedIn = false;
var sliderQuality;
var sliderShade;

var PoopShades = new Array("yellowish green",
                           "murky turquoise",
                           "cloudy brownish green",
                           "greenish brown",
                           "tan",
                           "average brown",
                           "crayola brown",
                           "solid brown",
                           "dirt brown",
                           "dark brown",
                           "deep dark lush brown" );
                        
var PoopQualities = new Array("the worst experience ever",
                              "sloppy and gross",
                              "took two rolls of tissue paper",
                              "made me open a window!",
                              "character building",
                              "it could have been worse",
                              "average",
                              "quick and painless",
                              "quite enjoyable",
                              "it was pure bliss",
                              "it was Super Poop!" );

function TwitterAccountVerify(username, password)
{
    var TwitterRequest = new XMLHttpRequest();
    var VerifyURL = "VerifyTwitterAccount.php?username=" + username + "&password=" + password;

    TwitterRequest.open("GET",               // GET 
                        VerifyURL,           // Twitter verify_credentials API
                        false,               // blocking call
                        username, password   // user credentials 
                        );
    
    TwitterRequest.send(null);   
    
    //alert(TwitterRequest.responseText);
    
    RequestResult = TwitterRequest.status;    
    if(RequestResult == 200)    
        return true;
    else
        return false;                   
}

function TwitterTweet(username, password, tweet)
{
    var TwitterRequest = new XMLHttpRequest();
    var UpdateURL = "TwitterUpdate.php?username=" + username + "&password=" + password + "&status=" + tweet
    //alert(UpdateURL);
    TwitterRequest.open("GET",               // GET 
                        UpdateURL,           // Twitter verify_credentials API
                        false,               // blocking call
                        username, password   // user credentials 
                        );
    
    TwitterRequest.send(null);   
    
    //alert(TwitterRequest.responseText);
    
    RequestResult = TwitterRequest.status;    
    if(RequestResult == 200)    
        return true;
    else
        return false;  
}

// Twitter Login OnClick Action
function buttonLogin_onClick(form)
{
    var fAccountVerify;
    var TwitOut = document.getElementById("TwitterOutput");

    if(!LoggedIn)
    {
        fAccountVerify = TwitterAccountVerify(form.twitterUsername.value, form.twitterPassword.value);    
        if(fAccountVerify == true)
        {    
            form.twitterUsername.disabled=true;
            form.twitterPassword.disabled=true;
            form.buttonLogin.value="Log Out";
            LoggedIn = true;   
            
            TwitOut.textContent = "Logged into Twitter";
        }
        else
        {            
            //TwitOut.appendChild(document.createTextNode("Could not login to twitter!"));
            TwitOut.textContent = "Could not login to twitter!";
            alert("Could not log in to Twitter.  Please check login details");
        }
    }
    else
    {
        form.twitterUsername.disabled=false;
        form.twitterPassword.disabled=false;
        form.buttonLogin.value="Login to Twitter";        
        LoggedIn = false;
        
        TwitOut.textContent = "";
    }
}

function buttonTweet_onClick()
{
    if(LoggedIn)
    {
        var poopTweet = "#PoopTweet:" + "I just pooped, it was "; 
        poopTweet = poopTweet + PoopShades[sliderShade.getValue()] + " and " + PoopQualities[sliderQuality.getValue()];
        
        poopTweetURL = escape(poopTweet);
        
        //alert("tweeting: " + poopTweet);
        
        var form = document.getElementById("TwitterLogin");
        var TweetResult = TwitterTweet(form.twitterUsername.value, form.twitterPassword.value, poopTweetURL);
        if(TweetResult == false)
            alert("tweet failed!");
        else
            alert("Tweeted: " + poopTweet);
    }
    else
        alert("You need to log in to Twitter to Tweet Your Poop!");
}

function sliderQuality_onchange()
{
    var PoopImage = document.getElementById("PoopImage");
    var ImgSrc = "image/poop_sym_" + sliderQuality.getValue() + ".png";
    PoopImage.src = ImgSrc;
}

function sliderShade_onchange()
{
    var PoopDiv = document.getElementById("PoopPreview");
    var red = 150 - sliderShade.getValue() * 6;
    var green = 150 - sliderShade.getValue() * 9;
    var blue = 50;
    var decColor = blue + 256 * green + 65536 * red;
    
    PoopDiv.style.backgroundColor = "#" + decColor.toString(16);
}

function updatePoopPreview()
{
    sliderQuality_onchange();
    sliderShade_onchange();
}

function body_onload()
{
    // First preload all the images
     var i = 0;
     imageObj = new Image();
     for(i = 0; i < 11; i++)
        imageObj.src = "image/poop_sym_" + sliderQuality.getValue() + ".png";
        
    // Corrects an issue where reloading is bad
    var form = document.getElementById("TwitterLogin");
    form.twitterUsername.disabled=false;
    form.twitterPassword.disabled=false;
    form.buttonLogin.value="Login to Twitter";        
    LoggedIn = false;        
    
    updatePoopPreview();
}

