/* Vars */
var naviOpen = false;
var numberOfShops = 0;
var numberOfRestaurants = 0;
var allBusinesses = new Array(); // container for all shops content!
var selectedBusiness = undefined;
var language = 'fin'; // language for ui items
var pageFromHash;
var isIPhone = false;
var isIDevice = false;
var themeColor;
var linkColor;
var multipleTimes=false; // are there multiple opening hours
var simpleContent = false; // IE6 and mobile devices are shown simple content based on this
var videosContent = undefined;
var isIE7=false;
var isIE8=false;
var videoMuted=false; // toggle video sounds on and off
/* events */


$(document).ready(function() {
  if(simpleContent==false){
    createNewsBrowser(); // manage news browser
    initHistoryPlugin();
    $('#debug').html('jquery up & document ready');
    $('#wrapper').hide();
    $('#js').hide();
    $('#contentTarget').hide();
    $('#shopInfo').hide();
    readXmlContent(); // get content for shops and restaurants
    $(document).keypress(function(event) {
    if(event.which==100){ // id D pressed show debug
      //$('#debug').show();
    }
    if(event.which==104){ // id H pressed hide debug
      //$('#debug').hide();
    }
    });
    }
  
});

$(window).load(function() {
  if(simpleContent==false){
    $('#wrapper').fadeIn(500);
    trace('window loaded');
    initiate();
  }
});

/////////////////
//* functions *//
/////////////////

function initiate(){
  setArrowEvents();
  setTimeout("replaceVideos()",1000); // without the timeOut Chrome makes videos invisible when the main video is displayed
  insertNewsletter(); // insert mailchimp signup
  emailContact(); //
  $('#homeTarget').hide();
  window.onblur = function(){
    window.clearInterval(slideShowInterval);
    trace('blur');
  }
  window.onfocus = function(){
    if(pageFromHash == undefined || pageFromHash =='home'){
      startSlideShow(4000,true);
    }else{
      startSlideShow(4000,false);
    }
  }

  /*count number of restaurants and shops for navi */
  $('.storeNaviLink').each(function(index) {
    numberOfShops+=1;
  });
  $('.storecount').html(numberOfShops);
  
  $('.foodNaviLink').each(function(index) {
    numberOfRestaurants+=1;
  });
  $('.restaurantcount').html(numberOfRestaurants);
  
  /* create slides for frontpage */
  $('.homePageSlide').each(function(){
   var tempPathToImage = $(this).html();
   $(this).html('');
   $(this).css('background','url('+tempPathToImage+') no-repeat center');
   $(this).show();
  });
  
  
  //////////////////////////////////////
  
  countDays(); // get days to Christmas etc.
  
  $('#topLogo').mouseover(function(){
    $(this).attr('src','/sites/all/themes/kluuvi2011/images/KluuviLogoHover.png');
  });
  $('#topLogo').mouseleave(function(){
    $(this).attr('src','/sites/all/themes/kluuvi2011/images/KluuviLogo.png');
  });
  
  $('#naviTab').mouseover(function(){
    $('#naviTabHoverGlow').fadeIn(200);
    $('.menuText').css('color','#fff');
  });
  $('#naviTab').mouseleave(function(){
    $('#naviTabHoverGlow').fadeOut(200);
    $('.menuText').css('color','#ccc');
  });
  $('#naviTab').click(function(){toggleNavi();});
  $('#topDropMenu').click(function(){
    naviOpen=true;
    toggleNavi();
  });
  //$('.menuText').click(function(){toggleNavi();});
  
  
  // Drop navigation actions //
  $('.storeNaviLink').click(function(){
    var clickTarget = $(this).find('.title').text();
    // go to page if selectedBusiness is undefined or if it's not the same as the current page
    if(selectedBusiness!=undefined){
      trace(clickTarget+'=!'+allBusinesses[selectedBusiness][0]);
      if(clickTarget!=allBusinesses[selectedBusiness][0]){
        loadSelectedBusiness(clickTarget);
        $('#homeTarget').hide();
      }else{  // if this is the currently selected page we must reset the hashtag
        $('#homeTarget').hide();
        jQuery.history.load(clickTarget);
        if ($.browser.msie  && parseInt($.browser.version) <= 8) { // IE7 doesn't detect hashchange correctly so we need to make sure it loads the content
          setContent(clickTarget);
        } 
      }
    }else{
      loadSelectedBusiness(clickTarget);
      $('#homeTarget').hide();
    }
  });
  $('.foodNaviLink').click(function(){
   var clickTarget = $(this).find('.title').text();
    // go to page if selectedBusiness is undefined or if it's not the same as the current page
    if(selectedBusiness!=undefined){
      trace(clickTarget+'=!'+allBusinesses[selectedBusiness][0]);
      if(clickTarget!=allBusinesses[selectedBusiness][0]){
        loadSelectedBusiness(clickTarget);
        $('#homeTarget').hide();
      }else{  // if this is the currently selected page we must reset the hashtag
        $('#homeTarget').hide();
        jQuery.history.load(clickTarget);
        if ($.browser.msie  && parseInt($.browser.version) <= 8) { // IE7 doesn't detect hashchange correctly so we need to make sure it loads the content
          setContent(clickTarget);
        } 
      }
    }else{
      loadSelectedBusiness(clickTarget);
      $('#homeTarget').hide();
    }
  });
  
  $('#topLogo').click(function(){
    $('#topDropMenu').animate({height: 0}, 200, function() {  
    // Animation complete.
    });
    trace('go to front page');
    $('#homeTarget').hide();
    loadContent('home');
    naviOpen=false;
    
  });
  
}

function toggleNavi(){
    trace('navi '+naviOpen);
    if(naviOpen){
      trace('close');
      naviOpen=false;
      $('#homeTarget').hide();
      $('#topDropMenu').animate({height: 0}, 200, function() {
        // Animation complete.
      });
    }else{
      trace('open');
      naviOpen=true;
      $('#topDropMenu').animate({height: 620}, 200, function() {
        // Animation complete.
        $('#homeTarget').show();
      });
    }
    }

/* read page content from xml (/?q=allshopscontent-finnish.xml)*/

function readXmlContent(){
  $.ajax({
    type: "GET",
	url: "?q=allshopscontent-finnish.xml",
	dataType: "xml",
	success: function(xml) {
	  //alert(xml.title);
      trace('<br />XML ready');
      $(xml).find('item').each(function(){
        var tempArray = new Array();
        var title = $(this).find('title').text();
        tempArray[0]=title;
        var content = $(this).find('description').text();
        tempArray[1] = content;
        // $('#debug').append('<br />'+title);
        allBusinesses.push(tempArray);
      });
      setIndicators(selectedBusiness);
    if(pageFromHash=='undefined' || pageFromHash==''){
        loadContent('home');
        // set video to content !
        trace('no hash, get video');
        
    }else{
        trace('hash defined: '+pageFromHash);
        if(isIE7 || isIE8){
          loadContent('home');
        }else{
          setContent(pageFromHash);
          }
        }
	}
});
}

///////////////////////////////
/* load content for the page */
///////////////////////////////

function loadContent(index){
   jQuery.history.load(index);
   if ($.browser.msie  && parseInt($.browser.version) <= 8) { // IE7 doesn't detect hashchange correctly so we need to make sure it loads the content
     setContent(index);
   } 

 }
 
function setContent(getIndex){
  var index=getIndex;
  if(isNaN(index)==false){ // send old number hashtags to frontpage
    //index="home";
  } 
  if(index=="home"){
    /*if(isIPhone){
       //alert('iphone'); // don't show frontpage video for iPhone and iPod
       index=0;
    }else{*/
    naviOpen=false; // just to make sure, IE7 gets confused with this
    setTimeout("showVideo()",1000); /* without timeout the video doesn't always initiate in time */
    /*if(isIE7==false && isIE8==false){ // add mute button for others, IE7 & 8 have a flashplayer
      $('#frontpageVideos').append('<div id="muteBtn"></div>');
    }*/
    //}
  }
/* $('#muteBtn').click(function(){
   if(videoMuted==false){
     videoMuted=true;
     $(this).css('background','url(/sites/all/themes/kluuvi2011/images/soundOff.png) no-repeat');
     $("#videoId").prop('muted', true); //mute
   }else{
     videoMuted=false;
     $(this).css('background','url(/sites/all/themes/kluuvi2011/images/soundOn.png) no-repeat');
     $("#videoId").prop('muted', false);
     }
 });*/
  
 if(index!="home"){
 var myVideo = document.getElementById('videoId');
 /*try
  {
  myVideo.pause();
  }
catch(err) // video.pause doesn't work with the .flv player so the player has to be removed
  {
  try{
    thisMovie("swfBackup").sendPauseToAS();
    }catch(err){};
  }
 */
 /* get number by name if value is not a number! */
 if(isNaN(index)){ 
 for(shopItem in allBusinesses){
     var unescapedName = unescape(index);
     //trace(index+'='+unescapedName+'!='+allBusinesses[shopItem][0]);
     if(unescapedName==allBusinesses[shopItem][0]){
     //trace('pageIndex='+shopItem);
       index=shopItem;
     }
 }
 }
   

 
 $('#frontpageVideos').hide();
 $('.view-id-frontpage_slideshow2').hide();
 $('#map').fadeOut(500);
 highlightActivePage(allBusinesses[index][0]);
 
 selectedBusiness=index;
 setIndicators(index);
 themeColor = '#000';
 linkColor = '#fff';
 var styles = 'styles';
 var webaddress = ''
 var facebookaddress = '';
 var phoneNumber = '';
 var locationValue ='';
 var mapUrl ='';
 //var leftArrow ='';
 //var rightArrow = '';
 /* opening hours */
 var hours1 = new Array();
 var hours2 = new Array();
 var hours3 = new Array();
 
 var slides = new Array();
 
 
 /*$('#debug').append('<br />'+allBusinesses);*/
 var setContent = allBusinesses[index][1].toString();
 $('#contentTarget').html(setContent);
 var tempCodeToText = setContent;
 //$('#debug').text(tempCodeToText); // !!!!!!!!!!!!!
 
 // GET VALUES
 themeColor = '#573b81';// $('#contentTarget').find('.field-name-field-themecolor').find('.field-item').text();
 linkColor = $('#contentTarget').find('.field-name-field-linkcolor').find('.field-item').text();
 
 webaddress = $('#contentTarget').find('.field-name-field-website').find('.field-item').text();
 facebookaddress = $('#contentTarget').find('.field-name-field-facebook').find('.field-item').text();
 phoneNumber = $('#contentTarget').find('.field-name-field-phone').find('.field-item').text();
 mapUrl = $('#contentTarget').find('.field-name-field-map').find('img').attr('src');
 //leftArrow = $('#contentTarget').find('.field-name-field-leftarrow').find('.field-item').text();
 //rightArrow = $('#contentTarget').find('.field-name-field-rightarrow').find('.field-item').text();
 //
 hours1[0] = $('#contentTarget').find('.field-name-field-1mon').find('.field-item').text();
 hours1[1] = $('#contentTarget').find('.field-name-field-1tue').find('.field-item').text();
 hours1[2] = $('#contentTarget').find('.field-name-field-1wed').find('.field-item').text();
 hours1[3] = $('#contentTarget').find('.field-name-field-1thur').find('.field-item').text();
 hours1[4] = $('#contentTarget').find('.field-name-field-1fri').find('.field-item').text();
 hours1[5] = $('#contentTarget').find('.field-name-field-1sat').find('.field-item').text();
 hours1[6] = $('#contentTarget').find('.field-name-field-1sun').find('.field-item').text();
 //
 hours2[0] = $('#contentTarget').find('.field-name-field-2mon').find('.field-item').text();
 hours2[1] = $('#contentTarget').find('.field-name-field-2tue').find('.field-item').text();
 hours2[2] = $('#contentTarget').find('.field-name-field-2wed').find('.field-item').text();
 hours2[3] = $('#contentTarget').find('.field-name-field-2thur').find('.field-item').text();
 hours2[4] = $('#contentTarget').find('.field-name-field-2fri').find('.field-item').text();
 hours2[5] = $('#contentTarget').find('.field-name-field-2sat').find('.field-item').text();
 hours2[6] = $('#contentTarget').find('.field-name-field-2sun').find('.field-item').text();
 //
 hours3[0] = $('#contentTarget').find('.field-name-field-3mon').find('.field-item').text();
 hours3[1] = $('#contentTarget').find('.field-name-field-3tue').find('.field-item').text();
 hours3[2] = $('#contentTarget').find('.field-name-field-3wed').find('.field-item').text();
 hours3[3] = $('#contentTarget').find('.field-name-field-3thur').find('.field-item').text();
 hours3[4] = $('#contentTarget').find('.field-name-field-3fri').find('.field-item').text();
 hours3[5] = $('#contentTarget').find('.field-name-field-3sat').find('.field-item').text();
 hours3[6] = $('#contentTarget').find('.field-name-field-3sun').find('.field-item').text();
 
 $('#slideTarget').html(''); // empty background slides
 $('#contentTarget').find('.field-name-field-pic').find('img').each(function(){
   var tempImageSrc = $(this).attr('src');
   trace(tempImageSrc);
   $('#slideTarget').append('<div class="slideBg" style="background: url('+tempImageSrc+') no-repeat top center;"></div>');
   //$('#contentTarget').css('background','url('+tempImageSrc+') no-repeat top center');
 });

 //trace(themeColor);
 
 var style;
 var web;
 var webTitle;
 var faceBooktitle;
 var phone;
 var location;
 var weekDays = new Array();
 var map;
 var closeMap;
 var hoursHeader1 = '';
 var hoursHeader2 = '';
 var hoursHeader3 = '';
 
 if(language=='fin'){
   style='TYYLI';
   web='WEB';
   webTitle="Kotisivu"
   faceBooktitle="Facebook";
   phone='PUHELIN';
   location='SIJAINTI';
   map='KARTTA';
   closeMap='SULJE KARTTA';
   weekDays = new Array('Ma','Ti','Ke','To','Pe','La','Su');
   hoursHeader1 = $('#contentTarget').find('.field-name-field-open1').find('.field-item').text();
   hoursHeader2 = $('#contentTarget').find('.field-name-field-open2').find('.field-item').text();
   hoursHeader3 = $('#contentTarget').find('.field-name-field-open3').find('.field-item').text();
   locationValue = $('#contentTarget').find('.field-name-field-location').find('.field-item').text();
   styles = $('#contentTarget').find('.field-name-field-style').find('.field-item').text();
 }else if(language=='eng'){
   style='STYLE';
   web='WEB';
   webTitle="Site"
   faceBooktitle="Facebook";
   phone='PHONE';
   location='LOCATION';
   map='MAP';
   closeMap='CLOSE MAP';
   weekDays = new Array('Mon','Tue','Wed','Thur','Fri','Sat','Sun');
   hoursHeader1 = $('#contentTarget').find('.field-name-field-open1-en').find('.field-item').text();
   hoursHeader2 = $('#contentTarget').find('.field-name-field-open2-en').find('.field-item').text();
   hoursHeader3 = $('#contentTarget').find('.field-name-field-open3-en').find('.field-item').text();
   locationValue = $('#contentTarget').find('.field-name-field-location-en').find('.field-item').text();
   styles = $('#contentTarget').find('.field-name-field-style-en').find('.field-item').text();
 }else if(language=='rus'){
   style='Категория';
   web='ВЕБ';
   webTitle="Страница"
   faceBooktitle="Facebook";
   phone='ТЕЛЕФОН';
   location='РАСПОЛОЖЕНИЕ';
   map='КАРТА';
   closeMap='Закрыть карту';
   weekDays = new Array('Пн','Вт','Ср','Чт','Пт','Сб','Вс');
   hoursHeader1 = $('#contentTarget').find('.field-name-field-open1-rus').find('.field-item').text();
   hoursHeader2 = $('#contentTarget').find('.field-name-field-open2-rus').find('.field-item').text();
   hoursHeader3 = $('#contentTarget').find('.field-name-field-open3-rus').find('.field-item').text();
   locationValue = $('#contentTarget').find('.field-name-field-location-rus').find('.field-item').text();
   styles = $('#contentTarget').find('.field-name-field-style-rus').find('.field-item').text();
 }else if(language=='jpn'){
   style='スタイル';
   web='ウェブ';
   webTitle="サイト"
   faceBooktitle="Facebook";
   phone='電話';
   location='位置';
   map='地図';
   closeMap='地図を閉じる';
   weekDays = new Array('月','火','水','木','金','土','日');
   hoursHeader1 = $('#contentTarget').find('.field-name-field-open1-jpn').find('.field-item').text();
   hoursHeader2 = $('#contentTarget').find('.field-name-field-open2-jpn').find('.field-item').text();
   hoursHeader3 = $('#contentTarget').find('.field-name-field-open3-jpn').find('.field-item').text();
   locationValue = $('#contentTarget').find('.field-name-field-location-jpn').find('.field-item').text();
   styles = $('#contentTarget').find('.field-name-field-style-jpn').find('.field-item').text();
 }else if(language=='sve'){
   style='STIL';
   web='WEB';
   webTitle="Hemsida"
   faceBooktitle="Facebook";
   phone='TELEFON';
   location='МENU';
   map='KARTA';
   closeMap='Stäng kartan';
   weekDays = new Array('Mån','Tis','Ons','Tors','Fre','Lör','Sön');
   hoursHeader1 = $('#contentTarget').find('.field-name-field-open1-swe').find('.field-item').text();
   hoursHeader2 = $('#contentTarget').find('.field-name-field-open2-swe').find('.field-item').text();
   hoursHeader3 = $('#contentTarget').find('.field-name-field-open3-swe').find('.field-item').text();
   locationValue = $('#contentTarget').find('.field-name-field-location-swe').find('.field-item').text();
   styles = $('#contentTarget').find('.field-name-field-style-swe').find('.field-item').text();
 }
 trace(hoursHeader1+','+hoursHeader2+','+hoursHeader3);
 $('#contentTarget').append('<div id="shopTopBar"><div id="bgColor"></div><div id="businessName">'+allBusinesses[index][0]+'</div></div>');
 $('#contentTarget').append('<div id="slideBlackBottom"></div>');
 $('#contentTarget').append('<div id="shopInfo"><div id="infoBar"><div id="style"></div><div id="web"></div><div id="phone"></div><div id="location"></div></div><div id="openingHours"></div></div>');
 // display opening hours //
 multipleTimes=false;
 if(hoursHeader1 != ''){
   $('#openingHours').append('<div id="hoursMenuTopBg"></div><div id="hoursMenu"><div class="hoursMenuMid"><span class="h1">'+hoursHeader1+'</span></div></div>');
 }
 if(hoursHeader2 != ''){
   multipleTimes=true;
   $('.hoursMenuMid').append('<img class="downArrow" src="sites/all/themes/kluuvi2011/images/openingHoursDArrow.png" alt="menu" />');
   $('.hoursMenuMid').append('<span class="h2">'+hoursHeader2+'</span>');
 }
  if(hoursHeader3 != ''){
   multipleTimes=true;
   $('.hoursMenuMid').append('<span class="h3">'+hoursHeader3+'</span>');
 }
 setOpeningHoursEvents();
 
 for(day in weekDays){
   $('#openingHours').append('<div class="row '+day+' set1"><span class="wdName">'+weekDays[day]+'</span><span class="smallSerif">'+hours1[day]+'</span></div>');
   $('#openingHours').append('<div class="row '+day+' set2"><span class="wdName">'+weekDays[day]+'</span><span class="smallSerif">'+hours2[day]+'</span></div>');
   $('#openingHours').append('<div class="row '+day+' set3"><span class="wdName">'+weekDays[day]+'</span><span class="smallSerif">'+hours3[day]+'</span></div>');
 }
 var now = new Date();  
 var day = now.getDay();
 if(day==0){day=7}
 day-=1;
 var dayClass = '.'+day; // highlight current day
 $('#openingHours').find(dayClass).css('background','#fff');
 $('#openingHours').find(dayClass).css('color','#000');
 
 //$('#shopTopBar').append('<img src="sites/default/files/'+leftArrow+'" alt="browse left" id="leftArrow" />');
 //$('#shopTopBar').append('<img src="sites/default/files/'+rightArrow+'" alt="browse right" id="rightArrow" />');
 
 createLanMenu();
 setLanguageEvents();
 
 $('#hoursMenuTopBg').css('background',themeColor);

 $('#openingHours').css('background',themeColor);
 $('#businessName').css('background',themeColor);
 $('#bgColor').css('background',themeColor);
 
 $('#style').html(style+' /<br /><span class="smallSerif">'+styles+'</span>');
 $('#web').html(web+' /<br />');
 if(webaddress!=''){
   $('#web').append('<span class="smallSerif"><a href="'+webaddress+'" target="_blank">'+webTitle+'</a></span>');
 }
 if(webaddress!='' && facebookaddress!=''){
   $('#web').append('<a>, </a>');
 }
 if(facebookaddress!=''){
   $('#web').append('<span class="smallSerif"><a href="'+facebookaddress+'" target="_blank">'+faceBooktitle+'</a></span>');
 }
 
 $('#phone').html(phone+' /<br /><span class="smallSerif">'+phoneNumber+'</span>');
 $('#location').html(location+' /<br /><span class="smallSerif maplink">'+locationValue+'</span>');
 $('#map').css('background-image','url('+mapUrl+')');
 $('#closeMap').html(closeMap);
 $('#contentTarget').find('a').css('color',linkColor);
 $('#contentTarget').find('a').hover(function () {
    $(this).css('color','#fff');}, 
  function () {
    $(this).css('color',linkColor);
    }
 );
 $('.maplink').css('color',linkColor);
 $('.maplink').hover(function () {
    $(this).css('color','#fff');}, 
  function () {
    $(this).css('color',linkColor);
    }
 );
 $('#closeMap').css('color',themeColor);
 $('#closeMap').hover(function () {
    $(this).css('color','#fff');}, 
  function () {
    $(this).css('color',linkColor);
    }
 );
 $('#location').click(function(){
   $('#map').fadeIn(200);
    $('#slideTarget').fadeOut(200);
 });
 $('#map').click(function(){
   $('#map').fadeOut(200);
   $('#slideTarget').fadeIn(200);
 });
 $('#shopInfo').fadeIn(500);
 $('#contentTarget').fadeIn(500);
 
 
 window.clearInterval(slideShowInterval);
 startSlideShow(4000,false); /* if shop has more than 1 image rotate them as a slideshow */
 setTimeout("$('#slideTarget').fadeIn(500)",1000);
 
 }
}

/////////////////////////////////////////////////
/* highlight the active page in the navigation */
/////////////////////////////////////////////////

function highlightActivePage(business){
  $('#topDropMenu').find('.title').each((function(index){
    if($(this).text()==business){
      //trace('this is: '+$(this).html());
      $(this).parent().addClass('activePage');
    }else{
      $(this).parent().removeClass('activePage');
    }
  }));
  }

/* Arrow interaction */
function setArrowEvents(){
  var nextBusiness;
  $('#rightArrow').click(function(){
    $('#slideTarget').fadeOut(200);
    $('#contentTarget').fadeOut(500, function() {
      if(selectedBusiness==undefined){
        nextBusiness=0;
      }else{
        nextBusiness=parseInt(selectedBusiness)+1;
      }  
      if(nextBusiness>=allBusinesses.length){
        nextBusiness = 0;
        trace("true");
      };
      //trace("left click - now:"+selectedBusiness+" next: "+nextBusiness);
      loadContent(allBusinesses[nextBusiness][0]);
      setIndicators(nextBusiness);
    });
  });
  $('#rightArrow').mouseover(function(){
    $(this).find('.indicator').show(200);
  });
  $('#rightArrow').mouseleave(function(){
    $(this).find('.indicator').hide(200);
  });
  var prevBusiness
  $('#leftArrow').click(function(){
    $('#slideTarget').fadeOut(200);
    $('#contentTarget').fadeOut(500, function() {
      if(selectedBusiness==undefined){
        prevBusiness = allBusinesses.length-1;
      }else{
        prevBusiness=parseInt(selectedBusiness)-1;
      }
      if(prevBusiness<0){
        prevBusiness = allBusinesses.length-1;
      };
      //trace("right click - now:"+selectedBusiness+" next: "+prevBusiness);
      loadContent(allBusinesses[prevBusiness][0]);
      setIndicators(prevBusiness);
    });
  });
  $('#leftArrow').mouseover(function(){
    $(this).find('.indicator').show(200);
  });
  $('#leftArrow').mouseleave(function(){
    $(this).find('.indicator').hide(200);
  });
}

function setIndicators(pageNow){
  var prevBusiness;
  var nextBusiness
  if(pageNow==undefined){
    prevBusiness = allBusinesses.length-1;
    nextBusiness = 0;
  }else{
    prevBusiness=parseInt(pageNow)-1;
    if(prevBusiness<0){
      prevBusiness = allBusinesses.length-1;
    };
    nextBusiness=parseInt(pageNow)+1;
    if(nextBusiness>=allBusinesses.length){
      nextBusiness = 0;
    }
  }
  var leftString = allBusinesses[prevBusiness][0].replace(" ", "&nbsp;");
  var rightString = allBusinesses[nextBusiness][0].replace(" ", "&nbsp;");
  $('#rightArrow').find('.indicator').html('<div>'+rightString+'</div>');
  $('#leftArrow').find('.indicator').html('<div>'+leftString+'</div>');
}

function trace(message){
  //$('#debug').append('<br />'+message);
}

////////////////////////////
/* load selected business */
////////////////////////////

function loadSelectedBusiness(busName){
  for(business in allBusinesses){
      //trace(busName+'=='+allBusinesses[business][0]);
      if(busName==allBusinesses[business][0]){
         $('#slideTarget').fadeOut(0);
         $('#contentTarget').fadeOut(200);
         naviOpen=false;
         trace('now'+selectedBusiness);
         $('#topDropMenu').animate({height: 0}, 200, function() {
           loadContent(busName);
         });
         break;
         
      }
    }
}

function showVideo(){
  //trace('going to video');
  $('#contentTarget').show();
  $('#contentTarget').html('<div id="shopTopBar"><div id="bgColor"></div><div id="businessName">KLUUVI</div></div>');
  createLanMenu();
  setLanguageEvents();
  window.clearInterval(slideShowInterval); // stop slideshow
  startSlideShow(4000,true); // start frontpage slideShow
  
  
  $('#slideTarget').html(''); // hide slides
  $('#frontpageVideos').show();
  $('.view-id-frontpage_slideshow2').show();
  
  /*try {
    thisMovie("swfBackup").sendPlayToAS();
  }
  catch(err) {
    trace('sendPlayToAS not supported');
  }*/
  
  $('#topDropMenu').find('.title').each((function(index){
      $(this).parent().removeClass('activePage');
  }));
  
  /*var myVideo = document.getElementById('videoId');
  try{
    myVideo.currentTime = 0;
    myVideo.play(); 
    if (typeof myVideo.loop == 'boolean') { // loop supported
      myVideo.loop = true;
    } else { // loop property not supported
      myVideo.addEventListener('ended', function () {
      this.currentTime = 0;
      this.play();
      }, false);
    }
    }
  catch(err) {
    trace('unsupported features');
  } */
}

/* sending javascript call to swf backup videoplayer */
function thisMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName];
    } else {
        return document[movieName];
    }
}

/////////////////////////////////
/* manage opening hours events */
/////////////////////////////////

var hoursTogle=false;
function setOpeningHoursEvents() {
  $('#hoursMenu').click(function(){
    trace('hours');
    if(hoursTogle==false && multipleTimes==true){
     hoursTogle=true;
     $('.hoursMenuMid').css('top','0');
     $('.downArrow').css('top','7px');
     $('#hoursMenu').css('height','150px');
     $('#hoursMenu').css('background',themeColor);
     $(this).css('overflow','visible');
    }else if(multipleTimes==true){
     hoursTogle=false;
     $(this).css('overflow','hidden');
    }
 });
 $('.h1').click(function(){
   trace('set1');
   $('.set1').css('display','block');
   $('.set2').css('display','none');
   $('.set3').css('display','none');
   $('.hoursMenuMid').css('top','0');
   $('.downArrow').css('top','7px');
   $('#hoursMenu').css('background','none');
   $('#hoursMenu').css('height','31px');
 });
 $('.h2').click(function(){
   trace('set2');
   $('.set1').css('display','none');
   $('.set2').css('display','block');
   $('.set3').css('display','none');
   $('.hoursMenuMid').css('top','-31px');
   $('.downArrow').css('top','38px');
   $('#hoursMenu').css('background','none');
   $('#hoursMenu').css('height','31px');
 });
 $('.h3').click(function(){
   trace('set3');
   $('.set1').css('display','none');
   $('.set2').css('display','none');
   $('.set3').css('display','block');
   $('.hoursMenuMid').css('top','-62px');
   $('.downArrow').css('top','69px');
   $('#hoursMenu').css('background','none');
   $('#hoursMenu').css('height','31px');
 });

}



//////////////////////
/* manage slideshow */
//////////////////////

var kluuviSlides = new Array(); // slideshow content
var globalCurrentSlide=0;
var slideShowInterval;


function startSlideShow(speed,isFrontpage){
  globalCurrentSlide=0; // reset current slide
  window.clearInterval(slideShowInterval);
  //trace('slideshow go');
  kluuviSlides = new Array(); // clear array
  if(isFrontpage){
    $('.homePageSlide').each(function(index){
    	kluuviSlides[index]=$(this);
  	  if(index!='0'){ /* hide all but the bottom picture */
      	$(this).hide();
      }
    });
  }else{
    $('.slideBg').each(function(index){
    	kluuviSlides[index]=$(this);
  	  if(index!='0'){ /* hide all but the bottom picture */
      	$(this).hide();
      }
    });
    }
  if(kluuviSlides.length>1){
    slideShowInterval = window.setInterval (swapSlides, speed);
    //trace('more than 1 image');
  }else{
    //trace('only 1 image - no slideshow');
  }
  }
  
  
  
function swapSlides(){
  globalCurrentSlide += 1;
  if(globalCurrentSlide<kluuviSlides.length){
  	kluuviSlides[globalCurrentSlide].fadeTo(1000, 1);
  }else if(globalCurrentSlide>kluuviSlides.length-1){
    $.each(kluuviSlides,function(index){
        if(index!=0 && index!=kluuviSlides.length-1){ /* hide all but first and last */
	    	$(this).fadeTo(0, 0);
	    }else if(index==kluuviSlides.length-1){ /* fade out last */
	        $(this).fadeTo(1000, 0);
	    }
    });
    globalCurrentSlide=0;
  }
}

////////////////////////
/* hidden mailto link */
////////////////////////

function emailContact(){
  $('.retailers').click(function(){
    window.location.href = "mailto:%69%6E%66%6F%40%6B%6C%75%75%76%69%2E%66%69";
  });
}


//////////////////////
/* newsletter signup*/
//////////////////////

var lanPhrase = "";
function insertNewsletter(){
  var signupForm;
  if(language=='fin'){
    lanPhrase='Syötä sähköpostiosoitteesi';
    signupForm ='<form action="http://kluuvi.us2.list-manage.com/subscribe/post?u=432a84b389a6401fe17f9069f&amp;id=6cd34f7300" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_self"><input class="mailaddress" type="email" value="'+lanPhrase+'" name="EMAIL" class="email" id="mce-EMAIL" placeholder="'+lanPhrase+'" required><input type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="button"></form>';
}
  else if(language=='eng'){
    lanPhrase='Enter your e-mail';
    signupForm ='<form action="http://kluuvi.us2.list-manage.com/subscribe/post?u=432a84b389a6401fe17f9069f&amp;id=6cd34f7300" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_self"><input class="mailaddress" type="email" value="'+lanPhrase+'" name="EMAIL" class="email" id="mce-EMAIL" placeholder="'+lanPhrase+'" required><input type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="button"></form>';
    }
  else if(language=='sve'){
    lanPhrase='Skriv din e-post';
    signupForm ='<form action="http://kluuvi.us2.list-manage.com/subscribe/post?u=432a84b389a6401fe17f9069f&amp;id=6cd34f7300" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_self"><input class="mailaddress" type="email" value="'+lanPhrase+'" name="EMAIL" class="email" id="mce-EMAIL" placeholder="'+lanPhrase+'" required><input type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="button"></form>';
  }
  else if(language=='rus'){
    lanPhrase='введите ваш е-майл';
    signupForm ='<form action="http://kluuvi.us2.list-manage.com/subscribe/post?u=432a84b389a6401fe17f9069f&amp;id=6cd34f7300" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_self"><input class="mailaddress rus" type="email" value="'+lanPhrase+'" name="EMAIL" class="email" id="mce-EMAIL" placeholder="'+lanPhrase+'" required><input type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="button rus"></form>';
  }
  else if(language=='jpn'){
    lanPhrase='Enter your e-mail';
    signupForm ='<form action="http://kluuvi.us2.list-manage.com/subscribe/post?u=432a84b389a6401fe17f9069f&amp;id=6cd34f7300" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_self"><input class="mailaddress" type="email" value="'+lanPhrase+'" name="EMAIL" class="email" id="mce-EMAIL" placeholder="'+lanPhrase+'" required><input type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="button"></form>';
}
  //signupForm ='<form action="http://kluuvi.us2.list-manage.com/subscribe/post?u=432a84b389a6401fe17f9069f&amp;id=6cd34f7300" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_self"><input class="mailaddress" type="email" value="'+lanPhrase+'" name="EMAIL" class="email" id="mce-EMAIL" placeholder="'+lanPhrase+'" required><input type="submit" value="" name="subscribe" id="mc-embedded-subscribe" class="button"></form>';
  $('#signup').html(signupForm);
  $('.mailaddress').click(function(){
    if($(this).attr('value')==lanPhrase){
      $(this).attr('value','');
    }
  });
}
////////////////////
/* History plugin */
////////////////////

function initHistoryPlugin(){
    $.history.init(function(hash){
        if(hash == "") {
            // initialize your app
            pageFromHash='undefined';
        } else {
            // restore the state from hash
            var temp = purl();
            pageFromHash=temp.attr('fragment');
            trace(temp.attr('fragment'));
        }
    },
    { unescape: ",/" });
}

  window.onhashchange = function(){
  var temp = purl();
  setContent(temp.attr('fragment'));
  
}
