﻿var firstid = -1;
var tweets;
var intervalid;
var totalinterval = 0;
var intervalcount = 0;
var searchPage = 1;
var counter = 0;
var xmlhttp;
var searchKeyword;
var nom;
var refreshmilisec;
var ignoreSearchCase;
var tweetCount = 1;
var top;
var timer;
var scrolltopconst = 87;
var scrolltop;
//var newdiv;

function ajaxSearchFunction(searchormore, keyword, numberofmessage, refreshtime, ignoreCase) {
  
    if (window.XMLHttpRequest) {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    }
    else {
        // code for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }

    searchKeyword = keyword;
    nom = numberofmessage;
    refreshmilisec = refreshtime;
    ignoreSearchCase = ignoreCase;
    if (searchormore == "search") {
        searchPage = 1;         
        xmlhttp.onreadystatechange = Search_StateChanged;
    }

    xmlhttp.open("GET", "/TweetSearcher.aspx?keyword=" + searchKeyword + "&page=" + searchPage + "&nom=" + nom + "&counter=" + counter + "&untilid=" + firstid + "&ignorecase=" + ignoreCase, true);
    //debugger;    
 //   searchPage++;
    counter++;
    xmlhttp.send(null);
    return false;
}

function Search_StateChanged() {
    if (xmlhttp.readyState == 4) {
        var response = xmlhttp.responseText;
        var indexofid = response.indexOf("id='");
        if (indexofid > 0) {
            indexofid = indexofid + 4;
            var tweetId = response.substring(indexofid, response.indexOf("'", indexofid + 1));
            if (tweetId.split("~")[0] == "-1") {
                firstid = tweetId.split("~")[1];
            }
            else {
                firstid = tweetId.split("~")[0];
            }
            tweets = response.split("#?@?#");
            totalinterval = tweets.length;
            intervalcount = totalinterval - 1;
            var time = refreshmilisec / totalinterval;
            timer = time;
            DisplayTweet();          
        }
        else {
            setTimeout("ajaxSearchFunction('search','" + searchKeyword + "','" + nom + "','" + refreshmilisec + "','" + ignoreSearchCase + "')", 10000); 
         //   ajaxSearchFunction('search', searchKeyword, nom, refreshmilisec, ignoreSearchCase);
         }
    
        
        return false;
    }
}


function DisplayTweet() {
    if (intervalcount < 0) {      
        ajaxSearchFunction('search', searchKeyword, nom, refreshmilisec, ignoreSearchCase);
    }
    else 
    {      
        var parentDIV = document.getElementById("result");
        var newdiv = document.createElement('div');
        var divIdName = 'tweet-'+tweetCount;
        newdiv.setAttribute('id', divIdName);
        newdiv.setAttribute('class', 'newdiv');
        newdiv.innerHTML = tweets[intervalcount];
        
        var firstClild = parentDIV.firstChild;        
        parentDIV.appendChild(newdiv);

        if (parentDIV.childNodes.length > 20) {
            parentDIV.removeChild(parentDIV.firstChild);
            document.getElementById("scroller").scrollTop = document.getElementById("scroller").scrollTop - scrolltopconst;
        }

     
        scrolltop = scrolltopconst;

        var scrolltimer = timer / scrolltopconst;       
        intervalid = setInterval("move()", scrolltimer);
        

        tweetCount++;       
        intervalcount--;
    }
}

function move() {
     if (scrolltop <= 0) {
        clearInterval(intervalid);
        DisplayTweet();
    }
    else {
        document.getElementById("scroller").scrollTop++;    
        scrolltop--;
    }
}


//setTimeout("ajaxSearchFunction('search','" + searchKeyword + "','" + nom + "','" + refreshmilisec + "')", 
