var ajaxxs={ enableCache: false, handles: new Array(), suburls: new Array(), cache: new Array(), call: function(url, callback, context) { if(typeof callback == 'undefined') throw ('Callback required'); if(this.enableCache && typeof this.cache[url] != 'undefined') return callback({responseText:'"'+this.cache[url]+'"',response:this.cache[url]}, context); var i=this.handles.length; this.handles[i]={ callback: callback, url: url, context: context }; var scr=document.createElement('script'); scr.setAttribute('src',url+'&__ajaxxsid='+i); scr.setAttribute('id','__ajaxxsid'+i); scr.setAttribute('defer','defer'); document.body.appendChild(scr); }, handleResponse:function(id, response){ if(this.handles[id]){ if(this.enableCache) this.cache[this.handles[id].url]=response; var callback=this.handles[id].callback; var context=this.handles[id].context; this.handles[id]=null; var scr=document.getElementById('__ajaxxsid'+id); if(navigator.userAgent.indexOf('MSIE')==-1) document.body.removeChild(scr); else setTimeout(function(){document.body.removeChild(scr);},50); // damn MSIE var result=callback({responseText:'"'+response+'"',response:response}, context); return result; } }, _prepare:function(url){ this.suburls[this.suburls.length]=url; }, flush:function(){ this.suburls=new Array(); }, prepare:{ iGeo:{ getSearchResults:function(_0,_1,_2,_3) { var d=''; for(var i=0;i document.body.offsetHeight){ // all but Explorer Mac yWithScroll = document.body.scrollHeight; xWithScroll = document.body.scrollWidth; } else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari yWithScroll = document.body.offsetHeight; xWithScroll = document.body.offsetWidth; } bgNode.style.width=xWithScroll+'px'; bgNode.style.height=yWithScroll+'px'; bgNode.style.background='#ffffff'; bgNode.style.opacity=0.7; bgNode.style.filter="alpha(opacity=70)"; bgNode.zIndex=1000; var msgNode=document.body.appendChild(document.createElement('div')); msgNode.style.position='absolute'; msgNode.style.left='25%'; msgNode.style.top='25%'; msgNode.style.position='absolute'; msgNode.style.width='50%'; msgNode.style.height='30%'; msgNode.style.background='#ffffff'; msgNode.style.border='#ff0000 2px solid'; msgNode.style.padding='1em'; bgNode.zIndex=1001; var message='

Произошла ошибка

'+ '

Увы, никто не идеален и наша система тоже иногда ошибается :)

'+ '

Описание ошибки:

'; message+='

'; if (e.lineNumber&&e.fileName) { message+=e.fileName+'
line '+e.lineNumber+': '; } message+=e.name+', '+e.message; message+='

'; message+='

Вы можете сообщить нам об этом событии или перезапустить систему iGeo.

'+ '
'+ ''+ '

'+ ''; msgNode.innerHTML=message; } trackBar.prototype.stopProp=function(ev){ if(ev.stopPropagation) ev.stopPropagation(); else ev.cancelBubble = true; if(ev.preventDefault) ev.preventDefault(); else ev.returnValue = false; } trackBar.prototype.stopDefault=function(e){ if(e.preventDefault) e.preventDefault(); else e.returnValue = false; this.startDragY=0; this.yOld=this.dy; } trackBar.prototype.startDrag=function(e){ this.drag=true; this.startDragX=e.clientX; this.startDragY=e.clientY; } trackBar.prototype.stopDrag=function(){ this.drag=false; if (!this.upUnderArrow) {this.div2.style.backgroundColor ='#ffffff';} this.upUnderArrow=false; } trackBar.prototype.stopDragEv=function(e){ var dest=e.srcElement?e.toElement:e.relatedTarget; if(dest==null) this.stopDrag(); } trackBar.prototype.dragging=function(e){ if(this.drag) { this.dy=this.yOld+e.clientY-this.startDragY; if (this.dy<0) this.dy=0; if (this.dy>this.sizeOfTrack) this.dy=this.sizeOfTrack; this.arrow.style.top=(this.dy+this.y0)+'px'; this.onTrack(this.dy/this.sizeOfTrack); return true } else return false; } function trackBar (container,x,y,size,onTrack,initValue){ this.startDragY=0; this.dragY=0; this.drag=false; this.sizeOfTrack=size; this.upUnderArrow=false; this.dy=this.sizeOfTrack*(initValue); this.y0=y; this.yOld=0; this.onTrack=onTrack; this.container=container; this.line=document.createElement("div"); this.line.className='trackBar'; this.line.style.width='1px'; this.line.style.left=x+'px'; this.line.style.top=y+'px'; this.line.style.height=(this.sizeOfTrack+11)+'px'; this.container.appendChild(this.line); this.arrow=document.createElement("div"); this.arrow.className='trackBar'; this.arrow.id='arrow'; this.arrow.style.width='22px'; this.arrow.style.height='11px'; this.arrow.style.left=(x-10)+'px'; this.arrow.style.top=y+this.dy+'px'; var thisObj=this; this.arrow.onmousedown=function(e){thisObj.stopProp(e?e:window.event);thisObj.stopDefault(e?e:window.event),thisObj.startDrag(e?e:window.event)}; this.arrow.onmouseover=function(e){thisObj.stopProp(e?e:window.event);thisObj.div2.style.backgroundColor ='#ff0000';}; this.arrow.onmouseout=function(e){thisObj.stopProp(e?e:window.event);if (!thisObj.drag)thisObj.stopDrag()}; this.arrow.onmouseup=function(e){thisObj.upUnderArrow=true;} this.onDocMouseUp=function(){thisObj.stopDrag()}; this.onDocMouseMove=function(e){return thisObj.dragging(e?e:window.event)}; this.onDocMouseOut=function(e){thisObj.stopDragEv(e?e:event)}; this.onDocClick=function(){} this.container.appendChild(thisObj.arrow); this.div1=document.createElement("div"); this.div1.className='noActiveArrowLeft'; document.getElementById('arrow').appendChild(this.div1); this.div2=document.createElement("div"); this.div2.className='centerArrow'; document.getElementById('arrow').appendChild(this.div2); this.div3=document.createElement("div"); this.div3.className='noActiveArrowRight'; document.getElementById('arrow').appendChild(this.div3); } var iGeoNodeBehavior={ 'common':{ init: function(prefix,id,x,y,minimizedHTML,maximizedHTML,config,logo,iGeoStatus) { this.style.position='absolute'; this.minimizedHTML=minimizedHTML; this.maximizedHTML=maximizedHTML; this.logo=logo; this.idN=id; this.setAttribute('id', prefix+id); this.loaded=true; this.config=config; this.style.width='auto'; this.style.height='auto'; this.style.zIndex=this.config.zIndex['default']; this.place(x,y); if (iGeoStatus=='maximized'){ this.maximize(); } else this.minimize(); return this; }, place: function(x,y){ this.style.left=x+'px'; this.style.bottom=y+'px'; }, oncenter:function() {}, minimize: function(){}, maximize: function(){} }, 'building':{ place: function(x,y){ this.style.left=x+this.config.nodeOffset['building'][0]+'px'; this.style.bottom=y+this.config.nodeOffset['building'][1]+'px'; }, minimize: function(){ this.style.zIndex=this.config.zIndex['building']; var img=this.appendChild(document.createElement('img')); img.src=this.config.imagePath+'/marker.png'; img.style.position="absolute"; img.className='marker'; } }, 'organization':{ iGeoStatus:'minimized', place: function(x,y){ this.style.left=(x-9)+'px'; //Must be added to config attribute this.style.bottom=y+'px'; }, emptyContents: function() { this.innerHTML='
 
 
 
 
 
 
'; }, minimize: function(){ this.iGeoStatus='minimized'; //alert('fff'); this.style.zIndex=this.config.zIndex['organization']; // this.innerHTML='' this.innerHTML='
'; // alert('
 
 
 
 
 
 
'); //this.className='igeoInfoMinimized'; this.iGeoStatus='minimized'; //this.onclick=this.click; }, maximize: function(){ var geo=iGeoAppCache.app[0]; if(iGeoNodeBehavior['organization'].curActive) iGeoNodeBehavior['organization'].curActive.style.zIndex=this.config.zIndex['organization']; iGeoNodeBehavior['organization'].curActive=this; this.style.zIndex=this.config.zIndex['active']; // this.style.width=(this.logo?(this.config.objectCloudWidth+160):this.config.objectCloudWidth)+'px'; // this.style.height=(this.logo?(this.config.objectCloudHeight+180):this.config.objectCloudHeight)+'px'; // this.innerHTML='
 
 
 
 
'+this.maximizedHTML+'
 
 
'; this.innerHTML='
'+this.maximizedHTML+'
'; this.className='igeoInfoMaximized'; this.iGeoStatus='maximized'; // alert(this.idN); var dx=(this.offsetWidth/geo.globalZoom)/2; var dy=(this.offsetHeight/geo.globalZoom)/2; // geo.mapX=obj.x-(geo.viewportWidth/geo.globalZoom)/2+dx; // geo.mapY=obj.y-(geo.viewportHeight/geo.globalZoom)/2-dy; geo.centerView(this.idN); //this.onclick=null; }, oncenter: function(){ this.maximize(); }, /*onmouseover:function(){ this.zIndex=this.config.zIndex['active']; if(this.iGeoStatus!='maximized'&&this.iGeoStatus!='growing') this.resizeByTimer(this.config.objectCloudWidth,null); }, onmouseout:function(){ if (this.iGeoStatus=='maximized'||this.iGeoStatus=='growing') return null; this.resizeByTimer(32,20,this.minimized) },*/ click:function(){ if (this.iGeoStatus!='maximized'&&this.iGeoStatus!='growing') { this.zIndex=this.config.zIndex['active']; this.iGeoStatus='growing'; if(this.timerForResize) { clearInterval(this.timerForResize); this.timerForResize=null; } this.maximize(); } }, maximizeSmoothly:function(){ if(this.iGeoStatus=='maximized') return null; this.emptyContents(); var newW=this.logo?(this.config.objectCloudWidth+160):this.config.objectCloudWidth; var newH=this.logo?(this.config.objectCloudHeight+180):this.config.objectCloudHeight; this.resizeByTimer(newW,newH,this.maximize); }, minimizeSmoothly:function(){ if(this.iGeoStatus=='minimized') return null; this.emptyContents(); var newW=this.logo?48:32; var newH=this.logo?48:20; this.resizeByTimer(newW,newH,this.minimize); }, resizeByTimer:function(x,y,callback){ this.iGeoWidth=x?x:this.clientWidth; this.iGeoHeight=y?y:this.clientHeight; if(callback) this.resizeByTimerCallback=callback; else this.resizeByTimerCallback=null; var thisObj=this; if (!this.timerForResize) { this.resizeByTimerFunc=function(){thisObj.resize()}; this.timerForResize=setInterval(thisObj.resizeByTimerFunc,1000/this.smoothEffect.frequency); } }, resize:function(x,y){ var x=x?x:this.iGeoWidth; var y=y?y:this.iGeoHeight; var dx=Math.abs(x-this.clientWidth); var dy=Math.abs(y-this.clientHeight); if (Math.abs(dx)'; cloud.innerHTML+="
 
"+innerCloud+"
 
"; // this.cloud.appendChild(this.infoPage); } iGeoApplication.prototype.showInfoPage=function(id){ ajaxxs.prepare.iGeo.getInfoPage(id); ajaxxs.commit(this.processInfoPage,this) } iGeoApplication.prototype.closeInfoPage=function(){ document.body.removeChild(cloud); } iGeoApplication.prototype.processDir=function(response,extras){ if(dir==null) {dir=document.createElement('div'); dir.className="cloud"; // this.cloud.style.width=1024+'px'; dir=document.body.appendChild(dir); }else dir.style.display='block'; var innerCloud='
'+response.response+'
'; dir.innerHTML="
 
"+innerCloud+"
 
"; // this.cloud.appendChild(this.infoPage); } iGeoApplication.prototype.showDir=function(id){ if(id==null) if(!dir){ id=0; }else{ dir.style.display='block'; return; } ajaxxs.prepare.iGeo.buildDirectoryPage(id); ajaxxs.commit(this.processDir,this); } iGeoApplication.prototype.closeDir=function(){ dir.style.display='none'; } // 2008-11-24 igoryamba iGeoApplication.prototype.showOpinions=function(){ if (!dir2) { dir2 = document.createElement('div'); dir2.className = "cloud"; dir2 = document.body.appendChild(dir2); var innerCloud2 = '
Закрыть

Мнения партнеров

Антон Собин

Руководитель коммерческой дирекции
Северо-Западный Центр социологии, маркетинга и коммуникаций "B&S":

«Убежден, что Интернет сейчас представляет собой удобную, эффективную и динамично развивающуюся площадку для продвижения бизнеса. Его возможности как уникального инструмента продвижения растут пропорционально со скоростью увеличения интернет-аудитории и развитием Интернет-технологий. А это значит, что он может стать движущей силой любого бизнеса. К сожалению, лишь десятая часть всех бизнес-структур России имеют представительства в Интернете. Многие пока явно недооценивают возможности Сети. Интернет вне конкуренции по широте охвата аудитории и скорости потребительского отклика.»

Сергей Литвинов

Генеральный директор
Рекламно-производственная компания "Радуга"

«С января 2007 года, в связи с расширением объема выполняемых работ, офис и производственные мастерские РПК Радуга переехали из центра города, с улицы Сомова в Ленинский район города, на улицу Халатина. Ежедневно объяснять заказчикам по телефону наше новое месторасположение довольно сложно, особенно, если человек плохо знает город.

Размещение контактной информации на картах-справочниках Murmanmap позволяет не тратить время на разьяснения "Куда?, Как? и Где? поворачивать".»

Антон Нечаев

Ведущий специалист по маркетингу и рекламе
ОАО "Вымпелком"

«Ежедневно сталкиваясь с необходимостью быстрого принятия решения и, соответственно, с проблемой срочного поиска информации, подобные карты-справочники, составленные с использованием современных IT-технологий и возможностей сети Интернет, в скором времени полностью заменят морально устаревшие бумажные справочники и атласы».

Денис Трошков

Директор направления по Мурманской области
Страховая компания "РОСГОССТРАХ"

«Наша компания активно сотрудничает с такими динамично развивающимися проектами, как Murmanmap. Считаю, что размещение информации на подобных Интернет ресурсах дает нам возможность расширить круг потенциальных клиентов и предоставить уже существующим больший спектр услуг.»

Игорь Сарыбин

Руководитель отдела рекламы и маркетинга
База снабжения «Диал»

«Мы были приятно удивлены, найдя на карте наших постоянных партнеров! Считаю, что сайт поможет наладить деловые связи с будущими клиентами и донести новые предложения.»

'; dir2.innerHTML = "
 
"+innerCloud2+"
 
"; } else { dir2.style.display='block'; }; return false; } iGeoApplication.prototype.closeOpinions = function(){ dir2.style.display='none'; return false; } iGeoApplication.prototype.startDrag=function(e) { /*document.body.style.cursor=this.config.cursorMoveMap;; this.config.mapNode.emptyDiv.style.display="none"; this.config.mapNode.emptyDiv.style.cursor=this.config.cursorMoveMap; */ if(this.dragging)return false; this.mouseDownX=e.screenX;this.mouseDownY=e.screenY; this.startX=this.mapX;this.startY=this.mapY; this.dragging=true; } iGeoApplication.prototype.stopDrag=function(e) { /*document.body.style.cursor='pointer'; this.config.mapNode.emptyDiv.style.cursor='url(http://test1.ru/images/murmanmap/openhand.cur)';//this.config.cursorMap;; this.config.mapNode.emptyDiv.style.display="block"; */ if(!this.dragging)return false; this.dragging=false; this.mouseMoved=false; } iGeoApplication.prototype.moveByMouse=function(e, force) { if (!this.dragging&&!force) return false; if (e) { if(this.startX-e.screenX+this.mouseDownX!=this.mapX||this.startY-e.screenY+this.mouseDownY!=this.mapY) { this.mouseMoved=true; } this.mapX=this.startX+(this.mouseDownX-e.screenX)/this.globalZoom; this.mapY=this.startY+(this.mouseDownY-e.screenY)/this.globalZoom; } } iGeoApplication.prototype.initK=function(k){ this.mapX+=(this.viewportWidth/this.globalZoom)/2; this.mapY+=(this.viewportHeight/this.globalZoom)/2; if(k) this.globalZoom=this.config.zoomArray[this.config.zoomArray.length-1].zoom+(1-k)*(this.config.zoomArray[0].zoom-this.config.zoomArray[this.config.zoomArray.length-1].zoom); if (this.globalZoom>=(this.config.zoomArray[this.zoomN].zoom)) if (this.config.zoomArray[this.zoomN-1]) this.initZoom(this.zoomN-1); if (this.config.zoomArray[this.zoomN+1]) if(this.globalZoom<=(this.config.zoomArray[this.zoomN+1].zoom)) this.initZoom(this.zoomN+1); this.localZoom=this.globalZoom/this.config.zoomArray[this.zoomN].zoom; this.mapX-=(this.viewportWidth/this.globalZoom)/2; this.mapY-=(this.viewportHeight/this.globalZoom)/2; this.maxX=this.config.mapSizeX-this.viewportWidth/this.globalZoom; this.maxY=this.config.mapSizeY-this.viewportHeight/this.globalZoom; if (this.maxX<0) this.maxX=0; if (this.maxY<0) this.maxY=0; } iGeoApplication.prototype.initZoom=function(zoomN){ if ((zoomN=0)){ this.mapX=Math.round(this.mapX); this.mapY=Math.round(this.mapY); this.zoomN=zoomN; this.levelZoom=this.zoom=this.config.zoomArray[zoomN].zoom; this.zoomText=this.config.zoomArray[zoomN].text; } } iGeoApplication.prototype.redrawViewportLoop=function() { var thisObj=this; if ((this.mapX==this.mapXold)&(this.mapY==this.mapYold)) { setTimeout(function(){thisObj.redrawViewportLoop()},200);// idle delay, save CPU return null; } else{ this.mapXold=this.mapX; this.mapYold=this.mapY; } if (this.mapX<0)this.mapX=0; if (this.mapX>this.maxX)this.mapX=this.maxX; if (this.mapY<0)this.mapY=0; if (this.mapY>this.maxY)this.mapY=this.maxY; this.repositionBlocks(); this.repositionObjects(); setTimeout(function(){thisObj.redrawViewportLoop();},50);// moving delay, improve response } iGeoApplication.prototype.repositionBlocks=function() { var DDX=Math.floor(this.mapX*this.levelZoom/this.config.blockWidth); var DDY=Math.floor(this.mapY*this.levelZoom/this.config.blockHeight); var dx=-Math.abs(this.mapX*this.levelZoom%this.config.blockWidth); var dy=-Math.abs(this.mapY*this.levelZoom%this.config.blockHeight); if (!((this.DX==DDX) & (DDY==this.DY))) { this.DX=DDX;this.DY=DDY; for (var key in this.viewportBlockCache) { var element=$(key); if (!((element.N==this.zoomN)&(element.XB>DDX)& (element.XB<=(DDX+2+this.viewportWidth/this.config.blockWidth/this.localZoom))& (element.YB>DDY)& (element.YB<=(DDX+2+this.viewportHeight/this.config.blockHeight/this.localZoom)) )) { if (element.Loaded==false&&$(key)){ this.config.mapNode.removeChild($(key)); delete nodeCache[key]; } element.style.top=(-1*(this.config.blockHeight+1))+"px"; element.style.display="none"; delete this.viewportBlockCache[key]; } } for (var k=1+DDX;k<=(Math.ceil(this.viewportHeight/this.config.blockHeight)/this.localZoom+2+DDX);k++){ for (var j=1+DDY;j<=(Math.ceil(this.viewportWidth/this.config.blockWidth)/this.localZoom+2+DDY);j++){ if ($(this.zoomText+k+"_"+j)==null){ var pict = document.createElement("img"); // pict.style.className="cursor3"; pict.src=this.config.mapPath+this.zoomText+k+"_"+j+".png"; pict.style.height=this.localZoom*this.config.blockHeight+"px"; pict.style.width=this.localZoom*this.config.blockWidth+"px"; pict.Loaded=false; pict.XB=k; pict.YB=j; pict.N=this.zoomN; pict.id=this.zoomText+k+"_"+j; pict.style.position="absolute"; pict.style.display="none"; pict.style.zIndex=this.config.zIndex['map']; pict.style.top=/*(-1*(this.config.blockHeight+1))*/"-1000"+"px"; nodeCache[pict.id]=this.config.mapNode.appendChild(pict);// cache it quickly if ($(this.zoomText+k+"_"+j).complete==true){ $(this.zoomText+k+"_"+j).style.display="block"; $(this.zoomText+k+"_"+j).Loaded=true; } else { $(this.zoomText+k+"_"+j).onload=function() { this.style.display="block"; this.Loaded=true; return false; }; } } else { if ($(this.zoomText+k+"_"+j).Loaded==true) $(this.zoomText+k+"_"+j).style.display="block"; } this.viewportBlockCache[this.zoomText+k+"_"+j]=true; } } // this.viewportBlockCache=newviewportBlockCache; } for (var key in this.viewportBlockCache){ if ($(key)!=null){ if($(key).N==this.zoomN){ a=this.localZoom*(dx+($(key).XB-DDX-1)*this.config.blockWidth); b=this.localZoom*(dy+($(key).YB-DDY-1)*this.config.blockHeight); $(key).style.left=Math.round(a)+"px"; $(key).style.top=Math.round(b)+"px"; $(key).style.width=(Math.round(a+this.localZoom*this.config.blockWidth)-Math.round(a))+"px"; $(key).style.height=(Math.round(b+this.localZoom*this.config.blockHeight)-Math.round(b))+"px"; } } } } iGeoApplication.prototype.repositionObjects=function() { this.viewportObjectCache=new Array(); for (var oid in this.iGeoObjectCache) { var element=$(this.iGeoNodePrefix+oid); var obj=this.iGeoObjectCache[oid]; if (obj.x>this.mapX&&obj.y>this.mapY&(obj.x<(this.mapX+this.viewportWidth/this.globalZoom))&(obj.y<(this.mapY+this.viewportHeight/this.globalZoom))) this.viewportObjectCache[oid]=this.iGeoObjectCache[oid]; else if(element) element.style.display="none"; // element.place(-this.config.objectCloudWidth,-this.config.objectCloudHeight); } for (var oid in this.viewportObjectCache) { var element=$(this.iGeoNodePrefix+oid); if(element) element.style.display="block"; var thisObj=this; var obj=this.viewportObjectCache[oid]; if (!element&&!this.iGeoObjectCache[oid].downloaded) { // ^^ we only want to launch download once this.iGeoObjectCache[oid].downloaded=true; ajaxxs.prepare.iGeo.getObject(oid,this.config.domain); ajaxxs.commit(function(response,extras){ try{ var obj=extras[0]; var iGeoStatus='minimized'; var oid=extras[1]; element=thisObj.config.mapNode.appendChild(document.createElement('div')); eval('var objData='+response.response); element=$$(element,iGeoNodeBehavior['common']); if(obj.type&&iGeoNodeBehavior[obj.type]) $$(element,iGeoNodeBehavior[obj.type]); if ((thisObj.maximizedDiv==oid)&&(objData.type=='organization')) iGeoStatus='maximized'; element.init(thisObj.iGeoNodePrefix,oid, (obj.x-thisObj.mapX)*thisObj.globalZoom, thisObj.viewportHeight-((obj.y)-thisObj.mapY)*thisObj.globalZoom, objData.shortInfo, objData.longInfo, thisObj.config,objData.logo,iGeoStatus); } catch(e) { new errorHandler(e); } },[this.viewportObjectCache[oid],oid]); } else if (element&&element.place) { element.place((obj.x-this.mapX)*this.globalZoom,this.viewportHeight-((obj.y)-this.mapY)*this.globalZoom); } } } iGeoApplication.prototype.removeAllObjects=function() { for (var oid in this.iGeoObjectCache) { var element=$(this.iGeoNodePrefix+oid); if(element) { this.config.mapNode.removeChild(element); delete nodeCache[this.iGeoNodePrefix+oid]; } } this.iGeoObjectCache=new Array(); this.viewportObjectCache=new Array(); } iGeoApplication.prototype.processObjectsByQuery=function(response,thisObj){ eval('var responseData='+response.response); for (var oid in responseData.Objects) thisObj.iGeoObjectCache[oid]=responseData.Objects[oid]; thisObj.repositionObjects(); } iGeoApplication.prototype.getObjectsByQueryAJAX=function(query) { ajaxxs.prepare.iGeo.getObjectsByQueryAJAX(query,this.config.domain); ajaxxs.commit(this.processObjectsByQuery,this); } iGeoApplication.prototype.getSearchResults=function(query, offset) { if (iframeAjax==0){ var container=this.config.searchResultsNode; ajaxxs.prepare.iGeo.getSearchResults(query,offset, this.applicationID,this.config.domain); ajaxxs.commit(function(response){container.innerHTML=response.response;},null); } else{ var container=this.config.searchResultsNode; container.innerHTML=''; return false; } } var aaaa1; var aaaa2; iGeoApplication.prototype.centerView=function(objectID) { var obj=this.iGeoObjectCache[objectID]; var element=$(this.iGeoNodePrefix+objectID); var dx=0;var dy=0; if (element){ dx=element.offsetWidth/this.globalZoom/2; dy=-element.offsetHeight/this.globalZoom/2; } this.mapX=obj.x-this.viewportWidth/this.globalZoom/2+dx; this.mapY=obj.y-this.viewportHeight/this.globalZoom/2+dy; } iGeoApplication.prototype.centerOnObject=function(objectID) { if(this.iGeoObjectCache) if(this.iGeoObjectCache[objectID]) { var element=$(this.iGeoNodePrefix+objectID); this.centerView(objectID); if(element)element.oncenter(); } } iGeoApplication.prototype.collapseObject=function(objectID) { var obj=$(this.iGeoNodePrefix+objectID); if(obj) {obj.minimize()}; } iGeoApplication.prototype.showObject=function(objectID) { var obj=$(this.iGeoNodePrefix+objectID); if(obj) {obj.maximize()}; } function globalApplicationCache(){ this.app=new Array(); try { for(var applicationID in this.serverConfig){ if(typeof this.userConfig[applicationID]=='undefined') this.userConfig[applicationID]=new Array(); this.app[applicationID]=new iGeoApplication(this.serverConfig[applicationID],this.userConfig[applicationID], applicationID); } } catch (e) { return new errorHandler(e); } } var iframeAjax=1; globalConfig={'errorHandler':1} globalApplicationCache.prototype.serverConfig={ //index is applicationID 0:{ domain:'murmanmap.ru', blockWidth:256, blockHeight:128, mapSizeX:20000, mapSizeY:6450, mapPath:'http://static.vmurmanske.ru/murmanmap/2009-12-28/', errorHandler:true, zIndex:{ 'map':1, 'default':2, 'building':3, 'organization':4, 'active':5 }, nodeOffset:{ 'building':[-16,6], 'organization':[-10,10] }, zoomArray: [{text:'0/',zoom:1},{text:'1/',zoom:0.8}, {text:'2/',zoom:0.6},{text:'3/',zoom:0.35}, {text:'4/',zoom:0.18},{text:'5/',zoom:0.09302}] } } globalApplicationCache.prototype.userConfig={ 0: { initX:8850, initY:3820, zoomK:0.44, zoomN:4, trackBarX:10, trackBarY:10, trackBarSize:300, searchFormNode:document.getElementById('searchForm'), searchQueryFieldNode:document.getElementById('query'), searchResultsNode:document.getElementById('results'), mapNode:document.getElementById('map'), imagePath:'/images/murmanmap', objectCloudWidth:300, objectCloudHeight:130, preInitJS:true, cursorMap:'pointer', cursorMoveMap:'move' } } if(globalConfig.errorHandler){ try{ iGeoAppCache=new globalApplicationCache(); initApplication(); } catch(e) {new errorHandler(e)} } else{ iGeoAppCache=new globalApplicationCache(); initApplication(); }