var Item=Class.create({_serviceURL:undefined,_tabDiv:undefined,_item:undefined,_dmap:undefined,lng:undefined,lat:undefined,imageURL:undefined,initialize:function(B,F,G,A){this._dmap=A;this._item=B;if(G!=null){this._serviceURL=G}this._tabDiv=$(F);if(this._tabDiv==undefined){throw Error("Cannot find tabDivID '"+F+"'")}this.viewport=this._tabDiv;var D=document.createElement("DIV");D.id="page_icon_overlay_"+B.link_id;D.innerHTML="<dmgeo id='"+B.link_id+"' objId='"+B.link_id+"' itemType='"+B.link_type+"' type='ba' lat='"+B.lat+"' lon='"+B.lng+"' title='"+B.title+"' text='' showIcon='true' />";this.viewport.appendChild(D);if($("page_icon_overlay_"+B.link_id).innerHTML==""){var H=document.createElement("DMGEO");H.id=B.link_id;H.objId=B.link_id;H.itemType=B.link_type;H.type="ba";H.lat=B.lat;H.lon=B.lng;H.title=B.title;H.text="";H.showIcon="true";$("page_icon_overlay_"+B.link_id).appendChild(H)}var C=document.createElement("DIV");C.id=F+"_header";C.innerHTML=B.type;var E=document.createElement("DIV");E.id=F+"_title";E.innerHTML="<a href='/"+B.link_type+"/show/"+B.link_id+"'>"+B.header+"</a>";this.viewport.appendChild(C);this.viewport.appendChild(E);$("page_icon_overlay_"+B.link_id).addClassName("dmgeo");$(F+"_header").addClassName("header");$(F+"_title").addClassName("title");$("page_icon_overlay_"+B.link_id).addClassName("overlay_icon")},setActive:function(){this._tabDiv.addClassName("imagebrowser_tab_active");var C=this._item;var A=$("imagebrowser_image");A.innerHTML="<a href='/"+C.link_type+"/show/"+C.link_id+"'><img src='"+C.image+"' alt='"+C.image+"' /></a>";var B=$("imagebrowser_body");B.innerHTML="<div><a style='text-decoration:none; font-weight:normal;' href='/"+C.link_type+"/show/"+C.link_id+"'><div class='title'>"+C.title+"</div><div class='subtitle'>"+C.subtitle+"</div><div class='body'>"+C.body.truncate(150," ... <b>[mehr]</b>")+"</div></a></div>";if(this._dmap!=undefined){var E=this._tabDiv.childElements()[0].id.gsub("page_icon_overlay_","");if(this._dmap.getOverlay(E)){var D=this._dmap.getOverlay(E);D.openPopup()}else{}}else{}},setPassive:function(){this._tabDiv.removeClassName("imagebrowser_tab_active")}});var ItemBrowserTimer=Class.create(Abstract.TimedObserver,{getValue:function(){return new Date()}});var ItemBrowser=Class.create({_divID:undefined,_serviceURL:undefined,_items:undefined,_maxItems:5,_active_item:0,_dmap:undefined,_mapUpdater:undefined,initialize:function(A,B){this._divID=A;this._serviceURL=B;this._items=new Array()},init:function(B,E,C){var A=this;this._category=C;this._dmap=B;this._mapUpdater=E;this.setupHTML();var D=function(F){A.fillItemBrowser(F)};new Ajax.Request(A._serviceURL+"?category="+this._category,{asynchronous:true,evalScripts:true,method:"get",onComplete:D})},fillItemBrowser:function(A){var B=this;var E=A.responseText.evalJSON();for(var C=0;C<E.length;C++){var D=new Item(E[C],"imagebrowser_tab_"+C,this._serviceURL,this._dmap);this._items.push(D)}if(this._mapUpdater){this._mapUpdater.parseForOverlays(true,true)}this._items[0].setActive(this._dmap);new ItemBrowserTimer(undefined,7,function(){B._next()})},setupHTML:function(){var A=document.createElement("DIV");A.id="imagebrowser_image";var E=document.createElement("DIV");E.id="imagebrowser_header";var D=document.createElement("DIV");D.id="imagebrowser_body";var F=new Array();for(var B=0;B<this._maxItems;B++){var C=document.createElement("DIV");C.id="imagebrowser_tab_"+B;F.push(C)}this.viewport=$(this._divID);this.viewport.addClassName("imagebrowser");this.viewport.appendChild(A);for(var B=0;B<F.size();B++){this.viewport.appendChild(F[B])}this.viewport.appendChild(E);this.viewport.appendChild(D);$("imagebrowser_image").addClassName("imagebrowser_image");$("imagebrowser_header").addClassName("imagebrowser_header");$("imagebrowser_body").addClassName("imagebrowser_body");for(var B=0;B<this._maxItems;B++){var C=$("imagebrowser_tab_"+B);C.addClassName("imagebrowser_tab")}},_next:function(){this._items[this._active_item].setPassive();this._active_item++;if((this._active_item>=this._maxItems)||(this._items[this._active_item]==undefined)){this._active_item=0}this._items[this._active_item].setActive(this._dmap)}});