/*
Designed by VReplay (2009)
http://vreplay.com/
*/
function slide(){
	if(!$('slide')) return;
    var mouseoverHandlers = [];
    var queueHandlers = [];
    var queue = [];
    var interval_id;
    var height = 290;
    var interval_time = 9000;
    function mouseoverHandler(item){
        return function(){
            show(item);
        }
    };
    function pushQueue(item){
        return function(){
            queue[0] = item;
        }
    }
    $('slide').observe('mouseover', function(){
        window.clearInterval(interval_id);
    }).observe('mouseout', function(){
        interval_id = setInterval(banner_loop, interval_time);
    })
    function show(item){
        $$('#slide dt', '#slide dd').invoke('removeClassName', 'on');
        var ondd = item.addClassName('on').next('dd').addClassName('on');
        if (ondd.getStyle('top') == height + 'px') {
        	
        	try
        	{
            new Effect.Move(ondd, {
                y: -height,
                duration: 1,
                beforeStart: function(){
                    $$('#slide dt').each(function(item, index){
                        item.stopObserving('click', mouseoverHandlers[index]);
                        item.observe('click', queueHandlers[index]);
                    });
                },
                afterFinish: function(){
                    $$('#slide dd').each(function(dd){
                        if (!dd.hasClassName('on')) {
                            dd.setStyle({
                                top: height + 'px',
                                left: '0px'
                            })
                        }
                    });
                    $$('#slide dt').each(function(item, index){
                        item.stopObserving('click', queueHandlers[index]);
                        item.observe('click', mouseoverHandlers[index]);
                    });
                    var item = queue.shift();
                    if (item) {
                        show(item);
                    }
                }
            });
        	}
        	catch(e)
        	{
        		//alert(e);
        	}
        }
    };
    function banner_loop(){
        var dts = $$("#slide dt");
        var item = dts.find(function(item){
            return item.hasClassName('on');
        });
        var item_index = dts.indexOf(item);
        item_index++;
        if (item_index > dts.length -1) item_index =0;
        item = dts[item_index];
        show(item);
    }
    interval_id = setInterval(banner_loop, interval_time);
    $$('#slide dt').each(function(item, index){
        mouseoverHandlers[index] = mouseoverHandler(item);
        queueHandlers[index] = pushQueue(item);
        item.observe('click', mouseoverHandlers[index]);
    });
}

//map
function showExplain(){
	if(!$('location-map')) return;
	$$('#location-map dt').each(function(dt,index){
		dt.observe('mouseover',function(){
			$$('#location-map dd').each(function(dd){
				dd.style.display = '';
			});
			$$('#location-map dd')[index].style.display = 'block';
		});		
	});
	$$('#location-map dd').each(function(dd){
		dd.observe('mouseover',function(){
			this.style.display = 'block';
		}).observe('mouseout',function(){
			this.style.display = '';
		});
	});
}

document.observe('dom:loaded', function(){
	slide();
	showExplain();
}) 