var mmap;
var playlist = [];
var markers = [];
var gmarkers = [];
var gpoly = [];
var home;
var gbounds;
var m;
var toolstip;
var songtitle;
var zoomed = false;
var moved  = false;
function machepassend() {
	 if (typeof(mmap) == 'object') {
	 	 var level = mmap.getBoundsZoomLevel(gbounds);
      	 mmap.setZoom(level);
     	 mmap.setCenter(gbounds.getCenter());
	 	 mmap.checkResize(); 
	} 
	 var de = document.documentElement;
       var w= window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
  		w = w -191;     
       var wstr = w + 'px';
	   $('map').setStyle ({width: wstr});
	   
	   
}

function accordion(elem) {
	$$('.slider').each(function(e){e.style.display='none';});
	
	Effect.SlideDown(elem.nextSibling);
}


Event.observe(window,'resize', machepassend);
function ginit() {
	   machepassend();
	   mmap = new GMap2($("map"));
	   mmap.setCenter(new GLatLng(30.4,0),3);
	   mmap.enableContinuousZoom();
	   mmap.enableDoubleClickZoom();
	   var bottomleft = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(5,5));
       mmap.addControl(new GSmallZoomControl(),bottomleft);
	   mmap.setMapType(G_HYBRID_MAP);
	   home =  new GLatLng(53.582294,10.017766);
 	   getListeners();
       getListenerstotal();
    
    getPlaylist();
       getOndemand();
	   new PeriodicalExecuter(getListeners,17);
	   new PeriodicalExecuter(getListenerstotal,19);
	   
	   startPlayer('false');
  	   new PeriodicalExecuter(getPlaylist,17);
  	   Element.setOpacity('side','0.99');
 	   new PeriodicalExecuter(function() { startPlayer('true');},3600);
 	   GEvent.addListener(mmap,'moveend',function(){moved=true});
 var so = new SWFObject('./js/player.swf','mpl','190','280','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('playlistfile','/videos/liste.xspf');
  so.addVariable('playlistsize','150');
  so.addVariable('controlbar','none');
  so.addVariable('playlist','bottom');
   so.addVariable('backcolor','000000');
  so.addVariable('frontcolor','EEEEEE');
  so.addVariable('icons','false');
  so.write('videos');	   
}


function getListeners() {
 	if (!zoomed) new Ajax.Request("./cron.php?getlisteners=1");
	else zoomed = zoomed -1;
}

function getListenerstotal() {
 new Ajax.Updater('total',"./cron.php?getlistenerstotal=1");
}

function getPlaylist() {
 	new Ajax.Updater('playlist',"./cron.php?getplaylist=1",{evalJS:true});
}

function getOndemand() {
 	new Ajax.Updater('ondemand',"./cron.php?ondemand=1",{evalJS:true});
}


function start() {
	toggleform();
}


function log(o) {
	Try.these(console.log(o));
}


function getSongtitle() {
	$('title').innerHTML =  songtitle;
//	log(playlist['0']);
}
function startPlayer(autostart) {
	$('player').innerHTML='';
   	var params={};
   	params.wmode='transparent';
   	params.allowfullscreen="false";
   	params.autostart=autostart;
   	params.allowscriptaccess="always";

   	var flashvars={};
   	flashvars.usefullscreen="false";
   	flashvars.skin="./skins/modieus.swf";
   	flashvars.autostart=autostart;
   	flashvars.wmode='transparent';

   	var rnd="&12393680469";
   	var port="8200";
   	var fn=";stream.mp3";
   	var host="miba-piano.de";
   	flashvars.file="http://"+host+":"+port+"/"+fn+rnd;

    var attributes={};
    attributes.id="player";
    attributes.name="player";
    swfobject.embedSWF("player.swf","player","175",'40',"9.0.0","expressInstall.swf", flashvars, params, attributes);
}    



importMarkers = function() {
	mmap.clearOverlays();
	gbounds = new GLatLngBounds();
	 gbounds.extend(home);
     	
    var polyOptions = {geodesic:true};
	$('listeners').innerHTML = '<div style="display:none;color:darkblue" class="list">Land Stadt<br/>hört seit&nbsp;&nbsp;&nbsp;&nbsp;Ortszeit</div>';          
	if (markers.length==0) $('side').innerHTML = '<div style="color:darkblue" class="list">Zwangspause durch IP-Wechsel, gleich geht es weiter&nbsp;&hellip;</div>';          
	
	for (var i=0; i<markers.length; i++) {
    	m = markers[i];
        var point = new GLatLng(markers[i].lat, markers[i].lng);
      	gpoly[i] = new GPolyline([home,point],'gray',2, polyOptions);
        gmarkers[i] = new GMarker(point,{icon:new GIcon(baseIcon,'/pins/' + m.pin + '.png'),name:'xx'});
        gbounds.extend(point);
        GEvent.addListener(gmarkers[i],"click",function() {
        	gmarkers[i].openInfoWindowHtml(m.html);
        });
     	$('listeners').innerHTML += '<div style="cursor:pointer" onclick="zoomed=3;mmap.setCenter(new GLatLng('+m.lat+','+m.lng+'),11);" title="In '+m.city+' is it really '+ m.loctime+ ' and someone listen the wonderfull music since ' + m.since +' with „' + m.ua+'“ " class="list"><img src="./pins/'+ m.pin +'.png"/>&nbsp;' +m.country + ' ' + m.city + '</div>';          
          mmap.addOverlay(gpoly[i]);
          mmap.addOverlay(gmarkers[i]);
      }
       mmap.addOverlay(new GMarker(home,{icon:michi}));
       var level = mmap.getBoundsZoomLevel(gbounds);
     
       if (!moved) {
      	 mmap.setZoom(level);
     	 mmap.setCenter(gbounds.getCenter());
		}
}             

function importanceOrder (marker,b) {
        return marker.importance;
}


function createMarker(point,name,html) {
        var marker = new GMarker(point);
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        i++;
        return marker;
}

var baseIcon = new GIcon();
baseIcon.iconSize=new GSize(12,12);
baseIcon.shadowSize=new GSize(36,24);
baseIcon.iconAnchor=new GPoint(10,10);
baseIcon.infoWindowAnchor=new GPoint(0,0);
          
var miba = new GIcon(baseIcon, "06.png", null, "http://maps.google.com/mapfiles/kml/pal4/icon27s.png");
var michi= new GIcon(baseIcon, "michi.png", null, "http://maps.google.com/mapfiles/kml/pal4/icon27s.png");
michi.iconSize=new GSize(22,24);

for (var i=0;i<10;i++) {
	eval("var pin0"+i+" = new GIcon(baseIcon, \"pins/0" +i + ".png\", null, \"http://maps.google.com/mapfiles/kml/pal4/icon27s.png\");");
	eval("var pin1"+i+" = new GIcon(baseIcon, \"pins/1" +i + ".png\", null, \"http://maps.google.com/mapfiles/kml/pal4/icon27s.png\");");
}

function showTooltip(marker) {
   																	 tooltip.innerHTML = marker.tooltip;
	var point=map.getCurrentMapType().getProjection().fromLatLngToPixel(map.getBounds().getSouthWest(),map.getZoom());
	var offset=map.getCurrentMapType().getProjection().fromLatLngToPixel(marker.getPoint(),map.getZoom());
	var anchor=marker.getIcon().iconAnchor;
	var width=marker.getIcon().iconSize.width;
	var pos = new GControlPosition(G_ANCHOR_BOTTOM_LEFT, new GSize(offset.x - point.x - anchor.x + width,- offset.y + point.y +anchor.y)); 
	pos.apply(tooltip);
	tooltip.style.visibility="visible";
      }

      // ===== This function is invoked when the mouse goes over an entry in the side_bar =====
      // It launches the tooltip on the icon      
      function mymouseover(i) {
        showTooltip(gmarkers[i])
      }
      // ===== This function is invoked when the mouse leaves an entry in the side_bar =====
      // It hides the tooltip      
      function mymouseout() {
	tooltip.style.visibility="hidden";
      }



if(typeof deconcept=="undefined"){var deconcept=new Object();}
if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}
if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}
deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){
if(!document.getElementById){return;}
this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}var _1c=this.getVariablePairs().join("&");if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major){return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;

