var p_countCache;
var p_arrImages = new Array();
var p_arrIdx = new Array();
var p_idxMax = 0;

function initPage()
{
  var el;
  var elname;
  var imgSrc;
  var randIdx;

  doInitImageIndexes();

  //Welcome picture
  //Random number between 1 and p_idxMax 
  randIdx = Math.floor(Math.random()*p_idxMax) + 1;
  
  //randIdx = 120;

  imgSrc = 'Gallery/g' + p_arrIdx[randIdx] + '.jpg';

  el = document.getElementById('imgRndWelcome');
  el.src = imgSrc;

  // Is random content from gallery
  var randIsGallery = Math.floor(Math.random()*10);

  //randIsGallery = 0;

  if (randIsGallery < 3)
  {
    doRandomGallery();
  }
  else
  {
    //Random number between 1 and 85
    randIdx = Math.floor(Math.random()*85) + 1;

    //randIdx = 85;

    elname = 'divRnd' + randIdx.toString();

    el = document.getElementById(elname);
    el.style.display = 'inline';
  }

  // Is random content from gallery
  var randFeat = Math.floor(Math.random()*10);

  if (randFeat < 3)
  {
    elname = 'divFeat1';
    el = document.getElementById(elname);
    el.style.display = 'inline';
  }
  else
  {
    //Random number between 2 and 22
    randIdx = Math.floor(Math.random()*20) + 1 + 1;

    randIdx = 21;

    elname = 'divFeat' + randIdx.toString();

    el = document.getElementById(elname);
    el.style.display = 'inline';
  }
  
  doSiteAnnouncement();

}

function doInitImageIndexes()
{
  //Candidate images
  p_arrIdx[0] = 10;
  p_arrIdx[1] = 1;
  p_arrIdx[2] = 6;
  p_arrIdx[3] = 8;
  p_arrIdx[4] = 9;

  p_arrIdx[5] = 15;
  p_arrIdx[6] = 435;
  p_arrIdx[7] = 19;
  p_arrIdx[8] = 20;
  p_arrIdx[9] = 23;

  p_arrIdx[10] = 24;
  p_arrIdx[11] = 26;
  p_arrIdx[12] = 27;
  p_arrIdx[13] = 29;
  p_arrIdx[14] = 34;

  p_arrIdx[15] = 36;
  p_arrIdx[16] = 37;
  p_arrIdx[17] = 41;
  p_arrIdx[18] = 45;
  p_arrIdx[19] = 53;

  p_arrIdx[20] = 54;
  p_arrIdx[21] = 59;
  p_arrIdx[22] = 61;
  p_arrIdx[23] = 67;
  p_arrIdx[24] = 71;

  p_arrIdx[25] = 73;
  p_arrIdx[26] = 75;
  p_arrIdx[27] = 78;
  p_arrIdx[28] = 81;
  p_arrIdx[29] = 85;

  p_arrIdx[30] = 439;
  p_arrIdx[31] = 92;
  p_arrIdx[32] = 97;
  p_arrIdx[33] = 101;
  p_arrIdx[34] = 104;

  p_arrIdx[35] = 107;
  p_arrIdx[36] = 118;
  p_arrIdx[37] = 133;
  p_arrIdx[38] = 134;
  p_arrIdx[39] = 135;

  p_arrIdx[40] = 145;
  p_arrIdx[41] = 146;
  p_arrIdx[42] = 147;
  p_arrIdx[43] = 153;
  p_arrIdx[44] = 157;

  p_arrIdx[45] = 158;
  p_arrIdx[46] = 163;
  p_arrIdx[47] = 167;
  p_arrIdx[48] = 171;
  p_arrIdx[49] = 172;

  p_arrIdx[50] = 178;
  p_arrIdx[51] = 181;
  p_arrIdx[52] = 186;
  p_arrIdx[53] = 187;
  p_arrIdx[54] = 199;

  p_arrIdx[55] = 203;
  p_arrIdx[56] = 209;
  p_arrIdx[57] = 214;
  p_arrIdx[58] = 218;
  p_arrIdx[59] = 220;

  p_arrIdx[60] = 224;
  p_arrIdx[61] = 233;
  p_arrIdx[62] = 243;
  p_arrIdx[63] = 248;
  p_arrIdx[64] = 249;

  p_arrIdx[65] = 253;
  p_arrIdx[66] = 260;
  p_arrIdx[67] = 263;
  p_arrIdx[68] = 272;
  p_arrIdx[69] = 273;

  p_arrIdx[70] = 283;
  p_arrIdx[71] = 288;
  p_arrIdx[72] = 297;
  p_arrIdx[73] = 298;
  p_arrIdx[74] = 303;

  p_arrIdx[75] = 304;
  p_arrIdx[76] = 305;
  p_arrIdx[77] = 313;
  p_arrIdx[78] = 318;
  p_arrIdx[79] = 436;

  p_arrIdx[80] = 329;
  p_arrIdx[81] = 333;
  p_arrIdx[82] = 339;
  p_arrIdx[83] = 344;
  p_arrIdx[84] = 355;

  p_arrIdx[85] = 369;
  p_arrIdx[86] = 374;
  p_arrIdx[87] = 384;
  p_arrIdx[88] = 387;
  p_arrIdx[89] = 444;

  p_arrIdx[90] = 399;
  p_arrIdx[91] = 400;
  p_arrIdx[92] = 401;
  p_arrIdx[93] = 404;
  p_arrIdx[94] = 405;

  p_arrIdx[95] = 419;
  p_arrIdx[96] = 409;
  p_arrIdx[97] = 414;
  p_arrIdx[98] = 416;
  p_arrIdx[99] = 152;

  p_arrIdx[100] = 524;
  p_arrIdx[101] = 434;
  p_arrIdx[102] = 429;
  p_arrIdx[103] = 430;
  p_arrIdx[104] = 431;

  p_arrIdx[105] = 454;
  p_arrIdx[106] = 459;
  p_arrIdx[107] = 464;
  p_arrIdx[108] = 469;
  p_arrIdx[109] = 470;

  p_arrIdx[110] = 474;
  p_arrIdx[111] = 475;
  p_arrIdx[112] = 479;
  p_arrIdx[113] = 470;
  p_arrIdx[114] = 484;

  p_arrIdx[115] = 485;
  p_arrIdx[116] = 489;
  p_arrIdx[117] = 504;
  p_arrIdx[118] = 505;
  p_arrIdx[119] = 519;
  p_arrIdx[120] = 520;

  p_arrIdx[121] = 525;

  p_idxMax = p_arrIdx.length-1;

}

function doRandomGallery()
{
  var arrRndIdx = new Array();

  p_countCache = 0;

  arrRndIdx = doSelectRandomIndexes(4, p_idxMax);

  p_arrImages[0] = new Image(); p_arrImages[0].src = 'Gallery/g' + p_arrIdx[arrRndIdx[0]] + '.jpg'; p_arrImages[0].OnLoad = doAnotherObjectCached();
  p_arrImages[1] = new Image(); p_arrImages[1].src = 'Gallery/g' + p_arrIdx[arrRndIdx[1]] + '.jpg'; p_arrImages[0].OnLoad = doAnotherObjectCached();
  p_arrImages[2] = new Image(); p_arrImages[2].src = 'Gallery/g' + p_arrIdx[arrRndIdx[2]] + '.jpg'; p_arrImages[0].OnLoad = doAnotherObjectCached();
  p_arrImages[3] = new Image(); p_arrImages[3].src = 'Gallery/g' + p_arrIdx[arrRndIdx[3]] + '.jpg'; p_arrImages[0].OnLoad = doAnotherObjectCached();

  //window.status = arrRndIdx[0] + "-" + arrRndIdx[1] + "-" + arrRndIdx[2] + "-" + arrRndIdx[3] + "-" + arrRndIdx[4];

}

function doSelectRandomIndexes(pNumberOfIndexes, pMaxIndex)
{
  //Return unique array of random indexes
  var arrRndIdx = new Array();
  var countIdx;
  var checkIdx;
  var bIdxOK;

  countIdx = 0;

  while (countIdx < pNumberOfIndexes)
  {
    arrRndIdx[countIdx] = Math.floor(Math.random()*pMaxIndex);

    bIdxOK = true;
    checkIdx = 0;
    while (checkIdx < countIdx)
    {
      if (arrRndIdx[checkIdx] == arrRndIdx[countIdx])
      {
        bIdxOK = false;
      }
      checkIdx++;
    }

    if (bIdxOK == true)
    {
      countIdx++;
    }
  }

  return arrRndIdx;
}

function doAnotherObjectCached()
{
  var el;

  var elImg1;
  var elImg2;
  var elImg3;
  var elImg4;

  p_countCache++;

  //window.status=countCache;

  if (p_countCache==4)
  {
    elImg1 = document.getElementById('imgRndGallery1');
    elImg2 = document.getElementById('imgRndGallery2');
    elImg3 = document.getElementById('imgRndGallery3');
    elImg4 = document.getElementById('imgRndGallery4');

    elImg1.src = p_arrImages[0].src;
    elImg2.src = p_arrImages[1].src;
    elImg3.src = p_arrImages[2].src;
    elImg4.src = p_arrImages[3].src;

    el = document.getElementById('divRndGallery');
    el.style.display = 'inline';
  }
}

var p_announcement_el;
var p_announcement_text;
var p_announcement_index;

function doSiteAnnouncement()
{

  var el = document.getElementById('divSiteAnnoucement');

  p_announcement_text = "Friday 22nd June 2007: OliverReed.net is now back online. The loss of availability of the website since Saturday 16th June 2007 was due to hardware maintenance/migration undertaken by the ISP that took longer than planned and which is now hopefully complete. Any future scheduled outages will be communicated through this site announcement banner.";

  p_announcement_el = document.getElementById('divSiteAnnoucementText');

  p_announcement_index = 0;


  //el.style.display = 'inline';
  

  if (el.style.display == "inline")
  {
    //Spell the announcement
    doSpellAnnouncement();
  }
}

function doSpellAnnouncement()
{

  var txt = p_announcement_text.charAt(p_announcement_index);

  if (txt == '<')
  {
    //Start of HTML tag, so get entire tag
    var i = p_announcement_text.indexOf('>', p_announcement_index);

    if (i > 0)
    {
      txt = p_announcement_text.substring(p_announcement_index, (i+1));
      p_announcement_index = i;
    }
    else
    {
      txt = p_announcement_text.substring(p_announcement_index, p_announcement_text.length);
      p_announcement_index = p_announcement_text.length;
    }
  }

  p_announcement_el.innerHTML = p_announcement_el.innerHTML + txt;

  p_announcement_index++;

  if (p_announcement_index <= p_announcement_text.length)
  {
    setTimeout('doSpellAnnouncement()', 50);
  }

}