/* must have defined a variable dataTypeG {US LS PT} */

var lsUSloadedG = false;
var usDataG = new Array();
var usTotalC = 0;/* total image available */
var usFirstC = 0;/* first image to show */
var usNextG = 0; /* next image to show */
var usLastC = 0; /* last image to show */
var usImgNameHC = "PORF"; 
var usWaitIdG = 0; /* used for timeOut control */
var usSmallC = "-8x8";
var usCntPerPageC = 16;

var usFirstCallG = true; /* is the first time call update screen */
var usWhiteG = new Image;
var usArrowG = new Object;

function lsInitPageInfo()
{ 
  var i, j;
  var pNo = 1;
  for(i=usFirstC;i;++pNo){
      for(j=0; i && j<usCntPerPageC; ++j, i=usDataG[i].nxt){
        usDataG[i].pNo = pNo;
	  usDataG[i].iNo = j;
      }/* for */
    }/* for */

}/* lsInitPageInfo() */


function usInitVars()
{   
    var i, j;

   usDataG[0] = new Object;
   usDataG[0].nam = "";
   usDataG[0].loc = "";
   usDataG[0].siz = "";
   usDataG[0].med = "";
   usDataG[0].dob = "";
   usDataG[0].pre = 0;
   usDataG[0].nxt = 0;
   usDataG[0].pNo = 0;
   usDataG[0].iNo = 0;

    for(i=1;i<=usTotalC;++i){
	if(usDataG[i].pre==0){
	  usFirstC = i;
        lsInitPageInfo();
	  usNextG = usFirstC;
	}
	if(usDataG[i].nxt==0){
	  usLastC = i;
	}
    }/* for */

    /* get these images up for later use */
    usWhiteG.src = "images/white-dot.gif";
    usArrowG.noArrow = new Image;  
    usArrowG.noArrow.src = usWhiteG.src;
    usArrowG.leftP = new Image;
    usArrowG.leftP.src = "images/LS-BACK.GIF";
    usArrowG.rightP = new Image;
    usArrowG.rightP.src = "images/LS-PLAY.GIF";
    usArrowG.stopP = new Image;
    usArrowG.stopP.src = "images/LS-STOP.GIF";
    usArrowG.clkP = new Image;
    usArrowG.clkP.src = "images/LS-CLK.GIF";

    return true;

}/* usInitVars() */

function lsShowBL()
{ 
  document.write("<TR BGCOLOR=\"WHITE\">");
  document.write("<TD COLSPAN=\"4\" WIDTH=\"480PX\" HEIGHT=\"3PX\"></TD>");
  document.write("</TR>");
}/* lsShowBL() */

function lsBuildPorfArg( first )
{
  var str;
  str = "ls-" +usImgNameHC 
        +".asp?imgNo=" +first 
        +"&typ=" + dataTypeG
	  +"&swOn="+ usShowOnG
        +"&ver="+ usVerG;
  return str;
}/* lsBuildPorfArg() */

function lsCheckShowOn( first )
{
  var str;

  if( usShowOnG && first && usDataG[first].nxt ){
	first = usDataG[first].nxt;
	document.location.href = lsBuildPorfArg( first );
  }
}/* lsCheckShowOn() */

function lsShowAllDetail(first)
{
  if( first && (first<=usTotalC) ){
    top.location.href = lsBuildPorfArg(first);
  }
  return true;
}/* lsShowAllDetail() */

function lsShowDetail( cnt )
{ var c, first;
  var imgName = usImgNameHC + cnt;

  /* locate the actual image number */
  if( usNextG ){
    c = usCntPerPageC;
    first = usDataG[usNextG].pre;
  } else {/* last page */
    c = (usTotalC % usCntPerPageC);
    if( !c ){
	c = usCntPerPageC;
    }
    first = usLastC;
  }

  c = c - cnt/* need to skip from the back */

  if( c>=0 ){
    while( first && c-- ){
	first = usDataG[first].pre;
    }
    lsShowAllDetail( first );
  }

  return true;

}/* lsShowDetail() */

function lsShowNextPage()
{ var i,j, cnt;
  var imgName, nn;
  var pNo;

  if( !lsUSloadedG ){
    lsLoadUS();
  }
  if( lsUSloadedG){
    cnt = 0;
    if( usFirstCallG ){/* need to get the blank formats */

     document.write("<TR BGCOLOR=\"#FFFFFF\"><TD VALIGN=\"TOP\" ALIGN=\"LEFT\">");
     document.write("<TABLE CELLPADDING=\"0\" CELLSPACING=\"0\" BORDER=\"0\">");

     for(i=0;i<4;++i){/* per row */
	lsShowBL();
	document.write("<TR BGCOLOR=\"WHITE\">");
	for(j=0; j<4; ++j){/* per col */
        ++cnt;
	  imgName = usImgNameHC + cnt;
        document.write("<TD VALIGN=\"TOP\" WIDTH=\"120PX\" HEIGHT=\"80PX\" ALIGN=\"CENTER\">");
	  document.write("<A HREF=\"JavaScript:lsShowDetail(" +cnt+ ")\">");
        document.write("<IMG SRC=\"images/white-8X8.gif\" BORDER=\"0\" NAME=\"" +imgName+ "\"></A>");
	  document.write("</TD>");
	}/* for */
      document.write("</TR>");
     }/* for */
      document.write("<TR BGCOLOR=\"WHITE\">");
      document.write("<TD COLSPAN=4 ALIGN=CENTER VALIGN=BOTTOM HEIGHT=\"30PX\"><IMG TITLE=\"Page Number\" SRC=\"images/LS-1.gif\" BORDER=\"0\" NAME=\"LS-LABLE\"></TD>");
      document.write("</TR>");

     lsShowBL();
     document.write("</TABLE></TD></TR>");

     usFirstCallG = false;

    } else {/* usFirstCallG */
      if(usNextG){
	  /* get the left arrow right */
	  if( usDataG[usNextG].pre ){
	    document.images["LEFTP"].src = usArrowG.leftP.src;
	  } else {
	    document.images["LEFTP"].src = usArrowG.noArrow.src;
        }
        pNo = usDataG[usNextG].pNo;
	  for(i=0;i<4;++i){/* per row */
	    for(j=0; j<4; ++j){/* per col */
            ++cnt;
	      imgName = usImgNameHC + cnt;
	      if( usNextG ){
		  nn = "LS-" +dataTypeG+ "/" +dataTypeG+usNextG+ usSmallC + ".GIF";
		  document.images[imgName].src = nn;
	        usNextG = usDataG[usNextG].nxt; 
	      } else {
		  document.images[imgName].src = usWhiteG.src;
	      }/* if */
	    }/* for */
	  }/* for */
	}/* if */
	/* get the right arrow right */
	if( usNextG ){
	  document.images["RIGHTP"].src = usArrowG.rightP.src;
	} else {
	  document.images["RIGHTP"].src = usArrowG.noArrow.src;
      }
	document.images["LS-LABLE"].src = "images/LS-"+pNo +".GIF";
    }
  }
  return true;
}/* lsShowNextPage() */

function lsBackLink(idx, cnt)
{
  while( idx && cnt ){
    idx = usDataG[idx].pre;
    --cnt;
  }

  return idx;

}/* lsBackLink() */

function lsShowThisPage(sid)
{ var i,j;
  var notfound = true;

  /* set 'usNextG' to the first img in the page that 'sid' resides */
  if( sid>0 ){
     while( usDataG[sid].iNo ){
	 sid = usDataG[sid].pre;
     }
     usNextG = sid;
  }/* if */
  lsShowNextPage();
}/* lsShowThisPage() */

function lsShowPrevPage()
{ var i, c;
  var refresh = 1;/* meaning true; 0 -- false */

  if( !lsUSloadedG ){
    lsLoadUS();
  }
  if( usFirstCallG && lsUSloadedG ){
    lsShowNextPage();
  }

  if( lsUSloadedG ){
    if (! usNextG ){
      usNextG = usLastC;
    } else {
	usNextG = usDataG[usNextG].pre;
    }
    if( usDataG[usNextG].pNo > 1 ){
    /* NOT showing the 1st page: now ship current page */
      while( usDataG[usNextG].iNo ) {
         usNextG = usDataG[usNextG].pre;
      }
      /* get the first of the page to show */
      do {
         usNextG = usDataG[usNextG].pre;
	} while( usDataG[usNextG].iNo );
    } else {
	refresh = 0;
    }
    if( usNextG && refresh){
      lsShowNextPage();
    }
  }

  return true;

}/* lsShowPrevPage() */


function lsLoadBackListFile()
{ var fName = "ls-pt.asp?PT="+dataTypeG+"&SID="+ usCurrImgG;
  if( usWaitIdG ){
    clearTimeout(usWaitIdG);
    usWaitIdG = 0;
  }

  document.location.href = fName;
  return true;
  
}/* lsLoadBackListFile() */


function lsShowNextPhoto()
{ var c = usDataG[usCurrImgG].nxt;
  if( usWaitIdG ){
    clearTimeout(usWaitIdG);
    usWaitIdG = 0;
 }
  if( c ){
     lsShowAllDetail(c);
  }
  return true;
}/* lsShowNextPhoto() */
 
function lsShowPrevPhoto()
{ var c = usDataG[usCurrImgG].pre;
  if( usWaitIdG ){
    clearTimeout(usWaitIdG);
    usWaitIdG = 0;
  }
  if( c ){
     lsShowAllDetail(c);
  }
  return true;
}/* lsShowPrevPhoto() */

function lsGetShowSpeed()
{
  var i, opt;
  var v = 0;

  opt = document.SPEED.swSpeed.options;

  for( i=opt.length; i--; ){
    if( opt[i].SELECTED ){
      v = opt[i].value;
      return v;
    }
  }/* for */

  return 0;

}/* lsGetShowSpeed() */

function lsShowSlid()
{
  var i, c, opt;

  if( usWaitIdG ){
    clearTimeout(usWaitIdG);
    usWaitIdG = 0;
  }

  if ( (c = lsGetShowSpeed()) ){
     usShowOnG = c;
  } else if ( !usShowOnG ){
     /* set default to 5 seconds */
     usShowOnG = 5;
  }
  lsCheckShowOn( usCurrImgG );

  return true;

}/* lsShowSlid() */


function lsShowStopPhoto()
{ 
  if( usWaitIdG ){
    clearTimeout(usWaitIdG);
    usWaitIdG = 0;
  }
  document.images["STOPP"].src = usArrowG.noArrow.src;

  return true;
}/* lsShowStopPhoto() */


function lsListPhotoInfo(n)
{ 
  var str;
  if ( n && (n<=usTotalC) ){
    str = usDataG[n].nam+"<br>" +usDataG[n].loc+"<br>" +usDataG[n].med+"<br>" +usDataG[n].siz+"<br>" +
			 usDataG[n].dob+"<br><br>" +"Doc# "+dataTypeG + n;
    document.write(str);
  }
  return true;
}/* lsListPhotoInfo() */

function lsTogglePhoto()
{
  if (usVerG == usSmallC){
    usVerG = "";
  } else {
    usVerG = usSmallC;
  }
  lsShowAllDetail( usCurrImgG );
}/* lsTogglePhoto() */

function lsShowPageLable(validVal, val)
{
  var i, lpg, id, pNo;

  pNo = val;

  if(validVal){
    if( pNo>0 && pNo<=usTotalC){
      pNo = usDataG[pNo].pNo;
    } else {
	pNo = 1;
    }
  } else {
    pNo = 1;
  }

  for(id=usFirstC, i=usDataG[usFirstC].pNo, lpg=usDataG[usLastC].pNo; i<=lpg; ++i){
     document.write("<A HREF=\"PREF"+ i + "\" name=\"PREF" + i + "\" onclick=\"lsShowThisPage(" + id + "); return false\">");
     document.write("<FONT FACE=\"Verdana, Arial, Helvetica\"  SIZE=\"2\" COLOR=\"BLUE\">" + i+ "</FONT></A>");
     document.write("&nbsp &nbsp &nbsp");
     do{
	 id = usDataG[id].nxt;
     } while( usDataG[id].pNo == i );
  }/* for */  
}/* lsShowPageLable() */

function stopit(evt) 
{
  if (navigator.appName == 'Netscape' && 
      (evt.which == 3)){
     alert('Sorry, right button disallowed.');
     return false;
  }
  if (navigator.appName == 'Microsoft Internet Explorer' && 
          (event.button == 2 || event.button == 3)) {
     alert('Sorry, right button disallowed.');
     return false;
  }

  return true;

}/* stopit */

function lsShowDataInit()
{
  document.onmousedown = stopit;
  document.onmouseup = stopit;
  return true;

}/* lsShowDataInit() */

function lsAdjustArrow4Photo( n )
{
  if( n && (n<=usTotalC) ){
    if(usDataG[n].pre){
      document.images["LEFTP"].src = usArrowG.leftP.src;
    } else {
      document.images["LEFTP"].src = usArrowG.noArrow.src;
    }

    if(usDataG[n].nxt){
      document.images["RIGHTP"].src = usArrowG.rightP.src;
    } else {
      document.images["RIGHTP"].src = usArrowG.noArrow.src;
    }
  }

  return true;
}/* lsAdjustArrow4Photo() */


