﻿var		mban_n			=	'mainbanner';
var		mban_tx_n		=	'mainbannerfgtext';
var		scrollTarget	=	'zcontainer';

var		zizzer;
var		zscroller;
var		slidespinner	=	null;
var		bannerimgloader	=	null;

var		g_imgthumbtype	=	2060;				// THUMB_TYPE_HOME_PAGE_BANNER_THUMBNAIL_IMAGE
var		g_imgtype		=	0;

//var		displayTime		=	8;
var		autoscrollcnt	=	0;

window.addEvent('load', function()	{

	bannerimgloader	=	new		tcImageLoader();
	bannerimgloader.setOnLoadCallback( userOnloadImageCallback );
	bannerimgloader.setImageBuffer( 'bannerimagebuffer' );
	bannerimgloader.setImage('bannermainimage');

	zizzer		=	new	tcZizzer( 'theimages', scrollTarget, 'theimage', onClickSlide);
	zscroller	=	new	tcArrowScroller( 'scrollright', 'scrollleft', zizzer );
	loadArticle(0);
}); 

// Called when a slide is clicked

function	onClickSlide( slide )	{
	loadArticle( slide.getIndex() );
}

function	getCurrentArticleID()	{
	if( mainbannerids.length )	{
		return	mainbannerids[ zizzer.getCurrentActiveSlide() ];
//		return	mainbannerids[0];
	}
	else	{
		return	-1;
	}
}

function	loadArticle( idx )	{

	if( mainbannerids.length )	{
		n	=	mainbannerids[ idx ];
		nr	=	new	tcArticleLoader();
		nr.setOnLoadCallback( userOnloadArticleCallback );
		nr.loadArticle( n, g_imgthumbtype, g_imgtype);

		slidespinner	=	new	tcLoadingSpinner( g_spinner, mban_n );
	}
}


/** 
 * Called when article has loaded
 *
 * @param		tcArticle		Article
 */

function	userOnloadArticleCallback( art )	{
	g_art	=	art;
	bannerimgloader.loadImage( art.d_thumbimageurl );
}


function	userOnloadImageCallback( e )	{

	art	=	g_art;
	if( slidespinner )	{
		slidespinner.destroy();
	}
	slidespinner	=	null;

	var		artlink	= '/articles/show/' + art.d_categoryniceid + '#' + art.niceid;

	var		mt	=	$( mban_tx_n );
	mt.empty();

	if( art.subtitle )	{
		mt.innerHTML = art.subtitle;
	}

	new	Element( 'h3', { 'html' : art.title }).inject( mt );;
	new	Element( 'p', { 'html' : art.previewtext }).inject( mt );
	new	Element( 'a', { 'href' : '/articles/showfull/' + art.niceid, 'text' : 'read more ...'}).inject( mt );

	zizzer.setClickActive( true );
	
	if( zizzer.getHasClicked() == false )	{
		doAutoScroll.delay(1000 * displayTime);
	}

}

function	doAutoScroll()	{

	if( zizzer.getHasClicked() == true )	{	return;	}

	if( ++autoscrollcnt >= zizzer.getNumSlides())	{
		autoscrollcnt = 0;
	}

	var	s = zizzer.getSlide( autoscrollcnt );
	s.clickedOnFrame();

	zscroller.scrollto( autoscrollcnt );
}


