﻿// JScript File
var globalplugIn;

function createSilverlight()
{
	var scene = new casesched.Page();
	Silverlight.createObjectEx({
		source: "schedscreen.xaml",
		parentElement: document.getElementById("smSchedScreen"),
		id: "SilverlightControl",
		properties: {
			width: "100%",
			height: "100%",
			version: "1.0"
		},
		events: {
			onLoad: Silverlight.createDelegate(scene, scene.handleLoad),
			onError: function(sender, args) {
				var errorDiv = document.getElementById("errorLocation");
				if (errorDiv != null) {
					var errorText = args.errorType + "- " + args.errorMessage;
							
					if (args.ErrorType == "ParserError") {
						errorText += "<br>File: " + args.xamlFile;
						errorText += ", line " + args.lineNumber;
						errorText += " character " + args.charPosition;
					}
					else if (args.ErrorType == "RuntimeError") {
						errorText += "<br>line " + args.lineNumber;
						errorText += " character " +  args.charPosition;
					}
					errorDiv.innerHTML = errorText;
				}	
			}
		}
	});
}


Silverlight.createDelegate = function(instance, method) {
	return function() {
		return method.apply(instance, arguments);
	}
}

if (!window.casesched)
	window.casesched = {};

casesched.Page = function() 
{
}

casesched.Page.prototype =
{
	handleLoad: function(control, userContext, rootElement) 
	{
		this.control = control;
		
		// Sample event hookup:	
		rootElement.addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMouseDown));
	},
	
	// Sample event handler
	handleMouseDown: function(sender, eventArgs) 
	{

   //plugIn.content.fullScreen = true;
		// The following line of code shows how to find an element by name and call a method on it.
		// this.control.content.findName("Storyboard1").Begin();
	}
}

function onShowLoaded(sender, eventArgs){
   var plugIn = document.getElementById("SilverlightControl");

   globalplugIn = sender.getHost();
   plugIn.content.onFullScreenChange = onFullScreenChanged;
   CenterItem(sender.findName("movie"));
}

function Started(sender, eventArgs) {
    sender.findName("movie").visibility = "visible";
}

function click(sender, eventArgs) {
    var plug = sender.getHost();
   plug.content.FullScreen = true;
}

function cmdPlay(sender, eventArgs) {
    sender.findName("movie").play();    
}

function cmdPause(sender, eventArgs) {
    sender.findName("movie").pause();    
}

function cmdStop(sender, eventArgs) {
    sender.findName("movie").stop();    
}

function cmdFullScreen(sender, eventArgs) {

    var plugIn = sender.getHost();
    plugIn.content.fullScreen = true;
}

function onMouseEnter(sender, eventArgs) {
    sender.Cursor = "hand";
}

function onMouseLeave(sender, eventArgs) {
    sender.Cursor = "default";
}

function onFullScreenChanged(sender, eventArgs) {

   globalplugIn.content.findName("Scene").Width = globalplugIn.content.actualWidth;
   globalplugIn.content.findName("Scene").Height = globalplugIn.content.actualHeight;
   if (globalplugIn.content.fullScreen == true) {
       sender.findName("movie").width = 900;
       sender.findName("movie").height = 700;
       sender.findName("btnFullScreen").visibility = "collapsed";
       CenterItem(sender.findName("movie"));
       sender.findName("ctlPannel").width = globalplugIn.content.actualWidth;
   } 
   else {
       sender.findName("movie").width = 676;
       sender.findName("movie").height = 449;
       sender.findName("btnFullScreen").visibility = "visible";
       CenterItem(sender.findName("movie"));
       sender.findName("ctlPannel").width = 712;
   }
}   
   
function CenterItem(item) {
    var itemWidth=item.width;
    
    item["Canvas.Left"] = (globalplugIn.content.findName("Scene").Width / 2) - (itemWidth / 2) 
}
