﻿//共用物件
var fontSource = null; // 字型 Source
var fileSource = null; // XAML及圖片 Source

var cabnCrewObj = null; // 空服員
var stnPanelBlock = null; // 站點介紹Panel

var txtObject = new Array(); // 文字控制項集合

//全域變數 ,屬性設定
var movieZindex = 101;
/*外站37點資料*/
var stn = [
            {"name": "溫哥華"   ,"code": "YVR","top": 100,"left": 638,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "10小時30分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "安克拉治" ,"code": "ANC","top": 54,"left": 565,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "8小時50分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "關島"   ,"code": "GUM","top": 200,"left": 420,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "3小時55分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "夏威夷"   ,"code": "HNL","top": 190,"left": 570,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "9小時25分","depttxg": true,"txgtime": "12小時00分","deptkhh": false,"khhtime": ""},
            //{"name": "休士頓"   ,"code": "IAH","top": 152,"left": 710,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": true,"depttpe": true,"tpetime": "16小時2分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "洛杉磯"   ,"code": "LAX","top": 130,"left": 648,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "11小時45分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "紐約"   ,"code": "NYC","top": 102,"left": 762,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "17小時50分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "西雅圖"   ,"code": "SEA","top": 110,"left": 640,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "11小時10分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "舊金山"   ,"code": "SFO","top": 120,"left": 642,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "11小時10分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "阿布達比"   ,"code": "AUH","top": 170,"left": 182,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "9小時35分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "北京"   ,"code": "BJS","top": 128,"left": 335,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "6小時0分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "香港"   ,"code": "HKG","top": 183,"left": 315,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "1小時45分","depttxg": true,"txgtime": "1小時40分","deptkhh": true,"khhtime": "1小時30分"},
            {"name": "上海"   ,"code": "SHA","top": 153,"left": 343,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "5小時30分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "峇里島"   ,"code": "DPS","top": 265,"left": 350,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "5小時5分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            //{"name": "德里"   ,"code": "DEL","top": 173,"left": 235,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": true,"depttpe": true,"tpetime": "16小時2分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "福岡"   ,"code": "FUK","top": 150,"left": 367,"isRight": "Y","txtTop": 15,"txtLeft": 40,"lineHeight": 15,"lineWidth": 45,"disabled": false,"depttpe": true,"tpetime": "2小時10分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "廣島"   ,"code": "HIJ","top": 145,"left": 365,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "2小時25分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "名古屋"   ,"code": "NGO","top": 140,"left": 385,"isRight": "Y","txtTop": 5,"txtLeft": 40,"lineHeight": 5,"lineWidth": 45,"disabled": false,"depttpe": true,"tpetime": "2小時45分","depttxg": false,"txgtime": "","deptkhh": true,"khhtime": "2小時45分"},
            {"name": "琉球"   ,"code": "OKA","top": 160,"left": 360,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "1小時30分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "大阪"   ,"code": "OSA","top": 143,"left": 378,"isRight": "Y","txtTop": 10,"txtLeft": 40,"lineHeight": 10,"lineWidth": 45,"disabled": false,"depttpe": true,"tpetime": "2小時30分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "札幌"   ,"code": "SPK","top": 117,"left": 396,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "3小時50分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "東京"   ,"code": "TYO","top": 135,"left": 390,"isRight": "Y","txtTop": 0,"txtLeft": 40,"lineHeight": 1,"lineWidth": 45,"disabled": false,"depttpe": true,"tpetime": "2小時55分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "首爾"   ,"code": "SEL","top": 133,"left": 357,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "2小時25分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "吉隆坡"   ,"code": "KUL","top": 224,"left": 292,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "4小時40分","depttxg": false,"txgtime": "","deptkhh": true,"khhtime": "4小時40分"},
            {"name": "檳城"   ,"code": "PEN","top": 217,"left": 290,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "4小時30分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "新加坡"   ,"code": "SIN","top": 235,"left": 295,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "4小時25分","depttxg": false,"txgtime": "","deptkhh": true,"khhtime": "4小時05分"},
            {"name": "曼谷"   ,"code": "BKK","top": 200,"left": 292,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "3小時50分","depttxg": false,"txgtime": "","deptkhh": true,"khhtime": "3小時20分"},
            {"name": "清邁"   ,"code": "CNX","top": 193,"left": 295,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "4小時00分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "普吉"   ,"code": "HKT","top": 210,"left": 290,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "4小時25分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "河內"   ,"code": "HAN","top": 185,"left": 305,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "3小時10分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "胡志明市"   ,"code": "SGN","top": 200,"left": 310,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "3小時20分","depttxg": true,"txgtime": "3小時10分","deptkhh": true,"khhtime": "3小時10分"},
            {"name": "維也納"   ,"code": "VIE","top": 108,"left": 90,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "16小時35分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "布拉格"   ,"code": "PRG","top": 118,"left": 100,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "17小時15分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "法蘭克福"   ,"code": "FRA","top": 98,"left": 65,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "13小時35分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "羅馬"   ,"code": "ROM","top": 118,"left": 74,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "16小時40分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "阿姆斯特丹"   ,"code": "AMS","top": 93,"left": 60,"isRight": "N","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "16小時40分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "布里斯本"   ,"code": "BNE","top": 315,"left": 415,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "8小時35分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "雪梨"   ,"code": "SYD","top": 335,"left": 415,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": false,"depttpe": true,"tpetime": "9小時10分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""},
            {"name": "台灣"   ,"code": "TWN","top": 173,"left": 342,"isRight": "Y","txtTop": 0,"txtLeft": 0,"lineHeight": 0,"lineWidth": 0,"disabled": true,"depttpe": true,"tpetime": "16小時2分","depttxg": false,"txgtime": "","deptkhh": false,"khhtime": ""}
          ];

var area = [
            {"name": "大洋洲"   ,"code": "Oceania"      ,"top": 450 ,"left": 510    ,"img": "images/but06.png"},
            {"name": "歐洲" ,"code": "Europe"       ,"top": 450 ,"left": 575    ,"img": "images/but05.png"},
            {"name": "北美洲"     ,"code": "NorthAmerica" ,"top": 450 ,"left": 640    ,"img": "images/but04.png"},
            {"name": "大陸"   ,"code": "China"        ,"top": 450 ,"left": 705    ,"img": "images/but03.png"},
            {"name": "東北亞"   ,"code": "NorthAsia"    ,"top": 450 ,"left": 770    ,"img": "images/but02.png"},
            {"name": "東南亞"   ,"code": "SouthAsia"    ,"top": 450 ,"left": 835    ,"img": "images/but01.png"},
            {"name": "售價查詢"   ,"code": "Query"    ,"top": 450 ,"left": 900    ,"img": "images/magnifierw.png"}
          ];

function handleSTNPanelShowCompleted(sender,eventArgs) {
    if(stnPanelBlock!=null){
        stnPanelBlock["Visibility"] = "Visible";
    }
}
    
function handleSTNPanelHideCompleted(sender,eventArgs) {
    if(stnPanelBlock!=null){
        stnPanelBlock["Visibility"] = "Collapsed";
    }
}
              
if (!window.DP_SilverLight)
	window.DP_SilverLight = {};

DP_SilverLight.Page = function() 
{
}

DP_SilverLight.Page.prototype =
{
	handleLoad: function(sender, userContext, rootElement) 
	{

		this.control = sender;
        this.rootElement = rootElement; 
        this.isMovieMove = false;
        /*
         * 影片狀態 0:正常 ,1:放大 ,2:播放中
         */
        this.movie1Status = 0;
        this.movie2Status = 0;
        this.movie3Status = 0;
        
        this.mv1Tag = document.getElementById("hdnMovie1Tag").value;
        this.mv2Tag = document.getElementById("hdnMovie2Tag").value;
        this.mv3Tag = document.getElementById("hdnMovie3Tag").value;
        this.mvurl = document.getElementById("hdnMovieUrl").value;
        
        /*
            資料下載
        */
        //下載Station XAML 及 註冊相關事件
        var downloader = this.control.createObject("downloader");
		downloader.addEventListener("completed",this.handleStationXAMLDownloadOnCompleted);
		downloader.open("GET","xamls/page1.zip");
		downloader.send();
        
        //下載字型 (版本判斷)
        if(!Silverlight.isInstalled('2.0')){
            var fontDownloader = this.control.createObject("downloader");
            fontDownloader.addEventListener("completed",this.handleFontDownloadOnCompleted);
            fontDownloader.addEventListener("downloadProgressChanged",this.handleFontDownloadProgressChanged);
		    fontDownloader.open("GET","fonts/cwheib.zip");//cwheib,kaiu
		    fontDownloader.send();
		} else {
		    //alert('您好,目前微軟SilverLight正式版本為1.0 ,\n建議您安裝1.0版瀏覽網頁可達到最佳效果!');
		    rootElement.findname("cnvProgress")["Visibility"] = "Collapsed";
		}
		
        /*
            事件註冊
        */
		//地圖事件
		this.rootElement.findName("imgMap").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMapZooming));
		
		this.rootElement.findName("imgMovie1")["Source"] = "images/media/CI0" + this.mv1Tag + ".jpg";
		this.rootElement.findName("imgMovieShadow1")["Source"] = "images/media/CI0" + this.mv1Tag + ".jpg";
		
		this.rootElement.findName("imgMovie2")["Source"] = "images/media/CIC0" + this.mv2Tag + ".jpg";
		this.rootElement.findName("imgMovieShadow2")["Source"] = "images/media/CIC0" + this.mv2Tag + ".jpg";
		
		this.rootElement.findName("imgMovie3")["Source"] = "images/media/CIC0" + this.mv3Tag + ".jpg";
		this.rootElement.findName("imgMovieShadow3")["Source"] = "images/media/CIC0" + this.mv3Tag + ".jpg";
		
		this.rootElement.findName("imgMovie1").addEventListener("MouseEnter", Silverlight.createDelegate(this, this.handleMovie1MouseEnter));
        this.rootElement.findName("imgMovie1").addEventListener("MouseLeave", Silverlight.createDelegate(this, this.handleMovie1MouseLeave)); 
        this.rootElement.findName("imgMovie1").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMovieMouseLeftButtonDown)); 
        this.rootElement.findName("imgMovie2").addEventListener("MouseEnter", Silverlight.createDelegate(this, this.handleMovie2MouseEnter));
        this.rootElement.findName("imgMovie2").addEventListener("MouseLeave", Silverlight.createDelegate(this, this.handleMovie2MouseLeave)); 
        this.rootElement.findName("imgMovie2").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMovieMouseLeftButtonDown)); 
        this.rootElement.findName("imgMovie3").addEventListener("MouseEnter", Silverlight.createDelegate(this, this.handleMovie3MouseEnter));
        this.rootElement.findName("imgMovie3").addEventListener("MouseLeave", Silverlight.createDelegate(this, this.handleMovie3MouseLeave)); 
        this.rootElement.findName("imgMovie3").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMovieMouseLeftButtonDown)); 
        
        this.rootElement.findname("tlneMovie1Stop").addEventListener("Completed", Silverlight.createDelegate(this, this.handleMovie1StopCompleted)); 
        this.rootElement.findname("tlneMovie2Stop").addEventListener("Completed", Silverlight.createDelegate(this, this.handleMovie2StopCompleted)); 
        this.rootElement.findname("tlneMovie3Stop").addEventListener("Completed", Silverlight.createDelegate(this, this.handleMovie3StopCompleted)); 
		
		this.rootElement.findname("tlneMovie1Play").addEventListener("Completed", Silverlight.createDelegate(this, this.handleMovie1PlayCompleted)); 
		this.rootElement.findname("tlneMovie2Play").addEventListener("Completed", Silverlight.createDelegate(this, this.handleMovie2PlayCompleted)); 
		this.rootElement.findname("tlneMovie3Play").addEventListener("Completed", Silverlight.createDelegate(this, this.handleMovie3PlayCompleted)); 
		
		this.rootElement.findName("imgClosePanel").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMovieMouseLeftButtonDown)); 
		//依視窗改變大小
		//obj.addEventListener("MouseLeftButtonDown", handleMapZooming);
        //if (rootElement.RenderTransform == null) 
        //    rootElement.RenderTransform=this.control.content.createFromXaml('<ScaleTransform ScaleX="1" ScaleY="1"/>'); 
        //this.control.content.onresize = Silverlight.createDelegate(this, this.handleResize); 
        //this.handleResize(this); 
        //全螢幕
        //sender.getHost().content.fullscreen = !sender.getHost().content.fullscreen;
	},
	
	
	//字型下載初始化
    handleFontDownloadOnCompleted: function(sender,eventArgs) {
        fontSource = sender;
        
        sender.getHost().content.findname("cnvProgress")["Visibility"] = "Collapsed";
        updateFontObject(fontSource);
    },
    
    //字型下載初進度
    handleFontDownloadProgressChanged: function(sender, eventArgs) {
      var progressText = sender.findName("txtProgress");
      var progressRectangle = sender.findName("rtgProgress");

      // 計算下載的百分比
      var percentage = sender.downloadProgress;

      // 更新進度列的 Rectangle 與 TextBlock 物件
      progressText.text = "Downloading" + (Math.floor(percentage * 100)%5==0?" . . . ":" . .   ") + Math.floor(percentage * 100) + "%";
      progressRectangle.width = 280 * percentage;
    },
    
    //各站及Area資料下載初始化
    handleStationXAMLDownloadOnCompleted: function(sender,eventArgs) {
    
        fileSource = sender;
    
        var plugin = sender.getHost();

        var rootCanvas = plugin.content.findName("cnvMap");
        
        var xamlItemStn = sender.getResponseText("xamlSTN.xaml");
        var xamlItemPanel = sender.getResponseText("xamlSTNPanel.xaml");
        var xamlAreaButton = sender.getResponseText("xamlAreaButton.xaml");
        var xamlCabnCrew = sender.getResponseText("xamlCabnCrew.xaml");
        
        
        //新增STN
        for(var i=0;i<stn.length;i++){
        
            var xamlItem = null;
            var stnObj = stn[i];
            
            xamlItem = xamlItemStn;
            
            var stnBlock = plugin.content.createFromXaml(xamlItemStn,true);
            
            rootCanvas.children.add(stnBlock);
            
            new STN(plugin,stnBlock,stnObj);
        }
        
        //新增Area Button 
        rootCanvas = plugin.content.findName("Page");
        for(var i=0;i<area.length;i++){

            var xamlItem = null;
            var areaObj = area[i];
            
            xamlItem = xamlAreaButton;

            var areaBlock = plugin.content.createFromXaml(xamlItem,true);
            
            rootCanvas.children.add(areaBlock);
            
            new AreaButton(plugin,areaBlock,areaObj);
        }
        
        //新增STN Panel
        stnPanelBlock = plugin.content.createFromXaml(xamlItemPanel,true);
        stnPanelBlock["Canvas.Top"] = -200;
        stnPanelBlock["Canvas.Left"] = -200;
        stnPanelBlock.findName("tlnSTNPanelShow").addEventListener("Completed", handleSTNPanelShowCompleted);
        stnPanelBlock.findName("tlnSTNPanelHide").addEventListener("Completed", handleSTNPanelHideCompleted);
        
        rootCanvas.children.add(stnPanelBlock);
        
        //新增Cabn Crew
        cabnCrewObj = plugin.content.createFromXaml(xamlCabnCrew,true);
        cabnCrewObj["Canvas.Top"] = 230;
        cabnCrewObj["Canvas.Left"] = 0;
        rootCanvas.children.add(cabnCrewObj);
        
        //更新字型
        updateFontObject(fontSource);
    },
    
    /*
     * 游標移入第一個影片時的動作
     */
    handleMovie1MouseEnter: function(sender,eventArgs) {

        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2){
            var moive1Panel = sender.getHost().content.findname("cnvMoviePanel1");
            var moive1Shadow = sender.getHost().content.findname("cnvMovieShadow1");
            var moive2Panel = sender.getHost().content.findname("cnvMoviePanel2");
            var moive2Shadow = sender.getHost().content.findname("cnvMovieShadow2");
            var moive3Panel = sender.getHost().content.findname("cnvMoviePanel3");
            var moive3Shadow = sender.getHost().content.findname("cnvMovieShadow3");
            
            moive1Panel["Canvas.ZIndex"] = 100;
            moive1Shadow["Canvas.ZIndex"] = 100;
            
            moive2Panel["Canvas.ZIndex"] = 99;
            moive2Shadow["Canvas.ZIndex"] = 99;
            
            moive3Panel["Canvas.ZIndex"] = 99;
            moive3Shadow["Canvas.ZIndex"] = 99;
            
            
            sender.getHost().content.findname("tlneMovie1ZoomIn").begin();
            
            this.movie1Status = 1;//電影狀態
        }
        
    },
    
    handleMovie1MouseLeave: function(sender,eventArgs) {
        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2 && this.movie1Status==1){
            this.movie1Status = 0;//電影狀態
            sender.getHost().content.findname("tlneMovie1ZoomOut").begin();
        }
    },
    
    handleMovie2MouseEnter: function(sender,eventArgs) {
    
        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2){
            var moive1Panel = sender.getHost().content.findname("cnvMoviePanel1");
            var moive1Shadow = sender.getHost().content.findname("cnvMovieShadow1");
            var moive2Panel = sender.getHost().content.findname("cnvMoviePanel2");
            var moive2Shadow = sender.getHost().content.findname("cnvMovieShadow2");
            var moive3Panel = sender.getHost().content.findname("cnvMoviePanel3");
            var moive3Shadow = sender.getHost().content.findname("cnvMovieShadow3");
            
            moive1Panel["Canvas.ZIndex"] = 99;
            moive1Shadow["Canvas.ZIndex"] = 99;
            
            moive2Panel["Canvas.ZIndex"] = 100;
            moive2Shadow["Canvas.ZIndex"] = 100;
            
            moive3Panel["Canvas.ZIndex"] = 99;
            moive3Shadow["Canvas.ZIndex"] = 99;
            
            sender.getHost().content.findname("tlneMovie2ZoomIn").begin();
            
            this.movie2Status = 1;//電影狀態
        }
    },
    
    handleMovie2MouseLeave: function(sender,eventArgs) {
        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2 && this.movie2Status==1){
            this.movie2Status = 0;//電影狀態
            sender.getHost().content.findname("tlneMovie2ZoomOut").begin();
        }
    },
    
    handleMovie3MouseEnter: function(sender,eventArgs) {
        
        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2){
        
            var moive1Panel = sender.getHost().content.findname("cnvMoviePanel1");
            var moive1Shadow = sender.getHost().content.findname("cnvMovieShadow1");
            var moive2Panel = sender.getHost().content.findname("cnvMoviePanel2");
            var moive2Shadow = sender.getHost().content.findname("cnvMovieShadow2");
            var moive3Panel = sender.getHost().content.findname("cnvMoviePanel3");
            var moive3Shadow = sender.getHost().content.findname("cnvMovieShadow3");
            
            moive1Panel["Canvas.ZIndex"] = 99;
            moive1Shadow["Canvas.ZIndex"] = 99;
            
            moive2Panel["Canvas.ZIndex"] = 99;
            moive2Shadow["Canvas.ZIndex"] = 99;
            
            moive3Panel["Canvas.ZIndex"] = 100;
            moive3Shadow["Canvas.ZIndex"] = 100;
            
            
            sender.getHost().content.findname("tlneMovie3ZoomIn").begin();
            
            this.movie3Status = 1;//電影狀態
        }
    },
    
    handleMovie3MouseLeave: function(sender,eventArgs) {
        
        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2 && this.movie3Status==1){
            this.movie3Status = 0;//電影狀態
            sender.getHost().content.findname("tlneMovie3ZoomOut").begin();
        }
    },
    
    handleMovieMouseLeftButtonDown: function(sender,eventArgs) {
        
        if(this.isMovieMove){
            return;
        }
        
        if(this.movie1Status!=2 && this.movie2Status!=2 && this.movie3Status!=2){ //status!=2 表示有可能需要播放
            
            if(this.movie1Status==1){ //播放第1段影片
                this.movie1Status = 2;
                //影片處理
                
                sender.getHost().content.findname("cnvMovieCloud")["Visibility"] = "Visible";
                sender.getHost().content.findname("tlneMovie1Play").begin();
                cabnCrewObj.findname("tlnHandUp").begin();
                this.isMovieMove = true;
            } else if(this.movie2Status==1){ //播放第2段影片
                this.movie2Status = 2;
                //影片處理
                
                sender.getHost().content.findname("cnvMovieCloud")["Visibility"] = "Visible";
                sender.getHost().content.findname("tlneMovie2Play").begin();
                cabnCrewObj.findname("tlnHandUp").begin();
                this.isMovieMove = true;
            } else if(this.movie3Status==1){ //播放第3段影片
                this.movie3Status = 2;
                //影片處理
                
                sender.getHost().content.findname("cnvMovieCloud")["Visibility"] = "Visible";
                sender.getHost().content.findname("tlneMovie3Play").begin();
                cabnCrewObj.findname("tlnHandUp").begin();
                this.isMovieMove = true;
            }
            
        } else { //status==2 ,表示必須結束播放

            //var movPlayer = sender.getHost().content.findname("movPlayer");
                
            if(this.movie1Status==2){ //結束播放第1段影片
                //影片處理
                
                document.getElementById("movieFrame").src='movie.htm';
                document.getElementById("moviePanel").style.display='none';
                sender.getHost().content.findname("imgClosePanel")["Visibility"] = "Collapsed";
                sender.getHost().content.findname("tlneMovie1Stop").begin();
                cabnCrewObj.findname("tlnHandDown").begin();
            } else if(this.movie2Status==2){ //結束播放第2段影片
                //影片處理
                
                document.getElementById("movieFrame").src='movie.htm';
                document.getElementById("moviePanel").style.display='none';
                sender.getHost().content.findname("imgClosePanel")["Visibility"] = "Collapsed";
                sender.getHost().content.findname("tlneMovie2Stop").begin();
                cabnCrewObj.findname("tlnHandDown").begin();
            } else if(this.movie3Status==2){ //結束播放第3段影片
                //影片處理
                
                document.getElementById("movieFrame").src='movie.htm';
                document.getElementById("moviePanel").style.display='none';
                sender.getHost().content.findname("imgClosePanel")["Visibility"] = "Collapsed";
                sender.getHost().content.findname("tlneMovie3Stop").begin();
                cabnCrewObj.findname("tlnHandDown").begin();
            }
        }

    },
    
    /*影片完全回復為原始狀態*/
    handleMovie1StopCompleted: function (sender,mouseEventArgs){
	    this.movie1Status = 0; 
	    sender.getHost().content.findname("cnvMovieCloud")["Visibility"] = "Collapsed";
    },
    
    handleMovie2StopCompleted: function (sender,mouseEventArgs){
	    this.movie2Status = 0; 
	    sender.getHost().content.findname("cnvMovieCloud")["Visibility"] = "Collapsed";
    },
    
    handleMovie3StopCompleted: function (sender,mouseEventArgs){
	    this.movie3Status = 0; 
	    sender.getHost().content.findname("cnvMovieCloud")["Visibility"] = "Collapsed";
    },
    
    /*影片play動畫結束*/
    handleMovie1PlayCompleted: function (sender,mouseEventArgs){
        document.getElementById("movieFrame").src=this.mvurl + 'CI0' + this.mv1Tag + '/iframe.html';
	    sender.getHost().content.findname("imgClosePanel")["Visibility"] = "Visible";
	    document.getElementById("moviePanel").style.display='block';
	    this.isMovieMove = false;
    },
    
    handleMovie2PlayCompleted: function (sender,mouseEventArgs){
	    document.getElementById("movieFrame").src=this.mvurl + 'CIC0' + this.mv2Tag + '/iframe.html';
	    sender.getHost().content.findname("imgClosePanel")["Visibility"] = "Visible";
	    document.getElementById("moviePanel").style.display='block';
	    this.isMovieMove = false;
    },
    
    handleMovie3PlayCompleted: function (sender,mouseEventArgs){
        document.getElementById("movieFrame").src=this.mvurl + 'CIC0' + this.mv3Tag + '/iframe.html';
	    sender.getHost().content.findname("imgClosePanel")["Visibility"] = "Visible";
	    document.getElementById("moviePanel").style.display='block';
	    this.isMovieMove = false;
    },
    
    /*地圖動畫控制 */
    handleMapZooming: function (sender,mouseEventArgs){
	    sender.findname("tlneZoomOut").begin();
    },
            
	//依視窗改變大小
	handleResize: function(sender) 
    { 
        var height = this.control.content.actualHeight > 0 ? this.control.content.actualHeight : this.control.offsetHeight; 
        var width = this.control.content.actualWidth > 0 ? this.control.content.actualWidth : this.control.offsetWidth; 
        var heightRate = height / this.rootElement.height; 
        var widthRate = width / this.rootElement.width; 
        var scaleRate = heightRate < widthRate ? heightRate : widthRate; 
        this.rootElement.RenderTransform.scaleX = this.rootElement.RenderTransform.scaleY = scaleRate; 
        this.rootElement["Canvas.Left"] = (width - this.rootElement.width * scaleRate) / 2; 
    }
}

       