var addthis_pub = "";
window.addEvent("domready", function(){
	
	new SmoothScroll({"links": $$(".scroll")});
	
	initializeOnLoadSmoothScroll();

	$$(".volatile").each(function(el){
		$(el).addEvent("focus", function(){
			if(this.getValue() == this.getProperty("title")) {
				this.value = "";
			}
		});
	});

	$$("a[rel*='external']").each(function(a){ 
		$(a).setProperty("target", "_blank");
	});
		
	var dayornight = $('countryside').className;
	
	$$(".socialize").addEvent("click", function(e){
		new Event(e).stop();
		addthis_url = location.href;
		addthis_title = document.title;
		addthis_click(this);
	});
	
	if($('lightswitch')){
		$('lightswitch').addEvent('click', function(e){
			 new Event(e).stop();
			 
			 if(dayornight=='night'){
				$('countryside').removeClass(dayornight);
				$('countryside').addClass('day');
				dayornight = 'day';
			 }else if(dayornight=='day'){
				$('countryside').removeClass(dayornight);
				$('countryside').addClass('night');
				dayornight = 'night';
			 }
			 updateDayNightSession(dayornight)
			 //var cookie = Cookie.set('countryside', dayornight, {duration: 100, path: '/'});
		});
	}
	
    slideFect = new Array($$(".imageGallery").length);
    isSlideOn = new Array($$(".imageGallery").length);
    
    var cnt = 0;
    $$(".imageGallery").each(function(el){
        setImageGalleries(cnt);
        el.setAttribute("rel", cnt);
        cnt++;
    });
    
    
// Convert to a simple re-useable function    
  
   if($('UsePoll')){        
       var opened = true;
       
       if(!$('UsePoll').checked){
           $('AddPoll').setStyle('display', 'none');
           opened = false;
       }
       
        $('UsePoll').addEvent('click', function(e){
            if(opened){
                $('AddPoll').setStyle('display', 'none');
            }else{
                $('AddPoll').setStyle('display', 'block');
            }
            opened=!opened;
        });
    }
    

	if($("homeCountdown")){
		var flash = new FlashObject("/_images/flash/countdown-timer-home.swf", "homeCountdown", "225", "90", "9", "#ffffff");
		flash.addParam("menu","false");
		flash.addParam("quality","high");
		flash.write("homeCountdown");
	}

	if($("countdown")){
		var flash = new FlashObject("/_images/flash/countdown-timer-internal.swf", "countdown", "265", "90", "9", "#ffffff");
		flash.addParam("menu","false");
		flash.addParam("quality","high");
		flash.write("countdown");
	}

	if($("signLeft")){
		var flash = new FlashObject("/_images/flash/signpost-left.swf", "signLeft", "181", "211", "9", "#ffffff");
		flash.addParam("menu","false");
		flash.addParam("quality","high");
		flash.addParam("WMODE","transparent");
		flash.write("signLeft");
	}

	if($("signRight")){
		var flash = new FlashObject("/_images/flash/signpost-right.swf", "signRight", "161", "200", "9", "#ffffff");
		flash.addParam("menu","false");
		flash.addParam("quality","high");
		flash.addParam("WMODE","transparent");
		flash.write("signRight");
	}
	
	if($("latestScreens")){
		var flash = new FlashObject("/_images/flash/gallery.swf", "latestScreens", "324", "214", "9", "#ffffff");
		flash.addParam("menu","false");
		flash.addParam("quality","high");
		flash.write("latestScreens");
	}


	var togglers = $$(".spoilerLink a");
	var elements = $$(".spoiler");
	
	togglers.addEvent("click", function(e){ 
		new Event(e).stop();
	});
	
	new Accordion(togglers, elements,{ "alwaysHide":true, "show":-1 });

    //Google Analytics login tracking
	    
	$$('input[name=login]').each(function(el){
        el.addEvent('click', function(e){
            pageTracker._trackEvent('login', 'login')
        });
    });
    
	registerPollVoteAJAX()

});



//Image Gallery variables

var pathThumbContainer = ".galleryCarousel";
var pathBigIMG = '.productImages .mainimage img';
var pathSelectedElem = ".galleryCarousel li";
var captionID = '._caption';
var slideFect;
var isSlideOn;


function changeImage(el, gallNum){
    var bigImg, bigTitle, bigDesc;
    bigImg = el.getAttribute('rel');
    bigTitle = el.getChildren('img')[0].getAttribute('alt');
    bigDesc = el.getChildren('img')[0].getAttribute('title');
     
    $$(pathBigIMG)[gallNum].src=bigImg;

    $$(captionID)[gallNum].innerHTML = "<h3>"+bigTitle+"</h3><p>"+bigDesc+"</p>";
    
    $$(pathSelectedElem).each(function(liel){
        liel.removeClass('selected');
    });
    
    el.getParent().addClass('selected');

}

function setImageGalleries(gallNum){

    $$(pathThumbContainer)[gallNum].getElements('li a').each(function(el){
        el.addEvent('click', function(e){
            new Event(e).stop();
            var thisNum = gallNum;
            changeImage(el, thisNum);
            
            if(isSlideOn[thisNum]){
                slideFect[thisNum].stop();
                slideFect[thisNum].start(0,1);
                isSlideOn[thisNum] = false;
                $$('.startSlides')[thisNum].innerHTML="Start Slideshow";
            }
        });
    });
    
    var target = $$(captionID)[gallNum];

    slideFect[gallNum] = new Fx.Style($$('.mainimage img')[gallNum], 'opacity');
    var cap = true;
    
    if($$('.hideCaptions')[gallNum]){
        $$('.hideCaptions')[gallNum].addEvent('click', function(e){
            var transFect = target.effect('top', {transition: Fx.Transitions.Elastic.easeOut, duration: 1000, wait: true});
            new Event(e).stop();
            if(cap){
                transFect.start('200px','268px');
            }else{
                transFect.start('368px', '200px').chain(function(){ 
                    target.removeAttribute('style'); 
                });
            }
            cap=!cap;
        });
    }
    
    isSlideOn[gallNum] = false;
    
    if($$('.startSlides')[gallNum]){
        $$('.startSlides')[gallNum].addEvent('click', function(ev){
            var thisNum = gallNum;
            new Event(ev).stop();
            
            if(isSlideOn[thisNum]){
                $$('.startSlides')[thisNum].innerHTML="Start Slideshow";
                slideFect[thisNum].stop();
                slideFect[thisNum].start(0,1);
            }else{
                $$('.startSlides')[thisNum].innerHTML="Stop Slideshow";
                doSlide( $$(pathThumbContainer)[thisNum].getElements('li a'), 0, thisNum);
            }
            isSlideOn[thisNum]=!isSlideOn[thisNum];
        });
    }
    
     var myCarousel = new Carousel($$(".galleryCarousel")[gallNum], { 
	    autoStyle:true,
	    idPrevious:$$(".previousImage")[gallNum],
	    idNext:$$(".nextImage")[gallNum],
	    visibleItems: 5, //amount that fits in the container
	    scrollAmount: 95, //how wide each item is
	    scrollInterval: 500, //how quick it should scroll in ms
	    fxTransition: Fx.Transitions.quadOut //http://docs.mootools.net/Effects/Fx-Transitions.js <- pick one
    });
}


function doSlide(arr, x, gallNum)
{   
    var arrLen = arr.length;
    slide(arr[x],gallNum, function(){ 
        x++;
        if(x<arrLen&&isSlideOn[gallNum]){
            (function(){ doSlide(arr, x, gallNum); }).delay(3000);
        }
    });
}


function slide(el, gallNum, cb){
    //alert(gallNum);
   slideFect[gallNum].start(1,0).chain(function(){
        changeImage(el, gallNum);
        slideFect[gallNum].start(0,1).chain(function(){
            if(cb)return cb();
        });
   });
}

function registerPollVoteAJAX() {
	if($("poll")){
		$$(".castVote").each(function(el){
			el.addEvent("click", function(e){
				new Event(e).stop();
				new Ajax(el.getAttribute('href') + "&RequestType=ajax",{
					"method": 'get',
					"onComplete": function(response){
						$("poll").setHTML(response);
					},
					"onError": function(response){
						$("regform").setHTML(response);
					}
				 }).request();
			});
		});
	}
}

function updateDayNightSession(sday) {
	
	new Ajax("/_includes/setdaynightsession.asp?RequestType=ajax&state=" + sday + '&timestamp=' + $time(),{
		"method": 'get'
	 }).request();
}

function initializeOnLoadSmoothScroll() {

	var el = window.location.hash.substring(1); // the hash
	
	if($(el)){
		window.scrollTo(0,0);
		var scroll = new Fx.Scroll(window, { wait: false, duration: 1200, transition: Fx.Transitions.Quad.easeInOut });
		scroll.toElement(el);
	}
}

