/* generated javascript */
if (!window.skin) {
	var skin = 'monaco';
	var stylepath = 'http://images.wikia.com/common/releases_200911.3/skins';
}

/* MediaWiki:Common.js */
/* Any JavaScript here will be loaded for all users on every page load. */
/* hide heading on [[main_page]] */
   var mpTitle = "HammerWiki";
   var isMainPage = (document.title.substr(0, document.title.lastIndexOf(" - ")) == mpTitle);
   var isDiff = (document.location.search && (document.location.search.indexOf("diff=") != -1 || document.location.search.indexOf("oldid=") != -1));

   if (isMainPage && !isDiff) {
      document.write('<style type="text/css">/*<![CDATA[*/ #lastmod, #siteSub, #contentSub, h1.firstHeading { display: none !important; } /*]]>*/</style>');
   }

// **************************************************
// Experimental javascript countdown timer (Splarka)
// Version 0.0.3
// **************************************************
//
// Usage example:
//  <span class="countdown" style="display:none;">
//  Only <span class="countdowndate">January 01 2007 00:00:00 PST</span> until New years.
//  </span>
//  <span class="nocountdown">Javascript disabled.</span>

function updatetimer(i) {
  var now = new Date();
  var then = timers[i].eventdate;
  var diff = count=Math.floor((then.getTime()-now.getTime())/1000);

  // catch bad date strings
  if(isNaN(diff)) { 
    timers[i].firstChild.nodeValue = '** ' + timers[i].eventdate + ' **' ;
    return;
  }

  // determine plus/minus
  if(diff<0) {
    diff = -diff;
    var tpm = '';
  } else {
    var tpm = '';
  }

  // calcuate the diff
  var left = (diff%60) + ' seconds';
    diff=Math.floor(diff/60);
  if(diff > 0) left = (diff%60) + ' minutes ' + left;
    diff=Math.floor(diff/60);
  if(diff > 0) left = (diff%24) + ' hours ' + left;
    diff=Math.floor(diff/24);
  if(diff > 0) left = diff + ' days ' + left
  timers[i].firstChild.nodeValue = tpm + left;

  // a setInterval() is more efficient, but calling setTimeout()
  // makes errors break the script rather than infinitely recurse
  timeouts[i] = setTimeout('updatetimer(' + i + ')',1000);
}

function checktimers() {
  //hide 'nocountdown' and show 'countdown'
  var nocountdowns = getElementsByClassName(document, 'span', 'nocountdown');
  for(var i in nocountdowns) nocountdowns[i].style.display = 'none'
  var countdowns = getElementsByClassName(document, 'span', 'countdown');
  for(var i in countdowns) countdowns[i].style.display = 'inline'

  //set up global objects timers and timeouts.
  timers = getElementsByClassName(document, 'span', 'countdowndate');  //global
  timeouts = new Array(); // generic holder for the timeouts, global
  if(timers.length == 0) return;
  for(var i in timers) {
    timers[i].eventdate = new Date(timers[i].firstChild.nodeValue);
    updatetimer(i);  //start it up
  }
}
addOnloadHook(checktimers);

// **************************************************
//  - end -  Experimental javascript countdown timer
// ****************

/** Collapsible tables *********************************************************
 *
 *  Description: Allows tables to be collapsed, showing only the header. See
 *               [[Wikipedia:NavFrame]].
 *  Maintainers: [[User:R. Koot]]
 *
 *  Source:      http://en.wikipedia.org/wiki/MediaWiki:Common.js
 */

var autoCollapse = 0;
var collapseCaption = "hide";
var expandCaption = "show";
 
function hasClass(element, className){
   var Classes = element.className.split(" ");
   for (var i = 0; i < Classes.length; i++){
      if (Classes[i] == className){
         return (true);
      }
   }
   return (false);
}
 
function collapseTable(tableIndex)
{
   var Button = document.getElementById("collapseButton" + tableIndex);
   var Table = document.getElementById("collapsibleTable" + tableIndex);
 
   if (!Table || !Button){
      return false;
   }
 
   var Rows = Table.getElementsByTagName("tr"); 
 
   if (Button.firstChild.data == collapseCaption){
      for (var i = 1; i < Rows.length; i++){
         Rows[i].style.display = "none";
      }
      Button.firstChild.data = expandCaption;
   } else{
      for (var i = 1; i < Rows.length; i++){
         Rows[i].style.display = Rows[0].style.display;
      }
      Button.firstChild.data = collapseCaption;
   }
}
 
function createCollapseButtons()
{
   var tableIndex = 0;
   var NavigationBoxes = new Object();
   var Tables = document.getElementsByTagName("table");
 
   for(var i = 0; i < Tables.length; i++){
      if(hasClass(Tables[i], "collapsible")){
         NavigationBoxes[ tableIndex ] = Tables[i];
         Tables[i].setAttribute("id", "collapsibleTable" + tableIndex);
 
         var Button     = document.createElement("span");
         var ButtonLink = document.createElement("a");
         var ButtonText = document.createTextNode(collapseCaption);
 
         Button.style.styleFloat = "right";
         Button.style.cssFloat = "right";
         Button.style.fontWeight = "normal";
         Button.style.textAlign = "right";
         Button.style.width = "6em";
 
         ButtonLink.setAttribute("id", "collapseButton" + tableIndex);
         ButtonLink.setAttribute("href", "javascript:collapseTable(" + tableIndex + ");");
         ButtonLink.appendChild(ButtonText);
 
         Button.appendChild(document.createTextNode("["));
         Button.appendChild(ButtonLink);
         Button.appendChild(document.createTextNode("]"));
 
         var Header = Tables[i].getElementsByTagName("tr")[0].getElementsByTagName("th")[0];
         // only add button and increment count if there is a header row to work with
         if(Header){
            Header.insertBefore(Button, Header.childNodes[0]);
            tableIndex++;
         }
      }
   }
 
   for(var i = 0; i < tableIndex; i++){
      if(hasClass(NavigationBoxes[i], "collapsed") || (tableIndex >= autoCollapse && hasClass(NavigationBoxes[i], "autocollapse"))){
         collapseTable(i);
      }
   }
}
 
addOnloadHook(createCollapseButtons);
 
// **************************************************
//  - end -  Collapsible tables
// **************************************************

/* MediaWiki:Monaco.js */
