/* TKMaps Add Func じゃらん*/

TKMapsObj.setJalan = function(obj){
  var maxMarkers = 30;
  var ch = "Jalan";
  var credit = "<a href=\"http://jws.jalan.net/\">じゃらん Web サービス</a>";
  this.addCredit (ch, credit);
  var iconObj = new GIcon();
  iconObj.image = "/images/yado_blue.png";
  iconObj.iconSize = new GSize(12, 12);
  iconObj.iconAnchor = new GPoint(6,6);
  iconObj.infoWindowAnchor = new GPoint(6,6);
  if(! obj.Hotel) return null;
  var JalanPreURL = "http://px.a8.net/svt/ejp?a8mat=15X71U+7TM1WY+14CS+639IQ&a8ejpredirect=http%3A%2F%2Fwww.jalan.net%2Fcgi-bin%2Fjalan%2Fjweb%2Faf_entry.cgi%3Fkey%3DA8%26next_url%3D";
  for(var i=0;i < obj.Hotel.length;i++){
    var s = obj.Hotel[i];
    if(s.AccessInformation){
      var Access = "<br />アクセス:";
      for(var aa =0; aa< s.AccessInformation.length; aa++){
        Access += s.AccessInformation[aa].name+"/"+s.AccessInformation[aa]._content+"&nbsp;";
      }
    }else{
      var Access = "";
    }
    var JalanURL = JalanPreURL;
    JalanURL += encodeURIComponent(encodeURIComponent(s.HotelDetailURL)).replace("jws.jalan.net","jws%252ejalan%252enet");
    JalanURL += "%2526vos%253dnjala8nt00001";
    var kihon = "<div class=\"JalanInfo\"><b>"+s.HotelName+"</b><br /><img src=\""+s.PictureURL+"\" /><p>"+s.HotelCatchCopy+"</p>";
    kihon += "<a href=\""+JalanURL+"\" target=\"_blank\">じゃらんで詳しく見る</a></div>";
    var detail = "<div class=\"JalanInfo\"><b><a href=\""+JalanURL+"\" target=\"_blank\">"+s.HotelName+"</a></b><p style=\"margin:3px;\">"+s.HotelCaption+"</p>";
    detail += "<div>〒"+s.PostCode+" "+s.HotelAddress+"<br />タイプ:"+s.HotelType+Access;
    detail += "<br />チェックイン:"+s.CheckInTime+"<br />チェックアウト:"+s.CheckOutTime;
    detail += "<br />クチコミ評点:"+s.Rating+"("+s.NumberOfRatings+"件)</div>";
    detail += "<a href=\""+JalanURL+"\" target=\"_blank\">じゃらんで詳しく見る</a></div>";
    var tabs = [
      new GInfoWindowTab("基本情報", kihon),
      new GInfoWindowTab("詳細", detail)
    ]
    var ll = this.jalan2google(s.Y-0, s.X-0);
    var str = "<img src=\"/images/yado_blue.png\" style=\"border:0;width:11px;height:11px;\"/>"+s.HotelName;
    var mObj = {id:s.HotelID, chname:ch, lat:ll.lat, lon:ll.lon, opt:{title: s.HotelName, icon:iconObj },windowTabs:tabs, str:str, listId: this.mapid+"_Yado_List"};
    var rt = this.addAndRemoveMarker(ch, mObj, maxMarkers);
    if(rt && rt.chname == ch){
      var delid = rt.chid;
    }
  }
}

TKMapsObj.getJalan = function(point){
  var apikey = "cap111540629bd";
  var ll = this.google2jalan(point.lat()-0, point.lng()-0 );
  var Rurl = "http://jws.jalan.net/APIAdvance/HotelSearch/V1/";
  Rurl += "?key="+apikey;
  Rurl += "&xml_ptn=1&count=30&order=4&pict_size=2";
  Rurl += "&x="+ll.lon+"&y="+ll.lat+"&range=10";
  var url = "/api/xml2json.php?callback=TKMapsObj.setJalan&url="+encodeURIComponent(Rurl);
  this.addScript(url);
}

TKMapsObj.clickMarkerFuncs.push( function( marker ){
  TKMapsObj.clickMarkerJalan(marker);
});

TKMapsObj.clickMarkerJalan = function(marker){
  if(marker.addVars.ch == "HotPepper") return null;
  if(marker.addVars.ch == "Tabelog") return null;
  if(marker.addVars.ch == "Jalan") return null;
  if(marker.addVars.ch == "RakutenTravel") return null;
  if(marker.addVars.ch == "GNavi") return null;
  var p = marker.getPoint();
  this.getJalan( p );
}

TKMapsObj.google2jalan = function (lat,lon){
   var ll = this.wgs2tokyo(lat,lon);
   var a = { "lat" :  Math.ceil(ll.lat*3600000) ,"lon" : Math.ceil(ll.lon*3600000) };
   return a;
}

TKMapsObj.jalan2google = function (lat,lon){
  return this.tokyo2wgs(lat/3600000, lon/3600000);
}

TKMapsObj.changeJalanFlg = function(){
  if(this.JalanFlg == 1){
    this.JalanFlg = 0;
    this.clearChMarkers("Jalan");
    $("JalanSwitch").innerHTML = "じゃらんを表示";
    $("JalanSwitch").className = "changeFlgButtomOFF";
  }else{
    this.JalanFlg = 1;
    TKMapsObj.getJalan();
    $("JalanSwitch").innerHTML = "じゃらんを消す";
    $("JalanSwitch").className = "changeFlgButtomON";
  }
}