var bgs={ b0:'#033C41', b1:'#6F1E0E', b2:'#486218', b3:'#37556B', b4:'#564219', b5:'#C86800'};
var b_starts={ b1:104, b2:78, b3:52, b4:26, b5:0 };
var b_ends={ b1:912, b2:886, b3:860, b4:834, b5:808 };
var b_pos={ b0:[0,0,0,0,0,0], b1:[1,0,0,0,0], b2:[1,1,0,0,0], b3:[1,1,1,0,0], b4:[1,1,1,1,0], b5:[1,1,1,1,1] };
var p_starts={ p1:205, p2:180, p3:155, p4:130 };
var p_ends={ p1:953, p2:948, p3:943, p4:938 };
var dur = 1500;

function in_array(needle, haystack) {
 var found = false, key;
 for(key in haystack) {
  if(haystack[key] == needle) {
   found = true;
   break;
  }
 }
 return found;
}

window.addEvent('domready', function() {
 var bgfx = new Fx.Tween($(document.body), { duration:dur });

 for(var i=1; i <= 5; i++) {
  var bar = 'b'+i;
  //  $$("#b"+i+" div")[0].set("opacity", 0);
  $(bar).addEvents({
  'mouseenter' : function(e) {
   $$('#'+this.id+' div').each( function(item) {
    item.set('tween', { duration:250 }).fade('in');
   });
  },
  'mouseleave' : function(e) {
   $$('#'+this.id+' div').each( function(item) {
    item.set('tween', { duration:500 }).fade('out');
   });
  },
  'click' : function(e) {
    e.stop();
    var url = this.getProperty('href');

    if('/'+url == document.location.pathname) return;

    $('ct').set('tween', { duration:250 }).fade('out');

    for(var b=1; b <= 5; b++) {
     var bar = 'b'+b;
     var pos = 0;

     if(b_pos[this.id][b]) pos = b_ends[bar];
     else pos = b_starts[bar];
     $(bar).set('tween', { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
     $(bar).tween('left', pos+'px');

     var bgi=$(bar).getStyle('background-image');
     
     if(bgi.substr(bgi.length - 6) == 'n.png)') {
      $$('#'+bar+' div').each( function(item) { item.fade('show'); });
      $(bar).setStyle('background-image','url(i/'+bar+'f.png)');
      $$('#'+bar+' div').each( function(item) { item.set('tween', { duration:dur }).fade('out'); });
     }
    }
    this.setStyle('background-image','url(i/'+this.id+'n.png)');

    if(document.location.pathname == '/') {
     for(var p=1; p < 5; p++) {
      var bar = 'p' + p;
      var fx = new Fx.Morph(bar, { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
      fx.start({ 'width':5, 'left':p_ends[bar] });
     }
    }

    bgfx.start('background-color', bgs[this.id]).chain(function(){
     document.location=url;
    });
  }
  });
 }

 for(var i=0; i < 5; i++) {
  if(i) var sbar = 'p'+i;
  else sbar = 'b0';

  $(sbar).addEvents({
   'click' : function(e) {
     e.stop();
     var url = this.getProperty('href');
     if(url == document.location.pathname) return;

     $('ct').set('tween', { duration:250 }).fade('out');

     for(var b=1; b <= 5; b++) {
      var bar = 'b'+b;
      var pos = 0;

      pos = b_starts[bar];
      $(bar).set('tween', { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
      $(bar).tween('left', pos+'px');

      var bgi=$(bar).getStyle('background-image');
     
      if(bgi.substr(bgi.length - 6) == 'n.png)') {
       $$('#'+bar+' div').each( function(item) { item.fade('show'); });
       $(bar).setStyle('background-image','url(i/'+bar+'f.png)');
       $$('#'+bar+' div').each( function(item) { item.set('tween', { duration:dur }).fade('out'); });
      }
     }

     for(var p=1; p < 5; p++) {
      var bar = 'p' + p;
      var fx = new Fx.Morph(bar, { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
      fx.start({ 'width':25, 'left':p_starts[bar] });
     }

     bgfx.start('background-color', bgs['b0']).chain(function(){
      document.location=url;
     });
    }
  });
 }

 if($('lin')) var amo=[$('lin')];
 else var amo=$$('ul.admin li a');

 var urls = new Array();
 for(var i=0; i < amo.length; i++) urls[i] = '/'+amo[i].getProperty('href');

 for(var i=0; i < amo.length; i++) {
  amo[i].addEvents({
  'click' : function(e) {
    if(in_array(document.location.pathname, urls)) return;
    e.stop();

    var url = this.getProperty('href');
    if('/'+url == document.location.pathname) return;

    $('ct').set('tween', { duration:250 }).fade('out');

    for(var b=1; b <= 5; b++) {
     var bar = 'b'+b;
     var pos = 0;

     $(bar).set('tween', { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
     $(bar).tween('left', b_ends[bar]+'px');

     var bgi=$(bar).getStyle('background-image');
     
     if(bgi.substr(bgi.length - 6) == 'n.png)') {
      $$('#'+bar+' div').each( function(item) { item.fade('show'); });
      $(bar).setStyle('background-image','url(i/'+bar+'f.png)');
      $$('#'+bar+' div').each( function(item) { item.set('tween', { duration:dur }).fade('out'); });
     }
    }

    if(document.location.pathname == '/') {
     for(var p=1; p < 5; p++) {
      var bar = 'p' + p;
      var fx = new Fx.Morph(bar, { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
      fx.start({ 'width':5, 'left':p_ends[bar] });
     }
    }

    bgfx.start('background-color', '#000000').chain(function(){
     document.location=url;
    });
  }
  });
 }

 $("video_port").addEvents({ "click" : function(e) { e.stop(); openPort(this); }});
 $("interactive_port").addEvents({ "click" : function(e) { e.stop(); openPort(this); }});
 $("design_port").addEvents({ "click" : function(e) { e.stop(); openPort(this); }});
});

var d=document;
function openPort(el) {
 var url = el.getProperty("href");
 var in_port = true;

 if('/'+url == document.location.pathname) return;

 if($('b1').getStyle('background-image').substr(-9) != 'b1n.png")') {
  $("ct").set("tween", { duration:250 }).fade("out");
  in_port = false;
 }

 $("b1").setStyle("background-image","url(i/b1n.png)");

 if(typeof iCycle === 'function') {
  for(var p=1; p < 5; p++) {
   var bar = "p" + p;
   var fx = new Fx.Morph(bar, { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
   fx.start({ "width":5, "left":p_ends[bar] });
  }
 }
 else {
  for(var b=1; b <= 5; b++) {
   var bar = 'b'+b;
   var pos = 0;

   if(b_pos['b1'][b]) pos = b_ends[bar];
   else pos = b_starts[bar];
   $(bar).set('tween', { duration:dur, transition:Fx.Transitions.Quad.easeInOut });
   $(bar).tween('left', pos+'px');

   var bgi=$(bar).getStyle('background-image');
     
   if(bgi.substr(bgi.length - 6) == 'n.png)') {
    $$('#'+bar+' div').each( function(item) { item.fade('show'); });
    $(bar).setStyle('background-image','url(i/'+bar+'f.png)');
    $$('#'+bar+' div').each( function(item) { item.set('tween', { duration:dur }).fade('out'); });
   }
  }
  $('b1').setStyle('background-image','url(i/b1n.png)');
 }

 if(in_port) document.location=url;
 else {
  var bgfx = new Fx.Tween($(document.body), { duration:dur });
  bgfx.start("background-color", bgs["b1"]).chain(function(){
   document.location=url;
  });
 }
}

