//CONSOLE LOGGING FOR IE
if (!window.console || !console.firebug){
    var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
    window.console = {};
    for (var i=0; i<names.length; ++i) window.console[names[i]] = function(){};
}
///////////////////////

/* ============================================
 * This tooltip class uses prototype 1.6.x.
 * ============================================ */

Tooltip = Class.create({
   initialize: function(tooltips) {
       this.mouseX = 0;
       this.mouseY = 0;
       this.triggers = $$(tooltips);
       this.triggers.invoke('observe', 'mouseover', this.showTip.bind(this));
       this.triggers.invoke('observe', 'mouseout', this.hideTip.bind(this));
       this.follow = this.positionTip.bindAsEventListener(this);
   },
   positionTip: function(e) {
       this.mouseX = Event.pointerX(e);
       this.mouseY = Event.pointerY(e);
       if ($('tooltip').visible) {
           $('tooltip').style.left = this.mouseX + "px";
           $('tooltip').style.top = this.mouseY + "px";
       }
   },
   showTip: function(e) {
       var target   = Event.element(e);
       Event.observe(document, 'mousemove', this.follow);
       $('tooltip').show();
       $('tooltip-text').innerHTML = target.innerHTML;
       $('tooltip').style.width = $('tooltip-text').getWidth() + "px";
   },
   hideTip: function() {
       $('tooltip').hide();
       Event.stopObserving(document, 'mousemove', this.follow);
   }
});
Tooltip.init = function() {
    Tooltip.instance = new Tooltip('.tooltips li');
}
Event.observe(document, 'dom:loaded', Tooltip.init);

XMLParser = Class.create({
    initialize: function() {
        var args = {};
        var query = location.search.substring(1);
        var pairs = query.split("&");
        for (var i=0; i<pairs.length; i++) {
            var pos = pairs[i].indexOf('=');
            if (pos == -1) continue;
            var name = pairs[i].substring(0,pos);
            var value = pairs[i].substring(pos+1);
            value = decodeURIComponent(value);
            args[name] = value;
        }
        this.setReason(args.path, args.rid);
    },
    setReason: function(path, rid) {
        new Ajax.Request('config/'+path+'.xml', {
            method: 'get',
            onSuccess: function(transport) {
                var xo = new XML.ObjTree();
                var feed = xo.parseDOM(transport.responseXML.documentElement).particles.particle;
                
                // Extract content from xml nodes, store inside this hash object
                var reasonFeed = { number: feed[rid].id, reason: feed[rid].reason, image: feed[rid].image['#text'] };

                // Display xml node content inside corresponding html elements
                //$('number').insert('#{number}'.interpolate(reasonFeed));
                $('reason').insert('#{reason}'.interpolate(reasonFeed));
                // if (feed[rid].image['#text'] == undefined) {
                //     $('image').hide();
                // } else {
                //     $('image').insert('<img src="floatLarge/#{image}" />'.interpolate(reasonFeed))
                // }
            },
            onFailure: function(){console.log('Ajaxing failed.')}
        });
    }
});


// ======================
// = sIFR CONFIGURATION =
// ======================
var goudy   = { src: '/100-series/swf/GoudyOldStyle.swf' };
var gothic  = { src: '/100-series/swf/FranklinGothic.swf' };
var css1    = { '.sIFR-root': { 'color':'#737373' } };
var css2    = { '.sIFR-root': { 'color':'#B0B6BB', 'letter-spacing':'-0.5' } };

sIFR.activate(goudy);

// GOTHIC
sIFR.replace(gothic, {
    css: css2,
    fitExactly: true,
    tuneHeight: '-6',
    selector: 'h1.gothic',
    useDomLoaded: false,
    wmode: 'transparent'
});
sIFR.replace(gothic, {
    css: css2,
    fitExactly: true,
    tuneHeight: '-6',
    selector: 'h2.gothic',
    useDomLoaded: false,
    wmode: 'transparent'
});

// GOUDY
sIFR.replace(goudy, {
    css: css1,
    fitExactly: true,
    offsetTop: '4',
    selector: 'h1.goudy',
    useDomLoaded: false,
    wmode: 'transparent'
});
sIFR.replace(goudy, {
    css: css1,
    fitExactly: true,
    offsetTop: '4',
    selector: 'h2.goudy_transparent',
    useDomLoaded: false,
    wmode: 'transparent'
});










