
/* Merged Plone Javascript file
 * This file is dynamically assembled from separate parts.
 * Some of these parts have 3rd party licenses or copyright information attached
 * Such information is valid for that section,
 * not for the entire composite file
 * originating files are separated by - filename.js -
 */

/* - splash.js - */
/*@cc_on @*/
/*@if (1)
if (typeof __is_ie7 == 'undefined')
{
    Array.prototype.indexOf = function (item)
    {
        for (var i = 0; i < this.length; ++i)
        {
            if (this[i] == item)
                return i;
        }
        return -1;
    }

    function add_class(element, name)
    {
        var classes = element.className.split(/\s+/);
        var index = classes.indexOf(name);
        if (index < 0)
            classes.push(name);
        element.className = classes.join(' ');
    }

    function remove_class(element, name)
    {
        var classes = element.className.split(/\s+/);
        var index = classes.indexOf(name);
        if (index >= 0)
            classes.splice(index, 1);
        element.className = classes.join(' ');
    }
}
/*@end @*/

function splash_init()
{
    if (arguments.callee.done)
        return;
    arguments.callee.done = true;

    if (!document || !document.getElementById)
        return;

    var splash = document.getElementById('splash');
    if (!splash)
        return;

    var a = document.createElement('a');
    var img = document.createElement('img');

    a.appendChild(img);
    splash.appendChild(a);

    var rnd = Math.floor(0 + (splashes.length) * Math.random());
    img.src = splashes[rnd][0];
    a.href = splashes[rnd][1];

/*@cc_on @*/
/*@if (1)
    if (typeof __is_ie7 != 'undefined')
        return;

    var nav = document.getElementById('sections-list');
    if (!nav)
        return;

    for (var i = 0; i < nav.childNodes.length; ++i)
    {
        var child = nav.childNodes[i];
        if (child.nodeName.toLowerCase() != 'li')
            continue;
        child.onmouseover = function () { add_class(this, 'hover'); }
        child.onmouseout = function () { remove_class(this, 'hover'); }
    }
/*@end @*/
}

window.onload = splash_init;


/* - styles.js - */
/* http://dean.edwards.name/weblog/2005/09/busted/ */

var menus, titles, sl, sr;

function addEvent(obj, type, fn)
{
   if (obj.addEventListener)
      obj.addEventListener(type, fn, false);
   else if (obj.attachEvent)
   {
      obj["e"+type+fn] = fn;
      obj[type+fn] = function() { obj["e"+type+fn](window.event); }
      obj.attachEvent("on"+type, obj[type+fn]);
   }
}

function menuover()
{
   if (this.id.indexOf("-title") == -1)
   {
      var menu = menus[this.id + "-title"];
      var title = titles[this.id + "-title"];
      title.className = "hover";
   }
   else
      var menu = menus[this.id];

   if (!menu)
      return;

   menu.style.display = "block";
}

function menuout()
{
   if (this.id.indexOf("-title") == -1)
   {
      var menu = menus[this.id + "-title"];
      var title = titles[this.id + "-title"];
      title.className = "";
   }
   else
      var menu = menus[this.id];

   if (!menu)
      return;

   menu.style.display = "none";
}

function init()
{
   if (arguments.callee.done)
      return;
   arguments.callee.done = true;

   if (!document || !document.getElementById)
      return;

   var body_element = document.getElementById('body');
   if (!body_element || body_element.className != 'splash')
      return;

   var menulist = document.getElementById("subsections-list");
   if (!menulist)
      return;

   menus = new Object();
   titles = new Object();
  
   for (var i = 0; i < menulist.childNodes.length; ++i)
   {
      var child = menulist.childNodes[i];
      var name = child.nodeName.toLowerCase();
      if (name == "dt")
      {
         for (var j = 0; j < child.childNodes.length; ++j)
	 {
	    var grandchild = child.childNodes[j];
            var grandname = grandchild.nodeName.toLowerCase();
            if (grandname == "a")
            {
               titles[child.id] = grandchild;
	       break;
            }
	 }
      }
      else if (name == "dd")
         menus[child.id + "-title"] = child;
      else
         continue;

      addEvent(child, "mouseover", menuover);
      addEvent(child, "mouseout", menuout);
   }
}

function ie_init()
{
   if (arguments.callee.done)
      return;
   arguments.callee.done = true;

   init();

   if (!document || !document.getElementById)
      return;

   sl = document.getElementById('shadow-left');
   sr = document.getElementById('shadow-right');

   if (!sl || !sr || !sl.style || !sl.offsetParent)
      return;

   sl.style.display = 'block';
   sr.style.display = 'block';
   sl.style.height = sl.offsetParent.offsetHeight + 'px';
   sr.style.height = sr.offsetParent.offsetHeight + 'px';

   window.onresize = function()
   {
      sl.style.height = sl.offsetParent.offsetHeight + 'px';
      sr.style.height = sr.offsetParent.offsetHeight + 'px';
   }

   window.onscroll = function()
   {
      sl.style.height = sl.offsetParent.offsetHeight + 'px';
      sr.style.height = sr.offsetParent.offsetHeight + 'px';
   }
}

if (document.addEventListener)
   document.addEventListener("DOMContentLoaded", init, null);

if (navigator.appName == "Microsoft Internet Explorer")
	window.onload = ie_init;
else
   window.onload = init;
