//jpg c-x-r
var curCol = 3
var curRow = 3
var curLev = 0
var hfold
var curMCols = l0Cols
var curMRows = l0Rows
var pikW = miniW * maxCols / curMCols
var pikH = miniH * maxRows / curMRows
var clX = 0
var clY = 0
var miniX = 0
var miniY = 0
var curZoomUp = true
//start Loading...
var strTD = '
' //определя големина на клетките прменя се и "var pixCol "
var strTD1 = ' | '
hfold = document.location.href
for (var i = hfold.length; hfold.charAt(i)!="/"; i--){}
hfold=hfold.substring(0,i+1)
var strA = ''
var strA1 = ''
var strIMG = '' //razmer na kartinkite v kwadratite
strCode = new Array() //мащаб 0
for (r = 1; r <= scrRows; r++){
strCode[r] =''
for (c = 1; c <= scrCols; c++){
strCode[r] += strTD //
if (c > l0Cols || r > l0Rows){
strCode[r] += strA + strIMG + 'blanc.gif' + strIMG1 + 'c' + c + 'r' + r + strIMG2 + strA1
}else{
strCode[r] += strA + strIMG + fold + '/l' + curLev + '-' + c + 'x' + r + '.jpg' + strIMG1 + 'c' + c + 'r' + r + strIMG2 + strA1
//
}
strCode[r] += strTD1 + '\n\n' // |
}
}
//end Loading............................
function miniView(){ //мини визуализация
document.all.pik.style.left = miniW/curMCols*(curCol-1)+(440 - miniW - 20)
document.all.pik.style.top = miniH/curMRows*(curRow-1)+5
hidePlace()
}
function miniZoom(){ //малкия правоъгълник в мини картата
pikW = Math.floor(miniW * maxCols / curMCols)-2+curLev
pikH = Math.floor(miniH * maxRows / curMRows)-2+curLev
document.pikk.width = pikW
document.pikk.height = pikH
document.all.pik.style.width = pikW
document.all.pik.style.height = pikH
miniView()
} // местене
function mvRight(){ //на дясно
if ((curCol+maxCols-1) < curMCols){
for (r = 1; r <= maxRows; r++){
var rr = curRow + r - 1
for (c = 1; c <= maxCols; c++){
var cc = curCol + c
var imgName = eval('document.c'+c+'r'+r)
imgName.src = fold + '/l' + curLev + '-' + cc + 'x' + rr + '.jpg'
// |
}
}
curCol++
miniView()
}else{document.mvR.src = "left_arrow.gif";setTimeout('document.mvR.src = "right.gif"',500);}
}
function mvLeft(){ // наляво
if (curCol > 1){
for (r = 1; r <= maxRows; r++){
var rr = curRow + r - 1
for (c = 1; c <= maxCols; c++){
var cc = curCol + c - 2
var imgName = eval('document.c'+c+'r'+r)
imgName.src = fold + '/l' + curLev + '-' + cc + 'x' + rr + '.jpg'
}
}
curCol--
miniView()
}else{document.mvL.src = "right_arrow.gif";setTimeout('document.mvL.src = "left.gif"',500);}
}
function mvDown(){ //надолу
if ((curRow+maxRows-1) < curMRows){
for (c = 1; c <= maxCols; c++){
var cc = curCol + c - 1
for (r = 1; r <= maxRows; r++){
var rr = curRow + r
var imgName = eval('document.c'+c+'r'+r)
imgName.src = fold + '/l' + curLev + '-' + cc + 'x' + rr + '.jpg'
}
}
curRow++
miniView()
}else{document.mvD.src = "up_arrow.gif";setTimeout('document.mvD.src = "down.gif"',500);}
}
function mvUp(){ //нагоре
if (curRow > 1){
for (c = 1; c <= maxCols; c++){
var cc = curCol + c - 1
for (r = 1; r <= maxRows; r++){
var rr = curRow + r - 2
var imgName = eval('document.c'+c+'r'+r)
imgName.src = fold + '/l' + curLev + '-' + cc + 'x' + rr + '.jpg'
}
}
curRow--
miniView()
}else{document.mvU.src = "down_arrow.gif";setTimeout('document.mvU.src = "up.gif"',500);}
}
// намаляване
function zoomIn(X,Y){
if (curLev < (maxLev - 1)){
curLev++
zoom(X,Y)
}
}
//увеличаване
function zoomOut(X,Y){
if (curLev > 0){
curLev--
zoom(X,Y)
}
}
//увеличаване назад
function zoomTo(lev){
if (curLev != lev){
curLev = lev
zoom(maxCols*pixCol/2,maxRows*pixRow/2)
}
}
//увеличаване напред
function zoomToNext(){
zoomIn(maxCols*pixCol/2,maxRows*pixRow/2)
} //предишно ниво
function zoomToPrev(){
zoomOut(maxCols*pixCol/2,maxRows*pixRow/2)
}
function zoomShow(){ //премества маркера за увеличение zcur.gif
for (i = 0; i < maxLev; i++){
if (i < curLev){var imgSrc = eval('document.z' + i);imgSrc.src = 'zout.gif'}
if (i == curLev){var imgSrc = eval('document.z' + i);imgSrc.src = 'zcur.gif'}
if (i > curLev){var imgSrc = eval('document.z' + i);imgSrc.src = 'zin.gif'}
}
} //увеличение мащаб скала
function zoomScale(){
var curScl = eval('scale' + curLev)
if (curScl){
var strScl = '0 ' + curScl + '
'
document.all.scale.innerHTML = strScl
}
}
//--показва картата според мащаба
function zoom(X,Y){
maxCols = scrCols
maxRows = scrRows
var oldMRows = curMRows
var oldMCols = curMCols
curMRows = eval('l'+curLev+'Rows')
curMCols = eval('l'+curLev+'Cols')
if (maxCols > curMCols){maxCols = curMCols}
if (maxRows > curMRows){maxRows = curMRows}
curRow = Math.floor(((Y + (curRow - 1) * pixRow) * curMRows) / (oldMRows * pixRow)- ((scrRows-1)/2)) +1
curCol = Math.floor(((X + (curCol - 1) * pixCol) * curMCols) / (oldMCols * pixCol)- ((scrCols-1)/2)) +1
if (curRow < 1){curRow = 1}
if (curCol < 1){curCol = 1}
if ((curCol+maxCols-1) > curMCols){
curCol = curMCols - maxCols + 1
}
if ((curRow+maxRows-1) > curMRows){curRow = curMRows - maxRows + 1}
for (r = 1; r <= scrRows; r++){
var rr = curRow + r - 1
for (c = 1; c <= scrCols; c++){
var cc = curCol + c - 1
var imgName = eval('document.c'+c+'r'+r)
if (c > maxCols || r > maxRows){
imgName.src = 'blanc.gif'
}else{
imgName.src = hfold + fold + '/l' + curLev + '-' + cc + 'x' + rr + '.jpg'
}
}
}
if (curLev == (maxLev - 1)){curZoomUp = false}
else {curZoomUp = true}
miniZoom()
zoomShow()
zoomScale()
}
// кликване в мини визуализацията картинка горе
function miniClick(){
var X
var Y
Y = clY + offY - 5
X = clX + offX - (440 -miniW - 20)
maxCols = scrCols
maxRows = scrRows
curMRows = eval('l'+curLev+'Rows')
curMCols = eval('l'+curLev+'Cols')
if (maxCols > curMCols){maxCols = curMCols}
if (maxRows > curMRows){maxRows = curMRows}
curRow = Math.floor(Y*curMRows/miniH - ((scrRows-1)/2)) +1
curCol = Math.floor(X*curMCols/miniW - ((scrCols-1)/2)) +1
if (curRow < 1){curRow = 1}
if (curCol < 1){curCol = 1}
if ((curCol+maxCols-1) > curMCols){
curCol = curMCols - maxCols + 1
}
if ((curRow+maxRows-1) > curMRows){
curRow = curMRows - maxRows + 1
}
for (r = 1; r <= scrRows; r++){
var rr = curRow + r - 1
for (c = 1; c <= scrCols; c++){
var cc = curCol + c - 1
var imgName = eval('document.c'+c+'r'+r)
if (c > maxCols || r > maxRows){
imgName.src = 'blanc.gif'
}else{
imgName.src = fold + '/l' + curLev + '-' + cc + 'x' + rr + '.jpg'
}
}
}
miniZoom()
zoomShow()
zoomScale()
}
function zoomEBox(){ //увеличава едно ниво при кликване на картата
if (clX <= (maxCols - 2) * pixCol && clY <= maxRows * pixRow){
if (curZoomUp){
zoomIn(clX,clY * 1.5)
}else{ //намалява едно ниво назад при кликване на картата
zoomOut(clX,clY)
}
}
}
function zoomBox(){ //увеличава едно ниво
if (clX <= maxCols * pixCol && clY <= maxRows * pixRow){
if (curZoomUp){
zoomIn(clX,clY)
}else{ //намалява едно ниво назад при кликване на картата
zoomOut(clX,clY)
}
}
}
//нагоре/надолу и на ляво
function mvUpLeft(){
if(curCol > 1 && curRow > 1){
mvUp()
mvLeft()
}else{document.mvUL.src = "downright.gif";setTimeout('document.mvUL.src = "upleft.gif"',500);}
}
function mvDownLeft(){
if(curCol > 1 && (curRow+maxRows-1) < curMRows){
mvDown()
mvLeft()
}else{document.mvDL.src = "upright.gif";setTimeout('document.mvDL.src = "downleft.gif"',500);}
}
//нагоре/надолу и на дясно
function mvUpRight(){
if((curCol+maxCols-1) < curMCols && curRow > 1){
mvUp()
mvRight()
}else{document.mvUR.src = "downleft.gif";setTimeout('document.mvUR.src = "upright.gif"',500);}
}
function mvDownRight(){
if((curRow+maxRows-1) < curMRows && (curCol+maxCols-1) < curMCols){
mvDown()
mvRight()
}else{document.mvDR.src = "upleft.gif";setTimeout('document.mvDR.src = "downright.gif"',500);}
}
// Event.CLICK кликване в малката карта
if (!document.all){
document.captureEvents(Event.CLICK)
document.onclick=getClick
}
function getClick(e){
clX = e.pageX - offX
clY = e.pageY - offY
}
function getClickIE(evt){
miniX = evt.clientX
miniY = evt.clientY
sT = document.body.scrollTop
clX = evt.clientX - offX
clY = evt.clientY - offY + sT
}
//показване на обект
function showObject(absX,absY){
var cMRows = eval('l'+(maxLev-1)+'Rows')
var cMCols = eval('l'+(maxLev-1)+'Cols')
var shX = Math.floor((absX * curMCols)/cMCols) - (curCol - 1) * pixCol
var shY = Math.floor((absY * curMRows)/cMRows) - (curRow - 1) * pixRow
curLev = maxLev - 1
zoom(shX,shY)
showPlace(absX,absY)
}
//показване на картата
function showPlace(absX,absY){
var shX = absX - (curCol - 1) * pixCol
var shY = absY - (curRow - 1) * pixRow
//показва колалцето над обекта
document.all.obj.style.left = shX - 9 + offX
document.all.obj.style.top = shY - 9 + offY
document.all.obj.style.visibility = 'visible'
document.all.obj.style.width = 50
document.all.obj.style.height = 50
}
//скриване на
function hidePlace(){
document.all.obj.style.visibility = 'hidden'}