(function(){

if (!window['FX']) { window['FX'] = {}; }

function isCompatible(other) {
    if( other===false
        || !Array.prototype.push
        || !Object.hasOwnProperty
        || !document.createElement
        || !document.getElementsByTagName
        ) {
        return false;
    }
    return true;
}
window['FX']['isCompatible'] = isCompatible;

function $() {
    var elements = new Array();

    for (var i = 0; i < arguments.length; i++) {
        var element = arguments[i];
        if (typeof element == 'string') {
            element = document.getElementById(element);
        }
        if (arguments.length == 1) {
            return element;
        }
        elements.push(element);
    }
    return elements;
};
window['FX']['$'] = $;

function addEvent( node, type, listener ) {
    if(!isCompatible()) { return false }
    if(!(node = $(node))) return false;

    if (node.addEventListener) {
        node.addEventListener( type, listener, false );
        return true;
    } else if(node.attachEvent) {
        node['e'+type+listener] = listener;
        node[type+listener] = function(){node['e'+type+listener]( window.event );}
        node.attachEvent( 'on'+type, node[type+listener] );
        return true;
    }

    return false;
};
window['FX']['addEvent'] = addEvent;

function walkElementsLinear(func, node) {
    var root = node || window.document;
    var nodes = root.getElementsByTagName("*");
    for(var i = 0 ; i < nodes.length ; i++) {
        func.call(nodes[i]);
    }
};
window['FX']['walkElementsLinear'] = walkElementsLinear;

function getElementsByClassName(className, tag, parent){
    parent = parent || document;
    if(!(parent = $(parent))) return false;

    var allTags = (tag == "*" && parent.all) ? parent.all : parent.getElementsByTagName(tag);
    var matchingElements = new Array();

    className = className.replace(/\-/g, "\\-");
    var regex = new RegExp("(^|\\s)" + className + "(\\s|$)");

    var element;
    for(var i=0; i<allTags.length; i++){
        element = allTags[i];
        if(regex.test(element.className)){
            matchingElements.push(element);
        }
    }

    return matchingElements;
};
window['FX']['getElementsByClassName'] = getElementsByClassName;

function imageNewName(img_node, modifier, replace) {
  var ext_i = img_node.src.lastIndexOf('.');
  var path = img_node.src.substr(0, ext_i);
  var ext = img_node.src.substr( ext_i, img_node.src.length );

  if (replace == true) {
      return path.replace(modifier, '') + ext;
  } else {
      return path + modifier + ext;
  }
}

function fixhover() {
  if (!(fix=$('fix-hover'))) return false;

  var links = new Array();
  walkElementsLinear( function() {
      if ( this.nodeName == 'IMG' ) {
        links.push(this);
      }
    },
    fix
  );

  for (var i=0;i<links.length;i++) {
    if (links[i].className == 'selected') {
      links[i].src = imageNewName(links[i], '-selected');
      continue;
    }

    links[i].onmouseover = function() {
      this.src = imageNewName(this, '-hover');
    }

    links[i].onmouseout = function() {
      this.src = imageNewName(this, '-hover', true);
    }
  }

  return true;
}
window['FX']['fixhover'] = fixhover;

})();
FX.addEvent(window, 'load', FX.fixhover);

/*============================================*/
	function size_minus()
        {  
			$('text').setStyle({			  
			  fontSize: '0.9em'}); 			
			setDefault ();
			$('a_plus').setStyle({			  
			  color: '#757575',
			  textDecoration: 'none'});  
        }
        
    function size_plus()
        {   
			$('text').setStyle({			  
			  fontSize: '1.1em' });			  
			setDefault ();			  
			$('a_minus').setStyle({			  
			  color: '#757575',
			  textDecoration: 'none'});     
        }
		
	function size_normal()
        {   
			$('text').setStyle({			  
			  fontSize: '1.0em' });			  
			setDefault ();			  
			$('a_normal').setStyle({			  
			  color: '#757575',
			  textDecoration: 'none'});   
        }	
        
    function setDefault ()
		{
			$('a_plus').setStyle({			  
			  color: '#FEB400',
			  textDecoration: 'underline'}); 
			  
			$('a_normal').setStyle({			  
			  color: '#FEB400',
			  textDecoration: 'underline'}); 
			  
			$('a_minus').setStyle({			  
			  color: '#FEB400',
			  textDecoration: 'underline'});  
		}    