/*************************************************************** * Suzy's Javascript Photo Album, version 9.0, November 5, 2004 * * Changed this version:  The photoalbum has gone vertical! * * This javascript may not be used on other sites without prior permission. * * You may contact me at kitykity@hotmail.com for assistance, *      with the subject "Javascript Photo Album."  *     ***************************************************************/self.name = "main"; // If you are using frames, change "main" to the name of the frame that the photoalbum is in.current = 0; // Sets the current picture being shown to the first one.ActiveVar = 0; // Sets up the variable that counts the pictures.var ActiveArray = new Array() // Sets up the active array.for (loop=0; loop < MainVar; loop++) {  ActiveArray[ActiveVar++] = new Fix(MainArray[loop].DatVal, MainArray[loop].PicVal, MainArray[loop].TitVal, MainArray[loop].CatVal, MainArray[loop].TxtVal)}function DisplayCategories() { // Lists out the categories.  TotalCategories = SuzyCategory.length;  for (loop=0; loop < TotalCategories; loop++)  {    document.write("<option value=" + SuzyCategory[loop] + ">" + ReplaceChars(SuzyCategory[loop]) + "</option>");  }}function FindPic() { // The search for a photo feature.  TotalFound = 0;  SearchString = document.SuzyForm.SearchWord.value;  SearchString = SearchString.toLowerCase();  WriteResults = window.open("","resultwindow","height=310, width=290, toolbar=0, status=0, menubar=0, resizable=1, scrollbars=1");  WriteResults.document.open();  WriteResults.document.write('<style type=text/css>body{background:url(parchment.jpg); font:8pt verdana}'    + 'a{text-decoration:none}'	+ 'img{border:0px ridge #ffaaaa;  vertical-align:middle}'	+ '</style>'    + 'You searched for:  <i>' + SearchString + '</i>'	+ '<br>Category:  <i>' + parent.document.SuzyForm.CategoryDropdown.options.value + '</i>'	+ '<p><b>Results:</b><br>');  for (loop=0; loop < ActiveVar ; loop++) {    Keyword = ActiveArray[loop].TxtVal;    Keyword = Keyword.toLowerCase();    URL = ActiveArray[loop].PicVal;    title = ActiveArray[loop].TitVal;    title = title.toLowerCase();    SearchResult = Keyword.indexOf(SearchString);    SearchResult2 = title.indexOf(SearchString);    if (SearchResult != "-1" || SearchResult2 != "-1") {      WriteResults.document.write('<p><a href=javascript:ShowSuzyPic(' + loop + '); target="main"><img src=' + ActiveArray[loop].PicVal + '></a>  ' + title);      TotalFound++;    }  }  WriteResults.document.write('<p><b>Returned ' + TotalFound + ' results.</b><p><a href="javascript:window.close();">close window</a>');  WriteResults.document.close();}function LoadPiclist() { // Loads initial list of pictures on web page.  for (loop=0; loop < MainVar; loop++)  {    document.write("<option value=" + ActiveArray[loop].PicVal + ">" + ActiveArray[loop].TitVal + "</option>");  }}function LoadNextPic()  { // Loads next picture for faster operation.	NextImage = new Image();	NextPic = current + 1;    if (NextPic>=ActiveVar) NextPic = 0;    NextImage.src = ActiveArray[NextPic].PicVal;}function NextSuzyPic() { // Flips to the next photo.  TotalImages = document.SuzyForm.SuzyDropdown.options.length;  current++;  if (current>=ActiveVar) current = 0;  ShowSuzyPic(current);}LoadThis = 0;function PreLoader() { // If checked, preloads all images into cache.  Five second interval between pics.  if (SuzyForm.PreloadPics.checked && ++LoadThis < MainVar) {    ShowingImage = new Image();    ShowingImage.src = MainArray[LoadThis].PicVal;	window.status="Pre-Loading image... '" + MainArray[LoadThis].PicVal + "'";    RunLoader();  } else {	window.status=" ";  }}function PreviousSuzyPic() { // Flips to the previous photo.  current--;  if(current<0) current = ActiveVar - 1;  ShowSuzyPic(current);}function RandomSuzyPic() { // Shows a random photo.  randompic = Math.floor(Math.random()*ActiveVar);  ShowSuzyPic(randompic);}function ReplaceChars(entry) { // Replaces the _'s in cat names to make it pretty.  out = "_"; // replace this  add = " "; // with this  temp = "" + entry; // temporary holder  while (temp.indexOf(out)>-1) {    pos= temp.indexOf(out);    temp = "" + (temp.substring(0, pos) + add +     temp.substring((pos + out.length), temp.length));  }return temp;// document.subform.text.value = temp;}function RunLoader() { // Pre-loads all images every 5 seconds, if checkbox is selected.  timerLoad = setTimeout("PreLoader()",5000)}function RunSlideShow() { // Shuffles the photos in a slide show.    timerSlideShow = setTimeout("NextSuzyPic();",document.SuzyForm.Timer.value*1000)}function ShowSuzyCategory(picked) { // Shows the pictures in that category.  ActiveArray.length = 0;  PicList = "<SELECT size=13 style=' font:8pt verdana' name='SuzyDropdown' onChange='ShowSuzyPic(SuzyForm.SuzyDropdown.options.selectedIndex);'>";  ActiveVar = 0;  current = 0;  for (loop=0; loop < MainVar; loop++) {    if (MainArray[loop].CatVal.toLowerCase() == picked.toLowerCase() || picked == "all") {      ActiveArray[ActiveVar++] = new Fix(MainArray[loop].DatVal, MainArray[loop].PicVal, MainArray[loop].TitVal, MainArray[loop].CatVal, MainArray[loop].TxtVal)     PicList = PicList + "<option value=" + MainArray[loop].PicVal + ">" + MainArray[loop].TitVal + "</option>"; 	}   }  PicList = PicList + "</select>";  document.getElementById("PicSpot").innerHTML = PicList;}function ShowSuzyPic(newpic) { // Shows the photo and text on the page.  current = newpic;  SelectionBox = document.SuzyForm.SuzyDropdown;  SelectionBox.options[current].selected = true;  document.getElementById("SuzySpot").innerHTML = '<a href=javascript:SuzyPicRemote("' + ActiveArray[current].PicVal + '");><img name="PicShowing" src=' + ActiveArray[current].PicVal + ' border=0 style="border:0px solid gray;"></a>';  document.getElementById("Journal").outerHTML = '<div id=journal><br><b>' + ActiveArray[current].TitVal + '</b><p>' + ActiveArray[current].DatVal + '<p style="text-align:justify; text-indent:25px">' + ActiveArray[current].TxtVal + '</div>';  if (document.SuzyForm.WhereView[1].checked) {    timerID = setTimeout("SuzyPicRemote(ActiveArray[current].PicVal)",1000)  }  if (document.SuzyForm.SelectedMode[0].checked) {    timerSlideShow = setTimeout("NextSuzyPic();",document.SuzyForm.Timer.value*0)	LoadNextPic();  } else {    LoadNextPic();  }}function SuzyPicRemote(picName) { // Pops up the photo in a remote window.    ShowingImage = new Image();    ShowingImage.src = picName;    wid = ShowingImage.width + 50;    hei = ShowingImage.height + 70;  if (wid < 30 || hei < 30) {    wid=650;    hei=490;  }  if (screen.width < wid || screen.height < hei) {    wid = screen.width - 50;    hei = screen.height - 50;  }  OpenWindow = window.open("", "remoteWin", "resizable=1, scrollbars=1, toolbar=0, left=15, top=10, width=" + wid + ", height=" + hei);  OpenWindow.document.open();  OpenWindow.document.write('<html><head><link href="stylesheets/style1.css" media="screen" rel="Stylesheet" type="text/css" /><title>' + '</title></head>'    + '<body style="background:url(parchment.jpg); font:8pt verdana; margin:2px; "><center>' + '<br>'    + '<img src=' + picName + '><br>' 	+ '<br><div style="width:290px;"><a href="javascript:window.close();" class="green" style=" text-decoration:none; text-align:right; float:right;">X</a></div></center></body></html>');  OpenWindow.document.close();}