﻿
jQuery.noConflict();

jQuery(document).ready(function() {
	 jQuery("#silverlightControlHost").hide();

	 jQuery(".addmodule").click(function() {
	 	 var rel = jQuery(this).attr("rel");
	 	 var initParams = "action=AddModuleToPageDialog,portalId=" + portalId + ",tabId=" + tabId + ",languageId=" + languageId + ",pageSection=" + rel + ",userId=" + userId;
	 	 createSilverlight(initParams);
	 	 jQuery("#silverlightControlHost").show();
	 	 return false;
	 });
});

function hideSilverlight() {
	 jQuery("#silverlightControlHost").hide();
}

function finishCreateModule() {
	 jQuery("#silverlightControlHost").hide();
	 location.reload();
}

function createSilverlight(params) {
	 Silverlight.createObject(
            baseurl + "/ClientBin/SilverlightMenus.xap",
            document.getElementById('silverlightControlHost'),
            "slPlugin",
            { width: "600", height: "400", background: "white", version: "3.0.40624.0" },
            { onError: OnErrorEventHandler, onLoad: onSLLoad },
            params,
            "context"
        );
}


function OnErrorEventHandler(sender, errorArgs) {
	 // Create the error message to display.
	 var errorMsg = "Silverlight Error: \n\n";

	 // Specify error information common to all errors.
	 errorMsg += "Error Type:    " + errorArgs.errorType + "\n";
	 errorMsg += "Error Message: " + errorArgs.errorMessage + "\n";
	 errorMsg += "Error Code:    " + errorArgs.errorCode + "\n";

	 // Determine the type of error and add specific error information.
	 switch (errorArgs.errorType) {
	 	 case "RuntimeError":
	 	 	 // Display properties specific to RuntimeErrorEventArgs.
	 	 	 if (errorArgs.lineNumber != 0) {
	 	 	 	 errorMsg += "Line: " + errorArgs.lineNumber + "\n";
	 	 	 	 errorMsg += "Position: " + errorArgs.charPosition + "\n";
	 	 	 }
	 	 	 errorMsg += "MethodName: " + errorArgs.methodName + "\n";
	 	 	 break;
	 	 case "ParserError":
	 	 	 // Display properties specific to ParserErrorEventArgs.
	 	 	 errorMsg += "Xaml File:      " + errorArgs.xamlFile + "\n";
	 	 	 errorMsg += "Xml Element:    " + errorArgs.xmlElement + "\n";
	 	 	 errorMsg += "Xml Attribute:  " + errorArgs.xmlAttribute + "\n";
	 	 	 errorMsg += "Line:           " + errorArgs.lineNumber + "\n";
	 	 	 errorMsg += "Position:       " + errorArgs.charPosition + "\n";
	 	 	 break;
	 	 default:
	 	 	 break;
	 }
	 // Display the error message.
	 alert(errorMsg);
}

function onSLLoad() { }

