dojo.require("dojo.parser");
dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.layout.StackContainer");
dojo.require("dijit.form.Button");
dojo.require("dojo.NodeList-fx");

var numslides = 0;
var cp = new Array();
var sc;
var stop=0;

function GetCycle() {

sc = new dijit.layout.StackContainer({
            id: "banner_container"
        },"scontainer");

 var oRequest;
  if (window.XMLHttpRequest) {
    // Code for all new browsers
    oRequest = new XMLHttpRequest();
  } else if ( window.ActiveXObject ) {
    // Code for IE 5 and 6
    oRequest = new ActiveXObject( "Microsoft.XMLHTTP" );
  }

var sURL  = "/cycle.txt";

oRequest.open("GET",sURL,false);
oRequest.setRequestHeader("User-Agent",navigator.userAgent);
oRequest.send(null);

if (oRequest.status==200) {
        var myresults = (oRequest.responseText);
        var mysplits = myresults.split(/^\n/mg);
        numslides = mysplits.length;
        var mehash = new Array();

        var navboxpad = 0;
                for(i = 0; i < mysplits.length; i++){
                        var slide = 'slide' + i;
                        mehash[slide] = mysplits[i];
                }
                for (var i in  mehash) {
                        var counter = i.split("slide");
                        navboxpad = navboxpad+30;
                        MakeSlide(i,mehash[i],counter[1],navboxpad);
                }
 } else {
        alert("Error executing XMLHttpRequest call!");
 }
}

function goHere(destination) { window.location=destination;}

function MakeSlide(slideid,cslide,counter,navboxpad) {
                        var tempsplits = cslide.split(/\n/mg);

        cp[counter] = new dijit.layout.ContentPane({

            title: ""+counter, 
            id: "page"+counter,
            style: "background-image: url(/banner/"+tempsplits[0]+"); position: absolute;"
        });
        sc.addChild(cp[counter]);

                        dojo.byId("page"+counter).innerHTML+="\n<div onClick=goHere('"+tempsplits[4]+"') style=background-color:" + tempsplits[1] + " class=slider_background ></div>\n";
                        dojo.byId("page"+counter).innerHTML+="\n<div onClick=goHere('"+tempsplits[4]+"') class=slider_text><span id=sc1>"+tempsplits[2]+"</span><span id=sc2>"+tempsplits[3]+"</span><a id=sclink href="+tempsplits[4]+">"+tempsplits[5]+"</a></div>\n";

 }

        var controller = new dijit.layout.StackController({
            containerId: "banner_container"
        },
        "scontroller");

function init(){
        sc.startup();
        controller.startup();
}

function go(){
	setTimeout('upPeriscope()',200);	
   if (!stop){
	setTimeout('downPeriscope()',8000);
	setTimeout('goodbye()',8500);
	setTimeout('dolphin()',9300);
	setTimeout('hello()',9500);
   }
}

function cycle(){
   if (!stop){
        go();
        setTimeout('cycle()',10200);
   }
}

function hello(){
	dojo.fadeIn({ node: "container", duration: 900}).play();
}

function dolphin(){		//Let's call her Flipper
	if(!stop)
	sc.forward();
}

function goodbye(){
	if(!stop)
	dojo.fadeOut({ node: "container", duration: 1000}).play();
}

function upPeriscope(){
	var sText = dojo.byId("sText");
        var sBox = dojo.byId("sBox");
        dojo.query(".slider_text").animateProperty({ duration: 500, properties: { top: { start: '216', end: '100'}}}).play();
        dojo.query(".slider_background").animateProperty({ duration: 500, properties: { top: { start: '238', end: '122'}}}).play();	
}

function downPeriscope(){
	if(!stop){
        var sText = dojo.byId("sText");
        var sBox = dojo.byId("sBox");
        dojo.query(".slider_text").animateProperty({ duration: 700, properties: { top: { start: '100', end: '216'}}}).play();
        dojo.query(".slider_background").animateProperty({ duration: 700, properties: { top: { start: '122', end: '238'}}}).play();
	}
}

function stop_cycle(){
        stop=1;
}

function keepGoing(){
	stop=0;
	go();
}

dojo.addOnLoad(GetCycle);
dojo.addOnLoad(init);
dojo.addOnLoad(cycle);


