document.observe('dom:loaded', init);



function init(){
  //new Ajax.Updater('container', 'content/home.php',{evalScripts: true, method: 'get'});

  var linkTarget = $A($$('#'+'navi'+' '+'a'));
  linkTarget.each( function(e){ e.href='javascript:void(0);' } );


  /*  
  checkId( linkTarget );
  
  function checkId(linkTarget) {
    linkTarget.each( function(e) {
      e.getAttribute = 'id';
      if( e.innerHTML == 'Home' || e.innerHTML == 'Leistungen' || e.innerHTML == 'Referenzen' || e.innerHTML == 'Kontakt' || e.innerHTML == 'Kunden Login' || e.innerHTML == 'Impressum' ) {
        e.innerHTML = '';
      }
    } );
  }
  */
//////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\
///////////////-----EDIT-------\\\\\\\\\\\\\\\\\
//////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\


  //status der dropdown-felder
  //erste ebene (no-drop)

  if($(activeNoDrop).className == ''){
     $(activeNoDrop).addClassName('activeNoDrop');
  }
  $('kundenlogin').addClassName('inactiveNoDrop');
  $('impressum').addClassName('inactiveNoDrop');
  $('referenzen').addClassName('inactiveNoDrop');
  //erste ebene
  $('kompetenzen').addClassName('inactive');
  $('kontakt').addClassName('inactive');
  
   

  
  //zweite ebene
  //$('software').addClassName('inactive_sub');
  //$('online_projekte').addClassName('inactive_sub');


  setMenu();
}




//globals
//aktiver button auf der index-seite
var activeNoDrop = 'home';
//timeout bis zum nächsten klick function clickControl
var timeout = 500;
//slide-geschwindigkeit
var slideDuration = 0.5;

//////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\
///////////////-----EDIT-------\\\\\\\\\\\\\\\\\
//////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\

var activeMenu = '';
var activeMenuSub = '';
var subNoDrop = '';
var subNoDrop2 = '';


//functions


function setMenu(){

  //alert(activeSub1);

  $$('a').each( function(e){ e.setStyle({ outline:'none' }); } );
  $('container').setStyle({'display':'none'});
  new Ajax.Updater('container','content/home.php',{ evalScripts: true, method: 'get', onComplete: function(){Effect.Appear($('container'),{duration:0.5, from:0, to:1});}  });

  var mainMenus = $A($('navi').getElementsByClassName('inactive'));
  var subMenus = $A($('navi').getElementsByClassName('inactive_sub'));
  var noDrop = $A($('navi').getElementsByClassName('inactiveNoDrop'));
  var activeStart = $A($('navi').getElementsByClassName('activeNoDrop'));
  var subNoDrop = $A($('navi').getElementsByClassName('sub'));
  var subNoDrop2 = $A($('navi').getElementsByClassName('sub2'));

  mainMenus.each( function(e){ e.observe('click', setActive);} );
  subMenus.each( function(e){ e.observe('click', setActiveSub);} );
  noDrop.each( function(e){ e.observe('click', closeMenu);} );
  activeStart.each( function(e){ e.observe('click', closeMenu);} );
  subNoDrop.each( function(e){ e.observe('click', closeSubMenu);} );
  subNoDrop2.each( function(e){ e.observe('click', closeSubMenu2);} );

  mainMenus.each( function(e){ e.up('li').down('ul').setStyle({display:'none'}); });
  subMenus.each( function(e){ e.up('li').down('ul').setStyle({display:'none'}); });
 
}

function closeSubMenu2(event){

  clickControl(event);

  var el = Event.element(event);
  var content = el.innerHTML.stripTags();
  var id = content.substr(1);
  //alert(id);

  if(subNoDrop2 == ''){
    el.setStyle({fontWeight:'bold'});
    subNoDrop2=el.className;
    //alert(subNoDrop);
  }else if(subNoDrop2 !== ''){
    var subs = $A($('navi').getElementsByClassName('sub2'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
    el.setStyle({fontWeight:'bold'});
  }


}



function closeSubMenu(event){

  clickControl(event);
  
  var el = Event.element(event);
  var content = el.innerHTML.stripTags();
  var id = content.substr(1);
  //alert(id);
  
  if(subNoDrop2 !== ''){
    var subs = $A($('navi').getElementsByClassName('sub2'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
  }
  
  if(activeMenuSub == '' && subNoDrop == ''){
    el.setStyle({fontWeight:'bold'});
    subNoDrop=el.name;
    //alert(subNoDrop);
  }else if(activeMenuSub == '' &&  el.className == 'sub'){
    var subs = $A($('navi').getElementsByClassName('sub'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
    subNoDrop=el.name;
    el.setStyle({fontWeight:'bold'});
  }else if(activeMenuSub !== ''){
    $(activeMenuSub).removeClassName('active_sub');
    $(activeMenuSub).removeClassName('inactive_sub');
    $(activeMenuSub).addClassName('inactive_sub');
    Effect.SlideUp($(activeMenuSub).up('li').down('ul'), {duration:slideDuration});
    activeMenuSub = '';
    subNoDrop=el.name;
    var subs = $A($('navi').getElementsByClassName('sub'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
    el.setStyle({fontWeight:'bold'});
  }
 

}



function closeMenu(event){

  clickControl(event);

  var el = Event.element(event);
  //var sub = activeMenu.up('li').down('ul');
  if(activeMenu !== ''){
    $(activeMenu).removeClassName('active');
    $(activeMenu).removeClassName('inactive');
    $(activeMenu).addClassName('inactive');
    //activeMenu='';
  }

  //set active
  if(activeNoDrop==el.id){

    activeNoDrop = el;
    return;

  }else if(activeNoDrop!==el.id){
    
    var actives = $A($('navi').getElementsByClassName('activeNoDrop'));

    actives.each( function(e){e.removeClassName('activeNoDrop');} );
    actives.each( function(e){e.removeClassName('inactiveNoDrop');} );
    actives.each( function(e){e.addClassName('inactiveNoDrop');} );
    activeNoDrop = el.id;
    el.removeClassName('activeNoDrop');
    el.removeClassName('inactiveNoDrop');
    el.addClassName('activeNoDrop');

  }

  //close dropdowns
  if(activeMenu !== ''){

    Effect.SlideUp($(activeMenu).up('li').down('ul'), {duration:slideDuration});
    activeMenu = '';

  if(activeMenuSub !== ''){
    $(activeMenuSub).removeClassName('active_sub');
    $(activeMenuSub).removeClassName('inactive_sub');
    $(activeMenuSub).addClassName('inactive_sub');
    Effect.SlideUp($(activeMenuSub).up('li').down('ul'), {duration:slideDuration});
    activeMenuSub = '';
    }else{
      return;
    }
  }
}

function contentLoad(el){
    //Seiten laden für Menupunte mit Untermenus
  //alert(subNoDrop);
  if(el.className !== 'activeNoDrop' && el.className !== 'active' && el.name !== subNoDrop){
    $('container').setStyle({'display':'none'});
    new Ajax.Updater('container','content/'+el.name+'.php',{ evalScripts: true, method: 'get', onComplete: function(){Effect.Appear($('container'),{duration:0.5, from:0, to:1});}  });
    
  }
  if(el.className == 'sub'){
    if(el.name !== subNoDrop){
      var parentButton = el.up('ul').up('li').down('a');
      if(parentButton.className == 'active'){
        parentButton.removeClassName('active');
        parentButton.removeClassName('inactive');
        parentButton.addClassName('active open');
        $('container').setStyle({'display':'none'});
        new Ajax.Updater('container','content/'+el.name+'.php',{ evalScripts: true, method: 'get', onComplete: function(){Effect.Appear($('container'),{duration:0.5, from:0, to:1});}  });
        
    	  
      }
    }else if(el.name == subNoDrop){
      return false;
    }
  }
  if(el.className == 'active open'){
    el.removeClassName('active open');
    el.addClassName('active');
  }

}

function clickControl(event){

  var el = Event.element(event);
  stopObserve(el);
  contentLoad(el);
  window.setTimeout("restartObserve()", timeout);

}

function stopObserve(el){

  var active = $A($('navi').getElementsByClassName('active'));
  var activeSub = $A($('navi').getElementsByClassName('active_sub'));
  var inactive = $A($('navi').getElementsByClassName('inactive'));
  var inactiveSub = $A($('navi').getElementsByClassName('inactive_sub'));

  active.each( function(e){ e.stopObserving('click', setActive);} );
  activeSub.each( function(e){ e.stopObserving('click', setActiveSub);} );
  inactive.each( function(e){ e.stopObserving('click', setActive);} );
  inactiveSub.each( function(e){ e.stopObserving('click', setActiveSub);} );

}

function restartObserve(){

  //alert('observing restart');
  
  var active = $A($('navi').getElementsByClassName('active'));
  var activeSub = $A($('navi').getElementsByClassName('active_sub'));
  var inactive = $A($('navi').getElementsByClassName('inactive'));
  var inactiveSub = $A($('navi').getElementsByClassName('inactive_sub'));
  
  active.each( function(e){ e.observe('click', setActive);} );
  activeSub.each( function(e){ e.observe('click', setActiveSub);} );
  inactive.each( function(e){ e.observe('click', setActive);} );
  inactiveSub.each( function(e){ e.observe('click', setActiveSub);} );

}



function setActive(event){

  if(subNoDrop !== ''){
    var subs = $A($('navi').getElementsByClassName('sub'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
    subNoDrop='';
  }
  
  if(activeMenuSub !== ''){
    Effect.SlideUp($(activeMenuSub).up('li').down('ul'), {duration:slideDuration});
    $(activeMenuSub).removeClassName('active_sub');
    $(activeMenuSub).removeClassName('inactive_sub');
    $(activeMenuSub).addClassName('inactive_sub');
    activeMenuSub='';
  }

  var element = Event.element(event);
  if(element.nodeName == 'IMG'){
    var el = element.up('a');
  }else{
    var el = element;
  }

  var sub = el.up('li').down('ul');
  clickControl(event);
  

  if(activeMenu == ''){

  el.removeClassName('inactive');
  el.removeClassName('active');
  el.addClassName('active');
  
  if(activeNoDrop !== ''){
    $(activeNoDrop).removeClassName('activeNoDrop');
    $(activeNoDrop).removeClassName('inactiveNoDrop');
    $(activeNoDrop).addClassName('inactiveNoDrop');
    activeNoDrop = '';
  }
  

  Effect.SlideDown(sub, {duration:slideDuration});
  
  activeMenu = el.id;

  } else if(activeMenu == el.id){

    return;
  /*

    Effect.toggle(sub, 'slide', {duration:slideDuration});
    //alert(activeMenuSub);
    if(activeMenuSub !== ''){
      Effect.SlideUp($(activeMenuSub).up('li').down('ul'), {duration:slideDuration});
      activeMenuSub = '';
    }
  */

  }else if(activeMenu !== el.id){
    $(activeMenu).removeClassName('active');
    $(activeMenu).removeClassName('inactive');
    $(activeMenu).addClassName('inactive');
    el.removeClassName('inactive');
    el.removeClassName('active');
    el.addClassName('active');
    Effect.SlideUp($(activeMenu).up('li').down('ul'), {duration:slideDuration});
    if(activeMenuSub !== ''){
      $(activeMenuSub).removeClassName('active_sub');
      $(activeMenuSub).removeClassName('inactive_sub');
      $(activeMenuSub).addClassName('inactive_sub');
      Effect.SlideUp($(activeMenuSub).up('li').down('ul'), {duration:slideDuration});
      activeMenuSub = '';
    }
    Effect.SlideDown(sub, {duration:slideDuration});
    activeMenu = el.id;

  }

}

function setActiveSub(event){
//alert(activeMenuSub);
  var el = Event.element(event);
  var sub = el.up('li').down('ul');
  
  clickControl(event);
  
  if(subNoDrop !== ''){
    var subs = $A($('navi').getElementsByClassName('sub'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
  }
  if(subNoDrop2 !== ''){
    var subs = $A($('navi').getElementsByClassName('sub2'));
    subs.each( function(e){ e.setStyle({ 'fontWeight':'normal' }); } );
  }

  if(activeMenuSub == ''){

  el.removeClassName('inactive_sub');
  el.removeClassName('active_sub');
  el.addClassName('active_sub');
  Effect.SlideDown(sub, {duration:slideDuration});
  activeMenuSub = el.id;
  
  } else if(activeMenuSub == el.id){
  //alert(activeMenuSub);
  return;
  /*
    Effect.toggle(sub, 'slide',{duration:slideDuration});
    activeMenuSub = '';
  */
  }else if(activeMenuSub !== el.id){
    $(activeMenuSub).removeClassName('active_sub');
    $(activeMenuSub).removeClassName('inactive_sub');
    $(activeMenuSub).addClassName('inactive_sub');
    
    Effect.SlideUp($(activeMenuSub).up('li').down('ul'), {duration:slideDuration});
    Effect.SlideDown(sub, {duration:slideDuration});
    
    el.removeClassName('inactive_sub');
    el.removeClassName('active_sub');
    el.addClassName('active_sub');
    activeMenuSub = el.id;

  }

}

