﻿/*
Copyright (C) 2008 JTB Travel Network Company. All rights reserved.
Plugin Common
file : JTNPlugin.js
version: 1.0.0
*/

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//JTNWebServerのURLを設定
//var JTN_DOMAIN = "http://localhost:2909/";
//var JTN_DOMAIN = "http://192.168.1.200:8001/";
//var JTN_DOMAIN = "http://localhost/lars2c/";
//var JTN_DOMAIN = "http://demo.looktrip.com/";
//var JTN_DOMAIN = "http://test.looktour.net/";
var JTN_DOMAIN = "http://www.looktour.net/";

//JTN検索サイトURLを設定
var JTN_B2C_URL_HOTEL = JTN_DOMAIN + "HotelPriceList.aspx"; //"http://192.168.1.143/PluginHotelTest.aspx";
var JTN_B2C_URL_TOUR  = JTN_DOMAIN + "TourSearchResult.aspx"; //"http://192.168.1.143/PluginTourTest.aspx";
var JTN_B2C_URL_MUSICAL  = JTN_DOMAIN + "MusicalSearchResult.aspx"; //"http://192.168.1.143/PluginMusicalTest.aspx";  //add for musical
var JTN_B2C_URL_TOP   = JTN_DOMAIN + "TourSearchResult.aspx";

/////////////////////////////JTN Namespace///////////////////////////////////////////////////////////////////////

if (typeof JTN == "undefined") {
    var JTN = {};
}

JTN.namespace = function() {
    var a=arguments, o=null, i, j, d;
    for (i=0; i<a.length; i=i+1) {
        d=a[i].split(".");
        o=JTN;

        // JTN is implied, so it is ignored if it is included
        for (j=(d[0] == "JTN") ? 1 : 0; j<d.length; j=j+1) {
            o[d[j]]=o[d[j]] || {};
            o=o[d[j]];
        }
    }

    return o;
};

// Number of max hotel room (no use)
var JTNhotelMaxRoom=2;

// Log display flag (no use)
var JTNlogoFlag='N';

// Musical Search flag (same value as Tour Search Flag) add for musical
var JTNmusicalSearch=JTNtourSearch;

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Number of max number of children
var JTN_MAX_CHILD=4;

// Tag name to insert plugin
var JTN_TARGET_DEV = 'JTNPluginText';
var JTN_TARGET_DEV_MAP = 'JTNPluginMap';

// Search categories
var JTN_HOTEL = 'HOTEL';
var JTN_TOUR = 'TOUR';
var JTN_MUSICAL = 'MUSICAL'; //add for musical
var JTN_CURR_CAT = 'TOUR';

// Base colors
var JTN_BLUE = 'BLUE';
var JTN_RED = 'RED';
var JTN_NEUTRAL = 'NEUTRAL';

// Flag values
var JTN_YES = 'Y';
var JTN_NO = 'N';

// Browser name
var JTN_OPERA = "Opera";
var JTN_IE = "Microsoft";

// Sub categories tag list
var JTN_SUBCATEGORY_ELMS = [["","JTNddlSearchSubCatBlank"],["アメリカ東部","JTNddlSearchSubCatEast"],["アメリカ西部","JTNddlSearchSubCatWest"],
                         ["カナダ","JTNddlSearchSubCatCanada"],["ハワイ","JTNddlSearchSubCatHawaii"],["カンクン・カリブ海","JTNddlSearchSubCatResort"],
                         ["メキシコ・中米","JTNddlSearchSubCatMexico"],["ペルー・南米・南極","JTNddlSearchSubCatSouthAmerica"],
                         ["ヨーロッパ","JTNddlSearchSubCatEurope"],["エジプト・中東・アフリカ","JTNddlSearchSubCatAfrica"],
                         ["アジア・東南アジア","JTNddlSearchSubCatAsia"],["オセアニア・オーストラリア","JTNddlSearchSubCatOceania"]];
// Plugin Elements
var JTN_PLUGINT_FORM_ELM="JTNform";
var JTN_PLUGINM_MAP_ELM="JTNPluginMap";//add for Map by B3.Tanisaka 6/12
var JTN_PLUGINM_HIDDEN_DEV_ELM="JTNPluginMapForm";//add for Map by Tanisaka
var JTN_AGENTCODE_ELM="JTNhdnAgentCode";
var JTN_TOURDATE_ELM="JTNtxtTourDate";
var JTN_TOURDATE_DEV_ELM="JTNdevTourDate";
var JTN_TOURDATE_CAL_ELM ="JTNimgCal";
var JTN_TOURPAXCONT_ELM ="JTNddlPaxCnt"; //add for Map
var JTN_CHECKIN_ELM="JTNtxtCheckIn";
var JTN_CHECKIN_DEV_ELM="JTNdevCheckIn";
var JTN_CHECKIN_CAL_ELM ="JTNimgCalIn";
var JTN_CHECKOUT_ELM="JTNtxtCheckOut";
var JTN_CHECKOUT_DEV_ELM="JTNdevCheckOut";
var JTN_CHECKOUT_CAL_ELM ="JTNimgCalOut";
var JTN_SEARCH_ELM ="JTNtxtSearchTextTemp";
var JTN_SEARCH_HDN_ELM ="JTNtxtSearchText";
var JTN_SEARCH_DEV_ELM ="JTNdevSearchContainer";
var JTN_TOUR_CAT_ELM="JTNddlSearchCat";
var JTN_TOUR_SUBCAT_ELM="JTNddlSearchSubCat";
var JTN_TOUR_SUBCAT_BLANK_ELM="JTNddlSearchSubCatBlank";
var JTN_TOUR_SUBCAT_DEV_ELM="JTNdevSubcategory";
var JTN_CITYLIST_ELM="JTNddlCityList";
var JTN_CITYCODE_ELM="JTNtxtCityCodeTemp";
var JTN_CITYCODE_HDN_ELM="JTNtxtCityCode";
var JTN_CITY_DEV_ELM="JTNdevCityContainer";
var JTN_ROOM_LBL_ELM = "JTNLabelRoom_";
var JTN_ROOMNUM_ELM="JTNddlRoomNum";
var JTN_HOTELNAME_ELM="JTNtxtHotelNameTemp";
var JTN_HOTELNAME_HDN_ELM="JTNtxtHotelName";
var JTN_HOTELRANK_ELM="JTNddlHotelRank"; //add for Map
var JTN_ADULT_LBL_ELM = "JTNLabelAdult_";
var JTN_ADULTNUM_ELM = "JTNddlAdult_";
var JTN_CHILD_LBL_ELM = "JTNLabelChild_";
var JTN_CHILDNUM_ELM="JTNddlChild_";
var JTN_CHILDAGE_ELM="JTNtxtChildAge_";
var JTN_CHILDAGE_LBL_ELM = "JTNLabelChildAge_";
var JTN_CITY_DIV_INPUT_ELM = "JTNdivInputCity";
var JTN_MUSICAL_CITY_ELM = "JTNddlSearchCity"; //add for musical
var JTN_MUSICALDATE_ELM = "JTNtxtMusicalDate"; //add for musical
var JTN_MUSICALDATE_DEV_ELM="JTNdevMusicalDate"; //add for musical
var JTN_MUSICALDATE_CAL_ELM ="JTNimgCal"; //add for musical
var JTN_MUSICAL_CNT_ELM = "JTNddlPaxCnt"; //add for musical

//added by B3 H.Mizuno 9/8/2008
var JTN_DEFAULT_TOUR_DATE = 20
var JTN_DEFAULT_CHECKIN_DATE = 20
var JTN_DEFAULT_CHECKOUT_DATE = 22
var JTN_DEFAULT_MUSICAL_DATE = 7
var JTN_MIN_MUSICAL_DATE = 3
var JTN_MAX_MUSICAL_MONTH = 8
var JTN_DEFAULT_MUSICAL_CITY = "ニューヨーク"

// Elements JP Name
var JTN_TOURDATE_JP="参加日";
var JTN_CHECKIN_JP="チェックイン日";
var JTN_CHECKOUT_JP="チェックアウト日";
var JTN_SEARCH_JP ="エリアまたはキーワード";
var JTN_TOUR_CAT_JP="エリアまたはキーワード";
var JTN_CITYLIST_JP="滞在都市";
var JTN_CITYCODE_JP="滞在都市";
var JTN_ROOMNUM_JP="部屋数";
var JTN_HOTELNAME_JP="ホテル名";
var JTN_CHILDAGE_JP="子供年齢";
var JTN_MUSICALDATE_JP="演目日"; //add for musical

var JTN_STD_MODE="CSS1Compat";

// Validation Variables
var JTN_VALIDATION_ERRORS;
var JTN_DTCH= "/";

// Validation Error Message
var JTN_MSG_REQUIRED = "が入力されていません。";
var JTN_MSG_CHILDAGE = "子供年齢を0～19で入力してください。";
var JTN_MSG_DATEFORMAT = "をご確認下さい。";
var JTN_MSG_TOURDATE =  "参加日は本日より１年の間で入力してください。";
var JTN_MSG_CHECKIN =  "チェックイン日時を明日～1年の間で選択してください。";
var JTN_MSG_CHECKOUT =  "チェックアウト日をチェックイン翌日から30日以内で入力してください。";
var JTN_MSG_MUSICALDATE =  "演目日は3日後より8ヶ月の間で入力してください。"; //add for musical

var JTNMapTourHtml;
var JTNMapHotelHtml;
var JTNMapMusicalHtml; //add for musical
﻿/*
Copyright (C) 2008 JTB Travel Network Company. All rights reserved.
Plugin Common
file: JTNPluginCommon.js
version: 1.0.0
*/

// Plugin Common Functions
if (!JTN.PluginCommon) {
    JTN.PluginCommon = {
    
        //////////Validation///////////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////////
        
	    ValidateOnsubmit : function(category){
	        JTN_VALIDATION_ERRORS="";
		    if(!JTN.PluginCommon.DoValidation(category)){
			    JTN.PluginCommon.AlertValidationError(JTN_VALIDATION_ERRORS);
			    return false;
		    }
		    else {
		    
		        JTN.PluginCommon.DoSanitizing(category);

		        if(navigator.appName.toUpperCase()=="MICROSOFT INTERNET EXPLORER"){
		            JTN.PluginCommon.SubmitForm();
		            return false;
		        }
		        else{
		            return true;
		        }
   	        }
   	        
   	    },
   	    ///////////////////////////////////////////////////////////////////////////
        SubmitForm : function(){
            var elm = document.getElementById(JTN_PLUGINT_FORM_ELM);
            
            try{

                  var org_chr=document.charset; 
                  document.charset='utf-8';                 
                  elm.submit();
                  document.charset=org_chr; 
            }
            catch(e){
            }
		
	    },
        ///////////////////////////////////////////////////////////////////////////
        DoValidation : function(category){

		    var valid = JTN.PluginCommon.ValidateAllElements(category);
		    return valid;
		
	    },
	
        ///////////////////////////////////////////////////////////////////////////

	    ValidateAllElements : function(category){

		    var valid = true;
            var validattion_elm = new Array();
            var one_elm;
               			    
		    validattion_elm =JTN.PluginCommon.GetValidationElement(category);

		    for(var i=0; i<validattion_elm.length; i++ ) {
			         one_elm = validattion_elm[i];
			        if(!JTN.PluginCommon.ValidateElement(document.getElementById(one_elm))){
				        valid = false;
			        }
		    }
		    return valid;
	    },
	    
        ///////////////////////////////////////////////////////////////////////////

	    GetValidationElement : function(category){
    	
	        var target_elements= new Array();

		    if(category==JTN_TOUR){
    		
		        target_elements.push(JTN_TOURDATE_ELM);
		        if(document.getElementById(JTN_TOUR_CAT_ELM).value.length==0 && document.getElementById(JTN_SEARCH_ELM).value.length==0){
		            target_elements.push(JTN_TOUR_CAT_ELM);
		            target_elements.push(JTN_SEARCH_ELM);
		        }
		    }
		    else if(category==JTN_HOTEL){
                target_elements.push(JTN_CHECKIN_ELM);
                target_elements.push(JTN_CHECKOUT_ELM);
                
               if(document.getElementById(JTN_CITYLIST_ELM).value=="0"){
		            target_elements.push(JTN_CITYCODE_ELM);
		        }
    		    
		        var room_num = Number(document.getElementById(JTN_ROOMNUM_ELM).value);
		        var child_num;
    		    
		        for(var i=1; i<=room_num; i++){
    		    		   	    
		   	        child_num = Number(document.getElementById(JTN_CHILDNUM_ELM + i).value);

		   	        for(var n=1; n<=child_num; n++){
		   	            target_elements.push(JTN_CHILDAGE_ELM + String(i) + String(n));
		   	        }
		        }
		    }
		    else if(category==JTN_MUSICAL){ //add for musical
		        target_elements.push(JTN_MUSICALDATE_ELM);
		    }

		    return target_elements;

	    },

        ///////////////////////////////////////////////////////////////////////////

	    GetElementJP : function(name){

		    switch(name){
		    case JTN_TOURDATE_ELM:
			    return JTN_TOURDATE_JP;
		    case JTN_CHECKIN_ELM:
			    return JTN_CHECKIN_JP;
		    case JTN_CHECKOUT_ELM:
			    return JTN_CHECKOUT_JP;
		    case JTN_TOUR_CAT_ELM:
		        return JTN_TOUR_CAT_JP;
		    case JTN_SEARCH_ELM:
			    return JTN_SEARCH_JP;
		    case JTN_CITYCODE_ELM:
			    return JTN_CITYCODE_JP;
		    case JTN_HOTELNAME_ELM:
			    return JTN_HOTELNAME_JP;			
			case JTN_MUSICALDATE_ELM: //add for musical
			    return JTN_MUSICALDATE_JP;
		    default:
			    return JTN_CHILDAGE_JP;
		    }
	    },

        ///////////////////////////////////////////////////////////////////////////
    	
	    ValidateElement : function (elm){

		    var pattern		= elm.getAttribute("pattern");
		    var value		= elm.value;
		    var is_required		= elm.getAttribute("required") != null;
		    var valid		= true;

	        //elm.onchange = ValidateOnchange;

	        JTN.PluginCommon.ClearClassname(elm);

            if(is_required && value.length==0){
                      
                elm.className += " invalid";
                
                if(!JTN_VALIDATION_ERRORS.match(JTN.PluginCommon.GetElementJP(elm.id) +  JTN_MSG_REQUIRED)){
 
		            JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN.PluginCommon.GetElementJP(elm.id) + JTN_MSG_REQUIRED;

		        }
    		   
             }
             else{

	            if(elm.getAttribute("pattern")=="number") {

		            if(!JTN.PluginCommon.ValidateChildAge(value)){

		                elm.className += " invalid";
    		            
		                if(!JTN_VALIDATION_ERRORS.match(JTN_MSG_CHILDAGE)){
		                    JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN_MSG_CHILDAGE;
                        }
		             }
		            else{
		                elm.className += " valid";
		             }
	            }
	            else if(elm.getAttribute("pattern")=="date") {

	                if(!JTN.PluginCommon.IsDate(value)){
		                elm.className += " invalid";
		                JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN.PluginCommon.GetElementJP(elm.id) + JTN_MSG_DATEFORMAT;
		             }
		            else{
		                if (elm.id==JTN_TOURDATE_ELM && !JTN.PluginCommon.ValidateTourDate(value)){
		                    elm.className += " invalid";
		                    JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN_MSG_TOURDATE;
		                }
		                else if (elm.id==JTN_MUSICALDATE_ELM && !JTN.PluginCommon.ValidateMusicalDate(value)){ //add for musical
		                    elm.className += " invalid";
		                    JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN_MSG_MUSICALDATE;
		                }
		                else if(elm.id==JTN_CHECKIN_ELM && !JTN.PluginCommon.ValidateCheckInDate(value)){	            
		            	    elm.className += " invalid";
		                    JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN_MSG_CHECKIN;
		                }
		                else{
		            	    if(elm.id==JTN_CHECKOUT_ELM && !JTN.PluginCommon.ValidateCheckOutDate(value)){	            
		            	        elm.className += " invalid";
		                      JTN_VALIDATION_ERRORS=JTN_VALIDATION_ERRORS + "\n-" + JTN_MSG_CHECKOUT;
		                    }
		                    else{
		                        elm.className += " valid";
		                    }
		                }
		             }
	            }
	            else if(elm.getAttribute("pattern")=="text") {
	                elm.className += " valid";
	            }
	            else{
	                elm.className += " valid";
	            }
	        }

	        if(elm.className.search(/\bvalid\b/) != -1){
		        return true;
	        }
	        else {
		        return false;
	        }

	    },
    	
    	
        ///////////////////////////////////////////////////////////////////////////

	    AlertValidationError : function(errors) {
		    alert("入力内容をもう一度ご確認ください。\n" + errors);
	    },
    	
        ///////////////////////////////////////////////////////////////////////////

	    ClearClassname : function(elm){
		    if(elm && elm.className){
			    elm.className = elm.className.replace(/\bvalid\b/gi,'');
			    elm.className = elm.className.replace(/\binvalid\b/gi,'');	
		    }
	    },

        ///////////////////////////////////////////////////////////////////////////
    	
        ValidateChildAge : function(val){
            if (JTN.PluginCommon.IsInteger(val)){
                if(Number(val)<20 && Number(val)>=0){
                    return true;
                }
                else{
                    return false;
                }
	        }
	        else{
	            return false;
	        }
	    },
  
        ///////////////////////////////////////////////////////////////////////////
    	
        IsInteger : function(val) {
	        var digits="1234567890";
	        for (var i=0; i < val.length; i++) {
		        if (digits.indexOf(val.charAt(i))==-1) { return false; }
		        }
	        return true;
	    },
    	   
        ///////////////////////////////////////////////////////////////////////////    	    
        StripCharsInBag : function(s, bag){
	        var i;
            var returnString = "";
            // Search through string's characters one by one.
            // If character is not in bag, append to returnString.
            for (i = 0; i < s.length; i++){   
                var c = s.charAt(i);
                if (bag.indexOf(c) == -1) returnString += c;
            }
            return returnString;
        },
        ///////////////////////////////////////////////////////////////////////////
        
        DaysInFebruary : function(year){
	        // February has 29 days in any year evenly divisible by four,
            // EXCEPT for centurial years which are not also divisible by 400.
            return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
        },
        ///////////////////////////////////////////////////////////////////////////
        DaysArray : function(n) {
	        for (var i = 1; i <= n; i++) {
		        this[i] = 31
		        if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		        if (i==2) {this[i] = 29}
           } 
           return this
        },
        
        ///////////////////////////////////////////////////////////////////////////
        IsDate : function(dtStr){
	        var daysInMonth = JTN.PluginCommon.DaysArray(12);
	        var pos1=dtStr.indexOf(JTN_DTCH);
	        var pos2=dtStr.indexOf(JTN_DTCH,pos1+1);
	        var strMonth=dtStr.substring(0,pos1);
	        var strDay=dtStr.substring(pos1+1,pos2);
	        var strYear=dtStr.substring(pos2+1);
	        strYr=strYear;
	        if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1);
	        if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1);
	        for (var i = 1; i <= 3; i++) {
		        if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1);
	        }
	        month=parseInt(strMonth);
	        day=parseInt(strDay);
	        year=parseInt(strYr);
	        if (pos1==-1 || pos2==-1){
		        return false;
	        }
	        if (strMonth.length<1 || month<1 || month>12){
	            return false;
	        }
	        if (strDay.length<1 || day<1 || day>31 || (month==2 && day>JTN.PluginCommon.DaysInFebruary(year)) || day > daysInMonth[month]){
		        return false;
	        }
	        if (strYear.length!=4){
	            return false;
	        }
	        if (dtStr.indexOf(JTN_DTCH,pos2+1)!=-1 || JTN.PluginCommon.IsInteger(JTN.PluginCommon.StripCharsInBag(dtStr, JTN_DTCH))==false){
		        return false;
	        }
         return true;
        },

        ///////////////////////////////////////////////////////////////////////////
        ValidateTourDate : function(value){

            var minDate = new Date(); 
            var maxDate = new Date(); 
              
            maxDate.setFullYear(Number(maxDate.getFullYear())+1);
                           
            return JTN.PluginCommon.ValidateDateRange(value,minDate,maxDate);

        },
        ///////////////////////////////////////////////////////////////////////////
        ValidateMusicalDate : function(value){ //add for musical

            var minDate = new Date(); 
            var maxDate = new Date(); 
              
            minDate.setDate(Number(minDate.getDate()) + JTN_MIN_MUSICAL_DATE);              
            maxDate.setMonth(Number(maxDate.getMonth()) + JTN_MAX_MUSICAL_MONTH);
                           
            return JTN.PluginCommon.ValidateDateRange(value,minDate,maxDate);

        },
        ///////////////////////////////////////////////////////////////////////////
        ValidateCheckInDate : function(value){

            var minDate = new Date();
            var maxDate = new Date();

            minDate.setDate(Number(minDate.getDate()) + 1);              
            maxDate.setMonth(Number(maxDate.getMonth()) + 12);
            
            return JTN.PluginCommon.ValidateDateRange(value,minDate,maxDate);

        },
        ///////////////////////////////////////////////////////////////////////////
        ValidateCheckOutDate : function(value){
        
            var valueCheckin = document.getElementById(JTN_CHECKIN_ELM).value;
            var dateValue=valueCheckin.split(JTN_DTCH);
            var minDate = new Date(dateValue[2],Number(dateValue[0])-1,dateValue[1]);
            var maxDate = new Date(dateValue[2],Number(dateValue[0])-1,dateValue[1]);
            
            minDate.setDate(Number(minDate.getDate())+ 1);
            maxDate.setDate(Number(maxDate.getDate())+ 30);
  
            return JTN.PluginCommon.ValidateDateRange(value,minDate,maxDate);
    	   
        },
        ///////////////////////////////////////////////////////////////////////////
        ValidateDateRange : function(value,minDate,maxDate){
        
            var date_value=value.split(JTN_DTCH);

            var target = JTN.PluginCommon.FormatStringNumber(date_value[2])+JTN.PluginCommon.FormatStringNumber(date_value[0])+JTN.PluginCommon.FormatStringNumber(date_value[1]);
            var min = JTN.PluginCommon.FormatStringNumber(minDate.getFullYear()) + JTN.PluginCommon.FormatStringNumber(minDate.getMonth()+1) + JTN.PluginCommon.FormatStringNumber(minDate.getDate());
            var max = JTN.PluginCommon.FormatStringNumber(maxDate.getFullYear()) + JTN.PluginCommon.FormatStringNumber(maxDate.getMonth()+1) + JTN.PluginCommon.FormatStringNumber(maxDate.getDate());
            
            //alert(value + ':' + target  +'\n' + minDate + ':' + min +  '\n' + maxDate + ':' + max);
                  
            if( target< min|| target> max){
            
                return false;
            }
            else{
                return true;
            }
        },
        ///////////////////////////////////////////////////////////////////////////
        FormatStringNumber :function(num){
        
            value = String(Number(num));
            
            if (value.length==1){
                return "0" + value;
            }
            else{
                return String(value);
            }
        },
        ///////////////////////////////////////////////////////////////////////////
        DoSanitizing : function(category){
        
            var validattion_elm=new Array(JTN_HOTELNAME_ELM,JTN_SEARCH_ELM,JTN_CITYCODE_ELM);
            var one_elm;
            var validattion_hdn_elm=new Array(JTN_HOTELNAME_HDN_ELM,JTN_SEARCH_HDN_ELM,JTN_CITYCODE_HDN_ELM);
            var one_hdn_elm;

		    for(var i=0; i<validattion_elm.length; i++ ) {
			    one_elm = validattion_elm[i];
			    one_hdn_elm = validattion_hdn_elm[i];
                if(document.getElementById(one_elm) && document.getElementById(one_hdn_elm)){		     
			        if((document.getElementById(one_elm).getAttribute('pattern')=='text')){
				        document.getElementById(one_hdn_elm).value = document.getElementById(one_elm).value;
			        }
		        }
		    }
        },

        ////////// function for map called by text and map ///////////////////////
        ///////////////////////////////////////////////////////////////////////////

        ChangeMapCat : function(category){
            var errorHtml = "<table style='text-align: left; vertical-align: middle' border='0' width='450px' height='280px'>";
            errorHtml += "<tr>";
            errorHtml += "<td style='font-size: 8pt; text-align: center; vertical-align: middle' >";
            errorHtml += "<img src='" + JTN_DOMAIN +  "Plugin/Common/images/loading.gif'>";
            errorHtml += "</td>";
            errorHtml += "</tr>";
            errorHtml += "<tr>";
            errorHtml += "<td style='font-size: 8pt; text-align: center; vertical-align: bottom' >";
            errorHtml += "<font face='メイリオ,Meiryo,ＭＳ Ｐゴシック,MS P Gothic,Osaka' color='464646'>";
            errorHtml += "お急ぎの方は<a href='mailto:look@jtbtn.com'>look@jtbtn.com</a>へ<br />お問い合わせください。<br />";
            errorHtml += "</font>";
            errorHtml += "</td>";
            errorHtml += "</tr>";
            errorHtml += "</table>";
            document.getElementById(JTN_TARGET_DEV_MAP).innerHTML = errorHtml;
            JTN.PluginM.SetPluginPage(document.getElementById(JTN_TARGET_DEV_MAP), category);
        },
        
        ////////// function for text called by text and map ///////////////////////
        ///////////////////////////////////////////////////////////////////////////

        GetHotelPage : function(){
            JTN.PluginT.SetPluginPage(JTNiconColor, JTN_HOTEL, JTNhotelMaxRoom, JTNlogoFlag, JTNagentCode, JTNtourSearch, JTNhotelSearch, JTNmusicalSearch, document.getElementById(JTN_TARGET_DEV)); //add parameter for musical
        },
        
        ///////////////////////////////////////////////////////////////////////////

        GetTourPage : function(){
            JTN.PluginT.SetPluginPage(JTNiconColor, JTN_TOUR, JTNhotelMaxRoom, JTNlogoFlag, JTNagentCode, JTNtourSearch, JTNhotelSearch, JTNmusicalSearch, document.getElementById(JTN_TARGET_DEV)); //add parameter for musical
        },
        
        ///////////////////////////////////////////////////////////////////////////

        GetMusicalPage : function(){ //add for musical
            JTN.PluginT.SetPluginPage(JTNiconColor, JTN_MUSICAL, JTNhotelMaxRoom, JTNlogoFlag, JTNagentCode, JTNtourSearch, JTNhotelSearch, JTNmusicalSearch, document.getElementById(JTN_TARGET_DEV)); //add parameter for musical
        },
        
        ///////////////////////////////////////////////////////////////////////////

        SetTourSubCategory : function() {
           var sCatValue = document.getElementById(JTN_TOUR_CAT_ELM).options[document.getElementById(JTN_TOUR_CAT_ELM).selectedIndex].value;
           var i;
           for (i = 0; i < JTN_SUBCATEGORY_ELMS.length; i++) 
           {
              if (sCatValue == JTN_SUBCATEGORY_ELMS[i][0]) 
              {
                 break;
              }
           }
           if (document.getElementById(JTN_SUBCATEGORY_ELMS[i][1]))
           {
              document.getElementById(JTN_TOUR_SUBCAT_DEV_ELM).innerHTML = document.getElementById(JTN_SUBCATEGORY_ELMS[i][1]).getAttribute("subcategory");
           }
        },
        
        ///////////////////////////////////////////////////////////////////////////
        // change display of city code input box
        SetHotelCityBox : function () 
        { 
            var sCityCode = document.getElementById(JTN_CITYLIST_ELM).options[document.getElementById(JTN_CITYLIST_ELM).selectedIndex].value;
        	
            if (sCityCode == 0)
            {
                document.getElementById(JTN_CITY_DIV_INPUT_ELM).style.display = "block"; 
                
                //Initialize Auto Complete
                JTN.PluginT.SetAutoComplete(JTN_CITYCODE_ELM,JTN_CITY_DEV_ELM,JTN_HOTEL);
            }
            else
            {
                document.getElementById(JTN_CITY_DIV_INPUT_ELM).style.display = "none"; 
                document.getElementById(JTN_CITYCODE_ELM).value = "";
            }
        },
        ///////////////////////////////////////////////////////////////////////////
        // change display of rooms
        SetHotelNumBox : function() 
        { 
            var roomNum = document.getElementById(JTN_ROOMNUM_ELM).options[document.getElementById(JTN_ROOMNUM_ELM).selectedIndex].value;
            var cnt;

            for(cnt=2; cnt <= JTNhotelMaxRoom; cnt++)
            {
                if ( cnt <= roomNum )
                {   // visible
                    document.getElementById(JTN_ADULT_LBL_ELM + cnt ).style.display = "block"; 
                    document.getElementById(JTN_CHILD_LBL_ELM + cnt ).style.display = "block"; 
                    document.getElementById(JTN_CHILDAGE_LBL_ELM + cnt ).style.display = "block"; 
                    document.getElementById(JTN_ADULTNUM_ELM + cnt ).style.display = "block"; 
                    document.getElementById(JTN_CHILDNUM_ELM + cnt ).style.display = "block"; 
                    JTN.PluginCommon.SetHotelChildAgeBox(cnt);
                }
                else
                {	// invisible
                    document.getElementById(JTN_ADULT_LBL_ELM + cnt ).style.display = "none"; 
                    document.getElementById(JTN_CHILD_LBL_ELM + cnt ).style.display = "none"; 
                    document.getElementById(JTN_CHILDAGE_LBL_ELM + cnt ).style.display = "none"; 
                    document.getElementById(JTN_ADULTNUM_ELM + cnt ).style.display = "none"; 
                    document.getElementById(JTN_CHILDNUM_ELM + cnt ).style.display = "none"; 
                    JTN.PluginCommon.SetHotelChildAgeBox(cnt);
                }
            }
        } ,
         
        ///////////////////////////////////////////////////////////////////////////
        // change display of child age input box
        SetHotelChildAgeBox : function(roomId) 
        { 
            var childNum = document.getElementById(JTN_CHILDNUM_ELM + roomId).options[document.getElementById(JTN_CHILDNUM_ELM + roomId).selectedIndex].value;
            var roomNum = document.getElementById(JTN_ROOMNUM_ELM).options[document.getElementById(JTN_ROOMNUM_ELM).selectedIndex].value;
            var cnt;
            var maxChild = JTN_MAX_CHILD;

            if (roomId > roomNum)
            {
                childNum = 0;
            }

            if (childNum == 0)
            {
                document.getElementById(JTN_CHILDAGE_LBL_ELM + roomId ).style.display = "none"; 
            }
            else
            {
                document.getElementById(JTN_CHILDAGE_LBL_ELM + roomId ).style.display = "block"; 
            }

            for(cnt=1; cnt <= maxChild; cnt++)
            {
                if ( cnt <= childNum )
                {
                    document.getElementById((JTN_CHILDAGE_ELM + roomId) + cnt ).style.display = "inline"; 
                }
                else
                {	
                    document.getElementById((JTN_CHILDAGE_ELM + roomId) + cnt ).style.display = "none"; 

                }
            }
        },
        
        ///////////////////////////////////////////////////////////////////////////
        //Add by B3.Tanisaka 6/12
        ChangeIcom :function(type,btn_name){
            var elm;
            var path;
            
            elm=document.getElementById(btn_name);    
            path=elm.getAttribute("src");
                      
            if (type=="over"){
                elm.setAttribute("src",path.replace("_off.gif","_on.gif"));
            }
            else{
                elm.setAttribute("src",path.replace("_on.gif","_off.gif"));
           }
        },
        //Add by B3.Tanisaka 7/8
         ///////////////////////////////////////////////////////////////////////////
         GetSubCatHTML : function(id,array){
            var sb = new String.builder();
            sb.append("<input id=" + id + " type=hidden subcategory='<select name=JTNddlSearchSubCat class=jtn_select_normal><option value= >さらに、絞り込めます</option>");
            
            var i=0;
            if(array.length>0){
                for(i=0;i<array.length;i++){
                    sb.append("<option value=" + array[i] + ">" + array[i] + "</option>");
                }
            }
            
            sb.append("</select>'>");
            
            return sb.toString();
          },
          //////////EventControl/////////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////////

        AddEvent :function(obj, eventType, fn, useCapture) {
          
            var theObj = JTN.PluginCommon.GetRawObject(obj);

            if (!theObj) {

                return;

            }
            if (theObj.addEventListener) {
                theObj.addEventListener(eventType, fn, useCapture);
            }
            else if (theObj.attachEvent) {
                theObj.attachEvent('on' + eventType, fn);
            }
            else {
                theObj['on'+eventType] = fn;
            }
        },

        ///////////////////////////////////////////////////////////////////////////

        GetRawObject : function(obj) {
            var theObj;
            if(typeof obj == "string" ) {
                if(isW3C) {
                    theObj = document.getElementById(obj);
                }
                else if (isIE4) {
                    theObj = document.all(obj);
                }
                else if (isNN4) {
                    theObj = seekLayer(document, obj);
                }
            }
            else {
                theObj = obj;
            }
            return theObj;
        }
       ///////////////////////////////////////////////////////////////////////////                                            
    }
};

// Common Functions
if(!String.builder)
{
	String.builder = function()
	{
		var buffer = [];

		this.append = function(str)
		{
			buffer.push(str);
		}
		this.clear = function()
		{
			buffer = null;
			buffer = [];
		}
		this.insert = function(index, str)
		{
			if(buffer[index]){buffer[index] = str;}
			else{return false;}
		}
		this.replace = function(find, replace)
		{
			for(var i=0;i<buffer.length;i++)
			{
				var exp = new RegExp(find,'gm');
				buffer[i] = buffer[i].replace(exp,replace);
			}
		}
		this.remove = function()
		{
			if(typeof arguments[0] == "string")
			{
				for(var i=0;i<buffer.length;i++)
				{
					if(arguments[0] == buffer[i]){buffer.splice(i, 1);}
				}
			}
			else
			{
				var index = arguments[0];
				var length = (arguments.length > 1) ? arguments[1] : 1;
				buffer.splice(index,length);
			}
		}
		this.toString = function()
		{
			var str = "";
			for(var i=0;i<buffer.length;i++)
			{
				str += buffer[i];
			}
			return str;
		}
	}
};﻿/*
Copyright (C) 2008 JTB Travel Network Company. All rights reserved.
Plugin Text Version
file : JTNPluginTMaster.js
version: 1.0.0
*/

///////////////////////////////////////////////////////////////////////////

//////////////////Aouto Compelete Master for City////////////////////////////////////////////////////////////////
var JTN_AUTOCOMP_CITY =new Array(
);


//////////////////Aouto Compelete Master for Keyword///////////////////////////////////////////////////////////
var JTN_AUTOCOMP_KEYWORD =new Array(
"SFORZESCO CASTLE",
"フォックスタウン",
"FOXTOWN",
"サンマルコ広場",
"PIAZZA SAN MARCO",
"サンマルコ寺院",
"SAN MARCO BASILICA",
"ドゥカーレ宮殿",
"DUCALE PALACE",
"ラグーン",
"LAGOON",
"MORNING OPEN MARKET",
"スペイン階段",
"SPANISH STEPS",
"真実の口",
"MOUTH OF TRUTH",
"ピサ",
"PISA",
"カステル・サンタンジェロ",
"CASTEL SANT'ANGELO",
"サン・ピエトロ広場",
"ST. PETETER",
"サンタ・マリア・デッラ・ヴィットリア教会",
"SANTA MARIA DELLA VITTORIA",
"サンタ・マリア・デル・ポポロ教会",
"SANTA MARIA DEL POPOLO",
"ナボーナ広場",
"SPAIN SQUARE",
"プラド美術館",
"PRADO MUSEUM",
"王宮",
"ROYAL PALACE",
"サント・トメ教会",
"SANTO TOME",
"トレド",
"TOLEDO",
"大聖堂",
"CATHEDRAL OF TOLEDO",
"アルカサール",
"ALCAZAR",
"セゴビア",
"SEGOVIA",
"水道橋",
"AQUEDUCT",
"フラメンコ",
"FLAMENCO",
"ガウディ 博物館",
"GAUDI MUSEUM",
"グエル公園",
"PARK GUELL",
"サグラダ・ファミリア",
"SAGRADA FAMILIA",
"モンセラ",
"MONTSERRAT",
"サッカー",
"SOCCER",
"サンティアゴベルナベル",
"SANTIGO BERNABEU",
"Ｆ．Ｃバルセロナ",
"F.C. BARCELONA",
"ガウディ",
"GAUDI",
"カサ バトリョ",
"CASA BATLLO",
"ノイシュバンシュタイン城",
"NEUSCHWANSTEIN CASTLE",
"リンダーホーフ城",
"LINDERHOF PALACE",
"ウルム",
"ULM",
"ギーンゲン",
"GIENGEN",
"散策",
"WALKING",
"地ビール",
"BEER BREWERY",
"ドレスデン",
"DRESDEN",
"ベルリン",
"BERLIN",
"マイセン",
"MEISSEN",
"ベルリンの壁",
"BERLIN WALL",
"ポツダム",
"POTSDAM",
"クリスマスマーケット",
"CHRISTMAS MARKET",
"ニュルンベルク",
"NUREMBERG",
"シュトゥットガルト",
"STUTTGURT",
"モンブラン",
"MONT BLANC",
"宗教改革記念碑",
"REFORMATION MONUMENT",
"レマン湖",
"LAKE LEMAN",
"ベルン",
"BERN",
"シェーンブルン宮殿",
"SCHONBRUNN PALACE",
"バッハウ渓谷",
"WACHAU VALLEY",
"ルツブルク",
"SALZBURG",
"ザルツブルグ",
"ミラベル庭園",
"MIRABEL GARDEN",
"フッシュル湖",
"LAKE FUSCHL",
"メテオラ",
"METEORA",
"オーストラリア",
"AUSTRALIA",
"オセアニア",
"OCEANIA",
"シドニー",
"SYDNEY",
"ブルーマウンテン国立公園",
"BLUE MOUNTAINS NATIONAL PARK",
"キュランダ",
"KURANDA",
"ケアンズ",
"CAIRNS",
"列車",
"キュランダ高原",
"KURANDA HIGHLAND",
"グリーン島",
"GREEN ISLAND",
"熱帯雨林",
"RAIN FOREST",
"ケアンズ郊外",
"CAIRNS SURBURB",
"ケアンズナイトズー",
"CAIRNS NIGHT ZOO",
"ペンギン",
"PENGUING",
"マルークラフトファウナパーク",
"MARU CRAFTS FAUNA PARK",
"メルボルン",
"MELBOURNE",
"アボリジニ",
"ABORIGINE",
"グリーンマウンテン",
"GREEN MOUNTAIN",
"ゴールドコースト",
"GOLD COAST",
"ラミントン公園",
"LAMINGTON PARK",
"アジア",
"ASIA",
"上海",
"SHANGHAI",
"蘇州",
"SUZHOU",
"中国",
"CHINA",
"ナイトクルーズ",
"NIGHT CRUISE",
"雑技",
"ACROBATS",
"上海博物館",
"SHANGHAI MUSEUM",
"周荘",
"ZHOU ZHUANG",
"朱家角",
"ZHUJIAJIAO",
"北京",
"BEIJING",
"天安門広場",
"TIANANMEN SQUARE",
"京劇",
"BEIJING OPERA",
"八達嶺万里の長城",
"GREAT WALL",
"胡同",
"HUTONG",
"大連",
"DALIAN",
"旅順",
"RYOJYUN",
"西安",
"XIAN",
"ロウ山",
"ROUZAN",
"青島",
"TSINGTAO",
"桂林",
"GUILIN",
"夢幻離江",
"CHINA DREAM",
"民族ショー",
"FOLKLORE SHOW",
"杭州",
"HANGZHOU",
"紹興",
"SHAOXING",
"臥龍",
"GARYU",
"成都",
"CHENGDU",
"都江堰",
"CHENG DU",
"アモイ",
"XIAMEN",
"LAC-BEAUPORT",
"ショジュル川",
"CHAUDIERE",
"アムトラック",
"AMTRAK",
"アメリカ",
"AMERICA",
"ニューヨーク",
"NEW YORK",
"ワシントンD.C.",
"WASHINGTON DC",
"車両",
"BUS",
"北米",
"NORTH AMERICA",
"カナダ",
"CANADA",
"ナイアガラ",
"NIAGARA",
"飛行機",
"AIRPLANE",
"ボストン",
"BOSTON",
"ワシントン",
"WASHINGTON",
"サウザンアイランド",
"THOUSANDS ISLAND",
"トロント",
"TORONTO",
"ニューイングランド",
"NEW ENGLAND",
"アーミッシュ",
"AMISH",
"フィラデルフィア",
"PHILADELPHIA",
"サンフランシスコ",
"SAN FRANCISCO",
"ロサンゼルス",
"LOS ANGELES",
"シティパス",
"CITY PASS",
"バス",
"エンパイアステートビル",
"EMPIRE STATE BUILDING",
"ブロードウェイ",
"BROADWAY",
"ミュージカル",
"MUSICAL",
"オーランド",
"ORLANDO",
"シャトル",
"SHUTTLE",
"レンタカー",
"RENTAL CAR",
"フェリー",
"FERRY",
"観光",
"SIGHTSEEING",
"マンハッタン",
"MANHATTAN",
"メジャーリーグ",
"MAJOR LEAGUE",
"ヤンキース",
"YANKEES",
"地下鉄",
"SUBWAY",
"自由の女神",
"STATUE OF LIBERTY",
"メトロポリタン美術館",
"METROPOLITAN MUSEUM",
"アウトレット",
"OUTLET",
"ウッドベリーコモン",
"WOODBERYKOMON",
"クーパーズタウン",
"COOPERSTOWN",
"野球の聖地",
"BASEBALL HALL OF FAME",
"ヤンキースタジアム",
"YANKEE STADIUM",
"ニューヨーク郊外",
"NEW YORK SUBURB",
"ユニオン教会",
"UNION CHURCH",
"ロックフェラー邸",
"ROCKEFELLER",
"ニューイングランド地方",
"NEW ENGLAND DISTRICT",
"ノーマン ロックウェル",
"NORMAN ROCKWELL",
"ヒップホップ",
"HIP HOP",
"セックス　アンド　ザ　シティー",
"SEX & THE CITY",
"ディナークルーズ",
"DINNER CRUISE",
"船",
"SHIP",
"JULY 4TH",
"大晦日",
"NEW YEARS EVE",
"夜景",
"NIGHT VIEW",
"プリシアターディナー",
"PRE THEATER DINNER",
"イルミネーション",
"ILLUMINATION",
"クリスマス",
"CHRISTMAS",
"ディナー",
"DINNER",
"ジャズ",
"JAZZ",
"ハーレム",
"HARLEM",
"ゴスペル",
"GOSPEL",
"ハドソン渓谷",
"HUDSON VALLEY",
"バーンズコレクション",
"BARNES COLLECTION",
"ニューヨークJFK空港",
"NEW YORK JFK AIRPORT",
"マンハッタン内",
"ラガーディア空港",
"LAGUARDIA AIRPORT",
"JFK空港",
"JFK AIRPORT",
"ニューアーク空港",
"NEWARK AIRPORT",
"NBA バスケットボール",
"NBA BASKETBALL",
"ニュージャージー",
"NEW JERSEY",
"チャーター トランスファー",
"CHARTER TRANSFER",
"トランスファー",
"TRANSFER",
"アンテロープキャニオン",
"ANTELOPE CANYON",
"グランドキャニオン国立公園",
"GRAND CANYON NATIONAL PARK",
"ザイオン国立公園",
"ZION NATIONAL PARK",
"モニュメントバレー",
"MONUMENT VALLEY",
"ラスベガス",
"LAS VEGAS",
"レークパウエル",
"LAKE POWELL",
"ジョシュアツリー国立公園",
"JOSHUA TREE NATIONAL PARK",
"セドナ",
"SEDONA",
"ブライス",
"BLYTH",
"地上絵",
"LINES",
"RV レンタル",
"RV RENTAL",
"キャンピングカー (RV)",
"CAMPING CAR (RV)",
"グランドキャニオン",
"GRAND CANYON",
"ザイオン",
"ZION",
"アラスカ",
"ALASKA",
"アラスカ鉄道",
"ALASKA RAILROAD",
"アンカレッジ",
"ANCHORAGE",
"デナリ国立公園",
"DENALI NATIONAL PARK",
"チェナ温泉",
"CHENA HOT SPRING",
"フェアバンクス",
"FAIRBANKS",
"オーロラ",
"AURORAL",
"ヨセミテ国立公園",
"YOSEMITE NATIONAL PARK",
"サンタイネス",
"SAN REMO",
"サンタバーバラ",
"SANTA BARBARA",
"サンタモニカ",
"SANTA MONICA",
"マリブ",
"MALIBU",
"カリフォルニア",
"CALIFORNIA",
"アナハイム",
"ANAHEIM",
"カナディアンロッキー",
"CANADIAN ROCKY",
"カルガリー",
"CALGARY",
"コロンビア大氷原",
"COLOMBIA ICE FIELD",
"ジャスパー",
"JASPER",
"バンフ",
"BANFF",
"マリーン湖",
"MARINE LAKE",
"レイクルイーズ",
"LAKE LOUISE",
"レークルイーズ",
"カムループス",
"KAMLOOPS",
"ケロウナ",
"KELOWNA",
"バンクーバー",
"VANCOUVER",
"ベールモント",
"VALEMOUNT",
"VIA鉄道",
"VIA RAIL",
"ケベックシティ",
"QUEBEC",
"モントリオール",
"MONTREAL",
"ローレンシャン高原",
"LAURENTIAN PLATEAU",
"紅葉",
"AUTUMN",
"フィヨルド",
"FJORD",
"ホエール ウォッチング",
"WHALE WATCHING",
"ロッキーマウンテニア鉄道",
"ROCKY MOUNTAINEER RAIL",
"バンフ カルガリー",
"BANFF CALGARY",
"ウィスラー",
"WHISTLER",
"イエローナイフ",
"YELLOWKNIFE",
"フロリダ",
"FLORIDA",
"カンクーン",
"CANCUN",
"メキシコ",
"MEXICO",
"リッツ カールトン",
"RITZ CARTON",
"フィエスタ･アメリカーナ･コーラルビーチ",
"FIESTA AMERICANA GRAND CORALBEACH",
"オムニ･カンクーン",
"OMNI CANCUN",
"テオティワカン遺跡",
"TEOTIHUACAN RUIN",
"メキシコシティ",
"MEXICO CITY",
"中南米",
"CENTRAL AND SOUTH AMERICA",
"ウシュマル遺跡",
"UXMAL",
"チチェン･イッツァ",
"CHICHEN ITZA",
"メリダ",
"MERIDA",
"ユカタン半島",
"YUCATAN PENINSULA",
"セントトーマス",
"ST. THOMAS",
"マリオット",
"MARRIOT",
"ウィンダム･シュガーベイ",
"WYNDHAM",
"マヤ遺跡",
"MAYA",
"ホノルル",
"HONOLULU",
"ワイキキ サンドビラ",
"WAIKIKI SANDVILLA",
"シェラトン",
"SHERATON",
"ヒルトン",
"HILTON",
"ハイアット",
"HYATT",
"ジャマイカ",
"JAMAICA",
"モンテゴベイ",
"MONTEGO BAY",
"ゴルフ",
"GOLF",
"テニス",
"TENNIS",
"ハーフムーン",
"HALF MOON",
"ウィンダム",
"ユース",
"YOUTH",
"コロラド",
"COLORADO",
"スキー",
"SKI",
"スノーボード",
"SNOW BOARD",
"デンバー",
"DENVER",
"ユタ",
"UTAH",
"ハーレー",
"HARLEY",
"バイク",
"BIKE",
"レンタル",
"RENTAL",
"カーニバル",
"CARNIVAL",
"ブラジル",
"BRAZIL",
"リオデジャネイロ",
"RIO DE JANEIRO",
"エクアドル",
"ECUADOR",
"ガラパゴス諸島",
"GALAPAGOS ISLANDS",
"キト",
"QUITO",
"グアヤキル",
"GUAYAQUIL",
"フィンチベイ",
"FINCH BAY",
"イグアスの滝",
"IGUAZU FALLS",
"アンティグアシティ",
"ANTIGUA CITY",
"グアテマラ",
"GUATEMALA",
"グアテマラシティ",
"GUATEMALA CITY",
"ティカル",
"TIKAL",
"フローレス",
"FLORES",
"キリグア",
"QUIRIGUA",
"コパン",
"COPAN",
"ホンジュラス",
"HONDURAS",
"GALAPAGOS",
"イグアス",
"IGUAZU",
"パンタナル大湿原",
"PANTANAL WETLAND",
"アマゾン",
"AMAZON",
"マナウス",
"MANAUS",
"クスコ",
"CUSCO",
"ティティカカ湖",
"LAKE TITICACA",
"プーノ",
"PUNO",
"ペルー",
"PERU",
"マチュピチュ",
"MACHU PICCHU",
"リマ",
"LIMA",
"アレナル火山",
"ARENAL VOLCANO",
"コスタリカ",
"COSTA RICA",
"サンホセ",
"SAN JOSE",
"トルトゥゲーロ",
"TORTUGUERO",
"モンテベルデ",
"MONTE VERDE",
"インカ",
"INCA",
"オリャンタイタンボ",
"OLLANTAYTAMB",
"クスコ(登山電車)",
"ケンコー",
"QENQO",
"サクサイワマン",
"SACSAYHUAMAN",
"タンボマチャイ",
"TAMBOMACHAY",
"ナスカの地上絵",
"NAZCA LINES",
"バジェスタス島",
"BALLESTAS",
"ピサック",
"PISAK",
"アコンカグア県立公園",
"ACONCAGUA PROVINCIAL PARK",
"アンデス山脈",
"ANDES MOUNTAIN",
"イースター島",
"EASTER ISLAND",
"エル テニエンテ鉱山",
"EL TENIENTE MINE",
"サンチアゴ",
"SANTIAGO",
"チリ",
"CHILE",
"アコンカグア山",
"ACONCAGUA",
"アタカマ塩湖",
"ATACAMA DESERT",
"アタカマ砂漠",
"タティオ 間欠泉",
"TATIO GEYSER",
"ラグーナ ベルデ",
"LAGUNA VERDE",
"月の谷",
"VALLE DE LA LUNA",
"ナスカ",
"NAZCA",
"グアナフォアト",
"GUANAJUATO",
"ケレタロ",
"QUERETARO",
"世界遺産",
"WORLD HERITAGE",
"カンペチェ",
"CAMPECHE",
"パレンケ",
"PALENQUE",
"ビジャエルモーサ",
"VILLAHERMOSA",
"プエブラ",
"PUEBLA",
"アスワン",
"ASWAN",
"アブシンベル",
"ABUSIMBEL",
"エジプト",
"EGYPT",
"カイロ",
"CAIRO",
"ルクソール",
"LUXOR",
"XIA",
"ナイル川",
"RIVER NILE",
"スウェーデン",
"SWEDEN",
"ストックホルム",
"STOCKHOLM",
"バルト海",
"BALTIC SEA",
"フィンランド",
"FINLAND",
"ヘルシンキ",
"HELSINKI",
"北欧",
"NORTHERN EUROPE",
"オスロ",
"OSLO",
"ノルウェー",
"NORWAY",
"ハルダンゲル",
"HARDANGER",
"ベルゲン",
"BERGEN",
"鉄道",
"RAIL",
"NORTH EUROPE",
"クロアチア",
"CROATIA",
"ザグレブ",
"ZAGREB",
"スプリット",
"SPLIT",
"ドゥブロヴニック",
"DUBROVNIK",
"プリトヴィッチェ",
"PLITVICE",
"中東欧",
"CENTRAL AND EASTERN EUROPE",
"ヘルツェゴビナ",
"HERZEGOVINA",
"ボスニア",
"BOSNIA",
"サラエボ",
"SARAJEVO",
"ディズニー･ワールド",
"DISNEY WORLD",
"ユニバーサルスタジオ",
"UNIVERSAL STUDIO",
"シーワールド",
"SEA WORLD",
"ケネディースペースセンター",
"KENNEDY SPACE CENTER",
"アトランティス (ビーチタワー)",
"ATRANTIS BEACH TOWER",
"カリブ海",
"CARIBBEAN SEA",
"ナッソー",
"NASSAU",
"バハマ",
"BAHAMAS",
"デトロイト",
"DETROIT",
"オチョリオスの滝",
"OCHORIOS FALLS",
"ネグリル ビーチ",
"NEGRIL BEACH",
"イルカ",
"DOLPHIN",
"シカゴ",
"CHICAGO",
"コロンバス",
"COLUMBUS",
"イスラ ムヘーレス",
"ISLA MUJERES",
"アーチーズ国立公園",
"ARCHES NATIONAL PARK",
"キャピトルリーフ国立公園",
"CAPITOL REEF NATIONAL PARK",
"デッドホース州立公園",
"DEAD HORSE STATE PARK",
"ナバホ国定記念物",
"NAVAJO NATIONAL RESERVATION",
"ブライスキャニオン国立公園",
"BLYTH CANYON NATIONAL PARK",
"モアブ",
"MOAB",
"セコイア国立公園",
"SEQUOIA NATIONAL PARK",
"デスバレー国立公園",
"DEATH VALLEY NATIONAL PARK",
"セコイヤ国立公園",
"西海岸",
"WEST COAST",
"イエローストーン国立公園",
"YELLOWSTONE NATIONAL PARK",
"グランドティートン国立公園",
"GRAND TETON NATIONAL PARK",
"ジャクソンホール",
"JACKSON HOLE",
"ソルトレークシティ",
"SALT LAKE CITY",
"クレイジーホース",
"CRAZY HORSE",
"ケンモア",
"CANMORE",
"デットウッド",
"DEADWOOD",
"デビルズタワー",
"DEVILS TOWER",
"マウントラッシュモア",
"MOUNT RUSHMORE",
"ラピッドシティ",
"RAPID CITY",
"サウス　ダコタ",
"SOUTH DAKOTA",
"ナパバレー",
"NAVA VALLEY",
"マリポサ",
"MARIPOSA",
"ワイン",
"WINE",
"ボーズマン",
"BOZEMAN",
"モンタナ",
"MONTANA",
"アリゾナ",
"ARIZONA",
"エルパソ",
"EL PASO",
"カールスバッド･カバーンズ(洞穴群)国立公園",
"CARLSBAD CAVERNS NATIONAL PARK",
"キャニオン･デ･シェイ国定公園",
"CANYON DE CHELLY NATIONAL MONUMENT",
"サンタフェ",
"SANTA FE",
"タオス",
"TAOS",
"チマヨ",
"CHIMAYO",
"ニューメキシコ",
"NEW MEXICO",
"フェニックス",
"PHOENIX",
"ペトリファイドフォレスト(化石の森)国立公園",
"PETRIFIED FOREST NATIONAL PARK",
"ホワイトサンズ国定公園",
"WHITE SANDS NATIONAL MONUMENT",
"メテオラ隕石孔",
"ROSWELL",
"イエローストーン",
"YELLOWSTONE",
"グランドティートン",
"GRAND TETON",
"グレーシャー・ウォータートン国際平和記念公園",
"GLACIER WATERTON INTERNATIONAL PEACE PARK",
"グレーシャー国立公園",
"GLACIER NATIONAL PARK",
"ジャスパー国立公園",
"JASPER NATIONAL PARK",
"バンフ国立公園",
"BANFF NATIONAL PARK",
"メープル街道",
"MAPLE ROAD",
"イタリア",
"ITALY",
"ウフィッツィ　美術館",
"UFFIZI MUSEUM",
"ゴンドラ",
"GONDOLA",
"サンジミニヤーノ",
"SAN GIMIGNANO",
"シエナ",
"SIENA",
"システィーナ礼拝堂",
"SISTINE CHAPEL",
"スペイン広場",
"PLAZA DE ESPAGNA",
"バチカン美術館",
"VATICAN MUSEUM",
"ピサの斜塔",
"LEANING TOWER OF PISA",
"フィレンツェ",
"FLORENCE",
"ベネチア",
"VENICE",
"ベローナ",
"VERONA",
"ミラノ",
"MILAN",
"ヨーロッパ",
"EUROPE",
"ローマ",
"ROME",
"カプリ島",
"CAPRI",
"ナポリ",
"NAPLES",
"アヴィニョン",
"AVIGNON",
"アルル",
"ARLES",
"ニース",
"NICE",
"パリ",
"PARIS",
"フランス",
"FRANCE",
"ブルージュ",
"BRUGES",
"リヨン",
"LYON",
"ロワール地方",
"LOIRE VALLEY",
"モンサンミッシェル",
"MONT SAINT MICHEL",
"インターラーケン",
"INTERLAKEN",
"スイス",
"SWITZERLAND",
"ドイツ",
"GERMANY",
"ハイデルベルグ",
"HEIDELBERG",
"フランクフルト",
"FRANKFURT",
"ミュンヘン",
"MUNICH",
"イギリス",
"GREAT BRITAIN",
"エディンバラ",
"EDINBURGH",
"ストラットフォード･アポン･エイボン",
"STRATFORD UPON AVON",
"ランカスター",
"LANCASTER",
"ロンドン",
"LONDON",
"湖水地方",
"THE LAKE DISTRICT",
"グラナダ",
"GRANADA",
"スペイン",
"SPAIN",
"セビリア",
"SEVILLE",
"バルセロナ",
"BARCELONA",
"バレンシア",
"VALENCIA",
"マドリード",
"MADRID",
"コインプラ",
"COIMBRA",
"ナザレ",
"NAZARETH",
"ポルト",
"PORTO",
"ポルトガル",
"PORTUGAL",
"リスボン",
"LISBON",
"ジュネーブ",
"GENEVA",
"チューリッヒ",
"ZURICH",
"ツェルマット",
"ZERMATT",
"ルツェルン",
"LUZERN",
"ウィーン",
"VIENNA",
"オーストリア",
"AUSTRIA",
"チェコ",
"CZECH",
"ハンガリー",
"HUNGARY",
"ブダペスト",
"BUDAPEST",
"アンカラ",
"ANKARA",
"イスタンブール",
"ISTANBUL",
"イズミール",
"IZMIR",
"カッパドキア地方",
"CAPPADOCIA",
"チャナッカレ",
"CANAKKALE",
"バムッカレ",
"PAMUKKALE",
"エーゲ海",
"AEGEAN SEA",
"オリンピア",
"OLYMPIA",
"デルフィ",
"DELPHI",
"パルテノン神殿",
"PARTHENON",
"ミケーネ",
"MYCENAE",
"メテオラ修道院",
"METEORA MONASTERY",
"アテネ",
"ATHENS",
"カランバカ",
"KALAMBAKA",
"ギリシャ",
"GREECE",
"イッタラ",
"IITTALA",
"キッティラ",
"KITTILA",
"ソダンキュラ",
"SODANKYLA",
"タンペレ",
"TAMPERE",
"ルオスト",
"LUOSTO",
"レヴィ",
"LEVI",
"ロバニエミ",
"ROVANIEMI",
"キリントン",
"KILLINGTON",
"バーモント",
"VERMONT",
"デザートヒルズ アウトレット",
"DESERT HILLS OUTLETS",
"サンディエゴ",
"SAN DIEGO",
"ティワナ",
"TIJUANA",
"ドジャー･スタジアム",
"DODGER STADIUM",
"ショッピング",
"SHOPPING",
"セレクトショップ",
"SELECT SHOP",
"ハリウッド スター",
"HOLLYWOOD STAR",
"ディズニーランド",
"DISNEY LAND",
"シックスフラッグス",
"SIX FLAGS",
"マジックマウンテン",
"MAGIC MOUNTAIN",
"ナッツ・テーマパーク",
"NUT THEME PARK",
"ゲッティ美術館",
"GETTY MUSEUM",
"LAWRY'S",
"スーパーマーケット",
"SUPERMARKET",
"カリフォルニア･アドベンチャー",
"CALIFORNIA ADVENTURE",
"ゴールデンゲートブリッジ",
"GOLDEN GATE BRIDGE",
"ツインピークス",
"TWIN PEAKS",
"アルカトラズ島",
"ALCATRAZ ISLAND",
"監獄",
"PRISON",
"クルーズ",
"CRUISE",
"ヨセミテ",
"YOSEMITE",
"ワイナリー",
"WINERY",
"カーメル",
"CARMEL",
"モントレー",
"MONTEREY",
"チャイナタウン",
"CHINA TOWN",
"トレジャー　アイランド",
"TREASURE ISLAND",
"フィッシャマンズワーズ",
"FISHERMANS WALF",
"ベイブリッジ",
"BAY BRIDGE",
"カニ",
"CRAB",
"チャーター",
"CHARTER",
"死の谷",
"DEATH VALLEY",
"ナイト",
"NIGHT",
"アイランズ・オブ・アドベンチャー",
"ISLANDS OF ADVENTURE",
"METEORA CRATER",
"ロズウエル",
"デイトナ",
"DAYTONA",
"セント・ピーターズバーグ・ビーチ",
"SAINT PETERSBURG BEACH",
"ダリ美術館",
"DALI MUSEUM",
"セント オーガスティン",
"ST. AUGUSTINE",
"熱気球",
"HOT AIR BALLOON",
"ハロウィーン",
"HALLOWEEN",
"ジェファーソン記念堂",
"JEFFERSON MEMORIAL",
"ホワイトハウス",
"WHITE HOUSE",
"リンカーン記念堂",
"LINCOLN MEMORIAL",
"国会議事堂",
"CAPITOL",
"スミソニアン博物館",
"SMITHSONIAN MUSEUM",
"アレキサンドリア",
"ALEXANDRIA",
"ジョージ ワシントン",
"GEORGE WASHINGTON",
"郊外",
"SUBURB",
"アナポリス",
"ANNAPOLIS",
"ウィリアムズバーグ",
"WILLIAMSBURG",
"フィラデルフィア美術館",
"PHILADELPHIA MUSEUM",
"自由の鐘",
"LIBERTY BELL",
"航空宇宙博物館",
"AIR AND SPACE MUSEUM",
"ワシントンダレス空港",
"WASHINGTON DULLES AIRPORT",
"ロブスター",
"LOBSTER",
"コンコード",
"CONCORD",
"レキシントン",
"LEXINGTON",
"プリマス",
"PLYMOUTH",
"セーラム",
"SALEM",
"RED LEAF",
"ハーバード大学",
"HARVARD UNIVERSITY",
"ビーコンヒル",
"BOSTON COMMON",
"テーブルロック",
"TABLE ROCK",
"ナイアガラ オン ザ レーク",
"NIAGARA ON THE LAKE",
"ワールプール",
"WHIRL POOL",
"ライトアップ",
"LIGHT UP",
"バッファロー",
"BUFFALO",
"風の洞窟",
"CAVE OF THE WINDS",
"スペースニードル",
"SPACE NEEDLE",
"シアトル",
"SEATTLE",
"シアトルセンター",
"SEATTLE CENTER",
"ボーイング",
"BOEING",
"航空博物館",
"MUSEUM OF FLIGHT",
"クラブ ポット",
"CRAB POT",
"マリナーズ",
"MARINERS",
"レーニエ",
"MT. RANIER",
"オリンピック国立公園",
"OLYMPIC NATIONAL PARK",
"クイーンエリザベス公園",
"QUEEN ELIZABETH PARK",
"スタンレー公園",
"STANLEY PARK",
"ビクトリア",
"VICTORIA",
"ブッチャートガーデン",
"BUTCHART GARDENS",
"キャピラノ吊り橋",
"CAPILANO SUSPENSION BRIDGE",
"グラウスマウンテン",
"GROUSE MOUNTAIN",
"モレーン湖",
"MORAINE LAKE",
"ヨーホー国立公園",
"YOHO NATIONAL PARK",
"サプライズコーナー",
"SURPRISE CORNER",
"温泉",
"HOT SPRING",
"ハイキング",
"HIKING",
"エメラルド湖",
"EMERALD LAKE",
"ペイトー湖",
"PEYTO LAKE",
"ノートルダム大聖堂",
"NORTRE DAME CATHEDRAL",
"オタワ",
"OTTAWA",
"世界文化遺産",
"キャベンディッシュ",
"CAVENDISH",
"シャーロットタウン",
"CHARLOTTETOWN",
"イースタンタウンシップ",
"EASTERN TOWNSHIP",
"オルレアン島",
"ORLEANS ISLAND",
"ラックボーポート",
"LAC-BEAUP",
"チチェン･イッツァ遺跡",
"CHICHEN ITZA RUIN",
"バジャドリ市",
"VALLADOLID CITY",
"トゥルム遺跡",
"TULUM RUINS",
"プラヤデルカルメン",
"PLAYA DEL CARMEN",
"イスラ･ムヘーレス島",
"カリブ",
"シカレ",
"XCARET",
"カンクン・マリーナ",
"CANCUN MARINA",
"ジャングル",
"JUNGLE",
"コスメル島",
"ZI",
"コバ遺跡",
"COBA RUIN",
"キラウエア火山",
"KILAUEA",
"ハワイ島",
"HAWAII ISLAND",
"レインボー滝",
"RAINBOW FALLS",
"イアオ渓谷",
"IAO VALLEY",
"ハレアカラ",
"HALEAKALA",
"マウイ島",
"MAUI ISLAND",
"オパエカア滝",
"OPAEKAA FALLS",
"カウアイ島",
"KAUAI ISLAND",
"ワイメアキャニオン",
"WAIMEA CANYON",
"オアフ島",
"OAHU ISLAND",
"キャンディー＆ナッツ工場",
"CANDY & NUTS FACTORY",
"アトランティス",
"ATLANTIS",
"サブマリン",
"SUBMARINE",
"ポリネシア文化センター",
"POLYNESIAN CULTURAL CENTER",
"ポリネシア",
"POLYNESIAN",
"クアロア牧場",
"KUALOA RANCH",
"アリゾナ記念館",
"パールハーバー",
"PEARL HARBOR",
"戦艦ミズーリ",
"BATTLESHIP MISSOURI",
"ハレアカラ火山",
"MT. HALEAKALA",
"エッフェル塔",
"EIFFEL TOWER",
"コンコルド広場",
"CONCORDE SQUARE",
"シャンゼリゼ通り",
"CHAMPS ELYSEES",
"ノートルダム寺院",
"モンマルトルの丘",
"MONTMARTRE",
"凱旋門",
"ARCH OF TRIUMPH",
"ルーブル美術館",
"LOUVRE MUSEUM",
"ベルサイユ宮殿",
"VERSAILLES PALACE",
"バルビゾン",
"BARBIZON",
"フォンテーヌブロー",
"FONTAINEBLEAU",
"ジベルニー",
"GIVERNY",
"モネ",
"MONET",
"トリアノン",
"TRIANOS",
"ロワール地方の城",
"LOIRE CASTLES",
"セーヌ河",
"SEINE RIVER",
"リド ディナーショー",
"LIDO DINNER SHOW",
"ムーランルージュ",
"MOULIN ROUGE",
"ブルゴーニュ",
"BOURGOGNE",
"シャンパーニュ",
"CHAMPAGNE",
"朝市",
"MORNING MARKET",
"クリニャンクール",
"CLIGNANCOURT",
"蚤の市",
"MARKET",
"エズ村",
"EZE",
"モナコ",
"MONACO",
"サンレモ",
"ドルチェアクア",
"DOLCEACQUA",
"マントン",
"MENTON",
"カンヌ",
"CANNES",
"グラース",
"GRASSE",
"ピカソ美術館",
"PICASSO MUSEUM",
"カジノ",
"CASINO",
"コート･ダジュール",
"COTE D'AZUR",
"南仏",
"SOUTHERN FRANCE",
"サン･ポール",
"ST. PAUL",
"ルノワール",
"RENOIR",
"ウエストミンスター寺院",
"WESTMINSTER",
"バッキンガム宮殿",
"BUCKINGHAM PALACE",
"ロンドン塔",
"LONDON TOWER",
"PARLIAMENT HOUSE",
"BEACON HILL",
"ボストンコモン",
"ウィンザー城",
"WINDSOR CASTLE",
"ストーンヘンジ",
"STONEHENGE",
"バース",
"BATH",
"ウィンダミア湖",
"WINDERMERE LAKE",
"ピーターラビット",
"PETER RABBIT",
"LAKE DISTRICT",
"コッツウォルズ",
"COTSWOLDS",
"テムズ川",
"RIVER THAMES",
"レ ミゼラブル",
"LES MISERABLE",
"オックスフォード",
"OXFORD",
"ストラトフォード",
"STRATFORD",
"ユーロスター",
"EUROSTAR",
"アフタヌーンティー",
"AFTERNOON TEA",
"イングリッシュガーデン",
"ENGLISH GARDENS",
"プー",
"POOH",
"ライ",
"RYE",
"イングランド",
"ENGLAND",
"大英博物館",
"BRITISH MUSEUM",
"バイブリ",
"BIBURY",
"ウェッジウッド",
"WEDGEWOOD",
"カンタベリー",
"CANTERBURY",
"ドーバー",
"DOVER",
"リーズ城",
"LEEDS CASTLE",
"リバプール",
"LIVERPOOL",
"ポンペイ",
"POMPEII",
"コロッセオ",
"COLISEUM",
"サン･ピエトロ寺院",
"ST. PETER'S BASILICA",
"トレビの泉",
"TREVI FOUNTAIN",
"アッピア街道",
"APPIAN WAY",
"バチカン博物館",
"CATICAN MUSEUM",
"ナヴォーナ広場",
"PIAZZA NAVONA",
"パンテオン",
"PANTHEON",
"フォロ・ロマーノ",
"ROMAN FORUM",
"ティヴォリ",
"TIVOLI",
"オペラ アリア",
"OPERA AREA",
"カンツォーネ",
"CANZONE",
"シニョーリア広場",
"PIAZZA SIGNORIA",
"ドゥオモ",
"DUOMO",
"ピッティ宮殿",
"PITTI PALACE",
"コモ湖",
"LAKE COMO",
"スカラ座博物館",
"SCALA",
"スフォルツェスコ城"
);


//////////////////SUB Category///////////////////////////////////////////////////////////
//アメリカ東部
var JTN_TOUR_CITIES_AMERICA_EAST =new Array(
"ニューヨーク","ナイアガラ","ワシントンDC","ボストン","ニューイングランド","フィラデルフィア","オーランド","マイアミ・キーウェスト","アトランタ","シカゴ","ニューオーリンズ"
);

//アメリカ西部
var JTN_TOUR_CITIES_AMERICA_WEST =new Array(
"ロサンゼルス","サンディエゴ","サンフランシスコ","ラスベガス","ヨセミテ","グランドサークル","イエローストーン","ソルトレイクシティ","コロラド・デンバー","セドナ・アリゾナ","ニューメキシコ","アラスカ","シアトル","ヒューストン・ダラス"
);

//カナダ
var JTN_TOUR_CITIES_CANADA =new Array(
"カナディアンロッキー","バンクーバー・ウィスラー","トロント・ナイアガラ","モントリオール・オタワ","シャーロットタウン","ケベックシティ","イエローナイフ"
);

//ハワイ
var JTN_TOUR_CITIES_HAWAII =new Array(
"ホノルル・オアフ","マウイ","ハワイ","カウアイ","ラナイ"
);

//カンクン・カリブ海var JTN_TOUR_CITIES_BEACH_RESORT =new Array(
"カンクン・コズメル","バハマ・カリブ"
);

//メキシコ・中米
var JTN_TOUR_CITIES_MEXICO =new Array(
"メキシコ","コスタリカ・中米"
);

//ペルー・南米・南極
var JTN_TOUR_CITIES_SOUTH_AMERICA =new Array(
"ペルー・ボリビア","エクアドル・ガラパゴス","ブラジル・イグアス","チリ・サンチャゴ","アルゼンチン・パタゴニア","南極"
);

//ヨーロッパ
var JTN_TOUR_CITIES_EUROPE =new Array(
"イタリア","スペイン・ポルトガル","フランス","ドイツ","イギリス・スコットランド","スイス","ベルギー・オランダ","オーストリア","北欧・アイスランド","中欧・クロアチア・ロシア","ギリシャ・トルコ"
);

//エジプト・中東・アフリカ
var JTN_TOUR_CITIES_AFRICA =new Array(
"エジプト","アフリカ","イスラエル・中東"
);

//アジア・東南アジア
var JTN_TOUR_CITIES_ASIA =new Array(
"中国","香港","台湾","韓国","タイ","マレーシア","シンガポール","ベトナム","インドネシア","インド"
);

//オセアニア・オーストラリア
var JTN_TOUR_CITIES_OCEANIA =new Array(
"シドニー","ケアンズ","ゴールドコースト","メルボルン"
);


//////////////////Musical City (add for musical)/////////////////////////////////////////
var JTN_MUSICAL_CITIES = new Array(
"ニューヨーク","ワシントン","フィラデルフィア","ラスベガス","ロサンゼルス","シカゴ");﻿/*
Copyright (C) 2008 JTB Travel Network Company. All rights reserved.
Plugin Text Version
file : JTNPluginT.js
version: 1.0.0
*/

if(JTNtourSearch=='Y') {

    var JTNSearchIconT1 = new String.builder();
    var JTNTourHtml = new String.builder();
    
    // change to appending one string 9/8/2008
    JTNSearchIconT1.append("<img id='JTNbtnSearch1' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_tour_selected.gif' >&nbsp;");
    if(JTNhotelSearch=='Y'){
        JTNSearchIconT1.append("<img id='JTNbtnSearch2' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_hotel_off.gif' onmouseover='JTN.PluginCommon.ChangeIcom(\"over\",\"JTNbtnSearch2\");' onmouseout='JTN.PluginCommon.ChangeIcom(\"out\",\"JTNbtnSearch2\");' onClick='JTN.PluginT.ClickCatHotel();' class='jtn_clickable_item'>&nbsp;");
    }
    if(JTNmusicalSearch=='Y'){ //add for musical
        JTNSearchIconT1.append("<img id='JTNbtnSearch3' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_musical_off.gif' onmouseover='JTN.PluginCommon.ChangeIcom(\"over\",\"JTNbtnSearch3\");' onmouseout='JTN.PluginCommon.ChangeIcom(\"out\",\"JTNbtnSearch3\");' onClick='JTN.PluginT.ClickCatMusical();' class='jtn_clickable_item'>"); //add for musical
    }
    
    JTNTourHtml.append("<div class='yui-skin-sam'>");
    JTNTourHtml.append("<form id='JTNform' method='post'Accept-charset='utf-8' onsubmit='return(JTN.PluginCommon.ValidateOnsubmit(\"TOUR\"));' >");
    JTNTourHtml.append("<link id='JTNAutoComplete' type='text/css' rel='stylesheet' href='"+  JTN_DOMAIN + "Plugin/Common/yui/autocomplete/assets/autocomplete.css'></link>");
    JTNTourHtml.append("<link id='JTNCalendar' type='text/css' rel='stylesheet' href='" + JTN_DOMAIN + "Plugin/Common/yui/calendar/assets/calendar.css'></link>");
    JTNTourHtml.append("<link id='JTNStyleSheet' rel='stylesheet' type='text/css' href='" + JTN_DOMAIN + "Plugin/Text/css/jtn_plugint.css'></link>");
    JTNTourHtml.append("<div id='JTNbodysection' class='jtn_bodysection' style='width: " + JTNSearchWidth + "px; border-width: " + JTNborderWidth + "px;'>");
    JTNTourHtml.append("<table id='JTNtableOuter' cellpadding='0' cellspacing='0' style='width: " + JTNSearchWidth + "px;'>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td id='JTNtdHead' align='left' >");
    JTNTourHtml.append("<table id='JTNtableHead' class='jtn_table_head' style='width: " + JTNSearchWidth + "px;'>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td>");
    JTNTourHtml.append(JTNSearchIconT1.toString());
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("</table>");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td>");
    JTNTourHtml.append("<table id='JTNtableBody' class='jtn_table_body' style='width: " + JTNSearchWidth + "px;'>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td class='jtn_text_out'>");
    JTNTourHtml.append("エリアの選択");
    JTNTourHtml.append("<br />");
    JTNTourHtml.append("<select id='JTNddlSearchCat' name='JTNddlSearchCat' class='jtn_select_normal' onchange='JTN.PluginCommon.SetTourSubCategory();' required >");
    JTNTourHtml.append("<option value=''>お選びください</option>");
    JTNTourHtml.append("<option value='アメリカ東部'>アメリカ東部</option>");
    JTNTourHtml.append("<option value='アメリカ西部'>アメリカ西部</option>");
    JTNTourHtml.append("<option value='カナダ'>カナダ</option>");
    JTNTourHtml.append("<option value='ハワイ'>ハワイ</option>");
    JTNTourHtml.append("<option value='カンクン・カリブ海'>カンクン・カリブ海</option>");
    JTNTourHtml.append("<option value='メキシコ・中米'>メキシコ・中米</option>");
    JTNTourHtml.append("<option value='ペルー・南米・南極'>ペルー・南米・南極</option>");
    JTNTourHtml.append("<option value='ヨーロッパ'>ヨーロッパ</option>");
    JTNTourHtml.append("<option value='エジプト・中東・アフリカ'>エジプト・中東・アフリカ</option>");
    JTNTourHtml.append("<option value='アジア・東南アジア'>アジア・東南アジア</option>");
    JTNTourHtml.append("<option value='オセアニア・オーストラリア'>オセアニア・オーストラリア</option>");
    JTNTourHtml.append("</select>");
    JTNTourHtml.append("<br />");
    JTNTourHtml.append("<span id='JTNdevSubcategory'></span>");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td class='jtn_text_out'>");
    JTNTourHtml.append("<div id='JTNdevTourDate' style='display:none; position:absolute;'></div><br/>");
    JTNTourHtml.append("参加日&nbsp;");
    JTNTourHtml.append("<input name='JTNtxtTourDate' type='text' id='JTNtxtTourDate' class='jtn_middlebox' value='7/8/2008' pattern='date' maxlength='10' required='' />&nbsp;");
    JTNTourHtml.append("<img src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor + "/jtn_plugint_icon_cal.jpg' id='JTNimgCal' class='jtn_img_cal' />");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td class='jtn_text_out'>");
    JTNTourHtml.append(" キーワード");
    JTNTourHtml.append("<br /> ");
    JTNTourHtml.append("<span id='JTNdevSearch'>");
    JTNTourHtml.append("<input name='JTNtxtSearchTextTemp' type='text' id='JTNtxtSearchTextTemp' class='jtn_longbox' pattern='text' required='' />");
    JTNTourHtml.append("<div id='JTNdevSearchContainer'></div>");
    JTNTourHtml.append("</span>");
    JTNTourHtml.append("<input type='hidden' id='JTNtxtSearchText' name='JTNtxtSearchText' />");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td class='jtn_text_small'>");
    JTNTourHtml.append("※&nbsp;観光地、名所などから検索できます。<br />&nbsp;一単語のみ入力してください。");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td class='jtn_text_out'>");
    JTNTourHtml.append("参加人数&nbsp;");
    JTNTourHtml.append("<select name='JTNddlPaxCnt' id='JTNddlPaxCnt' class='jtn_select_join_member'>");
    JTNTourHtml.append("<option value='1'>1</option>");
    JTNTourHtml.append("<option selected='selected' value='2'>2</option>");
    JTNTourHtml.append("<option value='3'>3</option>");
    JTNTourHtml.append("<option value='4'>4</option>");
    JTNTourHtml.append("<option value='5'>5</option>");
    JTNTourHtml.append("<option value='6'>6</option>");
    JTNTourHtml.append("<option value='7'>7</option>");
    JTNTourHtml.append("<option value='8'>8</option>");
    JTNTourHtml.append("<option value='9'>9</option>");
    JTNTourHtml.append("</select>");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td class='jtn_text_small'>");
    JTNTourHtml.append("※&nbsp;お子様を含めた合計人数をお選びください。");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("<tr>");
    JTNTourHtml.append("<td>");
    JTNTourHtml.append("<input src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_btn_search.jpg' name='JTNimgSearch' type='image' id='JTNimgSearch' class='jtn_search_button' value='submit' />");
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("</table>");		 
    JTNTourHtml.append("</td>");
    JTNTourHtml.append("</tr>");
    JTNTourHtml.append("</table>");
    JTNTourHtml.append("<input name='JTNhdnAgentCode' type='hidden' id='JTNhdnAgentCode' value='"+ JTNagentCode + "' />");
    JTNTourHtml.append("<input name='JTNtourSearch' type='hidden' id='JTNtourSearch' value='"+ JTNtourSearch + "' />");
    JTNTourHtml.append("<input name='JTNhotelSearch' type='hidden' id='JTNhotelSearch' value='"+ JTNhotelSearch + "' />");
    JTNTourHtml.append("</div>");
    JTNTourHtml.append("<input id='JTNddlSearchSubCatBlank' type=hidden subcategory='<select name=JTNddlSearchSubCat class=jtn_select_normal><option value= >さらに、絞り込めます</option></select>'>");
    
    //AMERICA_EAST
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatEast",JTN_TOUR_CITIES_AMERICA_EAST));
    
    //AMERICA_WEST
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatWest",JTN_TOUR_CITIES_AMERICA_WEST));
    
    //CANADA
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatCanada",JTN_TOUR_CITIES_CANADA));

    //HAWAI
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatHawaii",JTN_TOUR_CITIES_HAWAII));

    //BEACH_RESORT
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatResort",JTN_TOUR_CITIES_BEACH_RESORT));
    
    //MEXICO
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatMexico",JTN_TOUR_CITIES_MEXICO));
    
    //SOUTH_AMERICA
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatSouthAmerica",JTN_TOUR_CITIES_SOUTH_AMERICA));
    
    //EUROPE
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatEurope",JTN_TOUR_CITIES_EUROPE));

    //AFRICA
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatAfrica",JTN_TOUR_CITIES_AFRICA));
    
    //ASIA
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatAsia",JTN_TOUR_CITIES_ASIA));
    
    //OCEANIA
    JTNTourHtml.append(JTN.PluginCommon.GetSubCatHTML("JTNddlSearchSubCatOceania",JTN_TOUR_CITIES_OCEANIA));
    
    JTNTourHtml.append("</form>");
    JTNTourHtml.append("</div>");
};


if(JTNhotelSearch=='Y') {
    var JTNSearchIconH1 = new String.builder();
    var JTNHotelHtml = new String.builder();
    
    // change to appending one string 9/8/2008
    if(JTNtourSearch=='Y'){
        JTNSearchIconH1.append("<img id='JTNbtnSearch1' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_tour_off.gif' onmouseover='JTN.PluginCommon.ChangeIcom(\"over\",\"JTNbtnSearch1\");' onmouseout='JTN.PluginCommon.ChangeIcom(\"out\",\"JTNbtnSearch1\");' onClick='JTN.PluginT.ClickCatTour();' class='jtn_clickable_item'>&nbsp;");
    }
    JTNSearchIconH1.append("<img id='JTNbtnSearch2' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_hotel_selected.gif' >&nbsp;");
    if(JTNmusicalSearch=='Y'){ //add for musical
        JTNSearchIconH1.append("<img id='JTNbtnSearch3' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_musical_off.gif' onmouseover='JTN.PluginCommon.ChangeIcom(\"over\",\"JTNbtnSearch3\");' onmouseout='JTN.PluginCommon.ChangeIcom(\"out\",\"JTNbtnSearch3\");' onClick='JTN.PluginT.ClickCatMusical();' class='jtn_clickable_item'>"); //add for musical
    }
    
    JTNHotelHtml.append("<div>");
    JTNHotelHtml.append("<div class='yui-skin-sam'>");
    JTNHotelHtml.append("<form id='JTNform' method='post' Accept-charset='utf-8' onsubmit='return(JTN.PluginCommon.ValidateOnsubmit(\"HOTEL\"));' >");
    JTNHotelHtml.append("<link id='JTNAutoComplete' type='text/css' rel='stylesheet' href='"+  JTN_DOMAIN + "Plugin/Common/yui/autocomplete/assets/autocomplete.css'></link>");
    JTNHotelHtml.append("<link id='JTNCalendar' type='text/css' rel='stylesheet' href='" + JTN_DOMAIN + "Plugin/Common/yui/calendar/assets/calendar.css'></link>");
    JTNHotelHtml.append("<link id='JTNStyleSheet' rel='stylesheet' type='text/css' href='" + JTN_DOMAIN + "Plugin/Text/css/jtn_plugint.css'></link>");
    JTNHotelHtml.append("<div id='JTNbodysection' class='jtn_bodysection' style='width: " + JTNSearchWidth + "px; border-width: " + JTNborderWidth + "px;'>");
    JTNHotelHtml.append("<table id='JTNtableOuter' cellpadding='0' cellspacing='0' style='width: " + JTNSearchWidth + "px;'>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td id='JTNtdHead' >");
    JTNHotelHtml.append("<table id='JTNtableHead' class='jtn_table_head' style='width: " + JTNSearchWidth + "px; '>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td>");
    JTNHotelHtml.append(JTNSearchIconH1.toString());
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("</table>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td>");
    JTNHotelHtml.append("<table id='JTNtableBody' class='jtn_table_body' style='width: " + JTNSearchWidth + "px;'>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='5' class='jtn_text_out'>");
    JTNHotelHtml.append("滞在都市&nbsp;");
    JTNHotelHtml.append("<select id='JTNddlCityList' name='JTNddlCityList' class='jtn_select_middle' onChange='JTN.PluginCommon.SetHotelCityBox();' >");
    JTNHotelHtml.append("<option value='ニューヨーク - NY,USA'>ニューヨーク</option>");
    JTNHotelHtml.append("<option value='ロサンゼルス - CA, USA'>ロサンゼルス</option>");
    JTNHotelHtml.append("<option value='サンフランシスコ - CA, USA'>サンフランシスコ</option>");
    JTNHotelHtml.append("<option value='ワシントン - DC, USA'>ワシントンD.C.</option>");
    JTNHotelHtml.append("<option value='ラスベガス - NV, USA'>ラスベガス</option>");
    JTNHotelHtml.append("<option value='ホノルル - HI, USA'>ホノルル</option>");
    JTNHotelHtml.append("<option value='ロンドン - GREAT BRITAIN'>ロンドン</option>");
    JTNHotelHtml.append("<option value='パリ - FRANCE'>パリ</option>");
    JTNHotelHtml.append("<option value='ローマ - ITALY'>ローマ</option>");
    JTNHotelHtml.append("<option value='香港 - HK, HONG KONG'>香港</option>");
    JTNHotelHtml.append("<option value='0'>その他の都市</option>");
    JTNHotelHtml.append("</select>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='5' class='jtn_text_out'>");
    JTNHotelHtml.append("<div id='JTNdivInputCity'>");
    JTNHotelHtml.append("都市名&nbsp;");    JTNHotelHtml.append("<span id='JTNdevCity'>");
    JTNHotelHtml.append("<input type='text' id='JTNtxtCityCodeTemp' class='jtn_box_city' name='JTNtxtCityCodeTemp' pattern='text' required/>");
    JTNHotelHtml.append("<div id='JTNdevCityContainer'></div>");
    JTNHotelHtml.append("</span>");
    JTNHotelHtml.append("<input type='hidden' id='JTNtxtCityCode' name='JTNtxtCityCode' />");
    JTNHotelHtml.append("</div>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='1' class='jtn_cal_checkout_left'>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td colspan='4' class='jtn_cal'>");
    JTNHotelHtml.append("<div id='JTNdevCheckOut' style='display:none; position:absolute;'></div>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='5' class='jtn_cal'>");
    JTNHotelHtml.append("<div id='JTNdevCheckIn' style='display:none; position:absolute;'></div>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='4' class='jtn_td_checkin'>");
    JTNHotelHtml.append("チェックイン&nbsp;");
    JTNHotelHtml.append("<img src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_cal.jpg' id='JTNimgCalIn' class='jtn_img_cal' />");
    JTNHotelHtml.append("<br/>");
    JTNHotelHtml.append("<input name='JTNtxtCheckIn' type='text' id='JTNtxtCheckIn' class='jtn_middlebox' value='7/18/2008' pattern='date' maxlength='10' required='' onchange='JTN.PluginT.SetCheckOutDate();' />&nbsp;");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_td_checkout'>");
    JTNHotelHtml.append("チェックアウト");
    JTNHotelHtml.append("<img src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_cal.jpg' id='JTNimgCalOut' class='jtn_img_cal' />");
    JTNHotelHtml.append("<br/>");
    JTNHotelHtml.append("<input name='JTNtxtCheckOut' type='text' id='JTNtxtCheckOut' class='jtn_middlebox' value='7/20/2008' pattern='date' maxlength='10' required='' />&nbsp;");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='5' class='jtn_text_out'>");
    JTNHotelHtml.append("部屋数&nbsp;");
    JTNHotelHtml.append("<select name='JTNddlRoomNum' id='JTNddlRoomNum' class='jtn_select_short_middle' onChange='JTN.PluginCommon.SetHotelNumBox();'>");
    JTNHotelHtml.append("<option value='1'>1</option>");
    JTNHotelHtml.append("<option value='2'>2</option>");
    JTNHotelHtml.append("</select>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_td_adult'><div id='JTNLabelAdult_1'>部屋1:大人</div></td>");
    JTNHotelHtml.append("<td class='jtn_td_child'><div id='JTNLabelChild_1'>子供</div></td>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_td_childage'><div id='JTNLabelChildAge_1'>子供の年齢</div></td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_th_adult'>");
    JTNHotelHtml.append("<select name='JTNddlAdult_1' id='JTNddlAdult_1' class='jtn_select_adult'>");
    JTNHotelHtml.append("<option value='1'>1</option>");
    JTNHotelHtml.append("<option selected='selected' value='2'>2</option>");
    JTNHotelHtml.append("<option value='3'>3</option>");
    JTNHotelHtml.append("<option value='4'>4</option>");
    JTNHotelHtml.append("<option value='5'>5</option>");
    JTNHotelHtml.append("</select>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_th_child'>");
    JTNHotelHtml.append("<select name='JTNddlChild_1' id='JTNddlChild_1' class='jtn_select_child' onChange='JTN.PluginCommon.SetHotelChildAgeBox(1);'>");
    JTNHotelHtml.append("<option value='0'>0</option>");
    JTNHotelHtml.append("<option value='1'>1</option>");
    JTNHotelHtml.append("<option value='2'>2</option>");
    JTNHotelHtml.append("<option value='3'>3</option>");
    JTNHotelHtml.append("<option value='4'>4</option>");
    JTNHotelHtml.append("</select>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_th_childage'>");
    JTNHotelHtml.append("<input name='JTNtxtChildAge_11' type='text' id='JTNtxtChildAge_11' class='jtn_shortbox' maxlength='2' pattern='number' required='' /><input name='JTNtxtChildAge_12' type='text' id='JTNtxtChildAge_12' class='jtn_shortbox' maxlength='2' pattern='number' required='' /><input name='JTNtxtChildAge_13' type='text' id='JTNtxtChildAge_13' maxlength='2' class='jtn_shortbox' pattern='number' required='' /><input name='JTNtxtChildAge_14' type='text' id='JTNtxtChildAge_14' maxlength='2' class='jtn_shortbox' pattern='number' required='' />");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_td_adult'><div id='JTNLabelAdult_2'>部屋2:大人</div></td>");
    JTNHotelHtml.append("<td class='jtn_td_child'><div id='JTNLabelChild_2'>子供</div></td>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_td_childage'><div id='JTNLabelChildAge_2'>子供の年齢</div></td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_th_adult'>");
    JTNHotelHtml.append("<select name='JTNddlAdult_2' id='JTNddlAdult_2' class='jtn_select_adult'>");
    JTNHotelHtml.append("<option value='1'>1</option>");
    JTNHotelHtml.append("<option selected='selected' value='2'>2</option>");
    JTNHotelHtml.append("<option value='3'>3</option>");
    JTNHotelHtml.append("<option value='4'>4</option>");
    JTNHotelHtml.append("<option value='5'>5</option>");
    JTNHotelHtml.append("</select>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_th_child'>");
    JTNHotelHtml.append("<select name='JTNddlChild_2' id='JTNddlChild_2' class='jtn_select_child' onChange='JTN.PluginCommon.SetHotelChildAgeBox(2);'>");
    JTNHotelHtml.append("<option value='0'>0</option>");
    JTNHotelHtml.append("<option value='1'>1</option>");
    JTNHotelHtml.append("<option value='2'>2</option>");
    JTNHotelHtml.append("<option value='3'>3</option>");
    JTNHotelHtml.append("<option value='4'>4</option>");
    JTNHotelHtml.append("</select>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td colspan='2' class='jtn_th_childage'>");
    JTNHotelHtml.append("<div id='JTNdivChildAge_2'>");
    JTNHotelHtml.append("<input name='JTNtxtChildAge_21' type='text' id='JTNtxtChildAge_21' maxlength='2' class='jtn_shortbox' pattern='number' required='' /><input name='JTNtxtChildAge_22' type='text' id='JTNtxtChildAge_22' maxlength='2' class='jtn_shortbox' pattern='number' required='' /><input name='JTNtxtChildAge_23' type='text' id='JTNtxtChildAge_23' maxlength='2' class='jtn_shortbox' pattern='number' required='' /><input name='JTNtxtChildAge_24' type='text' id='JTNtxtChildAge_24' maxlength='2' class='jtn_shortbox' pattern='number' required='' />");
    JTNHotelHtml.append("</div>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td colspan='5'>");
    JTNHotelHtml.append("<input src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_btn_search.jpg' name='JTNimgSearch' type='image' id='JTNimgSearch' class='jtn_search_button' value='submit' />");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("<tr>");
    JTNHotelHtml.append("<td class='jtn_td_1'>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_td_2'>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_td_3'>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_td_4'>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("<td class='jtn_td_5'>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("</table>");
    JTNHotelHtml.append("</td>");
    JTNHotelHtml.append("</tr>");
    JTNHotelHtml.append("</table>");
    JTNHotelHtml.append("<input name='JTNhdnAgentCode' type='hidden' id='JTNhdnAgentCode' value='"+ JTNagentCode + "' />");
    JTNHotelHtml.append("<input name='JTNtourSearch' type='hidden' id='JTNtourSearch' value='"+ JTNtourSearch + "' />");
    JTNHotelHtml.append("<input name='JTNhotelSearch' type='hidden' id='JTNhotelSearch' value='"+ JTNhotelSearch + "' />");
    JTNHotelHtml.append("<input name='JTNddlHotelRank' type='hidden' id='JTNddlHotelRank' value='0' />");
    JTNHotelHtml.append("<input name='JTNtxtHotelName' type='hidden' id='JTNtxtHotelName' value='' />");
    JTNHotelHtml.append("</div>");
    JTNHotelHtml.append("</form>");
    JTNHotelHtml.append("</div>");
};

if(JTNmusicalSearch=='Y') { //add for musical

    var JTNSearchIconM1 = new String.builder();
    var JTNMusicalHtml = new String.builder();
    
    if(JTNtourSearch=='Y'){
        JTNSearchIconM1.append("<img id='JTNbtnSearch1' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_tour_off.gif' onmouseover='JTN.PluginCommon.ChangeIcom(\"over\",\"JTNbtnSearch1\");' onmouseout='JTN.PluginCommon.ChangeIcom(\"out\",\"JTNbtnSearch1\");' onClick='JTN.PluginT.ClickCatTour();' class='jtn_clickable_item'>&nbsp;");
    }
    if(JTNhotelSearch=='Y'){
        JTNSearchIconM1.append("<img id='JTNbtnSearch2' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_hotel_off.gif' onmouseover='JTN.PluginCommon.ChangeIcom(\"over\",\"JTNbtnSearch2\");' onmouseout='JTN.PluginCommon.ChangeIcom(\"out\",\"JTNbtnSearch2\");' onClick='JTN.PluginT.ClickCatHotel();' class='jtn_clickable_item'>&nbsp;");
    }
    JTNSearchIconM1.append("<img id='JTNbtnSearch3' src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_icon_musical_selected.gif' >");

    JTNMusicalHtml.append("<div class='yui-skin-sam'>");
    JTNMusicalHtml.append("<form id='JTNform' method='post'Accept-charset='utf-8' onsubmit='return(JTN.PluginCommon.ValidateOnsubmit(\"MUSICAL\"));' >");
    JTNMusicalHtml.append("<link id='JTNCalendar' type='text/css' rel='stylesheet' href='" + JTN_DOMAIN + "Plugin/Common/yui/calendar/assets/calendar.css'></link>");
    JTNMusicalHtml.append("<link id='JTNStyleSheet' rel='stylesheet' type='text/css' href='" + JTN_DOMAIN + "Plugin/Text/css/jtn_plugint.css'></link>");
    JTNMusicalHtml.append("<div id='JTNbodysection' class='jtn_bodysection' style='width: " + JTNSearchWidth + "px; border-width: " + JTNborderWidth + "px;'>");
    JTNMusicalHtml.append("<table id='JTNtableOuter' cellpadding='0' cellspacing='0' style='width: " + JTNSearchWidth + "px;'>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td id='JTNtdHead' align='left' >");
    JTNMusicalHtml.append("<table id='JTNtableHead' class='jtn_table_head' style='width: " + JTNSearchWidth + "px;'>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td>");
    JTNMusicalHtml.append(JTNSearchIconM1.toString());
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("</table>");
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td>");
    JTNMusicalHtml.append("<table id='JTNtableBody' class='jtn_table_body' style='width: " + JTNSearchWidth + "px;'>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td class='jtn_text_out'>");
    JTNMusicalHtml.append("エリア");
    JTNMusicalHtml.append("<br />");
    JTNMusicalHtml.append("<select id='" + JTN_MUSICAL_CITY_ELM + "' name='" + JTN_MUSICAL_CITY_ELM + "' class='jtn_select_normal' required >");
    JTNMusicalHtml.append("</select>");
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td class='jtn_text_out'>");
    JTNMusicalHtml.append("<div id='" + JTN_MUSICALDATE_DEV_ELM + "' style='display:none; position:absolute;'></div><br/>");
    JTNMusicalHtml.append("演目日&nbsp;<br />");
    JTNMusicalHtml.append("<input name='" + JTN_MUSICALDATE_ELM + "' type='text' id='" + JTN_MUSICALDATE_ELM + "' class='jtn_middlebox' value='9/5/2008' pattern='date' maxlength='10' required='' />&nbsp;");
    JTNMusicalHtml.append("<img src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor + "/jtn_plugint_icon_cal.jpg' id='" + JTN_MUSICALDATE_CAL_ELM + "' class='jtn_img_cal' />");
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td class='jtn_text_out'>");
    JTNMusicalHtml.append("枚数&nbsp;<br />");
    JTNMusicalHtml.append("<select name='" + JTN_MUSICAL_CNT_ELM + "' id='" + JTN_MUSICAL_CNT_ELM + "' class='jtn_select_join_member'>");
    JTNMusicalHtml.append("<option value='1'>1</option>");
    JTNMusicalHtml.append("<option selected='selected' value='2'>2</option>");
    JTNMusicalHtml.append("<option value='3'>3</option>");
    JTNMusicalHtml.append("<option value='4'>4</option>");
    JTNMusicalHtml.append("<option value='5'>5</option>");
    JTNMusicalHtml.append("<option value='6'>6</option>");
    JTNMusicalHtml.append("<option value='7'>7</option>");
    JTNMusicalHtml.append("<option value='8'>8</option>");
    JTNMusicalHtml.append("<option value='9'>9</option>");
    JTNMusicalHtml.append("</select>");
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td class='jtn_text_small'>");
    JTNMusicalHtml.append("※&nbsp;開演日の３日前までお申し込みができます。<br />");
    JTNMusicalHtml.append("※&nbsp;チケットの受け取りは、当日劇場にてお客様ご自身で行っていただきます。<br />");
    JTNMusicalHtml.append("※&nbsp;お申し込み後の取消／変更は一切できません。");
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("<tr>");
    JTNMusicalHtml.append("<td>");
    JTNMusicalHtml.append("<input src='" + JTN_DOMAIN + "Plugin/Text/images/" + JTNiconColor+ "/jtn_plugint_btn_search.jpg' name='JTNimgSearch' type='image' id='JTNimgSearch' class='jtn_search_button' value='submit' />");
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("</table>");		 
    JTNMusicalHtml.append("</td>");
    JTNMusicalHtml.append("</tr>");
    JTNMusicalHtml.append("</table>");
    JTNMusicalHtml.append("<input name='JTNhdnAgentCode' type='hidden' id='JTNhdnAgentCode' value='"+ JTNagentCode + "' />");
    JTNMusicalHtml.append("<input name='JTNtourSearch' type='hidden' id='JTNtourSearch' value='"+ JTNtourSearch + "' />");
    JTNMusicalHtml.append("<input name='JTNhotelSearch' type='hidden' id='JTNhotelSearch' value='"+ JTNhotelSearch + "' />");
    JTNMusicalHtml.append("</div>");
    JTNMusicalHtml.append("</form>");
    JTNMusicalHtml.append("</div>");
};﻿/*
Copyright (C) 2008 JTB Travel Network Company. All rights reserved.
Plugin Text Version
file: JTNPluginTMain.js
version: 1.0.0
*/

// Yui Namespace
YAHOO.namespace("myCalendar");

// Plugin Text Functions
if (!JTN.PluginT) {
    JTN.PluginT = {
        ///////////////////////////////////////////////////////////////////////////
        Init : function(evt) {
            // Load JTN Text Plagin	
            JTN.PluginT.SetPluginPage(JTNiconColor, JTN.PluginT.GetTopPage(JTNtourSearch, JTNhotelSearch, JTNmusicalSearch) , JTNhotelMaxRoom, JTNlogoFlag, JTNagentCode, JTNtourSearch, JTNhotelSearch, JTNmusicalSearch, document.getElementById(JTN_TARGET_DEV)); //add parameter for musical
         },
        ///////////////////////////////////////////////////////////////////////////
         SetPluginPage : function(iconColor, category, room, logo, agent, tour, hotel, musical, element) { //add parameter for musical
         
                //Insert Page
                element.innerHTML =JTN.PluginT.GetTextHTML(category);
                
                //Initialize Page
                JTN.PluginT.InitializeElements(category);
        },
        
        ///////////////////////////////////////////////////////////////////////////

        GetTopPage : function(tour, hotel, musical){ //add parameter for musical
            if (tour == JTN_YES) {
                return JTN_TOUR;
            }
            else if (hotel == JTN_YES) {
                return JTN_HOTEL;
            }
            else if (musical == JTN_YES) { //add for musical
                return JTN_MUSICAL;
            }

        },
        
        ///////////////////////////////////////////////////////////////////////////

        ClickCatTour : function(){ 
            JTN.PluginCommon.GetTourPage();      
            if (navigator.appName.toUpperCase() != JTN_OPERA.toUpperCase()) {
           
                if(document.getElementById(JTN_PLUGINM_MAP_ELM)){
                
                    JTN.PluginCommon.ChangeMapCat(JTN_TOUR);
                }
            } 
        },
        
        ///////////////////////////////////////////////////////////////////////////

        ClickCatHotel : function(){
            JTN.PluginCommon.GetHotelPage();
            if (navigator.appName.toUpperCase() != JTN_OPERA.toUpperCase()) {
                if(document.getElementById(JTN_PLUGINM_MAP_ELM)){
                               
                    JTN.PluginCommon.ChangeMapCat(JTN_HOTEL);
                }
            } 
        },
        
        ///////////////////////////////////////////////////////////////////////////

        ClickCatMusical : function(){ // add for musical
            JTN.PluginCommon.GetMusicalPage();      
            if (navigator.appName.toUpperCase() != JTN_OPERA.toUpperCase()) {
           
                if(document.getElementById(JTN_PLUGINM_MAP_ELM)){
                
                    JTN.PluginCommon.ChangeMapCat(JTN_MUSICAL);
                }
            } 
        },
        
        ///////////////////////////////////////////////////////////////////////////

        InitializeElements : function(category){
            if (category==JTN_HOTEL){
                JTN.PluginT.InitalizeHotel();
            }
            else if (category==JTN_TOUR){
                JTN.PluginT.InitalizeTour();
            }
            else if (category==JTN_MUSICAL){ //add for musical
                JTN.PluginT.InitalizeMusical();
            }

        },
        
        ///////////////////////////////////////////////////////////////////////////

        ShowErrorPage : function() {

            var errorHtml = "<form><table style='text-align: left; vertical-align: middle' border='1' width='210px' height='278px'>";
            errorHtml += "<tr>";
            errorHtml += "<td style='font-size: 8pt; text-align: center; vertical-align: middle' >";
            errorHtml += "<font face='メイリオ,Meiryo,ＭＳ Ｐゴシック,MS P Gothic,Osaka'>";
            errorHtml += "ご迷惑をお掛けして<br />申し訳ありません。<br /><br />";
            errorHtml += "只今システムメンテナンス中<br />の為、ご利用いただけません。<br /><br />";
            errorHtml += "誠に恐れ入りますが、しばらく<br />時間をおいてから再度<br />ご利用ください。<br /><br />";
            errorHtml += "お急ぎの方は<a href='mailto:look@jtbtn.com'>look@jtbtn.com</a>へ<br />お問い合わせください。<br />";
            errorHtml += "</font>";
            errorHtml += "</td>";
            errorHtml += "</tr>";
            errorHtml += "</table></form>";
            document.getElementById(JTN_TARGET_DEV).innerHTML = errorHtml;
           
        },
        ///////////////////////////////////////////////////////////////////////////

        SetAutoComplete : function(input,input_dev,category){
        
            var target;
            
            try{
            
                // Instantiate an XHR DataSource and define schema as an array:
                if (category==JTN_HOTEL){
                    target=JTN_AUTOCOMP_CITY;
                }
                else{
                    target=JTN_AUTOCOMP_KEYWORD;
                }
            
                // Instantiate first JS Array DataSource
                this.oACDS = new YAHOO.widget.DS_JSArray(target);

                this.oACDS.queryMatchContains = false;
                this.oACDS.queryMatchSubset = true;
                this.oACDS.queryMatchCase = false;

                // Instantiate AutoComplete
                this.oAutoComp = new YAHOO.widget.AutoComplete(input,input_dev, this.oACDS);
                
                this.oAutoComp.maxResultsDisplayed = 10;
                this.oAutoComp.minQueryLength = 1;
                this.oAutoComp.queryDelay = 0;
                this.oAutoComp.autoHighlight = true;
                this.oAutoComp.useShadow = true;
                this.oAutoComp.useIFrame = true;
                this.oAutoComp.alwaysShowContainer = false;
            }
            catch(e){
                //nothing
            }
        } ,
          
        ///////////////////////////////////////////////////////////////////////////
        
        SetFormAttribute : function(form_elm,category){
          
            var elm=form_elm;
            var target;
            var target_url;
            
            if(JTNnewWindowFlag==JTN_YES){
                target="JTNSearch"; // open in the same window from 2nd time added by B3 H.Mizuno 9/8/2008
            }
            else{
                target="_self";
            }
               
            if(category==JTN_HOTEL){
                target_url=JTN_B2C_URL_HOTEL;
            }
            else if(category==JTN_TOUR){
                target_url=JTN_B2C_URL_TOUR;
            }
            else if(category==JTN_MUSICAL){ //add for musical
                target_url=JTN_B2C_URL_MUSICAL;
            }
            else{
                target_url=JTN_B2C_URL_TOP;
            }
           
            elm.setAttribute("target",target);
            elm.setAttribute("action",target_url);
            
          },
          
        ///////////////////////////////////////////////////////////////////////////
        
        GetTextHTML : function(category){
            if (category==JTN_HOTEL){
                return JTNHotelHtml.toString();
            }
            else if (category==JTN_TOUR){
                return JTNTourHtml.toString();
            }
            else if (category==JTN_MUSICAL){ //add for musical
                return JTNMusicalHtml.toString();
            }
        },
        
        //////////JTNPluginTTour///////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////////

        InitalizeTour : function(){
            //Initialize Sub-Category
            JTN.PluginCommon.SetTourSubCategory();
            //Initialize Auto Complete
            JTN.PluginT.SetAutoComplete(JTN_SEARCH_ELM,JTN_SEARCH_DEV_ELM,JTN_TOUR);
            //Initialize Calender
            JTN.PluginT.SetTourCalender();
            //Set Form Attribute
            JTN.PluginT.SetFormAttribute(document.getElementById(JTN_PLUGINT_FORM_ELM),JTN_TOUR);
            //Set default date
            JTN.PluginT.SetTourDefaultDate();
            JTN.PluginT.SetTourCutegory();
        } ,

        ///////////////////////////////////////////////////////////////////////////
        SetTourCutegory : function () 
        { 
            if (document.getElementById(JTN_PLUGINM_MAP_ELM) == null) 
            {
                for(var i = JTN_SUBCATEGORY_ELMS.length - 1; i >= 1; i--) 
                {
                    if (i <= JTNTourMgrCode.length) 
                    {
                        if (JTN.PluginCommon.IsInteger(JTNTourMgrCode.substring(i - 1, i)) == true) 
                        {
                            document.getElementById(JTN_TOUR_CAT_ELM).remove(i);
                        }
                    }
                }
            }
        },
         
        ///////////////////////////////////////////////////////////////////////////
        SetTourDefaultDate : function () 
        { 
            var defaultDate = new Date();
            defaultDate.setDate(defaultDate.getDate() + JTN_DEFAULT_TOUR_DATE); 
            document.getElementById(JTN_TOURDATE_ELM).value = (defaultDate.getMonth() + 1) + "/" + defaultDate.getDate() + "/" + defaultDate.getFullYear();
        },
         
        ///////////////////////////////////////////////////////////////////////////
        SetTourCalender : function(){
            // Get min and max of dates
            var min = new Date();
            var max = new Date();
            var defaultDate=new Date();
            var smin, smax, sdefaultDate;
            
            smin = min.getFullYear() + "/" + (min.getMonth() + 1) + "/" + min.getDate();
            
            max.setYear(max.getFullYear() + 1);
            smax = max.getFullYear() + "/" + (max.getMonth() + 1) + "/" + max.getDate();
            
            defaultDate.setDate(defaultDate.getDate() + JTN_DEFAULT_TOUR_DATE); // tour date in default
            sdefaultDate = defaultDate.getFullYear() + "/" + (defaultDate.getMonth() + 1);

            YAHOO.myCalendar.cal3 = new YAHOO.widget.Calendar("cal3",JTN_TOURDATE_DEV_ELM, { title:"日付を選択して下さい", close:true } );   
            YAHOO.myCalendar.cal3.selectEvent.subscribe(JTN.PluginT.HandleSelectTourDate, YAHOO.myCalendar.cal3, true);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("MDY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MDY_MONTH_POSITION", 2);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MDY_DAY_POSITION", 3);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("MY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MY_MONTH_POSITION", 2);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("MONTHS_SHORT",   ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MONTHS_LONG",    ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_1CHAR", ["日", "月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_SHORT", ["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_MEDIUM",["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_LONG",  ["日","月", "火", "水", "木", "金", "土"]);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("mindate", smin);   
            YAHOO.myCalendar.cal3.cfg.setProperty("maxdate", smax); 
            YAHOO.myCalendar.cal3.cfg.setProperty("pagedate", sdefaultDate);  
          
            YAHOO.myCalendar.cal3.render();     
            YAHOO.util.Event.addListener(JTN_TOURDATE_CAL_ELM, "click", YAHOO.myCalendar.cal3.show, YAHOO.myCalendar.cal3, true);   
            //YAHOO.util.Event.addListener(JTN_TOURDATE_ELM, "click", YAHOO.myCalendar.cal3.show, YAHOO.myCalendar.cal3, true);  B3 H.Mizuno 9/19/2008
        },
        
        ///////////////////////////////////////////////////////////////////////////
        HandleSelectTourDate : function(type,args,obj) {
            var dates = args[0]; 
            var date = dates[0];
            var year = date[0], month = date[1], day = date[2];

          var txtDate = document.getElementById(JTN_TOURDATE_ELM);
          txtDate.value =  month + "/" + day + "/" + year;
          
          YAHOO.myCalendar.cal3.hide();
          },
          
        //////////JTNPluginTHotel//////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////////

        InitalizeHotel : function(){

            // Initialize elements
            JTN.PluginCommon.SetHotelCityBox();
            JTN.PluginCommon.SetHotelNumBox();
            JTN.PluginCommon.SetHotelChildAgeBox(1);
            JTN.PluginCommon.SetHotelChildAgeBox(2);
            //Initialize Calender
            JTN.PluginT.SetHotelCalender();           
            //Set Form Attribute
            JTN.PluginT.SetFormAttribute(document.getElementById(JTN_PLUGINT_FORM_ELM),JTN_HOTEL);
            //Set default date
            JTN.PluginT.SetHotelDefaultDate();
        },

      ///////////////////////////////////////////////////////////////////////////
        SetHotelDefaultDate : function () 
        { 
            var defaultIn = new Date();
            var defaultOut = new Date();

            defaultIn.setDate(defaultIn.getDate() + JTN_DEFAULT_CHECKIN_DATE); // check in default
            document.getElementById(JTN_CHECKIN_ELM).value = (defaultIn.getMonth() + 1) + "/" + defaultIn.getDate() + "/" + defaultIn.getFullYear();
            
            defaultOut.setDate(defaultOut.getDate() + JTN_DEFAULT_CHECKOUT_DATE); // check in default
            document.getElementById(JTN_CHECKOUT_ELM).value = (defaultOut.getMonth() + 1) + "/" + defaultOut.getDate() + "/" + defaultOut.getFullYear();
        },
         
        ///////////////////////////////////////////////////////////////////////////
        // change check out date when check in date is changed
        SetCheckOutDate : function () 
        { 
            var inDate = document.getElementById(JTN_CHECKIN_ELM).value;
            
            if (JTN.PluginCommon.IsDate(inDate) == true) 
            {
                var dateValue=inDate.split(JTN_DTCH);
                var outDate = new Date(dateValue[2],Number(dateValue[0])-1,dateValue[1]);
                
                outDate.setDate(outDate.getDate() + 2); 
                document.getElementById(JTN_CHECKOUT_ELM).value = (outDate.getMonth() + 1) + "/" + outDate.getDate() + "/" + outDate.getFullYear();
            }
        },
         
        ///////////////////////////////////////////////////////////////////////////
        SetHotelCalender : function(){

            // Get dates
            var min1 = new Date();
            var min2 = new Date();
            var max = new Date();
            var defaultIn = new Date();
            var defaultOut = new Date();
            var smin1, smin2, smax, sdefaultIn, sdefaultOut;
            
            min1.setDate(min1.getDate() + 1); // check in min
            smin1 = min1.getFullYear() + "/" + (min1.getMonth() + 1) + "/" + min1.getDate();
            
            min2.setDate(min2.getDate() + 2); // check out min
            smin2 = min2.getFullYear() + "/" + (min2.getMonth() + 1) + "/" + min2.getDate();
            
            max.setYear(max.getFullYear() + 1); // max
            smax = max.getFullYear() + "/" + (max.getMonth() + 1) + "/" + max.getDate();

            defaultIn.setDate(defaultIn.getDate() + JTN_DEFAULT_CHECKIN_DATE); // check in default
            sdefaultIn = defaultIn.getFullYear() + "/" + (defaultIn.getMonth() + 1);
            
            defaultOut.setDate(defaultOut.getDate() + JTN_DEFAULT_CHECKOUT_DATE); // check in default
            sdefaultOut = defaultOut.getFullYear() + "/" + (defaultOut.getMonth() + 1);
            
            // Check In Date
            YAHOO.myCalendar.cal1 = new YAHOO.widget.Calendar("cal1",JTN_CHECKIN_DEV_ELM, { title:"日付を選択して下さい", close:true } );   
            YAHOO.myCalendar.cal1.selectEvent.subscribe(JTN.PluginT.HandleSelectCheckIn, YAHOO.myCalendar.cal1, true);   
          
            YAHOO.myCalendar.cal1.cfg.setProperty("MDY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal1.cfg.setProperty("MDY_MONTH_POSITION", 2);   
            YAHOO.myCalendar.cal1.cfg.setProperty("MDY_DAY_POSITION", 3);   
          
            YAHOO.myCalendar.cal1.cfg.setProperty("MY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal1.cfg.setProperty("MY_MONTH_POSITION", 2);   
          
            YAHOO.myCalendar.cal1.cfg.setProperty("MONTHS_SHORT",   ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal1.cfg.setProperty("MONTHS_LONG",    ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal1.cfg.setProperty("WEEKDAYS_1CHAR", ["日", "月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal1.cfg.setProperty("WEEKDAYS_SHORT", ["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal1.cfg.setProperty("WEEKDAYS_MEDIUM",["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal1.cfg.setProperty("WEEKDAYS_LONG",  ["日","月", "火", "水", "木", "金", "土"]);   
          
            YAHOO.myCalendar.cal1.cfg.setProperty("mindate", smin1);   
            YAHOO.myCalendar.cal1.cfg.setProperty("maxdate", smax);   
            YAHOO.myCalendar.cal1.cfg.setProperty("pagedate", sdefaultIn);   
          
            YAHOO.myCalendar.cal1.render();     
            YAHOO.util.Event.addListener(JTN_CHECKIN_CAL_ELM, "click", YAHOO.myCalendar.cal1.show, YAHOO.myCalendar.cal1, true);   
            //YAHOO.util.Event.addListener(JTN_CHECKIN_ELM, "click", YAHOO.myCalendar.cal1.show, YAHOO.myCalendar.cal1, true); B3 H.Mizuno 9/19/2008
            
            YAHOO.myCalendar.cal1.hide(); 
            
            // Check Out Date
            YAHOO.myCalendar.cal2 = new YAHOO.widget.Calendar("cal2",JTN_CHECKOUT_DEV_ELM, { title:"日付を選択して下さい", close:true } );   
            YAHOO.myCalendar.cal2.selectEvent.subscribe(JTN.PluginT.HandleSelectCheckOut, YAHOO.myCalendar.cal2, true);   
          
            YAHOO.myCalendar.cal2.cfg.setProperty("MDY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal2.cfg.setProperty("MDY_MONTH_POSITION", 2);   
            YAHOO.myCalendar.cal2.cfg.setProperty("MDY_DAY_POSITION", 3);   
          
            YAHOO.myCalendar.cal2.cfg.setProperty("MY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal2.cfg.setProperty("MY_MONTH_POSITION", 2);   
          
            YAHOO.myCalendar.cal2.cfg.setProperty("MONTHS_SHORT",   ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal2.cfg.setProperty("MONTHS_LONG",    ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal2.cfg.setProperty("WEEKDAYS_1CHAR", ["日", "月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal2.cfg.setProperty("WEEKDAYS_SHORT", ["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal2.cfg.setProperty("WEEKDAYS_MEDIUM",["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal2.cfg.setProperty("WEEKDAYS_LONG",  ["日","月", "火", "水", "木", "金", "土"]);   
          
            YAHOO.myCalendar.cal2.cfg.setProperty("mindate", smin2);   
            YAHOO.myCalendar.cal2.cfg.setProperty("maxdate", smax);   
            YAHOO.myCalendar.cal2.cfg.setProperty("pagedate", sdefaultOut);   
          
            YAHOO.myCalendar.cal2.render();     
            YAHOO.util.Event.addListener(JTN_CHECKOUT_CAL_ELM, "click", YAHOO.myCalendar.cal2.show, YAHOO.myCalendar.cal2, true); 
            //YAHOO.util.Event.addListener(JTN_CHECKOUT_ELM, "click", YAHOO.myCalendar.cal2.show, YAHOO.myCalendar.cal2, true);  B3 H.Mizuno 9/19/2008
            
            YAHOO.myCalendar.cal2.hide(); 

        },
        ///////////////////////////////////////////////////////////////////////////
        HandleSelectCheckIn : function(type,args,obj) {
            var dates = args[0]; 
            var date = dates[0];
            var year = date[0], month = date[1], day = date[2];

          var txtDate = document.getElementById(JTN_CHECKIN_ELM);
          txtDate.value =  month + "/" + day + "/" + year;
          
          YAHOO.myCalendar.cal1.hide();
          
          JTN.PluginT.SetCheckOutDate(); // change check out date
        },	
        ///////////////////////////////////////////////////////////////////////////
        HandleSelectCheckOut : function(type,args,obj) {
            var dates = args[0]; 
            var date = dates[0];
            var year = date[0], month = date[1], day = date[2];

          var txtDate = document.getElementById(JTN_CHECKOUT_ELM);
          txtDate.value =  month + "/" + day + "/" + year;
          
          YAHOO.myCalendar.cal2.hide();
        },
        
        //////////JTNPluginTMusical (add for musical)//////////////////////////////
        ///////////////////////////////////////////////////////////////////////////

        InitalizeMusical : function(){
            //Initialize City
            JTN.PluginT.SetMusicalCity();
            //Initialize Calender
            JTN.PluginT.SetMusicalCalender();
            //Set Form Attribute
            JTN.PluginT.SetFormAttribute(document.getElementById(JTN_PLUGINT_FORM_ELM),JTN_MUSICAL);
            //Set default date
            JTN.PluginT.SetMusicalDefaultDate();
        } ,
        ///////////////////////////////////////////////////////////////////////////
        SetMusicalCity : function () 
        {
            var iDefaultIndex = -1;
            for (var i = 0; i < JTN_MUSICAL_CITIES.length; i++)
            {
                document.getElementById(JTN_MUSICAL_CITY_ELM).options[document.getElementById(JTN_MUSICAL_CITY_ELM).options.length] = new Option(JTN_MUSICAL_CITIES[i], JTN_MUSICAL_CITIES[i]);
                if (JTN_MUSICAL_CITIES[i] == JTN_DEFAULT_MUSICAL_CITY)
                {
                    iDefaultIndex = i;
                }
            }
            document.getElementById(JTN_MUSICAL_CITY_ELM).selectedIndex = iDefaultIndex;
        },
         
        ///////////////////////////////////////////////////////////////////////////
        SetMusicalDefaultDate : function () 
        { 
            var defaultDate = new Date();
            defaultDate.setDate(defaultDate.getDate() + JTN_DEFAULT_MUSICAL_DATE); 
            document.getElementById(JTN_MUSICALDATE_ELM).value = (defaultDate.getMonth() + 1) + "/" + defaultDate.getDate() + "/" + defaultDate.getFullYear();
        },
         
        ///////////////////////////////////////////////////////////////////////////
        SetMusicalCalender : function(){
            // Get min and max of dates
            var min = new Date();
            var max = new Date();
            var defaultDate=new Date();
            var smin, smax, sdefaultDate;
            
            min.setDate(min.getDate() + JTN_MIN_MUSICAL_DATE);
            smin = min.getFullYear() + "/" + (min.getMonth() + 1) + "/" + min.getDate();
            
            max.setMonth(max.getMonth() + JTN_MAX_MUSICAL_MONTH);
            smax = max.getFullYear() + "/" + (max.getMonth() + 1) + "/" + max.getDate();
            
            defaultDate.setDate(defaultDate.getDate() + JTN_DEFAULT_MUSICAL_DATE); // musical date in default
            sdefaultDate = defaultDate.getFullYear() + "/" + (defaultDate.getMonth() + 1);

            YAHOO.myCalendar.cal3 = new YAHOO.widget.Calendar("cal3",JTN_MUSICALDATE_DEV_ELM, { title:"日付を選択して下さい", close:true } );   
            YAHOO.myCalendar.cal3.selectEvent.subscribe(JTN.PluginT.HandleSelectMusicalDate, YAHOO.myCalendar.cal3, true);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("MDY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MDY_MONTH_POSITION", 2);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MDY_DAY_POSITION", 3);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("MY_YEAR_POSITION", 1);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MY_MONTH_POSITION", 2);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("MONTHS_SHORT",   ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("MONTHS_LONG",    ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_1CHAR", ["日", "月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_SHORT", ["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_MEDIUM",["日","月", "火", "水", "木", "金", "土"]);   
            YAHOO.myCalendar.cal3.cfg.setProperty("WEEKDAYS_LONG",  ["日","月", "火", "水", "木", "金", "土"]);   
          
            YAHOO.myCalendar.cal3.cfg.setProperty("mindate", smin);   
            YAHOO.myCalendar.cal3.cfg.setProperty("maxdate", smax); 
            YAHOO.myCalendar.cal3.cfg.setProperty("pagedate", sdefaultDate);  
          
            YAHOO.myCalendar.cal3.render();     
            YAHOO.util.Event.addListener(JTN_MUSICALDATE_CAL_ELM, "click", YAHOO.myCalendar.cal3.show, YAHOO.myCalendar.cal3, true);   
            //YAHOO.util.Event.addListener(JTN_MUSICALDATE_ELM, "click", YAHOO.myCalendar.cal3.show, YAHOO.myCalendar.cal3, true);  B3 H.Mizuno 9/19/2008
        },
        ///////////////////////////////////////////////////////////////////////////
        HandleSelectMusicalDate : function(type,args,obj) {
            var dates = args[0]; 
            var date = dates[0];
            var year = date[0], month = date[1], day = date[2];

            var txtDate = document.getElementById(JTN_MUSICALDATE_ELM);
            txtDate.value =  month + "/" + day + "/" + year;
          
            YAHOO.myCalendar.cal3.hide();
        }
        
    }
};

// Load Plugin Text
JTN.PluginCommon.AddEvent(window, 'load', JTN.PluginT.Init, false);