if (!window.KowaE_Leaning)
	window.KowaE_Leaning = {};

KowaE_Leaning.Page = function() 
{
}

var OpMode = "";
var Canvas = null;
var CubeCanvas = null;
var ReflectionCvs = null;

var _Timer1 = null, _Timer2 = null, _Timer3 = null;


KowaE_Leaning.Page.prototype =
{
	handleLoad: function(control, userContext, rootElement) 
	{
	    OpMode = GetOpMode();
		this.control = control;
		
		Canvas = rootElement;
    	//Canvas.addEventListener("keyDown", "fontChanged"); 

        var host = document.getElementById("SilverlightControlHost");
	
		if(window.screen.availHeight  > 768)
		{
		    var top =  ((window.screen.availHeight * 0.77) - host.clientHeight) / 2 + 4; 
            host.style.marginTop = top + "px";
		}

		if(window.screen.availWidth > 1200 && window.screen.availWidth / window.screen.availHeight >= 1.6)
		{
		    host.style.width = 1200 + "px";
		    ChangeWide();  
		}
		
		CubeCanvas = Canvas.findName("CubeCanvas");
		ReflectionCvs = Canvas.findName("ReflectionCvs");

        Canvas.findName("ShowDownloader").begin();
        var downloader = control.createObject("downloader");
        downloader.addEventListener("Completed", "AssetDownloadCompleted");
        downloader.addEventListener("DownloadProgressChanged", "ProgressChanged");
        downloader.open("GET", "images/silverlight/images.zip");
        downloader.send();
	}
}

function GetOpMode()
{
    var params = document.location.search.replace("?", "").split("&");
    var retVal = GetTargetValue("opMode", params);
    return (retVal == null) ? "HIGHSPEC" : retVal;
}

function ChangeWide()
{
    var story = Canvas.findName("WideTest_MouseLeftButtonUp");
    for(var i = 0; i < story.children.count; i++)
    {
        var timeline = story.children.getItem(i);
        var element = Canvas.findName(timeline["Storyboard.TargetName"]);
        var prop = timeline["Storyboard.TargetProperty"];
        if(prop.charAt(0) == "(")
        {
            prop = prop.substring(1, prop.length - 1);
        }     
        element.setValue(prop, timeline.to); 
    }   
}

var CurrentFont = "Arial";

function fontChanged(sender, eventArgs)
{
    if(eventArgs.key == 51) //V
    { 
        setFont("Verdana") 
    } 
    else if(eventArgs.key == 36) //G
    { 
        setFont("Georgia"); 
    } 
    else if(eventArgs.key == 41) //L
    { 
        setFont("Luchida Grande"); 
    } 
    else if(eventArgs.key == 49) //T
    { 
        setFont("Times New Roman"); 
    } 
    else if(eventArgs.key == 30) //A
    { 
        setFont("Arial"); 
    }
    else if(eventArgs.key == 55)
    {
        sender.findName("RotateCvsScale").scaleX += 0.05; 
        sender.findName("ReflectionCvsScale").scaleX += 0.05; 
        sender.findName("RotateCvsScale").scaleY += 0.05; 
        sender.findName("ReflectionCvsScale").scaleY += 0.05; 
        
    }   
    else if(eventArgs.key == 32)
    {
        sender.findName("RotateCvsScale").scaleX -= 0.05; 
        sender.findName("ReflectionCvsScale").scaleX -= 0.05; 
        sender.findName("RotateCvsScale").scaleY -= 0.05; 
        sender.findName("ReflectionCvsScale").scaleY -= 0.05; 
    }   
}

function setFont(font)
{
     CurrentFont = font;
     _fontChanged(Canvas.findName("TopPage").children, font);
}

function _fontChanged(children, font)
{
    for(var i = 0; i < children.count; i++)
    {
        if(children.getItem(i).toString() == "TextBlock")
        {
             children.getItem(i).fontFamily = font;
        } 
       else if(children.getItem(i).toString() == "Canvas")
       {
            _fontChanged(children.getItem(i).children, font);
       }  
    }
}

var _TimerWow = null;
var _LoopCount = 100;
function Wow(startFlag)
{
    CreateLogo("Service_shadow", "Service");
    CreateLogo("Engine_shadow", "Engine");
    CreateLogo("Contents_shadow", "Contents");
    
    CreateShadow("L1_shadow");
    CreateShadow("L2_shadow");
    CreateShadow("L3_shadow");

    CreateElipse("CenterEllipse_shadow");
     
    if(startFlag)
        StartWow();    
}

function IsStartingWow()
{
    return (_TimerWow == null) ? false: true;
}

function StartWow()
{
    if(_TimerWow == null)
   { 
        _TimerWow = window.setInterval(MoveWow, 22); 
    }
}

function StopWow()
{
    window.clearInterval(_TimerWow);
    _TimerWow = null;  
}

function CreateElipse(name)
{
    ReflectionCvs.children.add(Canvas.getHost().content.createFromXaml("<Path Fill='#FF2D2D2D'><Path.Data><EllipseGeometry Name='" + name +"' Center='512,374' RadiusX='6' RadiusY='6'/></Path.Data></Path>"));
}

function CreateLogo(name, text)
{
    ReflectionCvs.children.add(Canvas.getHost().content.createFromXaml("<TextBlock  RenderTransformOrigin='0.5,1.0'  Name='" + name + "'  Text='" + text + "' FontFamily='Arial' FontSize='48' FontWeight='Bold' Foreground='Silver' Opacity='1'>	<TextBlock.OpacityMask><LinearGradientBrush EndPoint='0.5,0' StartPoint='0.5,1'><GradientStop Color='#4C000000' Offset='0'/><GradientStop Color='#00000000' Offset='1'/></LinearGradientBrush></TextBlock.OpacityMask><TextBlock.RenderTransform><TransformGroup><ScaleTransform /><TranslateTransform /></TransformGroup></TextBlock.RenderTransform></TextBlock>")); 
}

function CreateShadow(name)
{
    var L_shadow = Canvas.getHost().content.createFromXaml("<Line Name='" + name + "' StrokeThickness='2' ><Line.Stroke><LinearGradientBrush EndPoint='1,0.5' StartPoint='0,0.5'><GradientStop Color='#4C787878' Offset='0'/><GradientStop Color='#4C787878' Offset='1'/><GradientStop Color='#4C787878' Offset='0.45'/></LinearGradientBrush></Line.Stroke></Line>");
 
    ReflectionCvs.children.add(L_shadow);
}

function MoveWow()
{
    MoveLogo(Canvas.findName("Service"), Canvas.findName("Service_shadow"));    
    MoveLogo(Canvas.findName("Engine"), Canvas.findName("Engine_shadow"));    
    MoveLogo(Canvas.findName("Contents"), Canvas.findName("Contents_shadow"));    
    MoveShadow(Canvas.findName("L2"), Canvas.findName("L2_shadow"));
    MoveShadow(Canvas.findName("L3"), Canvas.findName("L3_shadow"));
    MoveShadow(Canvas.findName("L1"), Canvas.findName("L1_shadow"));
   MoveEllips(Canvas.findName("L1"), Canvas.findName("CenterEllipse_shadow")); 
}

function MoveShadow(L, L_shadow)
{
   L_shadow.x1 =  L.x1;
   L_shadow.x2 =  L.x2;
   L_shadow.y1 =  L.y1 + 40;
   L_shadow.y2 =  L.y2 + 40;
}

function MoveLogo(L, L_shadow)
{
   var translate = L.renderTransform.children.getItem(3);
   var scale = L.renderTransform.children.getItem(0);
   
   var scale_shadow = L_shadow.renderTransform.children.getItem(0);
   var translate_shadow = L_shadow.renderTransform.children.getItem(1);
        
   scale_shadow.scaleX =scale.scaleX * 0.9;
   scale_shadow.scaleY =scale.scaleY * -0.9;

   translate_shadow.x = translate.x - (L.width * 0.5) * scale.scaleX + 3;
   translate_shadow.y =translate.y + 70 * scale.scaleY;

   L.opacity = scale.scaleX;   
}

function MoveEllips(L, L_shadow)
{
    L_shadow.center = L.x1 + "," + (L.y1 + 40);
}

var ImageMapper = new Array(
    new Array("Menu1HL", "WN.png"),
    new Array("Menu1", "WN2.png"),
    new Array("Menu2HL", "PR.png"),
    new Array("Menu2", "PR2.png"),
    new Array("Menu3HL", "KG2.png"),
    new Array("Menu3", "KG.png"),
    new Array("Menu4HL", "FAQ.png"),
    new Array("Menu4", "FAQ2.png"),
    new Array("Menu5HL", "INF.png"),
    new Array("Menu5", "INF2.png"),
    new Array("Menu6HL", "Member.png"),
    new Array("Menu6", "Member2.png"),
    new Array("Menu7HL", "CopyrightHL.png"),
    new Array("Menu7", "Copyright.png"),
    new Array("Menu8HL", "PolicyHL.png"),
    new Array("Menu8", "Policy.png"),
    new Array("Menu9", "Menu09.png"),
    new Array("LineBlur", "WhatsNewLineBlur.png"), 
//    new Array("WNDescription",  "WhatsNewDescription.png"),
    new Array("WNTxBlur",  "WhatsNewBlur.png"),
    new Array("KowaHPLogo", "KowaHPLogo2.png"),
    new Array("KowaLogo", "KowaHPLogo2b.png"),   
    new Array("EP3JP","EP3JPPage","EP3JP.png"),
    new Array("EP4JP","EP4JPPage","EP4JP.png"),
    new Array("CP3JP","CP3JPPage","CP3JP.png"),
    new Array("CP4JP","CP4JPPage","CP4JP.png"),
    new Array("SP2JP","SP2JPPage","SP2JP.png"),
    new Array("SP3JP","SP3JPPage","SP3JP.png"),
    new Array("SP4JP","SP4JPPage","SP4JP.png"),

    new Array("EP3GaiyoImg","EP3G.png"),
    new Array("EP4GaiyoImg","EP4G.png"),    
    new Array("CP3GaiyoImg","CP3G.png"),
    new Array("CP4GaiyoImg","CP4G.png"),
    new Array("SP2GaiyoImg","SP2G.png"),
    new Array("SP3GaiyoImg","SP3G.png"),
    new Array("SP4GaiyoImg","SP4G.png"),

    new Array("EP3Video", "PCEngineMono.wmv"),
    new Array("EP4Video", "MobileEngine.wmv"),
    new Array("CP3Video", "CP3_IT.wmv"),
    new Array("CP4Video", "CP4_Compliance.wmv"),
    new Array("SP2Video", "SP2_Support.wmv"),
    new Array("SP3Video", "SP3_Consul.wmv"),
    new Array("SP4Video", "SP4_Deve.wmv"),
    
    new Array("Beep1", "Beep2", "Beep3", "Beep.wma"),
    new Array("Click", "Click.wma"),
    new Array("MoveCube", "Move.wma")     
);

//Downloader Handler
var ImagePack = null;

function AssetDownloadCompleted(sender, eventArgs)
{
    ImagePack = sender;
    //SetSource
    for(var i = 0; i < ImageMapper.length; i++)
    {
        if(ImageMapper[i].length > 2)
        {
            for(var j = 0; j < ImageMapper[i].length - 1; j++)
            {
                sender.findName(ImageMapper[i][j]).setSource(sender, ImageMapper[i][ImageMapper[i].length - 1]);
            }            
        }  
        else
        {          
            sender.findName(ImageMapper[i][0]).setSource(sender, ImageMapper[i][1]); 
        }
    }   
    sender.findName("HideDownloader").begin();
   
    var backPoint = GetBackPoint();
    if(backPoint == "TopPage")
    {
        sender.findName("BackToPages").begin(); 
        SkipOpening(false); 
        Wow(true);    
    }
    else
    {      
        sender.findName("Openning").begin();
        Wow(true);    
    }
}

var _skipFlag = false;

function OpenningCompleted(sender, eventArgs)
{
    if((sender.getValue("Name") == "Openning" && !_skipFlag) || sender.getValue("Name") == "SkipBtn_MouseLeftButtonUp")
    { 
        SkipOpening(true); 
    } 
}

function SkipOpening(newsFlag)
{
    Canvas.findName("ToolBarCvs").isHitTestVisible = true;         
    Canvas.findName("SkipBtn").isHitTestVisible = false; 
    Canvas.findName("TopPage_Loaded").begin();
    if(newsFlag) 
        Canvas.findName("WhatsNewCvs_Loaded").begin(); 
}

function ProgressChanged(sender, eventArgs)
{
    var percentage = Math.floor(sender.downloadProgress * 100);
    sender.findName("ProgressText").text = percentage + "%";    
    sender.findName("ProgressBar").width = percentage * 4; 
}


//Common Mouse Handler
function Completed(sender, eventArgs)
{
    if(sender.getValue("Name") == "TopPage_Loaded")
    {
        HitTestAll(true); 
    }  
    sender.findName(sender.getValue("Name") + "_Completed").begin();    
}

function Loaded(sender, eventArgs)
{
    sender.findName(sender.getValue("Name") + "_Loaded").begin();
}

var LineMapper =
{
    "Engine":  "L1",
    "Service": "L2",
    "Contents": "L3"    
}

var IsEnableSubTitle = false;
function SubTitleCompleted(sender, eventArgs)
{
    IsEnableSubTitle = true; 
} 

function MouseEnter(sender, eventArgs)
{
    var name = sender.getValue("Name");
    if(IsTitle(name))
    { 
        IsEnableSubTitle = false; 
        sender.findName("Sub" + name + "Cvs").isHitTestVisible = true; 
          
        var scale = sender.findName(name + "Scale");
        var translate = sender.findName(name + "Translate");

        beep(scale, translate);
                  
        if(scale.scaleX < 0.8)
        {  
            sender.findName(eval("LineMapper." + name)).opacity = 0.38; 
        } 
        sender.findName("TopPage_Loaded_Completed").pause();
        StopWow();
        sender.opacity = 1.0;          
    }
    else if(name == "ServiceCube")
    {
        name = CurrentCube + "Cube";    
        HitTestAll(false); 
    } 
    else if(name == "Menu1Cvs")
    {
        sender.findName("WhatsNewCvs_Loaded").begin();
    }

    sender.findName(name + "_MouseEnter").begin();
}

function HitTestAll(flag)
{
    Canvas.findName("Service").isHitTestVisible = flag;
    Canvas.findName("Engine").isHitTestVisible = flag;
    Canvas.findName("Contents").isHitTestVisible = flag;    
}

function VideoStop(sender, eventArgs)
{
    sender.stop();
}

function MouseEnter2(sender, eventArgs)
{
    var name = sender.getValue("Name");
       
    sender.findName(name + "_MouseEnter").begin();
    sender.setValue("Canvas.ZIndex", 1); 
    
    var media = sender.findName(name + "Video");
    if(media != null) media.play();  
}

function MouseLeave(sender, eventArgs)
{
    var name = sender.getValue("Name");
    if(IsTitle(name))
    {
        sender.findName("Sub" + name + "Cvs").isHitTestVisible = false; 

        sender.findName(eval("LineMapper." + name)).opacity = 1;  
        sender.findName("TopPage_Loaded_Completed").resume(); 
        StartWow();          
    } 
    else if(name == "ServiceCube")
    {
        name = CurrentCube + "Cube";    
        HitTestAll(true);  
    }     
    sender.findName(name + "_MouseLeave").begin();
}

function MouseLeave2(sender, eventArgs)
{
    var name = sender.getValue("Name");

    sender.findName(name + "_MouseLeave").begin();
    sender.setValue("Canvas.ZIndex", -1); 
    
    var media = sender.findName(name + "Video");
    if(media != null) media.pause();  
}

function MouseLeftButtonDown(sender, eventArgs)
{
    sender.findName(sender.getValue("Name") + "_MouseLeftButtonDown").begin();
}

function IsTitle(name)
{
    return (name == "Service" || name == "Engine" || name == "Contents")
}


function MouseLeftButtonUp(sender, eventArgs)
{
    PlaySound("Click");
    
    var tag = sender.getValue("Tag");
    if(tag != null && tag != "")
    {
        if(IsTitle(tag))
        {
            _targetShortCut = tag; 
            DisableAllPages();
        }   
    }
           
    var name = sender.getValue("Name");
    if(IsTitle(name))
    {
        StartWow(); 
        if(CurrentCube != null)
        {
            sender.findName(CurrentCube).visibility = "Visible"; 
            sender.findName(CurrentCube).isHitTestVisible = true; 
        }   
        sender.findName(eval("LineMapper." + name)).opacity = 1;  
        sender.findName("ServiceCube").isHitTestVisible = false; 
        sender.findName("Sub" + name + "Cvs").isHitTestVisible = false; 
        sender.isHitTestVisible = false; 
    } 
    else if(name == "ServiceCube")
    {
        name = CurrentCube + "Cube";
        StopWow(); 
    }
    else if(name == "GoTopRect")
    {
        sender.findName("HideCubeDescriptionCvs").begin();
        sender.findName("ServiceCube").isHitTestVisible = false; 
        sender.findName("GoTopRect").isHitTestVisible = false;    
        sender.findName(CurrentCube).visibility = "Visible";    
    }
    else if(name == "SkipBtn")
    {
        sender.isHitTestVisible = false;
        _skipFlag = true;   
    }   
    else if (name == "CloseBtnCvs")
    {
        sender.findName("WhatsNewCvs_Loaded_Completed").begin();
        return;  
    }   
     
    sender.findName(name + "_MouseLeftButtonUp").begin();
    InitCube(sender.getValue("Name")); 
}

function DisableAllPages()
{
    Canvas.findName("Page_Service").isHitTestVisible = false;
    Canvas.findName("Page_Contents").isHitTestVisible = false;
    Canvas.findName("Page_Engine").isHitTestVisible = false;    
}

var _targetShortCut;
function ShortCutCompleted(sender, eventArgs)
{
    sender.findName("Page_" + _targetShortCut).isHitTestVisible = true;    
    sender.findName(_targetShortCut + "PlayIcon").stop();  
    sender.findName(_targetShortCut + "PlayIcon").begin();  
}

function TopPage_Loaded_Completed(sender, eventArgs)
{
    sender.findName("TopPage_Loaded_Completed").begin();         
}

function GoTop(sender, eventArgs)
{
    if(sender.findName("ServiceCube").isHitTestVisible == true)
    {
        sender.findName(CurrentCube + "_MouseLeftButtonUp").stop();
        MouseLeftButtonUp(sender, eventArgs); 
 
        sender.findName(CurrentCube).visibility = "Visible";    
        sender.findName(CurrentCube).isHitTestVisible = true;
    }   
}

//Cube Function
//Global Variables
var Height;
var RADIUS1 = 120;
var RADIUS2 = 64;
var CurrentAngle = 0;
var IncrDegree = 0;
var CurrentCube;

function InitCube(clickedItem)
{
    CurrentAngle = 0;
    IncrDegree = 0;
    
    if(clickedItem == "Service")
    {  
        CurrentCube = clickedItem;
        initCubeService(); 
        Canvas.findName("Service" + "_MouseLeftButtonUp_Completed").begin(); 
    }  
    else if(clickedItem == "Engine")
    {
        CurrentCube = clickedItem;       
        initCubeEngine(); 
        Canvas.findName("Service" + "_MouseLeftButtonUp_Completed").begin(); 
    }  
    else if(clickedItem == "Contents")
    {
        CurrentCube = clickedItem;       
        initCubeContents(); 
        Canvas.findName("Service" + "_MouseLeftButtonUp_Completed").begin(); 
    }
}

function EnableGoTopRect(sender, eventArgs)
{
    sender.findName("GoTopRect").isHitTestVisible = true;  
}

function TitleCollapsed(sender, eventArgs)
{
    if(sender.findName(CurrentCube).isHitTestVisible == false)
    {
        sender.findName("ServiceCube").isHitTestVisible = true;
        //sender.findName("CubeTextAnimation").begin();
        sender.findName(CurrentCube).Visibility = "Collapsed"; 
    }
}

var CubeCaptions, CubeImages;
var CurrentCaption;

function initCubeService()
{
    CubeCanvas.children.clear();

    createWall(CurrentAngle, CurrentAngle + 90, "Wall1", 0, "Color", "Black");
    createWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 1, "Color", "Black");

    if(OpMode == "LOWSPEC")
    {  
        createWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2, "Image", "SP4Cube.png");
        createWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3, "Image", "SP2Cube.png");
        createTop(CurrentAngle, "Wall5", 2, "TOP", "Image", "SP3Cube.png");
    } 
    else
    {
        createWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2, "Video", "SP4Video");
        createWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3, "Video", "SP2Video");
        createTop(CurrentAngle, "Wall5", 2, "TOP", "Video", "SP3Video");
    }   

    createTop(CurrentAngle, "Wall6", 0, "BOTTOM", "Color", "Black");
    createTextBlock(CurrentCube, 52, 136);
    
    CubeCanvas.isHitTestVisible = true;    
   
    CubeCaptions = new Array("Consulting", "", "", "Contents Development", "Support");
    CubeImages = new Array("SP3JP", "", "", "SP4JP", "SP2JP"); 
}

function initCubeEngine()
{
    CubeCanvas.children.clear(); 
    createWall(CurrentAngle, CurrentAngle + 90, "Wall1", 0, "Color", "Black");
    createWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 1, "Color", "Black");
    if(OpMode == "LOWSPEC")
    {  
        createWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2, "Image", "EP3Cube.png");
        createWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3, "Image", "EP4Cube.png");
    }
    else
    {
        createWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2, "Video", "EP3Video");
        createWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3, "Video", "EP4Video");
    } 
    createTop(CurrentAngle, "Wall5", 2, "TOP", "Color", "Black");
    createTop(CurrentAngle, "Wall6", 0, "BOTTOM", "Color", "Black");   
    createTextBlock(CurrentCube, 56, 128);

    CubeCanvas.isHitTestVisible = true;    
    CubeCaptions = new Array("", "", "", "PC Engine", "Mobile Engine");
    CubeImages = new Array("", "", "", "EP3JP", "EP4JP"); 
}

function initCubeContents()
{
    CubeCanvas.children.clear();
    createWall(CurrentAngle, CurrentAngle + 90, "Wall1", 0, "Color", "Black");
    createWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 1, "Color", "Black");
    if(OpMode == "LOWSPEC")
    {   
        createWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2, "Image", "CP4Cube.png");
        createWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3, "Image", "CP3Cube.png");
    } 
    else
    {
        createWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2, "Video", "CP4Video");
        createWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3, "Video", "CP3Video");
    }  
    createTop(CurrentAngle, "Wall5", 2, "TOP", "Color", "Black");
    createTop(CurrentAngle, "Wall6", 0, "BOTTOM", "Color", "Black");   
    createTextBlock(CurrentCube, 36.8, 166.4);
    
    CubeCanvas.isHitTestVisible = true;    
    CubeCaptions = new Array("", "", "", "Original", "Web Expert");
    CubeImages = new Array("", "", "", "CP4JP", "CP3JP"); 
}
  
function createTextBlock(text, left, width)
{
    CubeCanvas.children.add(Canvas.getHost().content.createFromXaml("<TextBlock Opacity='0' Height='44' Width='" + width + "'  RenderTransformOrigin='0.5,0.5' Name='CubeText' Text='" + text + "' FontSize='40' FontFamily='" + CurrentFont + "' FontWeight='Bold' Foreground='#FFFFFFFF' Canvas.Left='" + left + "' Canvas.Top='123' Canvas.ZIndex='1'><TextBlock.RenderTransform><ScaleTransform Name='CubeTextScale'  /></TextBlock.RenderTransform></TextBlock>"));
}
  
function CreateCube()
{
   if(IncrDegree == 0) return;
   
   CurrentAngle += IncrDegree;   
   if(IncrDegree > 0)
    {      
        if(CurrentAngle >= 360) CurrentAngle = 0; 
    }
   else
    {
        if(CurrentAngle<= 0) CurrentAngle = 360;     
    }      

    moveTop(CurrentAngle, "Wall5", 1, "TOP");
    moveTop(CurrentAngle, "Wall6", 0, "BOTTOM");
        
	 if(CurrentAngle > 45 && CurrentAngle <= 135)
	{ 
	    moveWall(CurrentAngle, CurrentAngle + 90, "Wall1", 1);
	    moveWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 2);
	    moveWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 3);
	    moveWall(CurrentAngle + 270, CurrentAngle, "Wall4", 0);

        HideCubeText();
	}
	 else if(CurrentAngle > 135 && CurrentAngle <= 225)
	{ 
	    moveWall(CurrentAngle, CurrentAngle + 90, "Wall1", 2);
	    moveWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 3);
	    moveWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 0);
	    moveWall(CurrentAngle + 270, CurrentAngle, "Wall4", 1);

        ShowCubeText();
	}
	else if(CurrentAngle > 225 && CurrentAngle <= 315)
	{
	    moveWall(CurrentAngle, CurrentAngle + 90, "Wall1", 3);
	    moveWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 0);
	    moveWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 1);
	    moveWall(CurrentAngle + 270, CurrentAngle, "Wall4", 2);

	    HideCubeText();
	}
	else
	{		
	   moveWall(CurrentAngle, CurrentAngle + 90, "Wall1", 0);
	   moveWall(CurrentAngle + 90, CurrentAngle + 180, "Wall2", 1);	   
	    moveWall(CurrentAngle + 180, CurrentAngle + 270, "Wall3", 2);
	    moveWall(CurrentAngle + 270, CurrentAngle, "Wall4", 3);

	    HideCubeText();
	}

    if(IsRequestedStopSpinning())
   {
        if(CurrentAngle == 0 || CurrentAngle == 360)
       {
            StopSpinning();
            if(IsRequestedOpenCube())  
            {
                ResetSpinning();
            }  
            return;  
        }       
    }       
}

function HideCubeText()
{
    var cubeText = Canvas.findName("CubeText");
    if(cubeText.opacity > 0)
    {
        Canvas.findName("HideCubeText").begin();
    }
}

function ShowCubeText()
{
    var cubeText = Canvas.findName("CubeText");
    if(cubeText.opacity == 0)
    {
        Canvas.findName("ShowCubeText").begin();
    }
}

function IsRequestedStopSpinning()
{
    return StopFlag;
}

function StopSpinning()
{
    window.clearInterval(_Timer1);
    _Timer1 = null;  
    StopFlag = false;
}

function ResetSpinning()
{
    PlaySound("MoveCube");       
    _Timer2 = window.setInterval(ResetCubeCanvas, 10);
}

function ResetSpinningCompleted()
{
      window.clearInterval(_Timer2); 
      _Timer2 = null; 
}

function ResetCubeCanvas()
{
    if(CubeCanvas.renderTransform.angle % 360 == 0)
    {
        ResetSpinningCompleted();
        CubeCanvas.renderTransform.angle = 0; 
       
        initTop(CurrentAngle, "Wall5"); 
        initWall(CurrentAngle, "Wall3"); 
        
        StartOpeningCube(); 
       
        return; 
    }  

    if(CubeCanvas.renderTransform.angle < 0)
    {
        CubeCanvas.renderTransform.angle += 2.5;
    }
    else if(CubeCanvas.renderTransform.angle > 0)
    {
        CubeCanvas.renderTransform.angle -= 2.5;
    }
}

function StartOpeningCube()
{
    _Timer3 = window.setInterval(OpenCube, 33);
}

function moveWall(angle1, angle2, name, zindex)
{
	ret1 = GetOffset(angle1);
	ret2 = GetOffset(angle2);
	
	wall = Canvas.findName(name);
	if(Math.abs(ret1[0] - ret2[0]) < 15)
	{
	    wall.stroke = Canvas.getHost().content.createFromXaml("<SolidColorBrush Color='Transparent' />");
	}
	else
	{
	    wall.stroke = Canvas.getHost().content.createFromXaml("<SolidColorBrush Color='White' />");
	}

    angle = Math.atan2(ret1[1] - ret2[1], ret1[0] - ret2[0])* 180 / Math.PI;
    if(wall.renderTransform != null)
    {  
        var trans = wall.renderTransform.children.getItem(0);
        trans.angleY = angle;
        trans.centerX = ret1[0];
        trans.centerY = ret1[1];
    } 
   if(name != MouseEnterName || MouseEnterName == "")
   {
       if(zindex <= 1)
       {
            wall.opacity = 1;
       } 
       else
       {
            wall.opacity = (wall.tag == "Color") ? 0.3 : 0.8;
       }  
   } 
    wall.points =  ret1[0] + "," + ret1[1] + "," + ret1[0] + "," + (ret1[1] + Height) + "," + ret2[0] + "," + (ret1[1] + Height) + "," + ret2[0] + "," + ret1[1];
    wall.SetValue("Canvas.ZIndex", zindex);  
}

    

function createWall(angle1, angle2, name, zindex, mediaType, mediaSource)
{
	ret1 = GetOffset(angle1);
	ret2 = GetOffset(angle2);
	
	if(Height == null)
    	Height = Math.sqrt(Math.pow(Math.abs(ret2[0]-ret1[0]), 2) + Math.pow(Math.abs(ret2[1]-ret1[1]), 2));
	
    if(mediaType == "Video")
   {
        myBrush = "<VideoBrush Name='VB" + name + "' SourceName='" + mediaSource + "' Stretch='UniformToFill' ></VideoBrush>";   
    }
   else if(mediaType == "Image")
    { 
        myBrush = "<ImageBrush Stretch='UniformToFill' ></ImageBrush>";   
    }
   else if(mediaType == "Color")
    {    
        myBrush = "<SolidColorBrush Color='" + mediaSource + "' />";   
    }
    
    angle = (Math.atan2(ret1[1] - ret2[1], ret1[0] - ret2[0])* 180 / Math.PI);
    var shape = Canvas.getHost().content.createFromXaml("<Polygon StrokeMiterLimit='0' MouseLeftButtonDown='PleaseStop' MouseLeave='PauseMovie' MouseEnter='PlayMovie' Tag='" + mediaType +"' Name='" + name + "' Opacity='" + ((zindex <= 1) ? "1.0": "0.8") + "' Canvas.ZIndex='" + zindex + "'  Stroke='White' StrokeThickness='0.5' Points='" + ret1[0] + "," + ret1[1] + "," + ret1[0] + "," + (ret1[1] + Height) + "," + ret2[0] + "," + (ret1[1] + Height) + "," + ret2[0] + "," + ret1[1] + "' ><Polygon.RenderTransform><TransformGroup><SkewTransform AngleY='"+ angle + "' CenterX='" + ret1[0] + "' CenterY='" + ret1[1] + "' /></TransformGroup></Polygon.RenderTransform><Polygon.Fill>" + myBrush + "</Polygon.Fill></Polygon>")
    if(mediaType == "Image")
    {
        shape.fill.setSource(ImagePack, mediaSource); 
    }  
	CubeCanvas.children.add(shape);
}

function getWallIndex(name)
{
    if(name == "Wall5") return 0;
    else return parseInt(name.charAt(name.length-1));
}

function showDescription(index)
{
    if(CubeCanvas.isHitTestVisible && CubeCaptions[index] != "")
    {  
         Canvas.findName("ShowCubeDescriptionCvs").stop();   
         Canvas.findName("Eng").text = CubeCaptions[index];
         Canvas.findName("Jp").setSource(ImagePack, CubeImages[index] + ".png");
         Canvas.findName("Jp2").setSource(ImagePack, CubeImages[index] + "2.png");
         Canvas.findName("ShowCubeDescriptionCvs").begin();    
    }
    else
    {
        hideDescription(); 
    }
}

function hideDescription()
{
     CurrentCaption = "";
     Canvas.findName("Eng").text = "";
     Canvas.findName("Jp").source = null;
     Canvas.findName("Jp2").source = null;      
     Canvas.findName("HideCubeDescriptionCvs").begin();    
}

var MouseEnterName = "";
function PauseMovie(sender, eventArgs)
{
     MouseEnterName = "";
         
    hideDescription();

    tag = sender.getValue("Tag");
    if(tag == "Video")
    { 
        sender.strokeThickness = 0.5;
        sender.opacity = 0.95; 
        videobrush = sender.findName("VB" + sender.getValue("Name")); 
        movie = sender.findName(videobrush.sourceName);
        movie.pause();
    } 
    else if(tag == "Image")
    {
        sender.strokeThickness = 0.5;
        sender.opacity = 0.95;  
    }   
}

function PlayMovie(sender, evetArgs)
{
    MouseEnterName = sender.getValue("Name");
    
    tag = sender.getValue("Tag");
    if(tag == "Video")
    {
        sender.strokeThickness = 2; 
        sender.opacity = 1.0; 
        videobrush = sender.findName("VB" + sender.getValue("Name")); 
        movie = sender.findName(videobrush.sourceName);
        movie.play();
    }
    else if(tag == "Image")
    {
        sender.strokeThickness = 2; 
        sender.opacity = 1.0; 
    }
    else
    {
        MouseEnterName = ""; 
    }   
    showDescription(getWallIndex(sender.getValue("Name")));        
}

function moveTop(angle, name, zindex, tob)
{
	ret1 = GetOffset(angle);
	ret2 = GetOffset(angle + 90);
	ret3 = GetOffset(angle + 180);
	ret4 = GetOffset(angle + 270);

    if(tob == "BOTTOM")
    {
        ret1[1] += Height;
        ret2[1] += Height;  
        ret3[1] += Height;
        ret4[1] += Height;  
    }  	
   	
	wall = Canvas.findName(name);
    
    wall.points = ret1[0] + "," + ret1[1] + "," + ret2[0] + "," + ret2[1] + "," + ret3[0] + "," + ret3[1] + "," + ret4[0] + "," + ret4[1];
    
    if(wall.tag == "Video" || wall.tag == "Image")
    {   
        angle2 = Math.atan2(ret1[1] - ret2[1], ret1[0] - ret2[0]) * 180 / Math.PI;        
        wall.fill.relativeTransform.children.getItem(1).angle = angle2;
    }          
    wall.SetValue("Canvas.ZIndex", zindex);  
}

var StopFlag = false;

function PleaseStop(sender, eventArgs)
{
    PlaySound("Click");
    
    UnHit_Begin_ServiceCube();

    if(_Timer1 == null)
    {
        ResetSpinning();
        return; 
    }  

    if(IncrDegree < 0)
    {
        IncrDegree = -30; 
    }
    else
    {
        IncrDegree = 30; 
    }    
    RequestStopSpinning(true);     
}


function stopMovie()
{
    for(var i = 1; i <= 6; i++)
    {
        if(Canvas.findName("Wall" + i).tag == "Video")
        {
            Canvas.findName(Canvas.findName("VBWall" + i).sourceName).stop();
        }
    }   
}

var RadiusTopForOpen;
var AngleTopForOpen;
var AngleForWall, AngleForWall2;

function OpeningCubeCompleted()
{
    window.clearInterval(_Timer3);
    _Timer3 = null;
    stopMovie();
    hideDescription(); 
}

function OpenCube()
{
    AngleTopForOpen -= 5;
    AngleForWall += 1;
    AngleForWall2 -= 1;
    
    if(AngleTopForOpen < 90)
    {
        OpeningCubeCompleted(); 
        return; 
    }
   
    openTop(AngleTopForOpen, "Wall5");    
    openWall(AngleForWall, "Wall2", 180, 90);
    openWall(AngleForWall, "Wall3", 180, 270);
    openWall(AngleForWall2, "Wall4", 0, 270);
}

function initTop(angle, name)
{
	ret1 = GetOffset(0);
	ret2 = GetOffset(90);
	ret3 = GetOffset(180);
	ret4 = GetOffset(270);
	
	RadiusTopForOpen = Math.sqrt(Math.pow(ret2[0] -ret3[0], 2) + Math.pow(ret2[1]-ret3[1],2));
	AngleTopForOpen = 180 + (Math.atan2(ret3[1] - ret2[1], ret2[0] - ret3[0]) * 180 / Math.PI);
}

function initWall(angle, name)
{
	AngleForWall = 90;	
	AngleForWall2 = 90;	
}

var SavePolyPoint = new Array();

function openTop(angle, name)
{
	ret1 = GetOffset(0);
	ret2 = GetOffset(90);
	ret3 = getOffset(angle, RadiusTopForOpen, RadiusTopForOpen, ret2[0], ret2[1]);	
	ret4 = getOffset(angle, RadiusTopForOpen, RadiusTopForOpen, ret1[0], ret1[1]);	

	wall = Canvas.findName(name);
    
    wall.points = ret1[0] + "," + ret1[1] + "," + ret2[0] + "," + ret2[1] + "," + ret3[0] + "," + ret3[1] + "," + ret4[0] + "," + ret4[1];
    
    if(wall.tag == "Video" || wall.tag == "Image")
    {   
        angle2 = Math.atan2(ret1[1] - ret2[1], ret1[0] - ret2[0]) * 180 / Math.PI;        
        wall.fill.relativeTransform.children.getItem(1).angle = angle2;
    } 	
   
    SavePolyPoint[0] = ret1[0] + "," + ret1[1] + "," + ret2[0] + "," + ret2[1] + "," + ret3[0] + "," + ret3[1] + "," + ret4[0] + "," + ret4[1];     
}

function openWall(angle, name, ret3angle, ret4angle)
{
	ret3 = GetOffset(ret3angle);
	ret4 = GetOffset(ret4angle);

	ret1 = ret4;
	ret1[1] = ret4[1] + Height;

    ret2 = ret3;
	ret2[1] = ret3[1] + Height;

	ret3 = getOffset(angle, Height, Height, ret2[0], ret2[1]);	
	ret4 = getOffset(angle, Height, Height, ret1[0], ret1[1]);	

	wall = Canvas.findName(name);
	if(wall.renderTransform != null)
	{
	    wall.renderTransform = null;
	} 
    
    wall.points = ret1[0] + "," + ret1[1] + "," + ret2[0] + "," + ret2[1] + "," + ret3[0] + "," + ret3[1] + "," + ret4[0] + "," + ret4[1];
    
    if(wall.tag == "Video" || wall.tag == "Image")
    {   
        angle2 = Math.atan2(ret1[1] - ret2[1], ret1[0] - ret2[0]) * 180 / Math.PI;
        if(wall.fill.relativeTransform == null)
        {
            wall.fill.relativeTransform = wall.getHost().content.createFromXaml("<RotateTransform />");
        }
        wall.fill.relativeTransform.angle = angle2;
    } 	

    SavePolyPoint[parseInt(name.substr(name.length - 1, 1))] = ret1[0] + "," + ret1[1] + "," + ret2[0] + "," + ret2[1] + "," + ret3[0] + "," + ret3[1] + "," + ret4[0] + "," + ret4[1];     
}


function createTop(angle, name, zindex, tob, mediaType, mediaSource)
{
	ret1 = GetOffset(angle);
	ret2 = GetOffset(angle + 90);
	ret3 = GetOffset(angle + 180);
	ret4 = GetOffset(angle + 270);

    if(tob == "BOTTOM")
    {
        ret1[1] += Height;
        ret2[1] += Height;  
        ret3[1] += Height;
        ret4[1] += Height;  
    }  	
    
	var shape;
    angle2 = Math.atan2(ret1[1] - ret2[1], ret1[0] - ret2[0]) * 180 / Math.PI;    
	
   if(mediaType == "Video")
   {
        myBrush = "<VideoBrush Name='VB" + name + "' SourceName='" + mediaSource + "' Stretch='None'><VideoBrush.RelativeTransform><TransformGroup><ScaleTransform ScaleX='1.3' ScaleY='1.3' CenterX='0.5' CenterY='0.5'  /><RotateTransform Angle='" + angle2 + "' CenterX='" + 0.5 + "' CenterY='" + 0.5 + "' /></TransformGroup></VideoBrush.RelativeTransform></VideoBrush>"; 
    }
   else if(mediaType == "Image")
    { 
        myBrush = "<ImageBrush Stretch='None'><ImageBrush.RelativeTransform><TransformGroup><ScaleTransform ScaleX='1.3' ScaleY='1.3' CenterX='0.5' CenterY='0.5'  /><RotateTransform Angle='" + angle2 + "' CenterX='" + 0.5 + "' CenterY='" + 0.5 + "' /></TransformGroup></ImageBrush.RelativeTransform></ImageBrush>"; 
    }
   else if(mediaType == "Color")
    {    
        myBrush = "<SolidColorBrush Color='" + mediaSource + "' />";   
    }

    shape = Canvas.getHost().content.createFromXaml("<Polygon StrokeMiterLimit='0'  Tag='" + mediaType + "' MouseEnter='PlayMovie' MouseLeave='PauseMovie' MouseLeftButtonDown='PleaseStop'  Name='" + name + "' Opacity='" +  ((mediaType == "Color") ? "0.6": "0.8") +"' Canvas.ZIndex='" + zindex + "'  Stroke='White' StrokeThickness='0.5' Points='" + ret1[0] + "," + ret1[1] + "," + ret2[0] + "," + ret2[1] + "," + ret3[0] + "," + ret3[1] + "," + ret4[0] + "," + ret4[1] + "' ><Polygon.Fill>" + myBrush  + "</Polygon.Fill></Polygon>");
    if(mediaType == "Image")
    {
        shape.fill.setSource(ImagePack, mediaSource); 
    }  
    if(tob == "BOTTOM")
    {
        shape.isHitTestVisible = false; 
        shape.opacity = 1.0; 
    }   
	CubeCanvas.children.add(shape);
}

function GetOffset(angle)
{
    return getOffset(angle, RADIUS1, RADIUS2, RADIUS1, RADIUS2);
}

function getOffset(angle, radius1, radius2, centerX, centerY)
{
    var ret = new Array(2);

    var th, incr, x, y, i, n_div, xi, yi;
    n_div = 100;
    incr = 2*Math.PI/360;

    th = 0;

    x = radius1 * Math.cos(incr * angle);
    y = radius2 * Math.sin(incr * angle);
    xi = (centerX + x);
    yi = (centerY - y);

    ret[0] = xi;
    ret[1] = yi;   
       
    return ret;     
}


function IsSpinning()
{
    return (_Timer1 != null) ? true: false;
}

function MoveDrag(sender, eventArgs)
{
    if(IsRequestedStopSpinning() == false)
   {  
        speedPos = eventArgs.getPosition(CubeCanvas);
        if(speedPos.x > 200)
        {
            IncrDegree = 2.5;
        }     
        else if(speedPos.x > 160)
        {
            IncrDegree = 1;
        }     
        else if(speedPos.x > 140)
        {
            IncrDegree = 0.5;
        }       
        else if(speedPos.x < 40)
        {
            IncrDegree = -2.5;
        }     
        else if(speedPos.x < 80)
        {
            IncrDegree = -1;
        }
        else if(speedPos.x < 100)
        {
            IncrDegree = -0.5;
        }
        else if(IsSpinning())
        {
            IncrDegree = 0; 
            return; 
        }
                
        if(IncrDegree != 0 && !IsSpinning())
        {
            StartSpinning(); 
        }  
    }  
}

var OpenCubeFlag = false;
function IsRequestedOpenCube()
{
    return OpenCubeFlag;
}

function RequestStopSpinning(fOpenCube)
{
    OpenCubeFlag = fOpenCube;
    StopFlag = true; 
}

function StartSpinning()
{
    _Timer1 = window.setInterval(CreateCube, 33);
}

function HitPage(sender, eventArgs)
{
    sender.findName("Page_" + CurrentCube).isHitTestVisible = true;
    sender.findName(CurrentCube + "PlayIcon").begin(); 
}

function ServiceToTopCompleted(sender, eventArgs)
{
    //sender.findName(CurrentCube + "PlayIcon").stop(); 
    StopAllPlayIcons(); 
    sender.findName(CurrentCube + "_MouseLeftButtonUp").stop();
    sender.findName(CurrentCube + "Cube_MouseLeftButtonUp").stop();  
    StartWow();
    sender.findName(CurrentCube).visibility = "Visible";
    sender.findName("TopPage_Loaded").begin();
    DisableAllPages(); 
}

function StopAllPlayIcons()
{
    Canvas.findName("ServicePlayIcon").stop(); 
    Canvas.findName("EnginePlayIcon").stop(); 
    Canvas.findName("ContentsPlayIcon").stop(); 
}

function UnHit_Begin_ServiceCube()
{
    CubeCanvas.isHitTestVisible = false;
    Canvas.findName("ServiceCube").isHitTestVisible = false;
    Canvas.findName(CurrentCube + "Cube_MouseLeftButtonUp").begin();
    stopMovie(); 
    StopWow();   
}

var LinkMenu =
{
    "Menu1Cvs": "whatsnew.htm",
    "Menu2Cvs": "pressrelease.htm",
    "Menu3Cvs": "outline.htm",
    "Menu4Cvs": "faq.htm",
    "Menu5Cvs": "faq.htm",
    "Menu6Cvs": "member.htm",
    "Menu7Cvs": "copyright.htm",
    "Menu8Cvs": "http://www.kowa.co.jp/s/s049.htm",
    "Menu9Cvs": "noplugin.htm",
    
    "WNDescription": "whatsnew.htm",
   
    "SP2BkCvs" : "support.htm",
    "SP3BkCvs" : "consultant.htm",
    "SP4BkCvs" : "development.htm",
    "CP3BkCvs" : "webexpert.htm",
    "CP4BkCvs" : "original.htm",
    "EP3BkCvs" : "pc_engine.htm",
    "EP4BkCvs" : "mobile_engine.htm",
   
    "Support" : "support.htm",    
    "Consultant" : "consultant.htm",    
    "ContDev" : "development.htm",    
    "WebExpert" : "webexpert.htm",    
    "Original" : "original.htm",    
    "PCEngine" : "pc_engine.htm",    
    "MobileEngine" : "mobile_engine.htm",    
    
    "KowaLogo" : "http://www.kowa.co.jp"
};   

var _JumpTarget;

function GoToHTML(sender, eventArgs)
{
    _JumpTarget = sender.getValue("Name"); 
    if(_JumpTarget != "Menu8Cvs" && _JumpTarget != "KowaLogo") 
        MouseLeftButtonUp(sender, eventArgs);
    else
        Jump(null, null);   
}

function GoToHTML2(sender, eventArgs)
{
    if(IsEnableSubTitle)
    { 
        _JumpTarget = sender.getValue("Name"); 
        MouseLeftButtonUp(sender, eventArgs); 
    } 
}

function Jump(sender, eventArgs)
{
     eval("var linkTarget = new Function('', 'return LinkMenu." + _JumpTarget + ";');");

    if(linkTarget != null)
    {  
        if(_JumpTarget == "Menu9Cvs")
        {
            SaveBackPoint(linkTarget(), "html");        
        }
        else
        {    
            SaveBackPoint(linkTarget(), "silverlight");
        }  
        window.open(linkTarget(), (_JumpTarget == "Menu8Cvs" || _JumpTarget == "KowaLogo") ? "_blank" : "_self");
    }
    else
    {
        alert(_JumpTarget + " No reference defined.");
    }     
}

function GetBackPoint()
{
    if(document.location.search != "")
    { 
        var params = document.location.search.replace("?", "").split("&");
        var retVal = GetTargetValue("linkTarget", params);
        if(retVal != null)
            return retVal;   
    }  
    var cookies = document.cookie.split(";");
    return GetTargetValue("linkTarget", cookies); 
}

function GetTargetValue(key, cookies)
{
    if(cookies.length > 0)
    {
        for(var i = 0; i < cookies.length; i++)
        {
            var cookie = cookies[i].split("=");
            if(cookie.length == 2)
           {
                if(cookie[0].indexOf(key) > -1)
                {
                    return cookie[1];
                }
            }               
        }   
    }   
    return null; 
}

function SaveBackPoint(link, mode)
{
    document.cookie = "linkTarget=TopPage;";
   //HTMLバージョン用Cookie 
    if(mode == "html")
    {    
        document.cookie = "Distinction_html_Mode=html;"; 
    } 
 }


var beepCount = 1;

function beep(scale, translate)
{
    var sound = Canvas.findName("Beep" + beepCount);
    
    if(translate != null && scale != null)
    { 
        var balance = (translate.x - 512) * 0.002;
         
        sound.balance = balance;
        sound.volume = scale.scaleX;
    }
    else
    {
        sound.balance = 0;
        sound.volume = 0.3;
    } 
    sound.stop(); 
    sound.play();

    beepCount++;   
    if(beepCount > 3)
    {
        beepCount = 1; 
    }
}

function PlaySound(sound)
{
    var sound = Canvas.findName(sound);
    sound.stop();
    sound.play();  
}

function EnterWhatsNewCvs(sender, eventArgs)
{
    sender.findName("WhatsNewCvs_Loaded").pause();
    sender.findName("Menu1Cvs_MouseEnter").pause(); 
}
function LeaveWhatsNewCvs(sender, eventArgs)
{
    sender.findName("WhatsNewCvs_Loaded").resume();
    sender.findName("Menu1Cvs_MouseEnter").resume(); 
}