function vToggleSearchForm ()
{
  var sDivID        = "SearchFormTable";
  var oReference    = oGetReferenceToDIV (sDivID);
  var sClassHidden  = "SearchFormTableHidden";
  var sClassDisplay = "SearchFormTableVisible";
  
  if (oReference.className == sClassDisplay) oReference.className = sClassHidden;
  else if (oReference.className == sClassHidden) oReference.className = sClassDisplay;  
}

function vPopupWindow (URL, nWidth, nHeight) 
{
  dCurrentDate = new Date();
  tCurrentTime = dCurrentDate.getTime();
  
  // Calculate screen resolution and dimensions for popup window
  nLeft   = (screen.width / 2) - (nWidth / 2);
  nTop    = (screen.height / 2) - ((nHeight / 3) * 2);

  // Create popup window
  sOptions  = "toolbar=0, scrollbars=1, location=0, statusbar=0, menubar=0, resizable=0, width=" + nWidth + ", height=" + nHeight + ", left=" + nLeft + ", top=" + nTop;
  sVariable = "Page" + tCurrentTime;
  sTitle    = tCurrentTime;

  // Display popup window  
  sEval = sVariable + " = window.open (URL, '" + sTitle + "','" + sOptions + "');";
  eval (sEval);
  
  // Prevent anchors from following link specified by HREF attribute
  //return false;
}

function vLinkPopupWindow (URL, nWidth, nHeight) 
{
  dCurrentDate = new Date();
  tCurrentTime = dCurrentDate.getTime();
  
  // Calculate screen resolution and dimensions for popup window
  nLeft   = (screen.width / 2) - (nWidth / 2);
  nTop    = (screen.height / 2) - ((nHeight / 3) * 2);

  // Create popup window
  sOptions  = "toolbar=1, scrollbars=1, location=1, statusbar=1, menubar=1, resizable=1, width=" + nWidth + ", height=" + nHeight + ", left=" + nLeft + ", top=" + nTop;
  sVariable = "Page" + tCurrentTime;
  sTitle    = tCurrentTime;

  // Display popup window  
  sEval = sVariable + " = window.open (URL, '" + sTitle + "','" + sOptions + "');";
  eval (sEval);
  
  // Prevent anchors from following link specified by HREF attribute
  //return false;
}

// Get reference to any DIV element through ID tag
function oGetReferenceToDIV (sDivID, oDoc)
{
  if (document.getElementById) 
  {
    return document.getElementById (sDivID); 
  }
  if (document.all) 
  {
    return document.all[sDivID]; 
  }
  if (!oDoc) 
  { 
    oDoc = document; 
  }
  if (document.layers) 
  {
    if (oDoc.layers[sDivID]) 
	  { 
	  return oDoc.layers[sDivID]; 
	  } 
	  else 
  	{
      // Iterate through all child layers
      for (var x = 0, y; !y && x < oDoc.layers.length; x++) 
	    {
        // Return current layer
        y = getReferenceToDIV (sDivID, oDoc.layers[x].document); 
	    }
      return y; 
	  } 
  }
  return false;
}

function vDisplayServerImage (nID)
{
  var sDivID        = "ServerImage" + nID;
  var oReference    = oGetReferenceToDIV (sDivID);
  var sClassHidden  = "HiddenServerImage";
  var sClassDisplay = "VisibleServerImage";
  
  if (oReference.className == sClassDisplay) oReference.className = sClassHidden;
  else if (oReference.className == sClassHidden) oReference.className = sClassDisplay;
}

function vDisplayServerPlayers (nID)
{
  var sDivID        = "ServerPlayers" + nID;
  var oReference    = oGetReferenceToDIV (sDivID);
  var sClassHidden  = "HiddenServerPlayers";
  var sClassDisplay = "VisibleServerPlayers";
  
  if (oReference.className == sClassDisplay) oReference.className = sClassHidden;
  else if (oReference.className == sClassHidden) oReference.className = sClassDisplay;
}

function vDisplayServerSettings (nID)
{
  var sDivID        = "ServerSettings" + nID;
  var oReference    = oGetReferenceToDIV (sDivID);
  var sClassHidden  = "HiddenServerPlayers";
  var sClassDisplay = "VisibleServerPlayers";
  
  if (oReference.className == sClassDisplay) oReference.className = sClassHidden;
  else if (oReference.className == sClassHidden) oReference.className = sClassDisplay;
}

// Initialise map pull-down lists in challenge us form
function vInitialiseMaps (oForm)
{
  var nSquad = oForm.squad.value;
  var oReference = 0;
  var sClassHidden = "MapSelectHidden";
  var sClassDisplay = "MapSelectDisplay";
  var bSquadSelected = false;
  
  oReference = oGetReferenceToDIV ('map_bf2142');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_cod5');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_cod4');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_caeu');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_css');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_aa3');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_ffow');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_op7');
  oReference.className = sClassHidden;
  oReference = oGetReferenceToDIV ('map_bfh');
  oReference.className = sClassHidden;
  
  oReference = oGetReferenceToDIV ('map_none');
  oReference.className = sClassHidden;
  
  // Battlefield 2142 squads
  if (nSquad == 11 || nSquad == 12)
  {
    oReference = oGetReferenceToDIV ('map_bf2142');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // Call of Duty:World at War squads
  if (nSquad == 16 || nSquad == 13)
  {
    oReference = oGetReferenceToDIV ('map_cod5');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // Call of Duty 4 squad
  if (nSquad == 21 || nSquad == 22)
  {
    oReference = oGetReferenceToDIV ('map_cod4');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // Combat Arms EU squad
  if (nSquad == 17)
  {
    oReference = oGetReferenceToDIV ('map_caeu');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // Counter-Strike:Source
  if (nSquad == 18)
  {
    oReference = oGetReferenceToDIV ('map_css');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // America's Army 3
  if (nSquad == 25)
  {
    oReference = oGetReferenceToDIV ('map_aa3');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  
  // Frontlines Fuel of War
  if (nSquad == 23)
  {
    oReference = oGetReferenceToDIV ('map_ffow');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // Operation 7
  if (nSquad == 26)
  {
    oReference = oGetReferenceToDIV ('map_op7');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // Battlefield Heroes
  if (nSquad == 24)
  {
    oReference = oGetReferenceToDIV ('map_bfh');
    oReference.className = sClassDisplay;
    bSquadSelected = true;
  }
  // No valid squad selected
  if (!bSquadSelected)
  {
    oReference = oGetReferenceToDIV ('map_none');
    oReference.className = sClassDisplay;
  }
}

function vLiteImage (nID)
{
  var oReference = 0;
  oReference = oGetReferenceToDIV ("Item"+nID);
  if (oReference)
  {
    oReference.src = "/js/SmartMenu/Item"+nID+"_lit.png";
  }
}

function vDimImage (nID)
{
  var oReference = 0;
  oReference = oGetReferenceToDIV ("Item"+nID);
  if (oReference)
  {
    oReference.src = "/js/SmartMenu/Item"+nID+".png";
  }
}

// Global handle to Radio Window
var oRadioHandle = 0;
function vOpenRadioWindow ()
{
  var sURL    = '/radio/';
  var nWidth  = 420;
  var nHeight = 480;
  var sTitle  = "DoubleDutchRadio";

  if (oRadioHandle && !oRadioHandle.closed)
  {
    oRadioHandle.focus ();
  }
  else
  {
    // Calculate screen resolution and dimensions for popup window
    var nLeft    = (screen.width / 2) - (nWidth / 2);
    var nTop     = (screen.height / 2) - ((nHeight / 3) * 2);
    var sOptions = "toolbar=0, scrollbars=0, location=0, statusbar=0, menubar=0, resizable=1, width=" + nWidth + ", height=" + nHeight + ", left=" + nLeft + ", top=" + nTop;

    // Create popup window
    oRadioHandle = window.open (sURL, sTitle, sOptions);
  }
}

// Global handle to Radio Window
var oChatHandle = 0;
function vOpenChatWindow ()
{
  var sURL    = '/chat/';
  var nWidth  = 640;
  var nHeight = 480;
  var sTitle  = "DoubleDutchChat";

  if (oChatHandle && !oChatHandle.closed)
  {
    oChatHandle.focus ();
  }
  else
  {
    // Calculate screen resolution and dimensions for popup window
    var nLeft    = (screen.width / 2) - (nWidth / 2);
    var nTop     = (screen.height / 2) - ((nHeight / 3) * 2);
    var sOptions = "toolbar=0, scrollbars=0, location=0, statusbar=0, menubar=0, resizable=1, width=" + nWidth + ", height=" + nHeight + ", left=" + nLeft + ", top=" + nTop;

    // Create popup window
    oChatHandle = window.open (sURL, sTitle, sOptions);
  }
}

// Global handle to Shop Window
var oShopHandle = 0;
function vOpenShopWindow ()
{
  var sURL    = 'http://shop.doubledutchclan.nl/';
  var nWidth  = 640;
  var nHeight = 640;
  var sTitle  = "DoubleDutchShop";

  if (oShopHandle && !oShopHandle.closed)
  {
    oShopHandle.focus ();
  }
  else
  {
    // Calculate screen resolution and dimensions for popup window
    var nLeft    = (screen.width / 2) - (nWidth / 2);
    var nTop     = (screen.height / 2) - ((nHeight / 3) * 2);
    var sOptions = "toolbar=0, scrollbars=1, location=0, statusbar=0, menubar=0, resizable=1, width=" + nWidth + ", height=" + nHeight + ", left=" + nLeft + ", top=" + nTop;

    // Create popup window
    oShopHandle = window.open (sURL, sTitle, sOptions);
  }
}

vToggleSQLOutput ();
function vToggleSQLOutput ()
{
  var oContainer = document.getElementById ('SQLOutputContainer');
  if (oContainer)
  {
	  if (oContainer.style.display == 'none')
	  {
	    oContainer.style.display = 'block';
	  }
	  else
	  {
		oContainer.style.display = 'none';
	  }
  }
}

vToggleTemplateOutput ();
function vToggleTemplateOutput ()
{
  var oContainer = document.getElementById ('TemplateOutputContainer');
  if (oContainer)
  {
	  if (oContainer.style.display == 'none')
	  {
	    oContainer.style.display = 'block';
	  }
	  else
	  {
		oContainer.style.display = 'none';
	  }
  }
}

function vSelectAllShoutBoxMessages ()
{
	 $('input:checkbox').each( function() {
		 this.checked = !this.checked;
		 });
}
