var auto;
var val=0;
var sliders;
var zoomslider;
var running = true	
Event.observe(window, 'load', function () {
 	rules = {
 		'#tag' : function(el) {
 			el.onchange = function() {
 				new Ajax.Request('./lib/getarchiv.php?s=' + getNow() + '&t=' + $F('tag') );
 				if ($F('tag')==0) {
 					running = true
 					sliders.setValue(getNow());
	            } else  {
	            running = false;
 				new Ajax.Request('./lib/getarchiv.php?s=' + getNow() + '&t=' + $F('tag') );
 				}
 			}
 		}
	   };
 	Behaviour.register(rules);
	Behaviour.apply(rules);
	var j = new Date;
	var m = j.getMinutes();
    var s = j.getSeconds();
    var h = j.getHours();
    var params = {'Tilt':{min:0,max: 3600*24,def:3600*h+60*m+s}};
	for (param in params)  {
		var minval = Math.round(params[param].min);
		var maxval = Math.round(params[param].max);
		var def =    params[param].def;
		sliders = new Control.Slider('handle','slider', {
      		range: $R(minval,maxval),
      		sliderValue:def,
    		onSlide: function(value,hdl) {
				Element.show('zoomwrapper');
								Element.hide('tick');
		
				$('left').innerHTML  = getNowAsString(value -3600 - 300);
				$('right').innerHTML = getNowAsString(value -3600 + 300);
			    if (!zoomslider) {
					zoomslider = new Control.Slider('zoomhandle','zoomslider', {
      		       	range: $R(-300,300),
      		       	sliderValue:0,
      		       	onSlide :function() {Element.hide('tick');},
				    onChange: function(value) { 
					   var zeit;
					   running = false;
					   zeit = val + Math.round(value);
		 			   new Ajax.Request('./lib/getarchiv.php?t='+ $F('tag')+ '&s=' + zeit, {
					      onLoading:function() {Element.show('geduld');},
					      onComplete:function() {Element.show('tick');Element.hide('geduld');},
					      
					      parameters:'s=' + val,
					      evalScripts:true, 
					      asynchronous:true}		
			            );
      	            }
                }
    	       );}
    		val=value;
		 	if (value>getNow()) value= getNow();

			zoomslider.setValue(val%600 -300) ;
    			$('tick').innerHTML = getNowAsString(0);
		 },
      	 onChange: function(value) { 
		 		Element.show('zoomwrapper');
		 		if (value>getNow() && $F('tag')==0) {
		 			// auf JETZT klemmen:
		 			sliders.setValue(getNow());
		 			value= getNow();
		 		}
      		    val =  Math.round(value);
				Element.show('tick');
   		 		running = (getNow()-value<300 && $F('tag')==0) ? true : false;
				if (running) {
					Element.hide('zoomwrapper');
				}
   		 		new Ajax.Request('./lib/getarchiv.php?t='+ $F('tag')+ '&s=' + val, {
					onComplete:function() { Element.hide('geduld');
                    	Element.show('tick');
			
                    },
                    onLoading:function() { 
                    	Element.show('geduld');
         				Element.hide('tick');
		
         },
					parameters:'s=' + val,
					evalScripts:true, 
					asynchronous:true}		
			    );
      	     }
            }
         );
	}
	new Ajax.Request('./lib/getarchiv.php?s='+ getNow() +'&t=0');
	auto = new PeriodicalExecuter(function() {
		if (!running) return;
		if ($F('tag')==0) {
			sliders.setValue(getNow());
			new Ajax.Request('./lib/getarchiv.php?s=' + getNow() + '&t=' + $F('tag'),{
				onLoading:function(){Element.setOpacity('geduld',0.2);Element.show('geduld');},
				onSuccess:function(){Element.hide('geduld');}});
		}
	},7);
	Element.setOpacity("tick",0.6);
	Element.setOpacity("tag",0.6);
	Element.setOpacity("left",0.55);
	Element.setOpacity("right",0.55);

});


function getNowAsString(diff) {
   	var d = new Date;
   //	console.log(diff);
   	if (diff !=0) d.setTime(1000*diff);
    var m = d.getMinutes();
    if (m<10) m = '0' + m;
    var s = d.getSeconds();
    if (s<10) s = '0' + s;
    var h = d.getHours();
    if (h<10) h = '0' + h;
 	return h + ':' + m + ':' +s;
}

function getNow() {
   	var d = new Date();
//   	d.setTime();
    			var m = d.getMinutes();
    			var s = d.getSeconds();
    			
    			var h = d.getHours();
    		return 3600*h + 60* m + s;

}




