﻿
if (typeof(km_scripts) == 'undefined') var km_scripts = new Object();
km_myclass_import('../Common/js/flashobject.js');


function km_myclass_import(jsFile) {
  if (km_scripts[jsFile] != null) return;
  var scriptElt = document.createElement('script');
  scriptElt.type = 'text/javascript';
  scriptElt.src = jsFile;
  document.getElementsByTagName('head')[0].appendChild(scriptElt);
  km_scripts[jsFile] = jsFile; // or whatever value your prefer
}

function popWin(link, w, h){  
   var winObject=null;	
   var fw = (screen.width-w)/2;
   var fh = (screen.height-h)/2;  
       winObject=window.open(link,'','scrollbars=1,width='+ w +',height='+ h +',top='+fh+',left='+fw);	
}

function createCookie(name,value,days){
	if (days){
		var date = new Date();
		date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
		var expires = "; expires=" + date.toGMTString();
	} else {
			var expires = "";
	}
	document.cookie = name + "=" + value + expires + "; path=/";
}

function get_text_cookie ( cookie_name ){
	  var results = document.cookie.match ( cookie_name + '=(.*?)(;|$)' );

	  if ( results ) {
		return (unescape ( results[1]));
	  }
	  else { return null; }
}

//設定字級
function ResetFontSize(size){
  
	var docs = document.getElementById('fontSizeCtrl');	
	if(docs){
		var imgArr = ["100","120"];
		var currentTextSize = 100;
		var currentLineHeight = null;
		if(size==""){	//預設載入時判斷
			if(get_text_cookie("RangeSize")) {
					size = get_text_cookie("RangeSize");
			}else{
				size = "100";
				createCookie("RangeSize","100", 1000);
			}
		}else{
			createCookie("RangeSize",size, 1000);
		}
		
		currentTextSize = parseInt(size);
		currentLineHeight = parseInt((currentTextSize/10) * 2.4);
		
		docs.style.fontSize = currentTextSize + '%';
		//docs.style.lineHeight = currentLineHeight +'px';
	}	
}

var clientLang = 1;

function initRecommend(iSNo, iLang){   //推廌
    clientLang = iLang;
    var sUrl = "../user/ajaxUser.aspx?jDo=P&jSNO=" +iSNo+ "&jLang=" +iLang;
    var request = YAHOO.util.Connect.asyncRequest('GET', sUrl, YUIcallback); 
}


var handleSuccess = function(o){
	if(o.responseText !== undefined){
        headerEls = YAHOO.util.Dom.get("push_t1");
        if(o.responseText != headerEls.innerHTML){
            headerEls.innerHTML = o.responseText
        }else {
            if(clientLang == 1){
            alert("此項目您已推薦過!");
            } else {
            alert("It's Recommended!");
            }
        }
	}
}

var YUIcallback ={success:handleSuccess};



//景點 > 王爺帶你去日月 >　TAB 控制
if(typeof(YAHOO) != "undefined") {
    var el = new YAHOO.util.Element('all_View_Book');
    el.on('contentReady', function() {
           _vTabNowIdx = 1;
           YAHOO.util.Dom.setStyle(['vTabInfo2', 'vTabInfo3', 'vTabInfo4'], 'opacity', 0); 
           YAHOO.util.Dom.setStyle(['vTabInfo2', 'vTabInfo3', 'vTabInfo4'], 'display', 'none'); 
           
           var ids = ["vTab1", "vTab2", "vTab3", "vTab4"];
           YAHOO.util.Event.addListener(ids, "click", fnCallback); 
           
           function fnCallback(e) {
            if(typeof(myAnimObj)!="undefined") myAnimObj.stop();
            YAHOO.util.Dom.setStyle('vTabInfo' + _vTabNowIdx, 'opacity', 0);
            YAHOO.util.Dom.setStyle('vTabInfo' + _vTabNowIdx, 'display', 'none');
            var temp = document.getElementById('vTab' + _vTabNowIdx);
            temp.innerHTML = temp.innerHTML.replace("on.png",".png");
            
            _beTabIdx = this.id.replace("vTab","")
            this.innerHTML = this.innerHTML.replace(".png","on.png");
            YAHOO.util.Dom.setStyle('vTabInfo' + _beTabIdx, 'display', 'block'); 
            myAnimObj = new YAHOO.util.Anim('vTabInfo' + _beTabIdx, {opacity: {to: 1}},1,YAHOO.util.Easing.easeOutStrong);
            myAnimObj.animate();
           _vTabNowIdx = _beTabIdx;
           } 
        });
}

//gmap api

function initialize(getLat,getLng) {
    if (GBrowserIsCompatible()){ //檢查瀏覽器相容性支援
    map = new GMap2(document.getElementById("map_canvas"));//建立 Gmap2 物件
    defaultPoint = new GLatLng(getLat,getLng); //設定經緯度物件
    map.setCenter(defaultPoint, 14);//顯示地圖，並設中心點、縮放值
    var customUI = map.getDefaultUI();
    customUI.controls.scalecontrol = false;
    customUI.controls.maptypecontrol  = false;
    customUI.controls.menumaptypecontrol  = true;
    map.setUI(customUI);
    map.disableScrollWheelZoom();
    MainGM = new GMarker(defaultPoint);
    map.addOverlay(MainGM);
    } else {
    alert('您的瀏覽器不支援Google Map');
    }
}

function photo3Box(getSPhotoID,getBPhotoPath){
    YAHOO.util.Event.addListener(getSPhotoID, "click", function(){
    YAHOO.util.Dom.setStyle('bigPhoto', 'opacity', 0);
    document.getElementById("bigPhoto").src = "../Att/" + getBPhotoPath;
    myAnimObj = new YAHOO.util.Anim('bigPhoto', {opacity: {to: 1}},1,YAHOO.util.Easing.easeOutStrong);
    myAnimObj.animate();
    }); 
}


function albumChgImg(){
var photoElementsTXT = YAHOO.util.Dom.getElementsByClassName('photoLITXT');
YAHOO.util.Dom.setStyle(photoElementsTXT, 'display', 'none'); 

var photoElements = YAHOO.util.Dom.getElementsByClassName('photoLI');
YAHOO.util.Dom.setStyle(photoElements, 'float', 'left'); 
YAHOO.util.Dom.setStyle('PhotoBar', 'opacity', '0.6');

var photoElementsHref = YAHOO.util.Dom.getElementsByClassName('photoHref');

for (x in photoElementsHref)  {photoElementsHref[x].removeAttribute("href");}


YAHOO.util.Event.addListener("PhotoM", "click", function(){
var _link = "../att/pic/" + this.src.replace( /^.*[\/\\]/g, '' ).replace("m_","");
   var winObject=null;	var w = 800;  var h=500;
   var fw = (screen.width-w)/2;
   var fh = (screen.height-h)/2;  
       winObject=window.open(_link,'','scrollbars=1,width='+ w +',height='+ h +',top='+fh+',left='+fw);	
}); 


var imgels = YAHOO.util.Dom.getElementsByClassName('photoItem');
YAHOO.util.Event.addListener(imgels, "click", function (){
            var _p = YAHOO.util.Dom.get('PhotoM');
                YAHOO.util.Dom.setStyle(_p, 'opacity', 0);
                _p.src = "../att/pic/" + this.src.replace( /^.*[\/\\]/g, '' ).replace("s_","m_");
                myAnimObj = new YAHOO.util.Anim(_p, {opacity: {to: 1}},1,YAHOO.util.Easing.easeOutStrong);
                myAnimObj.animate();
                
                var _tID = this.id.replace('i_','t_');
                document.getElementById('titleM').innerHTML = YAHOO.util.Dom.getFirstChild(_tID).innerHTML;
                document.getElementById('authorM').innerHTML = YAHOO.util.Dom.getLastChild(_tID).innerHTML;
            }  
);

}


//上方多國語言選單
var LangMenu = new YAHOO.util.Element('subglobal1');
LangMenu.on('contentReady', function() {
      closeSubNav();
      if(m_Lang == "1") YAHOO.util.Dom.setStyle(LangMenu, 'width', '70px');
      if(m_Lang == "2") YAHOO.util.Dom.setStyle(LangMenu, 'width', '145px');
      if(m_Lang == "3") YAHOO.util.Dom.setStyle(LangMenu, 'width', '85px');
      if(m_Lang == "4") YAHOO.util.Dom.setStyle(LangMenu, 'width', '70px');
      if(m_Lang == "5") YAHOO.util.Dom.setStyle(LangMenu, 'width', '75px');
      
    });

function closeSubNav(){
YAHOO.util.Dom.setStyle(LangMenu, 'display', 'none');

}

function openSubNav(){
YAHOO.util.Dom.setStyle(LangMenu, 'display', 'block');
}



function chkNoChar(txt,targetName){
	for(i=0;i<txt.length;i++){
	c = txt.charAt(i);
	if("!@#$%^/\"\'&*()+|".indexOf(c,0)>0){	alert("您在「"+targetName+"」輸入了不被接受的符號！");	return false;	}		
	}
}
function chkEmail(txt){
	data = txt.match(/^\S+@\S+\.\S+$/)
	if (!data || !txt) return false;
	return true;
}
function jsLtrim(txt){
	while (txt.indexOf(" ") == 0 ){	txt = txt.replace(" ","");	}
	return txt;
}
 
function jsRtrim(txt){
	while (txt.charAt(txt.length-1) == " " ){	txt = txt.substr(0,txt.length-1);	}
	return txt;
}
function chkNum(getkeyCode){
	c = getkeyCode;
	if((c>=35&&c<=45)||(c>=48&&c<=57)||(c>=96&&c<=105)||c==8||c==9||c==13||c==46||c==229) return true; return false;
}
 
 function checkID( id ) {
   tab = "ABCDEFGHJKLMNPQRSTUVWXYZIO"
   A1 = new Array (1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3 );
   A2 = new Array (0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5 );
   Mx = new Array (9,8,7,6,5,4,3,2,1,1);

   if ( id.length != 10 ) return false;
   i = tab.indexOf( id.charAt(0) );
   if ( i == -1 ) return false;
   sum = A1[i] + A2[i]*9;

   for ( i=1; i<10; i++ ) {
      v = parseInt( id.charAt(i) );
      if ( isNaN(v) ) return false;
      sum = sum + v * Mx[i];
   }
   if ( sum % 10 != 0 ) return false;
   return true;
}

function sameWith(ipt1,ipt2,getThis){
    if (document.getElementById(ipt1).value == "") getThis.checked = false;
    if (getThis.checked){
        document.getElementById(ipt2).value = document.getElementById(ipt1).value
    } else {
        document.getElementById(ipt2).value = ""
    }
}

function validateEmail(email) {
    regularExpression = /^[^\s]+@[^\s]+\.[^\s]{2,3}$/;
    if (regularExpression.test(email)) {
    return true;
    }else{
    return false;
    }
} 

function memberForm_check(){

    //check name
	    _ipt = eval('document.aspnetForm.' +m_clientId+ '_txtName.value');
	    _ipt = jsLtrim(_ipt);mytxt = jsRtrim(_ipt);
	    if(_ipt.length < 2){
	        alert("「姓名」不得少於 2 個字元");return false;
	    }
    	
    //check ID
        //長度
//	    _ipt = eval('document.aspnetForm.' +m_clientId+ '_txtID.value');
//	    _ipt = jsLtrim(_ipt);mytxt = jsRtrim(_ipt);
//	    if(_ipt.length < 10){
//	        alert("「身份證字號」不得少於 10 個字元");return false;
//	    }
        //格式
//	    if(!checkID(_ipt)){
//	        alert("「身份證字號」格式有誤！");return false;
//	    }
    
    //email
	    _ipt = eval('document.aspnetForm.' +m_clientId+ '_txtEmail.value');
        if(!validateEmail(_ipt)){
	        alert("「電子郵件」格式有誤，請檢查");return false;
        }
    	
    //check Password and confirm Password
        //長度
	    _ipt = eval('document.aspnetForm.' +m_clientId+ '_txtPassword.value');
	    _ipt = jsLtrim(_ipt);mytxt = jsRtrim(_ipt);
	    if(_ipt.length < 5){
	        alert("「密碼長度」不得少於 5 個字元");return false;
	    }
	    //再確認密碼
	    _ipt2 = eval('document.aspnetForm.' +m_clientId+ '_txtPassword2.value');
	    if (_ipt != _ipt2){
	        alert("「再確認密碼」輸入錯誤，請檢查");return false;
	    }
	    
    //check name
	    _ipt = eval('document.aspnetForm.' +m_clientId+ '_txtPcode.value');
	    _ipt = jsLtrim(_ipt);mytxt = jsRtrim(_ipt);
	    if(_ipt.length < 3){
	        alert("「圖片驗證碼」少於 3 個字，請檢查！");return false;
	    }
	
	return;
}



function search()
{
     if ((document.getElementById('ctl01_ctl00_txtKey1').value!="") && (document.getElementById('ctl01_ctl00_txtKey1').value!=document.getElementById('altermsg').value))
    {
        var dbname ="";
        var frm=document.getElementById('aspForm');
        
        frm.action="http://search.dbnsa.gov.tw/cgi-bin/search/query.cgi";//document.getElementById('ctl01_ctl00_searchurl').value;
       
             switch (document.getElementById('ctl01_ctl00_search_lang').value)
        {
            case "cht":
                 dbname="dtw";
                    ckHiddenInput(frm,'uilang',document.getElementById('ctl01_ctl00_search_lang').value);     
                break;
            case "en":
              dbname="den";
                ckHiddenInput(frm,'uilang',document.getElementById('ctl01_ctl00_search_lang').value); 
                break;
            case "jp":
              dbname="djp";
                 ckHiddenInput(frm,'uilang',document.getElementById('ctl01_ctl00_search_lang').value);                 
                break;
            case "chs":
              dbname="dcn";
               ckHiddenInput(frm,'uilang',document.getElementById('ctl01_ctl00_search_lang').value); 
                    
                break;
            case "kr":
              dbname="dkr";
                ckHiddenInput(frm,'uilang','en'); 
       
                break;
	 default:
				  dbname="dtw";
				  ckHiddenInput(frm,'uilang','cht');    
 				frm.action="http://www.dbnsa.gov.tw/ErrorPage.aspx";//
	break;
        }
           ckHiddenInput(frm,'dbs',dbname);      
          ckHiddenInput(frm,'q',document.getElementById('ctl01_ctl00_txtKey1').value); 
        frm.method="get";
        frm.target="_blank";
        frm.submit();
        }else
        {
              alert(document.getElementById('altermsg').value);
        }
}
    
    function createHiddenInput( name , value ) 
    { 
        var hiddenField = document.createElement("input"); 
        hiddenField.setAttribute('type', 'hidden'); 
        hiddenField.setAttribute('value', value ); 
        hiddenField.setAttribute('name', name ); 
        hiddenField.setAttribute('id', name ); 
        return hiddenField; 
      } 
      
        function ckHiddenInput(frm,name , value ) 
    {
        var CkField = document.getElementById(name);
        if (CkField==null)
        {
            frm.appendChild(createHiddenInput(name ,value)); 
        }
        else
        {
            CkField.value = value;
        }
    }
