
var tweet_html='';
var tweetOpacity=10;
var tweetZielHoehe=0;
var tweetZielHoeheDelta=0;
var taskTweetWechseln=null;
var taskTweetBlenden=null;
var tweetNaechsteID='';
var tweetBerichtID='';
var tweetNeusteZuerst=0;

function naechstenTweetAbfragen(){
    ajaxRequest('tweet_aus_tabelle',neuenTweetVormerken,tweetBerichtID+'|'+tweetNaechsteID+'|'+tweetNeusteZuerst);
}

function neuenTweetVormerken(s){
	var a=s.split('|',4);
	if(a[0]!='Fehler'){
    	if(a[2]){
        	// falls nötig das Bild vorlanden
	        pic = new Image();
	        pic.onload=function() {
	            tweet_html = a[1];
                tweetNaechsteID = a[3];
	        };
	        pic.src = a[2];
        }
        else{
        	// Vorladen nicht notwendig
            tweet_html = a[1];
            tweetNaechsteID = a[3];
        }
    }
}

function naechstenTweetAnzeigen(){
    if(taskTweetWechseln){
        clearTimeout(taskTweetWechseln);
        taskTweetWechseln=null;
    }
	if(tweet_html){
	    if(taskTweetBlenden){
	        clearInterval(taskTweetBlenden);
	        taskTweetBlenden=null;
	    }
	    // Crossfade vorbereiten
	    var obj=document.getElementById("tweetContent");
	    var obj2=document.getElementById("tweetContent2");
	    setOpacity(obj2,0);
	    obj2.style.height='';
	    obj2.innerHTML=tweet_html;
	    tweetZielHoehe=obj2.offsetHeight;
	    tweetZielHoeheDelta=tweetZielHoehe-obj.offsetHeight;
	    obj2.style.height=obj.offsetHeight+'px';

	    taskTweetBlenden=window.setInterval("neuerTweetBlende()", 65);
    }
    else{
    	// Falls das Bild des Tweet noch nicht vorgeladen war, versuche es in einer viertel Sekunde noch mal
		taskTweetWechseln=setTimeout("naechstenTweetAnzeigen()", 250);
    }
}

function neuerTweetBlende(){
	var obj=document.getElementById("tweetContent");
	var obj2=document.getElementById("tweetContent2");
    if(tweetOpacity<1){
    	clearInterval(taskTweetBlenden);
        taskTweetBlenden=null;
        obj.innerHTML=tweet_html;
        obj.style.height=tweetZielHoehe+'px';
	    setOpacity(obj,10);
	    setOpacity(obj2,0);
        tweet_html='';
        tweetOpacity=10;
        naechstenTweetAbfragen();
		if(tweetNeusteZuerst==0) taskTweetWechseln=setTimeout("naechstenTweetAnzeigen()", 8000);
	}
    else{
	    tweetOpacity--;
	    setOpacity(obj,tweetOpacity);
	    setOpacity(obj2,10-tweetOpacity);
        var neueHoehe=(obj.offsetHeight+tweetZielHoeheDelta/10);
        if(tweetZielHoeheDelta<0 && neueHoehe<tweetZielHoehe) neueHoehe=tweetZielHoehe;
        if(tweetZielHoeheDelta>0 && neueHoehe>tweetZielHoehe) neueHoehe=tweetZielHoehe;
        obj.style.height=neueHoehe+'px';
        obj2.style.height=neueHoehe+'px';
    }
}
