/* (c) =KRoN= MCMXCIX */

var galArray
var galPtr
var galCap

var galH=0
var galW=0

function begGallery(caption){galCap=caption; galArray = new Array(); galArray.length=0; galPtr=0}

var narr=7

function galItem(url,desc,imgdesc,img,imgW,imgH,from)
{galArray.length+=narr;
 galArray[galPtr++]=desc; godesc=0
 galArray[galPtr++]=url;  gourl =1
 galArray[galPtr++]=img;  goimg =2
 galArray[galPtr++]=imgW; goimgw=3
 galArray[galPtr++]=imgH; goimgh=4
 galArray[galPtr++]=from; gofrom=5
 galArray[galPtr++]=imgdesc; goidsc=6
 if(galW<imgW)galW=imgW
}

function endGallery()
{

 var img=galArray
 var imgs=img.length/narr


 /*if(!width)*/ width=600;

 var i, cols=Math.floor(width/(galW+1))
 if(cols<1)cols=1
 ic=cols*Math.ceil(imgs/cols)-imgs
 mc=cols
 for(i=cols;i>Math.ceil(0.50*cols); i--)
 {c=i*Math.ceil(imgs/i)-imgs
  if(c<ic){ic=c;mc=i}
 }
 cols=mc
 if(imgs<cols)cols=imgs
 rows=Math.ceil(imgs/cols)

 
 first=-1

 with(document)
 {
  write('<center><table id=btab cellSpacing=0>')
  if(galCap)
  {
   write('<caption>'+galCap+'</caption>')
  }

  for(var row=0; row<rows; row++)
  {
   for(var col=0; col<cols; col++)
   {var i=(row*cols+col)*narr
     if(galH<img[i+goimgh])galH=img[i+goimgh]
   }
   if(first)first=0
   else write('<tr><td colSpan='+cols+'>&nbsp;</td></tr>')
   write('<tr>')
   //Photos
   for(var col=0; col<cols; col++)
   {var i=(row*cols+col)*narr
    if(i<galPtr)
    {write('<td align=center style=vertical-align:middle width='+galW+'height='+galH+'>')
     if(img[i+gourl])write('<a href="'+img[i+gourl]+'">')
     write('<img width='+img[i+goimgw]+' height='+img[i+goimgh]+' src="')
     if(img[i+goimg]!='')
      write(img[i+goimg])
     else 
      write('/images/web/np128w.gif width='+galW+' height='+galH)
     write('" border=0></a></th>')
    }
    else
     write('<td width='+galW+' height='+galH+'>&nbsp;</td>')
   }
   write('</tr><tr>')
   //Photo desc
   for(var col=0; col<cols; col++)
   {var i=(row*cols+col)*narr
    if(i<galPtr)
    {write('<td align=center '+(img[i+gofrom]?'':'rowSpan=2')+' width='+galW+'><small>')
     write(img[i+godesc]?img[i+godesc]:'&nbsp;')
     write('</small></td>')
    }
    else
     write('<td rowSpan=2>&nbsp;</td>')
   }
   write('</tr><tr>')
   //Copyr
   for(var col=0; col<cols; col++)
   {var i=(row*cols+col)*narr
    if(i<galPtr && img[i+gofrom])
    {write('<td align=center width='+galW+'><small>')
     write(img[i+gofrom])
     write('</small></td>')
    }
   }
   write('</tr><tr>')
   //Image desc
   for(var col=0; col<cols; col++)
   {var i=(row*cols+col)*narr
    if(i<galPtr)
    {write('<td align=center width='+galW+'><small>')
     write(img[i+goidsc])
     write('</small></td>')
    }
    else
     write('<td>&nbsp;</td>')
   }
   write('</tr>')
  }
  write('</table></center>')
 }
}

