$(function(){
  var dp=$("#quicksearchDate");
  dp.datepicker();
  dp.datepicker('option',{
    minDate: Page.firstdate,
    maxDate: 365
  });
  dp.datepicker('setDate', Page.arrdate);
  $("#messageDialog").dialog({
    modal: true,
    autoOpen: false,
    buttons: {
      OK: function() {
        $(this).dialog('close');
      }
    }
  });
  $("#imageDialog").dialog({
    modal: true,
    autoOpen: false,
    width: 540
  });
  if(!Page.isR360page){
    r360=new R360.integration({
      'standalone': true,
      'parameters':{
        'externalsession': Page.externalsession 
      }
    });
  }
  r360PrintBasket();
  if(!Page.continueLoading) loading(false);
  if(Page.section){
    $("#menu_"+Page.section).addClass("active");
  }
  $("#navigation ul li a").click(function(){
    $(this).addClass("active");
  });
});

function loading(tf){
  if(typeof tf==="undefined") var tf=false;
  if(!tf){
    $("#scene-loading").hide();
    $("#scene-inner").fadeIn('slow');
  }else{
    $("#scene-inner").hide();
    $("#scene-loading").show();
  }
}

function message(msg){
  $("#messageDialogText").text(msg);
  $("#messageDialog").dialog('open');
}

function showImage(src){
  $("#imageDialogInner").html('<img src="'+src+'" class="img hand" onclick="closeImageDialog()" />');
  $("#imageDialog").dialog('open');
}

function closeImageDialog(){
  $('#imageDialog').dialog('close');
}

function text(name){
  return Page.texts[name];
}

function scrollUp(){
  $('html, body').animate({scrollTop:0}, 'slow');
}

function quicksearch(){
  var date=$.datepicker.formatDate('yy-mm-dd', $('#quicksearchDate').datepicker('getDate'));
  var days=$('#quicksearchDays').val();
  if(!/^\d{1,2}$/.test(days)){
    message(text('error_quicksearch'));
  }else{
    location.href='/gen/r360.aspx?resvtype=L&search_arrdate='+date+'&search_days='+days+'&search_execute=T';
  }
  return false;
}

function r360Go(o){
  if(typeof o==='string'){
    if(r360Available()) r360.go(o);
    params='&goto='+o;
  }else{
    var params='';
    for(var p in o) params+="&"+escape(p)+"="+escape(o[p]);
    if(r360Available()) r360.reload(o);
  }
  if(params && !r360Available()) location.href='/gen/r360.aspx?'+params.substr(1);
}

function r360RefreshBasket(){
  $.ajax({
      //url: '/gen/json.aspx?method=basketData',
      url: '/gen/json.aspx?method=basketData&rnd=' + Math.round(Math.random() * 999999),
    success: function(data) {
      var success=(typeof data.response==='object');
      if(success){
        Page.basketData=data.response;
        r360PrintBasket();
      }else{
        Page.basketData=null;
      }
    },
    error: function(data){
      
    }
  });
}

function r360PrintBasket(){
  if(Page.basketData==null){
    r360RefreshBasket();
    return;
  }
  R360.log("Renderar kundkorg");
  //var resvtypes=['L','D','S','A','O','T'];
  // kundspecifikt
  var resvtypes=['E','O'];
  var resvtypeSums={};
  if(!Page || !Page.basketData || !Page.basketData.basket) return false;
  for(var x in Page.basketData.basket){
    var item=Page.basketData.basket[x];
    var currentSum=resvtypeSums[item.reservationType]||0.0;
    resvtypeSums[item.reservationType]=currentSum+Number(item.calculatedPrice);
  }
  for(var x in resvtypes){
    var resvtype=resvtypes[x];
    $("#basketSum"+resvtype).text(resvtypeSums[resvtype]||0);
  }
 var loggedIn=(Page && Page.basketData && Page.basketData.user_lid>0);
  
  if(loggedIn){
    //$('#loginbtn').hide();
    $('#logoutbtn').show();
  }
  //else{
  //  $('#logoutbtn').hide();
    //$('#loginbtn').show();
  //}
  $('#basketTotal').text(Page.basketData.basketTotalPrice);
}

function r360ViewBasket(){
  if(r360Available()){
    r360.showBasket();
  }else{
    location.href='/gen/r360.aspx?goto=basket';
  }
}

function r360Available(){
  return (typeof r360!=="undefined" && !r360.standalone);
}

function logout(){
  r360.logout(function(){
    location.href='/';
  });
}

function sectionFromResvtype(resvtype){
  resvtype=resvtype.toUpperCase();
  var section="";
  if(resvtype=="L") section="lodging";
  else if(resvtype=="D") section="skipass";
  else if(resvtype=="S") section="equipment";
  else if(resvtype=="A") section="activities";
  else if(resvtype=="T") section="tickets";
  else if(resvtype=="O") section="packages";
  return section;
}
