﻿//-------------------------------------------------------------
//
//-------------------------------------------------------------
var OldSelect = "";
var CurSelect = "";
var ClBkgMaterialPassiv = "#DFE2B7";
var ClTxtMaterialPassiv = "#006786";
var ClBkgMaterialOver = "#DFE2B7";
var ClTxtMaterialOver = "#904801";
var ClBkgMaterialActiv = "#ffffff";
var ClTxtMaterialActiv = "#3d5f70";
//------------------------------------------------------------------
function getEvtSrc(evt) {
	evt=(evt)?evt:event;
	return (evt.target)?evt.target:evt.srcElement;
}
//-------------------------------------------------------------
//             OpenNewMapPage
//-------------------------------------------------------------
function openMapPage(url, width, height)
{
var str = "toolbar=no, scrollbars=yes, resizable=no, status=no, location=no," +
          " width="+width+", height="+height+" , left=100, top=3";
		  
 open(url, "", str);
}

var timeProgress;
//-------------------------------------------------------------
//             MakeMap
//-------------------------------------------------------------
function MakeMap(iNRows, iNColumns, strSuffix)
{
window.parent.iGNRows = iNRows;
window.parent.iGNColunm = iNColumns;
//window.parent.FrameWidth = window.parent.TdFrameMap.clientWidth;
//window.parent.FrameHeight = window.parent.TdFrameMap.clientHeight;
window.parent.FrameWidth = window.parent.document.all.FrameMap.width;
window.parent.FrameHeight = window.parent.document.all.FrameMap.height;

 var PercentMin = Math.floor((window.parent.FrameWidth*100)/(iNColumns*310));
 var dK = PercentMin/100;

 for(var i=PercentMin; i<=200; i++) {
     var NewElem = window.parent.document.createElement("OPTION");
     NewElem.text = i;
     window.parent.document.FormScale.SelScale.options.add(NewElem);
 }

 var widthElem = Math.floor(310*dK);
 var heightElem = Math.floor(235*dK);
 
 var curLeft = 0, curTop = 0;
 var str = "";
 for(var i=0; i<iNRows; i++) {
   curLeft = 0;
   for(var j=0; j<iNColumns; j++) {
	  str += "<img id=\"i_" + i + "_" + j + "\"" +
		     " style=\"display: block; z-index: 0; position: absolute;" +
			 " left: " + curLeft + "; top: " + curTop + ";" +
			 " width:" + widthElem + "; height:" + heightElem + "\"" +
			 " src=\"" + strSuffix+i+""+j+".jpg\"" + 
			 " border=\"0\" onmousedown= \"return false;\">\n";
      curLeft += widthElem;
    }
   curTop += heightElem;
 }
 MyDiv.innerHTML = str;
 timeProgress = setInterval("ShowProgress()", 200);
}

//-------------------------------------------------------------
//             ShowProgress
//-------------------------------------------------------------
function ShowProgress()
{
 var AllCount = window.parent.iGNRows*window.parent.iGNColunm;
 var iCountLoadedImg = 0;
 var ImgObj;
 for(var i=0; i<window.parent.iGNRows; i++) {
   for(var j=0; j<window.parent.iGNColunm; j++) {
	  ImgObj = eval("i_" + i + "_" + j);
	  if(ImgObj.complete)
	     iCountLoadedImg++;
	}
  }
 var strHref = window.parent.location.href;
 var strSuffix = strHref.substr(strHref.length-6, 1);
 var strMess = "";
 var LoadPercent = parseInt(iCountLoadedImg/AllCount*100);
 switch(strSuffix) {
   case "a":
      strMess = "Xəritə təsvirinin " + 
	             LoadPercent +
	            "% yüklənib...";
      break;
   case "e":
      strMess = "Loaded " + 
	             LoadPercent +
	            "% of image of map...";
      break;
   case "r":
      strMess = "Загружено " + 
	             LoadPercent +
	            "% изображения карты...";
      break;
   default:  
  }
  
 LoadProccess.innerHTML = strMess;
 LoadProccess.style.left = document.body.scrollLeft + 50;
 LoadProccess.style.top = document.body.scrollTop + 250;
 
 if(iCountLoadedImg==AllCount) {
    clearInterval(timeProgress);
	LoadProccess.innerHTML = "";
    LoadProccess.style.left = 0;
    LoadProccess.style.top = 0;
  }	

}

//-------------------------------------------------------------
//             Rescale
//-------------------------------------------------------------
function Rescale(iPercent, iNRows, iNColumns)
{
  var dK = iPercent/100;
  var widthElem = Math.floor(310*dK);
  var heightElem = Math.floor(235*dK);
 
  var curLeft = 0, curTop = 0;
  var sObj;
  var Obj;
  for(var i=0; i<iNRows; i++) {
     curLeft = 0;
     for(var j=0; j<iNColumns; j++) {
	    sObj = "FrameMap.i_" + i + "_" + j;
	    Obj = eval(sObj);
		Obj.style.width = widthElem;
		Obj.style.height = heightElem;
		Obj.style.left = curLeft;
		Obj.style.top = curTop;
        curLeft += widthElem;
	  }
     curTop += heightElem;
   }
} 


//-------------------------------------------------------------------------------
//               ChangeScale
//-------------------------------------------------------------------------------
function ChangeScale(evt)
{
	var evtSrc=getEvtSrc(evt);
	
	var dScaleOld = FrameMap.document.body.scrollWidth/(310*this.iGNColunm);
	var scrollLeftOld = FrameMap.document.body.scrollLeft;
	var scrollTopOld = FrameMap.document.body.scrollTop;

 var dScale = evtSrc.options[evtSrc.selectedIndex].text;
 Rescale(dScale, iGNRows, iGNColunm);

 var dK12 = dScale/100/dScaleOld;
 var wHalf = window.parent.FrameWidth/2;// + 20;
 var hHalf = window.parent.FrameHeight/2;// + 20;
 FrameMap.document.body.scrollLeft = (scrollLeftOld + wHalf)*dK12 - wHalf;
 FrameMap.document.body.scrollTop = (scrollTopOld + hHalf)*dK12 - hHalf;
}



//-------------------------------------------------------------
//            Drag realisation
//-------------------------------------------------------------
var offsetX = 0;
var offsetY = 0;

var drag=false;
//-------------------------------------------------------------
//-------------------------------------------------------------
//    dragIt     do the dragging (called repeatedly by onMouseMove)
//-------------------------------------------------------------

function dragIt(evt) 
{
	if(!evt) {
		var evt=window.event;
	}
	
  document.body.scrollLeft -= (evt.clientX - offsetX);
  document.body.scrollTop -= (evt.clientY - offsetY);
  offsetX = evt.clientX;
  offsetY = evt.clientY;

  
  return false;
}

//-------------------------------------------------------------
//    engage     set global vars and turn on mousemove trapping (called by onMouseDown)
//-------------------------------------------------------------
function engage(evt) {
	document.onmousemove = dragIt;
	MyDiv.style.cursor = "move";
//  offsetX = window.event.offsetX - document.body.scrollLeft;
//  offsetY = window.event.offsetY - document.body.scrollTop;
  offsetX = evt.clientX;
  offsetY = evt.clientY;
  return false;
}

//-------------------------------------------------------------
//    release     restore everything as before (called by onMouseUp)
//-------------------------------------------------------------
function release() 
{
  document.onmousemove = null;
  MyDiv.style.cursor = "pointer";
}



