
	function jsrLoadHandler_home (oThis)
	{
		if (! oThis.results) {
		    // on fail try next ? 
		    //window.setTimeout(cicleBuzzbites, cicleSpeed);
			return;
		}
		
		if (window.cicleResumeTime) {
			var cookies = BDP.getCookies();
			cicle = cookies.homeCycleIdx? cookies.homeCycleIdx - 1 : (homeBuzzbites.BB_ids.length/2-1);
			BDP.setCookie("homeCycleIdx", cicle);
			cicleResumeTime = 0;
			return;
		}
		
		
		// buzzbites
		var res = oThis.results.getBuzzbitesHtml;
		var BB_ids = oThis.params.BB_ids;
		
		
		// show new
		var fShow = function ()
		{
			// 
			
			var sel = (cicle+1)%5 || 5;

			// title
	        elOverviewed.className = ("ccc-" + sel);
	        elC_title.innerHTML = C_titles[sel-1];			
		
			// insert new and show
			c1.innerHTML = res[BB_ids[0]];
			c2.innerHTML = res[BB_ids[1]];

	        toAlpha (c1, 100, null, {tune: 5, speed: 40});
	        toAlpha (c2, 100, null, {tune: 5, speed: 40});
	        toAlpha (elC_title, 100, null, {tune: 5, speed: 40});
			
			fBb1 = new BuzzBite(BB_ids[0], {sync: false});
			fBb2 = new BuzzBite(BB_ids[1], {sync: false});
	
			// countinue cicle
			cicleTimeoutId = window.setTimeout(cicleBuzzbites, cicleSpeed);
			cicleTime = (new Date).getTime();
		}
		
		// disable, hide old buzzbites & then show next ones
		fBb1.disabled = true;
		fBb2.disabled = true;
        toAlpha (c1, 0, null, {tune: 5, speed: 20});
        toAlpha (c2, 0, null, {tune: 5, speed: 20});
        toAlpha (elC_title, 0, function(){window.setTimeout(fShow, 100)}, {tune: 5, speed: 20});
        
	}
	
	function cicleBuzzbites ()
	{
		var file = 'buzzbite';
		var actions = 'getBuzzbitesHtml';
		

        var cookies = BDP.cookies = BDP.getCookies();
        if (cookies.homeCycleIdx) {
            cicle = cookies.homeCycleIdx;
        }

		if (cicle*2+2 < homeBuzzbites.BB_ids.length-1) {
			cicle++;
		} else {
			cicle = 0;
		}

        // session
        BDP.setCookie("homeCycleIdx", cicle);

		// N/A
		if (homeBuzzbites.BB_ids[cicle*2] == false) {
		    cicleBuzzbites();
		    return;
		}
		
		var params = {
		   'BB_ids': [
		   		homeBuzzbites.BB_ids[cicle*2],
				homeBuzzbites.BB_ids[(cicle*2)+1]
			],
			'ccc': ((cicle+1)%5 || 5),
			'noinit': true
		};
		oJsr_home.call(file, actions, params);
	}
	
	// init
	function initHome()
	{
	    // init vars JSR and dom
        // Jsr
        oJsr_home = new Jsr();
        oJsr_home.onload = jsrLoadHandler_home;
 
    	elOverviewed = oel("overviewed");	
    	elC_title = oel("bbh-c-title");
    	c1 = oel("bbh-c1");
    	c2 = oel("bbh-c2");
	
        // title
        var sel = (cicle+1)%5 || 5;
        elOverviewed.className = ("ccc-" + sel);
        elC_title.innerHTML = C_titles[sel-1];
    
        // BBs
        fBb1 = new BuzzBite(initialBuzzbites[0]);
        fBb2 = new BuzzBite(initialBuzzbites[1]);
        
        // start cicle
        cicleTimeoutId = window.setTimeout(cicleBuzzbites, cicleSpeed);
        cicleTime = (new Date).getTime();
	}
	
	// share popup pause
	BuzzBite.SharePopup.onshow = function ()
	{
	    for (var i=0; i<homeBuzzbites.BB_ids.length; i++) {
	       if (BuzzBite.SharePopup.BB_id == homeBuzzbites.BB_ids[i]) {
	           clearTimeout(cicleTimeoutId);
	           cicleTimeoutId = false;
	           cicleResumeTime = cicleTime + cicleSpeed - (new Date).getTime();
	       }
	    }
	}
	BuzzBite.SharePopup.onclose = function ()
	{
	    if (window.cicleTimeoutId === false) {
	       cicleTimeoutId = window.setTimeout(cicleBuzzbites, cicleResumeTime);
	       cicleResumeTime = false;
	    }
	}
	
	////// common
	function oel (id) { return document.getElementById(id); }