document.observe('dom:loaded', function () {
   $('lang_change').addClassName('PL');
   $('home').addClassName('off');
   $('news').addClassName('off');
   $('galeria').addClassName('off');
   $('kontakt').addClassName('off');
   $('head_main_logo').observe('click', loadHome);
   $('home').observe('click', loadMenu);
   $('news').observe('click', loadNews);
   $('galeria').observe('click', loadGalery);
   $('kontakt').observe('click', loadKontakt);
   $('lang_change').observe('click',changeLang);
   //setInterval(initialiseStateFromURL, 1000);
   if (window.location.hash==''){loadHome();}
   else {
         checkHash(window.location.hash);
      }
   setInterval("checkHash('')",1000);
}); 

function pause(millis) {
        var date = new Date();
        var curDate = null;

        do { curDate = new Date(); } 
        while(curDate-date < millis)
}

function GetChildCount (element) {
            var parent = element;
            var childCount = 0;
            if (parent.childElementCount === undefined) {
                if (parent.children) {
                    childCount = parent.children.length;
                }
                else {  // < Firefox 3.5
                    var child = parent.firstChild;
                    while (child) {
                        if (child.nodeType == 1 /*Node.ELEMENT_NODE*/) {
                            childCount++;
                        }
                        child = child.nextSibling;
                    }
                }
            }
            else {
                childCount = parent.childElementCount;
            }
            return childCount;
        }

function loadMenu(event) {
   //CSS
   if($('lang_change').hasClassName('PL')){
      window.location.hash = "!menu";
   }
   else{
      window.location.hash = "!menu_en";
   }
   $('content_box').setStyle({padding: '20px'});
   $('home').addClassName('on');
   $('news').addClassName('off');
   $('galeria').addClassName('off');
   $('kontakt').addClassName('off');
   
   $('home').removeClassName('off');
   $('news').removeClassName('on');
   $('galeria').removeClassName('on');
   $('kontakt').removeClassName('on');
    
   var element = event.element();
   
   new Ajax.Request('ajaxResponse/menulist.php', {
   method: 'get',
   parameters: {lang: $('lang_change').className},
   onSuccess: function(transport) {
      $('head_submenu_bar').update(transport.responseText);
      loadFood();
      
      var i = $('submenu_list');
           var count = GetChildCount(i);
           var array=$('title').nextSiblings();
           for (var x=0;x<count;x++)
           {
               if ($(array[x]).identify()!='pausa'){
                   $(array[x]).observe('click', loadFood);
               }
             
           }
   }});
}

function loadNews(event) {

   if($('lang_change').hasClassName('PL')){
      window.location.hash = "!aktualnosci";
   }
   else{
      window.location.hash = "!news_en";
   }
   $('content_box').setStyle({padding: '20px'});
   $('home').addClassName('off');
   $('news').addClassName('on');
   $('galeria').addClassName('off');
   $('kontakt').addClassName('off');
       
   $('home').removeClassName('on');
   $('news').removeClassName('off');
   $('galeria').removeClassName('on');
   $('kontakt').removeClassName('on');    
   if($('lang_change').hasClassName('PL')){$('head_submenu_bar').update('<ul id="submenu_list"><li id="title">aktualności</li></ul>');}
   else {$('head_submenu_bar').update('<ul id="submenu_list"><li id="title">news</li></ul>');}
   
   var element = event.element();
   //new Ajax.Updater({ success: 'content_box' }, 'ajaxResponse/loadnews.php');
     new Ajax.Request('ajaxResponse/loadnews.php',{
      method: 'get',
      parameters: {lang: $('lang_change').className},
      onSuccess: function(transport) {
      $('content_box').update(transport.responseText);
   }});
   
}
function loadGalery(event) {

   if($('lang_change').hasClassName('PL')){
      window.location.hash = "!galerie";
   }
   else{
      window.location.hash = "!gallery_en";
   }
   $('content_box').setStyle({padding: '20px'});
   $('content_box').update('<div id="content_loading"><img src="stylesheet/loading.png" /><p>wczytuję...</p></div>');
   $('home').addClassName('off');
   $('news').addClassName('off');
   $('galeria').addClassName('on');
   $('kontakt').addClassName('off');
   
   $('home').removeClassName('on');
   $('news').removeClassName('on');
   $('galeria').removeClassName('off');
   $('kontakt').removeClassName('on');
   if($('lang_change').hasClassName('PL')){$('head_submenu_bar').update('<ul id="submenu_list"><li id="title">galeria</li></ul>');}
   else {$('head_submenu_bar').update('<ul id="submenu_list"><li id="title">galleries</li></ul>');} 

   //new Ajax.Updater({ success: 'content_box' }, 'ajaxResponse/galerie.php');

   new Ajax.Request('ajaxResponse/galerie.php',{
   method: 'get',
   parameters: {lang: $('lang_change').className},
   onSuccess: function(transport) {
      $('content_box').update(transport.responseText);
      $('wnetrza_event').addClassName('galery_selected_off');
      $('posilki_event').addClassName('galery_selected_off');
      $('imprezy_event').addClassName('galery_selected_off');

      $('wnetrza_event').observe('click', loadPics);
      $('posilki_event').observe('click', loadPics);
      $('imprezy_event').observe('click', loadPics);
      $('wnetrza_event').simulate('click');
      $('content_box').insert({bottom: '<div id="pics_wrapper"></div>'});
   }});
}

function loadKontakt(event) {
   if($('lang_change').hasClassName('PL')){
      window.location.hash = "!contact";
   }
   else{
      window.location.hash = "!contact_en";
   }
   
   $('content_box').setStyle({padding: '20px'});
   $('home').addClassName('off');
   $('news').addClassName('off');
   $('galeria').addClassName('off');
   $('kontakt').addClassName('on');
   
   $('home').removeClassName('on');
   $('news').removeClassName('on');
   $('galeria').removeClassName('on');
   $('kontakt').removeClassName('off');
   
   if($('lang_change').hasClassName('PL')){$('head_submenu_bar').update('<ul id="submenu_list"><li id="title">kontakt</li></ul>');}
   else {$('head_submenu_bar').update('<ul id="submenu_list"><li id="title">contact</li></ul>');} 
   
   var element = event.element();
   new Ajax.Updater({ success: 'content_box' }, 'ajaxResponse/loadkontakt.php');
   
}

function loadFood(event) {
   if (event==null){
      element=$('food');
   }else {
     var element = event.element();  
   }
    
   new Ajax.Request('ajaxResponse/loadmenu.php', {
   method: 'get',
   parameters: {tag: Element.identify(element),lang: $('lang_change').className},
   onSuccess: function(transport) {
      $('content_box').update(transport.responseText);
      if (event==null){loadProducts();}
      
      element.removeClassName('sub_off');
      element.addClassName('sub_on');
      
   
      var submenu_list=$('submenu_list');
      var count_elem=GetChildCount(submenu_list);
      var submenu_array=element.siblings();
         for (var xx=0;xx<count_elem-1;xx++)
            {
                if ($(submenu_array[xx]).identify()!='title')
                {
                     $(submenu_array[xx]).removeClassName('sub_on');
                     $(submenu_array[xx]).addClassName('sub_off');
                }
            }
      var i = $('submenu');
      var ancestor=i.ancestors();
      switch(ancestor[0].identify()){
         case 'sub1':
            if ($('lang_change').hasClassName('PL')){
               $(ancestor[0]).addClassName('sub1_pl');
            }
            else {
               $(ancestor[0]).addClassName('sub1_en');
            }
            break;
         case 'sub2':
            if ($('lang_change').hasClassName('PL')){
               $(ancestor[0]).addClassName('sub2_pl');
            }
            else {
               $(ancestor[0]).addClassName('sub2_en');
            }
            break;
         case 'sub3':
            if ($('lang_change').hasClassName('PL')){
               $(ancestor[0]).addClassName('sub3_pl');
            }
            else {
               $(ancestor[0]).addClassName('sub3_en');
            }
            break;
         case 'sub4':
            if ($('lang_change').hasClassName('PL')){
               $(ancestor[0]).addClassName('sub4_pl');
            }
            else {
               $(ancestor[0]).addClassName('sub4_en');
            }
            break;
         case 'sub5':
            if ($('lang_change').hasClassName('PL')){
               $(ancestor[0]).addClassName('sub5_pl');
            }
            else {
               $(ancestor[0]).addClassName('sub5_en');
            }
            break;
         default:
            break;
      }
      var count = GetChildCount(i);
      var array=i.childElements();
         for (var x=0;x<count;x++)
            { 
               $(array[x]).observe('click', loadProducts);
            }
      if ($('lang_change').hasClassName('EN')){
         $('food').setStyle({width: '90px'});
         $('koktajl').setStyle({width: '70px'});
         $('wina').setStyle({width: '45px'});
         $('alkohole').setStyle({width: '60px'});
      }
      else{
         $('food').setStyle({width: '55px'});
         $('koktajl').setStyle({width: '70px'});
         $('wina').setStyle({width: '50px'});
         $('alkohole').setStyle({width: '70px'});
      }
         $(array[0]).simulate('click');
      $('content_box').insert({bottom: '<div id="products"></div>'});        
   }});
   if (event==null){return;}
}

function loadProducts(event) {
   
   if (event==null){
      element=$('submenu').firstChild;
   }else {
     var element = event.element();  
   }
   new Ajax.Request('ajaxResponse/loadproducts.php', {
   method: 'get',
   parameters: {id: Element.identify(element),lang: $('lang_change').className},
   onSuccess: function(transport) {
      $('products').update(transport.responseText);
      $('products').innerHTML;
      element.removeClassName('prod_off');
      element.addClassName('prod_on');
      var i=$('submenu');
      
      var count=GetChildCount(i);
      var sub_array=element.siblings();
      for (var x=0;x<count;x++)
         {
            $(sub_array[x]).removeClassName('prod_on');
            $(sub_array[x]).addClassName('prod_off'); 
         }
       
      
   }});
   if (event==null){return;}
} 


function loadHome(event) {
   
   if($('lang_change').hasClassName('PL')){
      window.location.hash = "!index";
   }
   else{
      window.location.hash = "!home_en";
   }
   
   $('content_box').update('<div id="content_loading"><img src="stylesheet/loading.png" /><p>wczytuję...</p></div>'); 
   $('home').addClassName('off');
   $('news').addClassName('off');
   $('galeria').addClassName('off');
   $('kontakt').addClassName('off');
   
   $('home').removeClassName('on');
   $('news').removeClassName('on');
   $('galeria').removeClassName('on');
   $('kontakt').removeClassName('on');
   
   //var element = event.element();
   new Ajax.Request('ajaxResponse/welcome.php',  {
   method: 'get',
   parameters: {lang: $('lang_change').className},
   onSuccess: function(transport) {
      $('content_box').setStyle({padding: '20px'});
      $('content_box').update(transport.responseText);
   }});
   
   
   $('head_submenu_bar').update('<ul id="submenu_list"><li id="title">home</li></ul>');
}
 
function loadPics(event) {
   
   var element = event.element();
   
   new Ajax.Request('galerie/loadgalerie.php', {
   method: 'get',
   parameters: {tag: Element.identify(element),lang: $('lang_change').className},
   onSuccess: function(transport) {
      $('pics_wrapper').update(transport.responseText);
      
      var tmp=element.identify();
      var li_name=tmp.split('_');
      var name=li_name[0]+'_event';

      $(name).removeClassName('galery_selected_off');
      $(name).addClassName('galery_selected_on');
      var submenu_list=$('galery_select');
      var count_elem=GetChildCount(submenu_list);
      var submenu_array=$(name).siblings();
         for (var xx=0;xx<count_elem-1;xx++)
            {
                     $(submenu_array[xx]).removeClassName('galery_selected_on');
                     $(submenu_array[xx]).addClassName('galery_selected_off'); 
            }   
   }});
}
function checkHash(str) {
   if (str!=''){
      switch(str)
      {
      case '#!menu':
         $('home').simulate('click');
         break;
      case '#!aktualnosci':
         $('news').simulate('click');
         break;
      case '#!galerie':
         $('galeria').simulate('click');
         break;
      case '#!contact':
         $('kontakt').simulate('click');
         break;
      case '#!index':
         $('head_main_logo').simulate('click');
         break;
      
      case '#!menu_en':
         if($('lang_change').hasClassName('PL')){
            $('lang_change').simulate('click');
         }
         $('home').simulate('click');
         break;
      case '#!news_en':
         if($('lang_change').hasClassName('PL')){
            $('lang_change').simulate('click');
         }
         $('news').simulate('click');
         break;
      case '#!gallery_en':
         if($('lang_change').hasClassName('PL')){
            $('lang_change').simulate('click');
         }
         $('galeria').simulate('click');
         break;
      case '#!contact_en':
         if($('lang_change').hasClassName('PL')){
            $('lang_change').simulate('click');
         }
         $('kontakt').simulate('click');
         break;
      case '#!home_en':
         if($('lang_change').hasClassName('PL')){
            $('lang_change').simulate('click');
         }
         $('head_main_logo').simulate('click');
         break;
      default:
         $('head_main_logo').simulate('click');
        break;
      }
   }
   else {
      switch(window.location.hash)
      {
      case '#!menu':
         if((($('title').innerHTML!='menu') || ($('title').innerHTML=='menu')) && ($('lang_change').hasClassName('EN'))){
            $('lang_change').simulate('click');
            $('home').simulate('click');
         }
         else if(($('title').innerHTML!='menu') && ($('lang_change').hasClassName('PL'))){
            $('home').simulate('click');
         }
         break;
      case '#!aktualnosci':
         if((($('title').innerHTML!='aktualności') || ($('title').innerHTML=='aktualności')) && ($('lang_change').hasClassName('EN'))){
            $('lang_change').simulate('click');
            $('news').simulate('click');
         }
         else if(($('title').innerHTML!='aktualności') && ($('lang_change').hasClassName('PL'))){
            $('news').simulate('click');
         }
         break;
      case '#!galerie':
         if((($('title').innerHTML!='galeria') || ($('title').innerHTML=='galeria')) && ($('lang_change').hasClassName('EN'))){
            $('lang_change').simulate('click');
            $('galeria').simulate('click');
         }
         else if(($('title').innerHTML!='galeria') && ($('lang_change').hasClassName('PL'))){
            $('galeria').simulate('click');
         }
         break;
      case '#!contact':
         if((($('title').innerHTML!='kontakt') || ($('title').innerHTML=='kontakt')) && ($('lang_change').hasClassName('EN'))){
            $('lang_change').simulate('click');
            $('kontakt').simulate('click');
         }
         else if(($('title').innerHTML!='kontakt') && ($('lang_change').hasClassName('PL'))){
            $('kontakt').simulate('click');
         }
         break;
      case '#!index':
         if ($('title').innerHTML!='home'){$('head_main_logo').simulate('click');}
         break;
      case '#!menu_en':
         if((($('title').innerHTML!='menu') || ($('title').innerHTML=='menu')) && ($('lang_change').hasClassName('PL'))){
            $('lang_change').simulate('click');
            $('home').simulate('click');
         }
         else if(($('title').innerHTML!='menu') && ($('lang_change').hasClassName('EN'))){
            $('home').simulate('click');
         }
         break;
      case '#!news_en':
         if((($('title').innerHTML!='news') || ($('title').innerHTML=='news')) && ($('lang_change').hasClassName('PL'))){
            $('lang_change').simulate('click');
            $('news').simulate('click');
         }
         else if(($('title').innerHTML!='news') && ($('lang_change').hasClassName('EN'))){
            $('news').simulate('click');
         }
         break;
      case '#!gallery_en':
         if((($('title').innerHTML!='galleries') || ($('title').innerHTML=='galleries')) && ($('lang_change').hasClassName('PL'))){
            $('lang_change').simulate('click');
            $('galeria').simulate('click');
         }
         else if(($('title').innerHTML!='galleries') && ($('lang_change').hasClassName('EN'))){
            $('galeria').simulate('click');
         }
         break;
      case '#!contact_en':
         if((($('title').innerHTML!='contact') || ($('title').innerHTML=='contact')) && ($('lang_change').hasClassName('PL'))){
            $('lang_change').simulate('click');
            $('kontakt').simulate('click');
         }
         else if(($('title').innerHTML!='contact') && ($('lang_change').hasClassName('EN'))){
            $('kontakt').simulate('click');
         }
         break;
      case '#!home_en':
         if((($('title').innerHTML!='home') || ($('title').innerHTML=='home')) && ($('lang_change').hasClassName('PL'))){
            $('lang_change').simulate('click');
            $('head_main_logo').simulate('click');
         }
         else if(($('title').innerHTML!='home') && ($('lang_change').hasClassName('EN'))){
            $('head_main_logo').simulate('click');
         }
         break;
      default:
         if((($('title').innerHTML!='home') || ($('title').innerHTML=='home')) && ($('lang_change').hasClassName('EN'))){
            $('lang_change').simulate('click');
            $('head_main_logo').simulate('click');
         }
         else if(($('title').innerHTML!='home') && ($('lang_change').hasClassName('PL'))){
            $('head_main_logo').simulate('click');
         }
         break;
      }
   }
   
}

function changeLang(event){
   if ($('lang_change').hasClassName('PL'))
   {
      $('head_main_lang').setStyle({backgroundImage: 'url(stylesheet/panel-jezyki-UK-160x78.jpg)'});
      $('lang_change').removeClassName('PL');
      $('lang_change').addClassName('EN');
      $('home').innerHTML='menu';
      $('news').innerHTML='news';
      $('galeria').innerHTML='gallery';
      $('kontakt').innerHTML='contact';
      switch(window.location.hash){
         case '#!menu':
            window.location.hash = "!menu_en";
            $('home').simulate('click');
            break;
         case '#!aktualnosci':
            window.location.hash = "!news_en";
            $('news').simulate('click');
            break;
         case '#!galerie':
            window.location.hash = "!gallery_en";
            $('galeria').simulate('click');
            break;
         case '#!contact':
            window.location.hash = "!contact_en";
            $('kontakt').simulate('click');
            break;
         default:
            window.location.hash = "!home_en";
            $('head_main_logo').simulate('click');
            break;
      }
   }
   else
   {
      $('head_main_lang').setStyle({backgroundImage: 'url(stylesheet/panel-jezyki-PL-160x78.jpg)'});
      $('lang_change').removeClassName('EN');
      $('lang_change').addClassName('PL');
      $('home').innerHTML='menu';
      $('news').innerHTML='aktualności';
      $('galeria').innerHTML='galeria';
      $('kontakt').innerHTML='kontakt';
      switch(window.location.hash){
         case '#!menu_en':
            window.location.hash = "!menu";
            $('home').simulate('click');
            break;
         case '#!news_en':
            window.location.hash = "!aktualnosci";
            $('news').simulate('click');
            break;
         case '#!gallery_en':
            window.location.hash = "!galerie";
            $('galeria').simulate('click');
            break;
         case '#!contact_en':
            window.location.hash = "!contact";
            $('kontakt').simulate('click');
            break;
         default:
            window.location.hash = "!index";
            $('head_main_logo').simulate('click');
            break;
      }
   }
}
