
/* - ++resource++activaweb.extcore/slideshow.js - */
// http://www.activa.sk/portal_javascripts/++resource++activaweb.extcore/slideshow.js?original=1
var slideshow_banner=null;var stop_slideshow=false;var server_banners=null;
function selectBanner(banners){var family=new Array();Ext.each(banners, function(banner){var tmp=new Array();for(i=0;i<=banner.priority;i++){tmp[i]=banner.uid}
family=family.concat(tmp)});return family[Math.floor(Math.random()*family.length)]}
function renderSlideshow(){var selected_banner={href:'',target:'',src:'',alt:''};var thumbs=new Array();counter=0;Ext.each(server_banners, function(banner){if(banner.uid==slideshow_banner){selected_banner.href=banner.target_url;selected_banner.target=banner.target_win;selected_banner.src=banner.url+'/image';selected_banner.alt=banner.title;selected_banner.title=banner.title;thumbs[counter]={src:banner.url+'/image_thumb',alt:banner.title,title:banner.title,id:banner.uid}}else{thumbs[counter]={src:banner.url+'/grayscale_thumb',alt:banner.title,title:banner.title,id:banner.uid}}
counter+=1});var selected_banner_template=new Ext.Template('<a href="{href}" target="{target}" title="{title}">','<img src="{src}" alt="{alt}" width="713" heitht="240" class="frontBannerImage"/>','</a>','<div id="front-slideshow-items">','</div>');selected_banner_template.overwrite('front-slideshow',{href:selected_banner.href,target:selected_banner.target,src:selected_banner.src,alt:selected_banner.alt,title:selected_banner.title});var thumbnail_item_template=new Ext.Template('<span class="frontBannerThumbnail">','<img id="{id}" src="{src}" alt="{alt}" title="{title}"/>','</span>');Ext.each(thumbs, function(thumb){thumbnail_item_template.append('front-slideshow-items',{id:thumb.id,src:thumb.src,alt:thumb.alt,title:thumb.title})});var thumb_els=Ext.select('.frontBannerThumbnail img');Ext.each(thumb_els, function(el){el.on('mouseover', function(e,t){if(t.id!=slideshow_banner){var src_parts=t.src.split('/');src_parts[src_parts.length-1]='image_thumb';t.src=src_parts.join("/")}});el.on('mouseout', function(e,t){if(t.id!=slideshow_banner){var src_parts=t.src.split('/');src_parts[src_parts.length-1]='grayscale_thumb';t.src=src_parts.join("/")}});el.on('click', function(e,t){stop_slideshow=true;slideshow_banner=t.id;renderSlideshow()})})}
function initSlideshow(){Ext.Ajax.request({url:'slideshow-view',success: function(response,opts){server_banners=Ext.decode(response.responseText)["banners"];Ext.TaskMgr.start({run: function(){if(!stop_slideshow){if(!slideshow_banner){slideshow_banner=selectBanner(server_banners)}else{counter=0;Ext.each(server_banners, function(banner){if(banner.uid==slideshow_banner){increased=counter+1;if(server_banners[increased]!=undefined){slideshow_banner=server_banners[increased].uid;return false}else{slideshow_banner=server_banners[0].uid;return false}}
counter+=1})}
renderSlideshow()}},interval:10000})},failure: function(response,opts){alert('server-side failure with status code '+response.status)}})}
Ext.onReady(function(){initSlideshow()});
